• Create Account

#Actualinfact

Posted 01 June 2012 - 02:50 AM

My point is that lighting in world space will be different to lighting in view space.

distance(vertex*view - light) != distance(vertex - light*view^-1)

this is clear if we let the light origin be 0,0,0, and consider a matrix with no translation, then we have that:

length(vertex*view) != length(vertex)

which is true

In other words, the transformation distorts the lighting

So I wonder why opengl does lighting in view space and not in world space.

Is it for the the sake of having a single modelview matrix instead of separate model and view matrices in the pipeline?

#4infact

Posted 31 May 2012 - 10:26 AM

My point is that lighting in world space will be different to lighting in view space.

distance(vertex*view - light) != distance(vertex - light*view^-1)

this is clear if we let the light origin be 0,0,0, and consider a matrix with no translation, then we have that:

length(vertex*view) != distance(vertex)

which is true

In other words, the transformation distorts the lighting

So I wonder why opengl does lighting in view space and not in world space.

Is it for the the sake of having a single modelview matrix instead of separate model and view matrices in the pipeline?

#3infact

Posted 31 May 2012 - 09:41 AM

My point is that lighting in world space will be different to lighting in view space.

distance(vertex*view - light) != distance(vertex - light*view^-1)

this is clear if we let the light origin be 0,0,0, and consider a matrix with no translation, then we have that:

length(vertex*view) != distance(vertex)

which is true

In other words, the transformation distorts the lighting

So i wonder why opengl does lighting in view space and not in world space.

Is it for the the sake of having a single modelview matrix instead of separate model and view matrices in the pipeline?

#2infact

Posted 31 May 2012 - 09:41 AM

My point is that lighting in world space will be different to lighting in view space.

distance(vertex*view - light) != distance(vertex - light*view^-1)

this is clear if we let the light origin be 0,0,0, and consider a matrix with no translate, then we have that:

length(vertex*view) != distance(vertex)

which is true

In other words, the transformation distorts the lighting

So i wonder why opengl does lighting in view space and not in world space.

Is it for the the sake of having a single modelview matrix instead of separate model and view matrices in the pipeline?

#1infact

Posted 31 May 2012 - 09:40 AM

My point is that lighting in world space will be different to lighting in view space.

distance(vertex*view - light) != distance(vertex - light*view^-1)

this is clear if we let the light origin be 0,0,0, and consider a matrix with no translate, then we have that:

length(vertex*view) != distance(vertex)

which is true

in other words, the transformation distorts the lighting

so i wonder why opengl does lighting in view space and not in world space.

is it for the the sake of having a single modelview matrix instead of separate model and view matrices in the pipeline?

PARTNERS