문제

The OpenGL documentation for gluProject writes that the projection of point v is computed using the given projection and model-view matrix via v'' = P * M * v then window coordinates are derived using the current viewport, e.g. winZ = (v''(2) + 1)/2.

Isn't this missing the perspective division of v'' by v''(3) ? So then we should really have formulas like winZ = (v''(2)/v''(3) + 1)/2.

This agrees with my machine's opengl implementation and the implementation on the OpenGL wiki.

So, is the documentation wrong?

도움이 되었습니까?

해결책

Yes, the documentation appears to be missing the divide (which is the only reason for returning GLU_FALSE, by the way). Check the mesa implementation (lines 249-252), for instance.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top