ZFX
ZFX Neu
Home
Community
Neueste Posts
Chat
FAQ
IOTW
Tutorials
Bücher
zfxCON
ZFXCE
Mathlib
ASSIMP
NES
Wir über uns
Impressum
Regeln
Suchen
Mitgliederliste
Membername:
Passwort:
Besucher:
4440478
Jetzt (Chat):
19 (0)
Mitglieder:
5239
Themen:
24223
Nachrichten:
234554
Neuestes Mitglied:
-insane-

ZFX
Coding-Foren
OpenGL API + SDL
Re: OpenGL Java Newbie Fenster schwarz
Normal
AutorThema
opengler Offline
ZFX'ler


Registriert seit:
05.08.2008

Berlin
OpenGL Java Newbie Fenster schwarzNach oben.
Hallo zusammen,

ich bin Neuling was opengl angeht. Ich habe mir jetzt mehrere bsp. angesehen und mein erstes Projekt selbst umgesetzt.
Leider verstehe ich nicht warum mein Fenster schwarz ist, es müsste mind. mal ein quad zeichnen.

Code:
public void init(GLAutoDrawable drawable) {
        GL gl = drawable.getGL();
        gl.glClearColor(0, 0, 0, 0);
        gl.glMatrixMode(GL.GL_PROJECTION);
        gl.glLoadIdentity();
        gl.glOrtho(0, 1, 0, 1, -1, 1);

    }

   private void drawScene(GL gl, boolean select) { 
         gl.glClear(GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT);       //Clear The Screen And The Depth Buffer
         gl.glLoadIdentity();                                         //Reset The View
         gl.glTranslatef(-1.5f,0.0f,-8.0f);                  // Move Left 1.5 Units And Into The Screen 8(not 6.0 like VC.. not sure why)
         gl.glBegin(GL_TRIANGLES);                      // Drawing Using Triangles
         gl.glVertex3f( 0.0f, 1.0f, 0.0f);                    // Top
         gl.glVertex3f(-1.0f,-1.0f, 0.0f);                // Bottom Left
         gl.glVertex3f( 1.0f,-1.0f, 0.0f);                // Bottom Right
         gl.glEnd();                            // Finished Drawing The Triangle
         gl.glTranslatef(3.0f,0.0f,0.0f);                // Move Right 3 Units
         gl.glBegin(GL_QUADS);                        // Draw A Quad
         gl.glVertex3f(-1.0f, 1.0f, 0.0f);                              // Top Left
         gl.glVertex3f( 1.0f, 1.0f, 0.0f);                // Top Right
         gl.glVertex3f( 1.0f,-1.0f, 0.0f);                // Bottom Right
         gl.glVertex3f(-1.0f,-1.0f, 0.0f);                // Bottom Left
         gl.glEnd();                            // Done Drawing The Quad
    }

    public void reshape(GLAutoDrawable drawable, int x, int y,int width, int height) {
         // Reset The ModalView Matrix
         System.out.println(\"Width : \"+width+\" Height: \"+height);
         if(height==0)height=1;
         GL gl = drawable.getGL();
         gl.glViewport(0, 0, width, height);                       // Reset The Current Viewport And Perspective Transformation
         gl.glMatrixMode(GL_PROJECTION);                           // Select The Projection Matrix
         gl.glLoadIdentity();                                      // Reset The Projection Matrix
         glu.gluPerspective(45.0f, width / height, 0.1f, 100.0f);  // Calculate The Aspect Ratio Of The Window
         gl.glMatrixMode(GL_MODELVIEW);                            // Select The Modelview Matrix
         gl.glLoadIdentity();
    }

   public void display(GLAutoDrawable drawable) {
        GL gl = drawable.getGL();

        //glj.gljMakeCurrent();
                // OpenGL Primitiv zeichnen
        gl.glBegin(GL_POLYGON);
        gl.glColor3f(1,0,0);    gl.glVertex3f(-1,-1,0);
        gl.glColor3f(0,1,0);    gl.glVertex3f( 1,-1,0);
        gl.glColor3f(0,0,1);    gl.glVertex3f( 0, 1,0);
        gl.glEnd();
        gl.glClear(GL.GL_COLOR_BUFFER_BIT);
        gl.glBegin(GL.GL_TRIANGLES);

        gl.glColor3f(1, 0, 0);
        gl.glVertex3f(0.25f, 0.25f, 0);

        gl.glColor3f(0, 1, 0);
        gl.glVertex3f(0.5f, 0.25f, 0);

        gl.glColor3f(0, 0, 1);
        gl.glVertex3f(0.25f, 0.5f, 0);

        gl.glEnd();

        gl.glFlush();
    }


Das sollten die wichtigsten Methoden sein. Habe noch eine GUI Klasse (Frame) um das Fenster anzuzeigen.

1 Mal gendert, zuletzt am 17.08.2008, 06:39:10 Uhr von opengler.
17.08.2008, 06:37:58 Uhr
knivil Offline
ZFX'ler


Registriert seit:
03.04.2008

Baden-Württemberg
Re: OpenGL Java Newbie Fenster schwarzNach oben.
Sieht nach Java aus. Wie initialisierst du denn OpenGL? Mit DoubbleBuffer? Wenn ja, so muss irgendwo sowas wie SwapBuffers stehen.
18.08.2008, 16:59:35 Uhr
opengler Offline
ZFX'ler


Registriert seit:
05.08.2008

Berlin
Re: OpenGL Java Newbie Fenster schwarzNach oben.
Ja ist Java. Nein wollte mit DoubleBuffer arbeiten nur leider erkennt er das nicht, obwohl ich eigtl. dachte alle Bibliotheken eingebunden zu haben.

Das Problem hat sich im übrigen auch erledigt, nach ein paar mal compilieren hat er es richtig angezeigt.
21.08.2008, 20:01:56 Uhr
Normal


ZFX Community Software, Version 0.9.1
Copyright 2002-2003 by Steffen Engel