[GLSL] how to transform a normal in a shader ?

This topic is 4764 days old which is more than the 365 day threshold we allow for new replies. Please post a new topic.

Recommended Posts

Hi, i need to do it for bump mapping because the normals of the bump map never change is we don't transform them when the mesh moves. How can i transform a normal ?

Share on other sites
multiple it by the normal matrix

Share on other sites
the normal matrix works like a transformation matrix ? do you have a link which explain that ? or can you explain me ?

Share on other sites
gl_Normal = gl_Normal * gl_NormalMatrix;

i think thats the right way

ok thanks guys

Share on other sites
Quote:
 Original post by TheSebok thanks guys

Note that on some nVidia drivers there is a bug where gl_Normal is actually transformed already.

Share on other sites
Quote:
 Original post by adam17gl_Normal = gl_Normal * gl_NormalMatrix;i think thats the right way

Correct me if I'm wrong, but I think the order matters here, so that should be:

vec3 normal = gl_NormalMatrix * gl_Normal;

Share on other sites
yeah, James has it right

1. 1
2. 2
frob
15
3. 3
4. 4
5. 5
Rutin
12

• 12
• 12
• 58
• 14
• 15
• Forum Statistics

• Total Topics
632115
• Total Posts
3004197

×