OpenGL koordinatensystem

Kingkook

Aktives Mitglied
Liebe Com,

ich versuche gerade mich ein wenig in OpenGL einzuarbeiten.Dazu habe ich momentan ( programmiert in Java in Eclipse für Android ) folgenden Code:

Java:
        ByteBuffer buffer = ByteBuffer.allocateDirect( 3 * 3 * 4 );
        buffer.order(ByteOrder.nativeOrder());
        vertices = buffer.asFloatBuffer()();
        vertices.put( -0.5f );
        vertices.put( 0.5f );
        vertices.put( 0.0f );		
        vertices.put( 1.0f );
        vertices.put( 0.0f );
        vertices.put( 0.0f );	
        vertices.put( 1.5f );
        vertices.put( 1.0f );
        vertices.put( 0.0f );
        vertices.rewind();

und

Java:
       gl.glViewport(0, 0, activity.getViewportWidth(), activity.getViewportHeight());
        	gl.glEnableClientState(GL10.GL_VERTEX_ARRAY );    
        	gl.glVertexPointer(3, GL10.GL_FLOAT, 0, vertices);
        	gl.glDrawArrays(GL10.GL_TRIANGLES, 0, 3);

Jetzt würde ich gern statt der hier verwendeten Floats mit Integer Werten arbeiten.Dazu habe ich aus dem FloatBuffer vertices einen IntBudder gemacht, und dann den byteBuffer buffer verwendet .asIntBuffer();
Danach habe ich die Float werte einfach gegen beliebige Int Werte vertauscht.jetzt weiß ich aber nicht wie ich folgende Zeile ändern sollte um mit Ints zu arbeiten:

Java:
gl.glVertexPointer(3, GL10.GL_FLOAT, 0, vertices);

Hab ich mir das ganze zu einfach gemacht oder wie könnte ich das Problem lösen?

Liebe Grüße und Danke im voraus

Kooki
 

schalentier

Gesperrter Benutzer
Java:
gl.glVertexPointer(3, GL10.GL_INT, 0, vertices);

Sollte klappen, aber wieso machst du Ints drauss? Zumindest bei den Vertex Koordinaten ergibt das wenig Sinn und ein Int ist genauso gross wie ein Float, du sparst also auch keinen Speicher.
 

Kingkook

Aktives Mitglied
Java:
gl.glVertexPointer(3, GL10.GL_INT, 0, vertices);

Sollte klappen, aber wieso machst du Ints drauss? Zumindest bei den Vertex Koordinaten ergibt das wenig Sinn und ein Int ist genauso gross wie ein Float, du sparst also auch keinen Speicher.

aber GL10.GL_INT zeigt er mir immer als Fehler an.
Ich möchte es ändern, da ich es gern auf ein altes Programm von mir umschreiben möchte, in denen ich mit Ints als Koordinaten arbeite ( oben links = 0,0 usw. ).
 

schalentier

Gesperrter Benutzer
Was kommt denn ueberhaupt fuern Fehler? Was fuer eine OpenGL Lib benutzt du? Evtl. unterstuetzt die ueberhaupt keine Ints als Vertex Koords? Steck doch einfach deine Integer in den FloatBuffer, nichts anderes macht die Grafikkarte auch mit deinen Ints...
 

Kingkook

Aktives Mitglied
Also,

der angezeigte fehler ist:
Java:
GL_INT cannot be resolved or is not a field

Egal in welcher konstellation ( GL10 oder 11, .GL_Int oder .Int )

verwendete Lib ist :

Java:
javax.microedition.khronos.opengles.GL10;

Wenn ich Ints zB :

Java:
        vertices.put( 10 );
        vertices.put( 10 );
        vertices.put( 0 );		
        vertices.put( 30 );
        vertices.put( 10 );
        vertices.put( 0 );	
        vertices.put( 20 );
        vertices.put( 30 );
        vertices.put( 0 );
        vertices.rewind();

startet er zwar, aber es ist nichts zu sehen, obwohl die gegeben Koordinaten meineswissens, ein kleines Dreieck in der oberen linken Ecke Zeichnen sollten.
 

