rawalpundi
07-16-2010, 05:43 PM
Hello,
I use gluUnProject to get the ray perpendicular to a pixel of the screen :
gluUnProject(x, viewport[3] - y, 0, modelviewMatrix, projectionMatrix, viewport, &x1, &y1, &z1)
gluUnProject(x, viewport[3] - y, 1, modelviewMatrix, projectionMatrix, viewport, &x2, &y2, &z2)
In the render function, I use an ortho projection :
glMatrixMode(GL_PROJECTION)
glLoadIdentity()
glOrtho(-2, 2, -2, 2, -2, 2)
I noticed a strange return of the gluUnProject function when I put a z-translation of the objects in the render function :
glMatrixMode(GL_MODELVIEW)
glLoadIdentity()
glTranslated(0, 0, -1)
=> I get : z1 = 3, z2 = -1
I would have expected the following result : z1 = 2, z2 = -2 because it is the bounding box of the ortho projection.
I get this expected result for x1/x2 and y1/y2 when I put a x- or y-translation.
Any idea why the z-axis seems different ?
Thanks
I use gluUnProject to get the ray perpendicular to a pixel of the screen :
gluUnProject(x, viewport[3] - y, 0, modelviewMatrix, projectionMatrix, viewport, &x1, &y1, &z1)
gluUnProject(x, viewport[3] - y, 1, modelviewMatrix, projectionMatrix, viewport, &x2, &y2, &z2)
In the render function, I use an ortho projection :
glMatrixMode(GL_PROJECTION)
glLoadIdentity()
glOrtho(-2, 2, -2, 2, -2, 2)
I noticed a strange return of the gluUnProject function when I put a z-translation of the objects in the render function :
glMatrixMode(GL_MODELVIEW)
glLoadIdentity()
glTranslated(0, 0, -1)
=> I get : z1 = 3, z2 = -1
I would have expected the following result : z1 = 2, z2 = -2 because it is the bounding box of the ortho projection.
I get this expected result for x1/x2 and y1/y2 when I put a x- or y-translation.
Any idea why the z-axis seems different ?
Thanks