CTZn wrote:The amount of light that is transmitted is not taking part to the reflections. It is expected that those transmitted rays will weaken the overall reflections because by definition they are not contributing to them.Did you try with a somewhat higher exponent to compensate (x2 or so)? The amount of light reflected will be the same for a constant IOR, but the grass blades will be shinier (less glossy). My personal feeling is that the highlights are spreading too wide and therefore are dimming the impression from reflections.
Hi and thanks for reply!
I've been trying to fiddle with exponent at the beginning but it doesn't compensate for the loss of reflection with blended material that well. I mean when using small value for index of refraction (1.2-1.6) on actual grass material increased exponent value causes change of the amount of those really shiny reflections. Lower exp value was giving slightly higher number (like a soft reflection but spread to the particular strands) of "blinks" on the grass and higher values were decreasing number (and size slightly) of those blinks on a particular grass surface. Anyways it didn't behave realistically, although it looked like it sometimes and under certain camera/sun angles.
I'm looking to figure out approximately accurate grass material which behaves good under most commonly used lighting condition, I don't mind increased rendering time at the moment just realistic behavior matters for me.
CTZn wrote:I don't think that IOR for grass should go above 1.5 really. That's more reflections than a typical dense glass already.
This value - I'm actually really suspicious about it. I would consider a grass material to be constructed from two different layers:
Resin and
Pigment - this is much simplified but I think it quite matches for the Indigo material setup:
Pigment Layer - the inner layer of the grass strand created with a blend of Diffuse Transmitter (to get semi sss effect) and Phong shader (to get nice soft (exp ~150) environmental reflections from the sky or other surrounding objects)
ResinLayer - this will be surface of the grass strand (most likely in nature grass strand will have some kind of really thin amount of resin on it's surface) and this is to catch reflections from stronger emitters (sun/lamp blinks etc.). It would consist of Phong shader (exp ~750) mixed with our Pigment Layer.
And how about those IOR values? I've found this really informative article, take a look:
http://www.naturalpigments.com/educatio ... rticleID=8
Considering fact "that a substance which has a higher refractive index is a substance that impedes the velocity of light or offers more resistance to it, and therefore a larger proportion of the light will be reflected" - we will have to find green opaque pigment to match our material (pretty natural approach), and the most "grassy" looking one was the Volkonskoite pigment with IOR value of 2.5, which is extracted from pea (
http://kremer-pigmente.de/bilder/Erbse.jpg) what makes it even more natural lol
With ResinLayer IOR I would just go for something around 1.3-1.4 (I haven't change it with the material yet to test) as it would be something around ice IOR I reckon.
|MM| wrote:I'm not sure what kind of an answer you're expecting, but I think you're taking a wrong approach.
In real world there's all kinds of grass with different properties in terms of reflectivity etc. also obviously it depends on things like weather, humidity so no one will give a totally correct value.
I can't say much about physical corectness of your materials, but you won't create a realistic grass with just applying one material to all the blades.
Create a couple of blades with different textures to have some variation no grass in real world is just one color.
Of course I realize realistic grass can't be achieved with only one material and one grass patch. This is just for testing purposes I'll post more complex scene when I finish it.
I would use texture and blending factors for the layers in material created this way solely to leverage atmospheric conditions of specific scene and to differentiate between different types of organic texture. And actually heres big question mark about blending mode for double blended material. Can we treat those as layers? Are they stacked as a layers one on top of each other? Could we actually simulate double refraction/reflection effect withing one double blended material as this:
It would be very nice feature in double blended materials to have second layer (PigmentLayer in this case) receiving only refracted light from first layer (ResinLayer), to compute further refraction and reflection. I think such feature would greatly increase material realism and material creating workflow.
Now I have to sort out in my head what to think about adjusting IOR values for those materials, and maybe there could be a way to actually calculate this and simulate double refraction (but still don't know how indigo blend layers so I guess it's good as is and maybe overcomplicated already

)
Anyway I'm waiting for your insight guys, please feel free to share your thoughts!