在 netbeans 7.4 上运行 jogl VBO

Posted

技术标签:

【中文标题】在 netbeans 7.4 上运行 jogl VBO【英文标题】:running jogl VBO on netbeans 7.4 【发布时间】:2014-02-12 12:04:02 【问题描述】:

我是 jogl 的新手,并尝试使用 VBO 渲染矩形。 有两个数组:第一个数组是

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);

但运行后的代码只显示黑屏(((

【问题讨论】:

【参考方案1】:

你修改过投影矩阵和模型视图矩阵吗?如果您的顶点不在视锥体中,您将看不到它们。

您可以使用我的示例并将其修改为使用 VBO: http://en.wikipedia.org/wiki/Java_OpenGL#Code_example

请记住,the official JogAmp forum 是获取有关 JOGL 答案的更好地方。

【讨论】:

以上是关于在 netbeans 7.4 上运行 jogl VBO的主要内容,如果未能解决你的问题,请参考以下文章

NetBeans IDE 7.4怎样创建桌面应用程序

netbeans 7.4 和 phonegap sdk 位置

Netbeans 7.4每个方法规则引入“最多10行”。这条规则来自哪里?

linux c++ netbeans 7.4 opengl问题

NetBeans IDE 7.4下载安装

在 netbeans 中将 FacebookConnect 添加到科尔多瓦