2014-02-12 2 views
0

Я новичок в jogl и пытаюсь сделать прямоугольник с помощью VBO. Там приведены два массива: первый Аррей являетсябегущий jogl VBO на netbeans 7.4

float vertex[] = {-2.0f, -2.0f, -2.0f, 
      2.0f, -2.0f, -2.0f, 
      -2.0f, -2.0f, 2.0f, 
      2.0f, -2.0f, 2.0f 
     }; 

второй массив

float colors[] = {1.0f, 0.0f, 0.0f, 
      0.0f, 1.0f, 0.0f, 
      0.0f, 0.0f, 1.0f, 
      1.0f, 1.0f, 0.0f 
     }; 

, а затем я пытаюсь инициализировать буферы вершин

 pointsbf = Buffers.newDirectFloatBuffer(vertex.length); 
     colorsbf = Buffers.newDirectFloatBuffer(colors.length); 
     pointsbf.put(vertex); 
     colorsbf.put(colors); 
     pointsbf.rewind(); 
     colorsbf.rewind(); 

код выше было написано в INIT(); Код, приведенный ниже, написан в функции DISPLAY();

 gl.glEnableClientState(GL2.GL_VERTEX_ARRAY); 
    gl.glEnableClientState(GL2.GL_COLOR_ARRAY); 

    gl.glVertexPointer(3, GL.GL_FLOAT, 0, pointsbf); 
    gl.glColorPointer(3, GL.GL_FLOAT, 0, colorsbf); 

    gl.glDrawArrays(GL.GL_TRIANGLES, 0, totalNumVerts); 

    gl.glDisableClientState(GL2.GL_VERTEX_ARRAY); 
    gl.glDisableClientState(GL2.GL_COLOR_ARRAY); 

но код после запуска показывает только черный экран (((

ответ

0

Вы изменили матрицу проекции и матрицу вида модели? Если вершины не в вид усеченного, вы не будете см. их

Вы можете использовать мой пример и изменить его использовать РВО: http://en.wikipedia.org/wiki/Java_OpenGL#Code_example

Имейте в виду, что the official JogAmp forum это лучшее место, чтобы получить ответы о JOGL

012.
Смежные вопросы