小编yuh*_*h25的帖子

glDrawElements使用错误的VBO?

我正试图在屏幕上渲染两个不同的对象.我可以告诉的问题是OpenGL使用了错误的顶点缓冲区但是使用了正确的索引缓冲区,但我对目前正在做的任何事情都不太了解,因为我已经开始重新学习OpenGL了.

这是目前显示的内容:http://puu.sh/ekhd7/cca60981ab.jpg

如果对于对象的类或者应该如何进行它是一个坏主意,请告诉我 - 我什么都没有.

struct point4{
vec4 vertex;
vec4 color;
};


class Pyramid
{
public:
//Variables and Contructor here 
void init(){
    glGenBuffers( 1, &Arraybufferx );
    glBindBuffer( GL_ARRAY_BUFFER, Arraybufferx );
    glBufferData( GL_ARRAY_BUFFER, sizeof(point4)*16, NULL, GL_STATIC_DRAW );
    glBufferSubData( GL_ARRAY_BUFFER, 0, sizeof(left), left );
    glBufferSubData( GL_ARRAY_BUFFER, sizeof(left)  , sizeof(right), right );               
    glBufferSubData( GL_ARRAY_BUFFER, sizeof(left)*2, sizeof(back), back );
    glBufferSubData( GL_ARRAY_BUFFER, sizeof(left)*3, sizeof(front), front );
    glBufferSubData( GL_ARRAY_BUFFER, sizeof(left)*4, sizeof(bottom), bottom );

    glGenBuffers( 1, &IndexBuffer );
    glBindBuffer( GL_ELEMENT_ARRAY_BUFFER, IndexBuffer );
    glBufferData( GL_ELEMENT_ARRAY_BUFFER, …
Run Code Online (Sandbox Code Playgroud)

c++ opengl

4
推荐指数
1
解决办法
494
查看次数

标签 统计

c++ ×1

opengl ×1