Java jogl GLEventListener.display()不';t画

Java jogl GLEventListener.display()不';t画,java,jogl,Java,Jogl,我几乎像教程一样设置了这个项目。它创建一个窗口,但不绘制任何东西,它使用opengl 2.0和jogl。 f8fGLbase包 import java.util.ArrayList; import com.jogamp.opengl.GL; import com.jogamp.opengl.GL2; import com.jogamp.opengl.GLAutoDrawable; import com.jogamp.opengl.GLEventListener; public class f

我几乎像教程一样设置了这个项目。它创建一个窗口,但不绘制任何东西,它使用opengl 2.0和jogl。 f8fGLbase包

import java.util.ArrayList;

import com.jogamp.opengl.GL;
import com.jogamp.opengl.GL2;
import com.jogamp.opengl.GLAutoDrawable;
import com.jogamp.opengl.GLEventListener;

public class f8fGLRenderer implements GLEventListener{

ArrayList<f8fGLDrawable> mDrawList=null;

public ArrayList<f8fGLDrawable> getDrawList() {
    return mDrawList;
}

public void setDrawList(ArrayList<f8fGLDrawable> mDrawList) {
    this.mDrawList = mDrawList;
}
public void addDrawList(f8fGLDrawable Drawable) {
    this.mDrawList.add(Drawable);
}
public void removeDrawList(f8fGLDrawable Drawable) {
    this.mDrawList.remove(Drawable);
}

@Override
public void display(GLAutoDrawable gLDrawable) {
    // TODO Auto-generated method stub
    final GL2 gl = gLDrawable.getGL().getGL2();

    gl.glClear(GL2.GL_COLOR_BUFFER_BIT | GL2.GL_DEPTH_BUFFER_BIT);
    gl.glLoadIdentity();
    gl.glTranslatef(-1.5f, 0.0f, -6.0f);
    gl.glColor3f(1.0f, 1.0f, 0.0f);

    gl.glBegin(GL2.GL_TRIANGLES);       
    gl.glVertex3f(0.0f, 1.0f, 0.0f);    
    gl.glVertex3f(-1.0f, -1.0f, 0.0f);  
    gl.glVertex3f(1.0f, -1.0f, 0.0f);   
    gl.glEnd();             
    gl.glTranslatef(3.0f, 0.0f, 0.0f);
    gl.glBegin(GL2.GL_QUADS);               
    gl.glVertex3f(-1.0f, 1.0f, 0.0f);   
    gl.glVertex3f(1.0f, 1.0f, 0.0f);    
    gl.glVertex3f(1.0f, -1.0f, 0.0f);   
    gl.glVertex3f(-1.0f, -1.0f, 0.0f);  
    gl.glEnd();             
    gl.glFlush();
}

@Override
public void dispose(GLAutoDrawable arg0) {
    // TODO Auto-generated method stub

}

@Override
public void init(GLAutoDrawable arg0) {
    // TODO Auto-generated method stub
    System.out.println("init() called");
    GL2 gl = arg0.getGL().getGL2();
    gl.glClearColor(0.0f, 0.0f, 0.0f, 0.0f);
    gl.glShadeModel(GL2.GL_FLAT);
}

@Override
public void reshape(GLAutoDrawable arg0, int arg1, int arg2, int arg3, int arg4) {
    // TODO Auto-generated method stub

}

}
main.java 包prova

  import com.jogamp.opengl.awt.GLCanvas;

  import test.testMain;

  public class Main {

   public static void main(String[] args) {
    // TODO Auto-generated method stub

      new testMain();


}

}

它显示什么?只有黑色背景的窗口,即使我尝试更改背景,它也不会更改。如果使用
glClearColor
更改背景颜色,是否有任何更改?我没有尝试使用glClearColor(new Color());使用mCanvas.setBackgroundColor()@akira elect将其中一些现代例子移植到JOGL:
  import com.jogamp.opengl.awt.GLCanvas;

  import test.testMain;

  public class Main {

   public static void main(String[] args) {
    // TODO Auto-generated method stub

      new testMain();


}

}