Compositing – Prologue
Before we start introducing a lot of compositing workflow I thought instead to introduce the concept through a variety of concepts provided by some resources by some generous people. Before I end the suspense, I want to quickly discuss a couple of concepts. In my opinion there are two main issues that revolve around compositing and those are bit-depth and alpha mulitiplication.
Bit-Depth
Let’s say you have your gorgeous render and you want to start compositing it, why are are we concerned with bit depth? First, when we talk about bit depth we mean bits per channel and not the total bits of an image. Therefore, for an RGB (red, blue, green) image we refer to R=8bits, G=8bits, B=8bits. Now, if we have an added alpha channel we would then have A=8bits. In an RGBA image then, each channel has only 256 values. Having only 256 values for an alpha channel is quite slim, and therefore this is the reason why many revert to a 16bit, or floating point image format for compositing as it allows for greater lattitude in expressing transparency (after all that’s what compositing is really). To illustrate, doubling the bit depth gives us a lattitude of 65536 steps versus 256 in an 8-bit format.
Alpha Multiplication
Wow, this one is a confusing one for many, and rather than explain it all here I will devote a write-up on it for its own entry. In essence, when creating an alpha channel the rendering program will be trying to create an anti-aliased image by blending pixels and when this happens it has a tendency to evaluate the background image into the blend. This is why when you place an alpha masked image into a document you see edge colour fringing. So, really what the computer needs to know is what ‘colour’ needs to be removed from the alpha mask which is usually a division type operation. This is why typically images are rendered on black (or green, or blue) since most compositing applications will recognize this and remove it automatically. There is a method called straight-alpha which resolves this issue by rendering the image out with it’s edges untreated, and the edge is then treated with an alpha mask that does not fringe. More on all this later….
Moving on..
OK, lets move onto some dudes who can explain these things well , Simon Reeves and Lucas Martell (both of whom example XSI’s compositor Illusion). What I like about these two is their openess and thoroughness to present the concepts. I highly recommend making both resources a regular visit, especially Lucas’ ‘Pigeon Impossible’ blog. What is particularly cool, and something I’ll cover at some future date is the idea of using RGB alphas (an object ID workaround) and Lucas shows this in a podcast quite well. Simon prescribes some info as well.
- Lucas Martell’s Pigeon Impossible blog discusses his production woes and concepts for his short film. Astoundingly Lucas is a fanatic on multipass and does this in the extreme!! Also, don’t forget to subscribe to Lucas’ video podcast where he showcases his concepts in video and be sure to drop him a line as he’s open to questions.
- Simon Reeves has a great two-part compositing lesson (part 1, part 2) and also a work in progress showcase for Bank Affairs showing some great compositing concepts.
4 comments »
Copy link for RSS feed for comments on this post or for TrackBack URI
Leave a comment
Line and paragraph breaks automatic, e-mail address never displayed, HTML allowed: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>
[...] just found a great blog post by Jason over at CGPipeline that brings up a couple of great issues that I forgot to mention in the [...]
Pingback by The Pigeon: Impossible Blog » Blog Archive » Bit-Depth, Specs, and Anti-Aliasing — July 19, 2008 @ 8:54 pm
Good post. Can’t wait to see the full post on alphas. Keep it up!
tB
Comment by toyBunny — July 21, 2008 @ 3:41 pm
tB, thanks for reading. I have a few articles in progress, but the alpha one is definitely a priority. It is quite a subject for sure.
-j
Comment by jason — July 21, 2008 @ 9:15 pm
Good start to a useful blog.
Comment by redfuzz — July 23, 2008 @ 6:57 pm