I reckon this is some bug, others reckon its my lack of skills / knowledge.
Trees using planes with two sided materials do not handle foliage or subsurface shading very well.
At the moment the world normals are completely wrong and the ss is being projected onto faces where it should not be.
On the left is a two sided planes tree. On the right is a tree with no single planes where i had to mirror and flip all the branch faces.
As you can see the normal are all weird when using two sided faces.
The difference in how SS is being distributed on the mesh is pretty obvious. I am using red for debug purposes. Red is the SS color.
So i guess my question is… if this is a rendering bug or if i am missing something?
I looked at the trees in the landscape demo but they cannot be compared really because you have effectively faces that will always be seen from one angle. Where as in trees like mine… achieving geometry requires you to have flipped faces.
One thing that I noticed when using the ‘Two Sided Foliage’ shading model when making foliage shaders, is to disable the ‘Tangent Space Normals’. Also be sure to enable the check box ‘Two Sided’.
Here is an example of how using Tangent Space Normals can change the way your overall foliage looks in game.
As you can see the model is significantly darker and looks different overall. Let me know if unchecking the Tangent Space Normals was a good suggestion for you, or if you are still having issues.
After reading the disable tangent normals it got me thinking that perhaps it is normal related. So i created a simple Vector parameter or 3vector node and plugged that into the normal map slot.
If this is expected behavior then thank you very much for helping with this.
If it is not expected behavior please make a note so it can be fixed in future releases.
All in all im very happy because i know now how to correct this problem.
Thanks again for the assistance.
The behavior you are seeing is expected because in order for two sided foliage, or any foliage model for that matter, to calculate light it needs normals. Normals take in light and project light bounces based on whether you choose Tangent or World Space calculations.
I have actually edited my own grass shader to look a bit cleaner by removing the ‘FuzzyShadingGrass’ node, and passing the color variation approach used for the ‘Base Color’ to the ‘Subsurface Color.’
I also re-checked the ‘Tangent Space Normals’ since the normals in my shader are of that type.