Add reflectivity function to Reflective Shader

Started by WAS, August 23, 2018, 01:52:38 PM

Previous topic - Next topic

WAS

#15
Here is a comparison between HS 0.5 and 1.5 and roughness of 1.5, which produces the horizon shift of 1.5, but also applies roughness which changes your specular. :( :'(

I am using a constant colour for the roughness to try and get as accurate results as possible. Lowering the settings of the constant colour start to change the Horizon Shift like the slider does, but also the specular roughness.

The Gif quality makes it a little hard to see the actual horizon shift of the sun glow but if you look closely you can see 1.5 shifts this glow to the "left"

Matt

Do you think the horizon shift 1.5 looks better than 0.5?
Just because milk is white doesn't mean that clouds are made of milk.

WAS

Quote from: Matt on September 05, 2018, 04:45:33 PM
Do you think the horizon shift 1.5 looks better than 0.5?

It depends on the material I'm creating. I use a lot of reference images and try to mimic what I see a lot. It creates subtle differences that work towards creating realistic reflections of different materials.

For example I have a new gold I'm working on that uses a Water Shader for base Ray Trace Reflections and Horizon Shift, and a secondary reflection shader without ray tracing, and specular enabled, and merged together for the control I am looking for.

The differences may not look drastic, but neither is a 1.21 Index of Refraction vs 1.33, but when comparing to realistic results of materials, it makes a difference in realism. It just seems like added control to the reflection shader that should be there from the get go, as I like the results it can provide when changing things about.

Matt

#18
Fair enough. I should point out that horizon shift is a complete hack that I'm trying to leave behind once we start using more physically based rendering of glossy reflections. I don't really want to expose it in any more shaders than the Water Shader.
Just because milk is white doesn't mean that clouds are made of milk.

WAS

Quote from: Matt on September 05, 2018, 04:49:40 PM
Fair enough. I should point out that horizon shift is a complete hack that I'm trying to leave behind once we start using more physically based rendering of glossy reflections. I don't really want to expose it in any more shaders than the Water Shader.

A hack it may be, but we have many materials in real life that create results like through microscopic details plus surface materials, such as actual glosses over a surface which add refraction of light which can be simulated with horizon shift.

Without this feature, reflections won't truly be customizable to some real-world expectations.

Matt

Horizon shift will be completely ignored by the path tracer (coming soon), as it should do the job of handling that correctly for you.
Just because milk is white doesn't mean that clouds are made of milk.

Matt

In any case, a value greater than 1 is just not realistic in any scenario I can see. Any situation where it would need to be higher than that, the specular highlight *should* be larger, which is why it's intrinsically tied to the roughness parameter.

But I would love to see real world examples.
Just because milk is white doesn't mean that clouds are made of milk.

WAS

Quote from: Matt on September 05, 2018, 04:53:02 PM
Horizon shift will be completely ignored by the path tracer (coming soon), as it should do the job of handling that correctly for you.

Which I am excited about. Will we have any previews in the future? Would love to see some comparison shots of what's going on in dev.

Matt

Just because milk is white doesn't mean that clouds are made of milk.

WAS

#24
Here is a instance where the Horizon Shift would have been promptly advantageous. here I would like to have sand reflections, but not just specular highlights in the form of dots, but also a spread field of ambient definition. However, when using roughness for the specular highlight dots, this changes the horizon shift as you explained, while the ambient specular has no horizon shift, and thus they do not match up and have a visible offset. Changing the ambient with a constant or PF changes my desired look and isn't a fix. An unfortunate realism-killer.