PDA

View Full Version : noob question about bump strength



madno
12-13-2014, 10:13 AM
Hi,

how does LW determin how strong the bump effect of a black and white contrast image is?
I made a one meter box, put a black/white image in the bump channel -> got a bump effect.
As can be seen in the VPR the effect is not very strong. Is there a way to make the effect more
pronounced? I tried very high Bump Amplitude settings but that does not do the trick.

126043 126044

RebelHill
12-13-2014, 10:15 AM
See the bump height value on the material node...

madno
12-13-2014, 10:51 AM
That was one of the things I did. It just does not have an effect. I must be doing something wrong which is so obvoius that I can't see it. I would love to hear any other idea.

Forgot to mention, it is 2015.

RebelHill
12-13-2014, 11:18 AM
Must be something up in 2015 then cos it works fine here in 11x (and actually, so does the bump amp in the procedural node itself.)

Sensei
12-13-2014, 11:26 AM
Final Normal Vector = Normalize( (Not)Smoothed Normal Vector - Bump Vector * Bump Amplitude )

In your case initial Normal Vector is simply pointing up (0,1,0)
Bump is taken from image,
and Bump Amplitude is 100% or 1000%, it doesn't matter, as it's completely replacing initial Normal Vector.
After normalization it's going back from really high values to normal with length 1.0

Bump mapping won't replace real displacing of geometry to have real depth..

madno
12-14-2014, 05:42 AM
That formula maked the concept clear. I had to ask wikipedia about vector math a little bit ;-)
But one question I still have (and it might indicate that I still do not understand it). If the bump function is finally outputing values from 0 to 1, then how does LW interpred this into how deep the simulated depth should be? If I have this one meter box, what does a value of bump = 1 or bump = 0.5 mean for it?

Sensei
12-14-2014, 08:26 AM
If the bump function is finally outputing values from 0 to 1, then how does LW interpred this into how deep the simulated depth should be?

It doesn't.

Between final normal vector and sample light direction there is done
Dot(Normal,LightSampleDirection)
If it's <=0 it's used by Diffuse=-Dot(Normal,LightSampleDirection) (negative!)
if it's >0 it's used directly by Translucency=Dot(Normal,LightSampleDirection);

Dot product is cosine between two vectors (if they're normalized). So if 1st vector is f.e. 0,1,0 and other one 0,-1,0 dot product between these two is -1.0, and after negating +1.0
Therefor light is illuminating that spot with full power.
It's done by Lambert shader/node.
If vector is pointing somewhere else, angle is different, and light is illuminating with less power, or none (backside).

You can play with Shaders > Diffuse > Lambert node and Const > Vector (plugged to Surface's Normal) to see it by yourself. Light source is another parameter.

I think so in one video tutorial I showed how to simulate diffuse Lambert shading.. ?
Basically get two vectors and put them to Dot, negate, max 0, and output to Diffuse Shading. Then play with values of vectors (or get from nulls). And you will see something that looks like Lambert shader hand made.


If I have this one meter box, what does a value of bump = 1 or bump = 0.5 mean for it?

From gray scale heights there is calculated so called gradient.
From gradient there is calculated single bump vector and normalized.
Then multiplied by Bump Amplitude.
Then it's output for user.

1.0 and 0.5 will give probably 22.5 degrees to 45 degrees vectors, pointing at different directions.

BTW, in you example your bump map image was proceed by color-space conversion. It's wrong.

madno
12-14-2014, 10:35 AM
Now I know why I happily pay for your plug ins :-)

My initial thought was, that I can simulate different depth by increasing / decreasing the bump strength
(need to read more about the math).

126068
Extruded geometry

Thanks for your explanation.