【问题标题】:glGenBuffers does not set bufferglGenBuffers 不设置缓冲区
【发布时间】:2014-08-24 12:34:33
【问题描述】:

glGenBuffers(1, &bufferID)没有成功分配ID到bufferID有什么原因吗?

#define GL_GLEXT_PROTOTYPES 1
#include <GL/gl.h>
#include <GL/glu.h>
#include <GL/glext.h>
#include <stdio.h>

int main (void) {
    GLuint bufferID = 0;
    glGenBuffers( 1, &bufferID );
    printf("bufferID: %d\n", bufferID);
    return 0;
}

编译为

g++ -o glTest glTest.c -lGL -lGLU

输出:

arrID: 0

我在 AWS EC2 g2.2xlarge 实例上使用 Ubuntu 14.04。

【问题讨论】:

    标签: c++ c opengl amazon-web-services amazon-ec2


    【解决方案1】:

    你需要一个当前的 opengl 上下文来调用任何 gl 函数。您可以使用 glx 或 egl 创建上下文并使其成为当前的。

    【讨论】:

      【解决方案2】:

      您没有 GL 上下文,所以所有的赌注都没有了。在没有当前调用线程的上下文的情况下调用任何 GL 函数是完全未定义的行为。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2011-07-10
        • 2012-10-22
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多