2014-02-08 4 views
5

Die OpenGL documentation für gluProject schreibt, dass die Projektion von Punkt v berechnet wird unter Verwendung der gegebenen Projektions- und Modellansichtsmatrix über v'' = P * M * v, dann werden Fensterkoordinaten unter Verwendung des aktuellen Darstellungsbereichs, z. winZ = (v''(2) + 1)/2.Ist die Dokumentation für gluProject fehlende perspektivische Teilung?

Ist nicht die perspektivische Teilung von v'' von v''(3) fehlt? Also sollten wir wirklich Formeln wie winZ = (v''(2)/v''(3) + 1)/2 haben.

Dies stimmt mit der OpenGL-Implementierung meiner Maschine und der Implementierung auf dem OpenGL wiki überein.

Also, ist die Dokumentation falsch?

+0

Ich habe eine vage Erinnerung an das Stolpern in diese vor ein paar Jahren zurück, aber ich kann keine Hinweise finden. – Thomas

Antwort

3

Ja, die Dokumentation scheint die Teilung zu fehlen (was übrigens der einzige Grund ist, GLU_FALSE zurückzugeben). Überprüfen Sie zum Beispiel die mesa implementation (Zeilen 249-252).

Verwandte Themen