schalentier

Gesperrter Benutzer
Ich vermute mal, dein Objekt ist nicht im sichtbaren Bereich. Machst du 2D Sachen? Dann hilft dir vielleicht [c]GL11.glOrtho(0, width, height, 0, -1, 1)[/c]. Damit machste eine 2D Projektion und der sichtbare Bereich ist von 0,0 -> width, height.
 
Ähnliche Java Themen
  Titel Forum Antworten Datum
O 3D-Grafik OpenGL CubeMaps - Skybox Rendering AWT, Swing, JavaFX & SWT 0
X 3D-Grafik [OpenGL] First Person Camera AWT, Swing, JavaFX & SWT 2
E 3D-Grafik LWJGl OpenGL Version vor Erstellung des Displays abfragen AWT, Swing, JavaFX & SWT 2
B OpenGl lwjgl Verständnisproblem AWT, Swing, JavaFX & SWT 5
D OpenGL ansprechen AWT, Swing, JavaFX & SWT 2
N 3D-Grafik OpenGL FPS Einbruch AWT, Swing, JavaFX & SWT 18
N JOGL-Code != C OpenGL-Code? AWT, Swing, JavaFX & SWT 9
N 3D-Grafik OpenGL Texturindexe AWT, Swing, JavaFX & SWT 4
F AWT Component in OpenGL anzeigen? AWT, Swing, JavaFX & SWT 18
ChillSn Geteiltes Fenster in Bedienoberfläche und OpenGL-Ausgabebereich AWT, Swing, JavaFX & SWT 11
S swing + openGL in c++? AWT, Swing, JavaFX & SWT 8
M Swing und OpenGL AWT, Swing, JavaFX & SWT 3
L JavaFX KoordinatenSystem AWT, Swing, JavaFX & SWT 1
M Koordinatensystem für Projektorientiertes Arbeiten AWT, Swing, JavaFX & SWT 2
A Swing Koordinatensystem wird gezeichnet verschwindet aber und die Einteilungen bleiben nicht bestehen AWT, Swing, JavaFX & SWT 5
S Koordinatensystem wird nicht gezeichnet AWT, Swing, JavaFX & SWT 5
J Koordinatensystem AWT, Swing, JavaFX & SWT 2
S Koordinatensystem AWT, Swing, JavaFX & SWT 6
El_Lobo Swing bei Update von Graphik Koordinatensystem nicht jedesmal neu zeichnen AWT, Swing, JavaFX & SWT 2
M Graphics auf JFrame Koordinatensystem AWT, Swing, JavaFX & SWT 3
U Swing KSKB: JComboBox Koordinatensystem AWT, Swing, JavaFX & SWT 3
L SWT Draw2d und Gef Koordinatensystem und Gitternetz? AWT, Swing, JavaFX & SWT 5
L SWT Koordinatensystem in Swt? AWT, Swing, JavaFX & SWT 4
S AWT Schiffeversenken-Koordinatensystem wird nicht richtig angezeigt. AWT, Swing, JavaFX & SWT 6
C AWT Graphic 2D Frage zum Koordinatensystem AWT, Swing, JavaFX & SWT 6
M Aktuelle Mausposition im Koordinatensystem AWT, Swing, JavaFX & SWT 3
G Werte in Koordinatensystem zeichnen AWT, Swing, JavaFX & SWT 11
H Darstellung einer Kurve im Koordinatensystem AWT, Swing, JavaFX & SWT 8
L Java 3d Koordinatensystem AWT, Swing, JavaFX & SWT 3
D JPanel Koordinatensystem -> Ursprung verändern. AWT, Swing, JavaFX & SWT 2
C Koordinatensystem drehen AWT, Swing, JavaFX & SWT 3
G Linien in ein Koordinatensystem zeichen AWT, Swing, JavaFX & SWT 7
H funktionen in ein koordinatensystem zeichen AWT, Swing, JavaFX & SWT 5

Ähnliche Java Themen


Oben