How do I throw a shadow on my particles from geometry?
Fred
How do I throw a shadow on my particles from geometry?
Fred
*The light must have “Cast Shadows” checked (lights ALWAYS cast shadows from particles onto particles, but need that checkbox to cast from geometry onto particles).
*The Shadows should be set to Shadow Maps, otherwise the MapSize value cannot be acquired and a default of 512 will be used.
*The geometry must be in a Matte Objects Named Selection Set and >Enable Matte Objects must be checked.
That being said, there is a nasty bug in matte objects Z-depth calculations we are fixing for 1.5.2 - in some cases, the location of the matte object might be represented incorrectly, causing occlusions in all the wrong places. It is worse with long skinny polygons stretching into perspective views, higher tessellation fixes it somewhat.
But in general, see this introductory tutorial for some workflows:
software.primefocusworld.com/sof … torial.php
Is it possible to cast shadows but not matte the particles (my compositor wants the whole image.) I think I might be able to trick it with an opacity map. It says that matting works with opacity maps, but im hoping that since opacity maps dont work with shadow maps that Ill get the shadow without matting? Right?
You guys should add some properties for each object that relate to Krakatoa. Shadows on, matting on etc.
Fred
We deal with the shadows ourselves so I am quite sure the mapping will affect both lights and final pass rendering.
We don’t really use the ShadowMap generator, we just steal some of its settings.
We are trying to use what is already there. Unfortunately, it is not always possible, or sometimes it is just not implemented yet.
We have a wish/bug logged against being able to set “Visible To Camera” to false and use the matte geometry to cast shadows without affecting the render-time occlusion.
I hope this will be implemented sooner than later.
OTOH, supporting “Receive Shadows” per particle source would require the use of yet another channel that stores an index to the node the particle came from so it would know whether it would have to draw or not in any particular case. This is something we also want to do someday, but it is a lot more complicated.
So no way to get shadows without matting the particles themselves…
What bout a projector map? Can I calculate attenuation maps and project them back on?
There IS a way, but a bit convoluted.
You can use the “Save Lighting As Emission Channel” ability of 1.5.x.
Set up the lights and matte objects, enable the option in the Channels rollout and save to PRT.
This will include all lighting and shadows “baked” in the Emission channel.
Now load the result in a PRT Loader, check >Ignore Scene Lights, uncheck >Use Matte Objects and check “>Use Emission” and you can render all particles with the original shading (incl. shadows from mattes) without rendering the matte objects themselves.
This is of course an overkill if working with 500 million particles, but in many cases it is a good workaround.
See this tutorial for ideas on relighting techniques using this feature:
software.primefocusworld.com/sof … saving.php
Thanks Bobo, for now i made a different object off screen that casts shadows.
My final question (for today) is what about soft shadows, does the Shadow Map Sample Range spinner do anything?
Fred
Not yet, but it was discussed internally two days ago, so we have some plans in that direction.
Potentially even more (area light/shadow support) in farther future.
For now, you can create multiple lights with slightly offset position to approximate the area shadows look. (Of course it takes time).
I had a test with 70+ lights shot from the SkyDome script I wrote back in Max 3 days. See the left thumbnail image on the first screenshot here:
software.primefocusworld.com/sof … een_shots/
Keep in mind the render times were with PCache and LCache on, the real time was about 2 minutes or so, but that was almost 3 years ago.