2009-02-25 4 views
7

Ich versuche, Fensterkoordinaten in Objektkoordinaten zu konvertieren. Es gibt ein gluUnProject in der GLU-Klasse, für das die aktuelle Modellansicht, die Projektionsmatrizen und das Ansichtsfenster erforderlich sind.Open GL ES auf Android: Wie benutzt man gluUnProject?

Meine Frage ist, wie man diese Matrizen bekommt? Ich habe versucht gl.glGetIntegerv (GL11.GL_MODELVIEW_MATRIX_FLOAT_AS_INT_BITS_OES, Modell, 0); und ((GL11) gl) .glGetFloatv (GL11.GL_MODELVIEW_MATRIX, Modell, 0); aber die erste gibt ein Array von Nullen zurück, und die andere nur zeigt einen Fehler "Methode nicht implementiert".

Ist gluUnProject die richtige Methode für diesen Zweck (d. H. Fenster Koordinaten -> Objektkoordinaten)?

Antwort

2

Sie können die Matrix nicht erhalten, da Android zu diesem Zeitpunkt GLES 1.0 und nicht GLES 1.1 bereitstellt und daher nicht alle verschiedenen glGet * -Funktionen von 1.1 unterstützt.

+1

Danke, ich habe die Matrix selbstständig verfolgt. – focuser

0

Sie können MatrixGrabber in den Beispielen finden, die mit dem SDK bereitgestellt werden. Sie können MatrixGrabber verwenden (der intern die Matrizen verfolgt), um die Modellansichts- und Projektionsmatrizen zu erhalten.