For the past couple weeks I’ve been trying to figure out why the renders of my model had incorrectly placed shadows.
I managed to reproduce the problem with a very simple scene (The one in the above image).
There’s a spotlight pointing downwards onto a little shader ball model. The shader ball model is sitting on top of a box which I stretched out to be a floor (box from the shelf tool).
As you can see, the shadow is completely incorrect.
I have found 2 solutions to this problem. Though without understanding the implementation of the Mantra renderer, it’s difficult to say why these fix the problem.
Increase the polygon count. The floor made from the box geometry immediately receives shadows rendered on it correctly once you increase ‘Axis Divisions’. By default the box from the shelf tool has 2 axis divisions. Increasing this significantly gives us a nice shadow. I can’t really consider this is a real solution since increasing the poly count of a surface just so that shadows appear on them correctly seems really bad.
Add vertex normals. This seems like the best way to get this working.
Why do either of these solutions work? Why doesn’t the Mantra renderer add these vertex normals if they’re needed for a correct render? Where is the documentation which explains this?
UPDATE, I figured this out: http://s0hungry.com/2016/10/27/incorrect-shadows-in-houdini-with-the-mantra-renderer-part-2/
If you have any answers, please comment or email me (firstname.lastname@example.org)!
Here is the project file for the scene with the broken shadows: boxspotlight
I originally made a post about this on the Houdini forums as I was trying to find the solution for this problem: https://www.sidefx.com/forum/topic/46613/