Compositing and "contour effect"

Hi, I was wondering how I could paint out parts of an object from a still or an animation to make the background visible (e.g. paint out a person’s limb, for example).
Also, is there any way to make the effect where an object makes a transition from one medium to another and a contour appears around the object at the threshold? I’m thinking along the lines of the effect used in the show Enterprise in season 3 where the ship passes through the cloaking field and a orange aura follows the cross-sectioned shape of the ship.
One more thing, before I forget; how would I make a material that becomes opaque towards the edges but the surface remains transparent when perpendicular to the camera?

Any help would be greatly appreciated.
Thanks.

Hi, I was wondering how I could paint out parts of an object from a still or an animation to make the background visible (e.g. paint out a person’s limb, for example).

render with alpha. this way you’ll have your parts masked and can add a different background. before rendering press “Premul” in the render buttons.

Also, is there any way to make the effect where an object makes a transition from one medium to another and a contour appears around the object at the threshold?

umm, lemme think… you could render the “medium” the ship comes out as a large plane with a shadeless color and the ship with an other shadeless color (high contrast). this way you can use some edge-finding effect in Photoshop (or GIMP?) to colorize the “border”. then, in a second pass, you can blur that border and add some glow etc… if you want a concentric effect you could do another render with the ship slightly bigger, so that you have a second border for bluring, colorizing etc…

One more thing, before I forget; how would I make a material that becomes opaque towards the edges but the surface remains transparent when perpendicular to the camera?

you’ll need a “Blend” texture (maybe using a colorband). map-input should be “Nor” and in the coordinate buttons activate “Z-Z-Z”. then map it to the Alpha channel (maybe you’ll need to invert it) and reduce the alpha slider to zero. play with the settings for optimum results.

hope that helps

marin

How would I do the contour tracing thing and the alpha in an animation? I can see how taking a movie clip and having it replaced partially or entirely by an image or another clip of the same background would let me make a person “disappear,” but is there another method (where one could have action continuing behind the person for example)? Thanks.

when you have two strips, one the background and another with alpha on top, select them both and hit SHIFT+A >> AlphaOver (i think). this way the transparent parts of the foreground images are replaced ba the background you see-through.

for the countour-tracing i’d render (as descripbed in my previous post) the ship-pass-through-sequence to a .TGA-sequence, then make a Photoshop action for batch-processing all of them. the action should effectively detect the edges, isolate them with alpha on a different layer and delete the rest. with theses images you can run another batch process to colorize, blur or treat them otherwise. for the final shot you’ll need your ship rendered “properly” (regular shader, not “shadeless”, with lights and stuff) and composite the “edge-sequence” on top. maybe adding some wavy/distortion effect would make it look more interesting…

ok some final words - this is somehow theoretical, as i haven’t tried before. but i could imagine this to work out. if you have good results, post them :slight_smile:

additional reference (plus small tutorial) about the sequence editor in blender can be found on blender.org>>Documentation>>2.0 reference (the old blender official guide - it hasn’t changed a lot so it will work with the newest versions)

hope that helps

marin

Thanks, that helped. For my alpha idea i was thinking more along the lines of the green-screen effect used to remove parts of people such as in Terminator 3 or Hollow Man, where action can still be seen behind them. Is this just clever overlapping where the background scene is shot separately from the semi-invisible actor?

well this is a common trick for matching real action with CG elements (covering parts of the actor in green/blue, along with trackers). but if you do everything in 3D you don’t need those tricks.

Thanks, that helped. For my alpha idea i was thinking more along the lines of the green-screen effect used to remove parts of people such as in Terminator 3 or Hollow Man, where action can still be seen behind them. Is this just clever overlapping where the background scene is shot separately from the semi-invisible actor?

The secret here is to use the alpha channel, which is a fourth channel of information in addition to R, G, and B. This value represents transparency. It only exists in the output file when you press the RGBA button on the Render window and you select an output-file format which supports Alpha. .PNG and .TGA do; .JPEG does not.

Any object can have more than one material attached to it, and each face can be colored differently. So you can define a material having Alpha=0.0 and assign it to the faces covering the limb. Those faces will be transparent. I believe that a material’s Alpha can also be modified in real-time, by an IPO or Python, causing the surface to “fade away.”

This could probably be accomplished by, say, a layer that contains only the contour. Such a layer might be created (I’m speculating here…) using the Toon-shader. This layer would contain nothing but the contour; with Alpha values greater than zero (but less than 1.0) where the contour line appears; and zero everywhere else. This layer is then composited in front of the others, and it adds a translucent (because 0.0<Alpha<1.0) highlight effect to the finished cels.

You’ve got me on that one. But I can see that what you’re asking for would be for the surface normals to affect the alpha value. I would expect that the texture mapping options can be made to do that… Maybe this interpretation gives you some clues?