Forum: Poser - OFFICIAL


Subject: D3D's firefly render script

RedPhantom opened this issue on Dec 07, 2012 · 181 posts


Zanzo posted Wed, 12 December 2012 at 12:48 AM

Quote - > Quote - Wait, in order to get the best results with that light meter the diffuse value for every material in my scene has to be .85 instead of 1.0 ?

Regardless of how you meter, the best results for bounced light means you must have less light leave than arrived. You can't have all the light bounce. And you seriously can't have more light bounce than arrived. Assuming your object has at least one color component of R, G, or B set to 255, it follows that your Diffuse_Value must be less than 1.

There are exceptions, however, and the problem in understanding arises from trying to make a simple one-sentence statement like you did. (CG is not simple. It starts with physics, and physics is among the hardest subjects. I know you want everything to be simple, but it just isn't. The material room gives too much freedom, and the history of its use by uneducated content providers means you have a mess to deal with.)

The potential amount of diffuse reflection is the mathematical product of Diffuse_Color and Diffuse_Value. When combined with a light source this is also mutliplied by the color of that light source, the intensity of that light source, and decreased by the cosine of the angle of incidence of that light source.

So there are actually 5 terms in the direct diffuse lighting equation. If the product of these exceeds 1, you get clipping, and the image will look wrong. If the product of these is much less than .1, you get a dark image, and that may be wrong. (Black pants are supposed to be dark, so it's impossible to say, without context, what is too dark.) To properly answer your question regarding "best results", one would have to examine all five of these factors that go into the equation.

As a general rule of thumb, it helps avoid problems if you keep your Diffuse_Value below 1. But having it at 1 does not automatically mean you have a problem. It depends on the other four factors, particularly the Diffuse_Color.

For example, I often make a wood shader with some dark wood texture, and I lighten it in the shader by increasing the Diffuse_Value - perhaps way past 1. This is not wrong, because I'm trying to take a texture that is far, far below 1 (very dark) and make it lighter. The shader could do texture adjustment and then do diffuse reflection as separate factors, but the reality is that, for example, .85 * 2 is 1.7 and separating those into two discrete steps doesn't make the 1.7 more or less right or wrong. What matters is how I arrived at the number.

 

I appreciate the explanation. 

I went ahead and got scene fixer and had everything set to .85 which did not make the scene look right. But then I set all the diffuse to .98 which seem to give nice results.  The one thing that stood out from your explanation is that when light bounces the strength should be going down.  With a diffuse of .98 the wall got slightly darker, ever so slightly which made the entire scene look more appealing.