I'm having a slight issue with the Accepts Shadows : Only setting in a raytraced comp.
I created a White solid as aground plane and had some 3D text casting a shadow on it, then I changed the white solid's accept shadows to ONLY (Casts shadows: Off, Accept Lights: Off). If there's a layer below the solid, it looks fine, but the problem is that if there's no layer below the white solid, then the White Solid is rendered black and the shadow is lost in the layer. I'd like the ability to render out the cast shadow of an object with an alpha channel. Am I missing something or is this a feature request?
No clue but these links might provide you with some help:
http://provideocoalition.com/index.php/ryoung/story/3d_text_in_after_e ffect/
http://provideocoalition.com/index.php/ryoung/story/recenty_in_after_e ffects/
I forgot shadows are rendered after track mattes. So, you'll have to duplicate all of the elements in the scene, precomp them into a "shadow matte" layer. Turn the text into "Casts Shadows only", place a white solid behind everything, so then you have a completely white surface with just the shadow.
Then in the main comp you can use the "shadow matte" layer as a luma inverted matte with a black solid.
That should woprk, seems awfully complicated, tho. The text, afterall, is not part of the original scene and the floor upon which the shadow is being cast is intended to be part of the original video clip. Me, I'd prerender the text movie and apply a much simpler shadow using any of the olde timey methods including building a 3D comp, adding an invisible floor layer and setting it to accept the shadow from a single light. However, I think it's still easier to render the text movie with a 3D shadow using Animation and bring the whole thing back into the comp as a movie. Unless, of course, you're attemting to track the motion of the floor and hence the shadow to extend the illusion.
yeah, this has to occur with in a tracked scene. I'm kinda surprised that "accept shadows: only" doesn't give an alpha channel. well, what I can do is set the text to "Reflections: Only" and the shadow will render by itself. since I don't have any reflective materials in my scene, this is a way to get a shadow pass out of AE. too bad I have to render twice.
You are just missing a simple step. Your white shadow catcher layer should be set to accept shadows but not accept lights. That way you can use the multiply mode to eliminate the white and cast a shadow on the background layer.
If you're using CS6 and extruding the type then you have to jump through another hoop because blend modes are not supported with ray tracing. If that is the case let me know and I'll show you the fix.
Here's a still of a comp setup the way I typically cast shadows in perspective on a 2D background.
Hey Rick. I do have the Solid set up that way, (in CS6). but I'm looking for how to export the Alpha of a cast shadow. "Accept shadows: Only" doesn't do if there's no layer below it. If there's no layer below it, why shouldn't it just create the shadow alpha? why does it completely black out the entire layer?
Shadows don't have alpha channels. The solid you're using to catch the shadow does.
There are a number of possibilities for creating an alpha channel of the shadow.
You could duplicate the shadow catcher layer and use the duplicate as an inverted luma track matte.
Or, you could use the free Knoll Unmult plugin to extract luminace as an alpha channel, but you'll need to invert the result.
Hey Andrew, Luma Matte functions do not apply to a shadow catcher. it requires either clever precomping or multiple renders to use a track matte with raytraced shadows.
Good Idea with the Unmult, but alas, it doesn't work either. it's reading the values of the original solid layer, not the shadow cast on the layer.
Where in the render order is raytraced Shadows? It seems that they're rendered after everything including filters.
North America
Europe, Middle East and Africa
Asia Pacific