Hey Leute, ich bin mit openGL rum und ich zeichne gerade einen einfachen Würfel und ich frage mich, ob ich die VBO/IBO/CBO in meiner Cube-Klasse speichern?Ist es möglich, ein VBO in einer C++ - Klasse zu speichern?
Like:
class Cube {
private:
GLuint vBO;
GLuint cBO;
GLuint iBO;
Und dann würde ich nennen:
void Cube::setupDataBuffer() {
glGenBuffers(1, &vBO);
glBindBuffer(GL_ARRAY_BUFFER, vBO);
glBufferData(GL_ARRAY_BUFFER, sizeof(vertexBufferData), vertexBufferData, GL_STATIC_DRAW);
glGenBuffers(1, &iBO);
glBindBuffer(GL_ELEMENT_ARRAY_BUFFER, iBO);
glBufferData(GL_ELEMENT_ARRAY_BUFFER, sizeof(indexBufferData), indexBufferData, GL_STATIC_DRAW);
glGenBuffers(1, &cBO);
glBindBuffer(GL_ARRAY_BUFFER, cBO);
glBufferData(GL_ARRAY_BUFFER, sizeof(colorBufferData), colorBufferData, GL_STATIC_DRAW);
}
Aber wenn ich will, dann scheint den Würfel in meinem main.cpp nichts ziehen, aber wenn habe ich die VBO/CBO/IBO in meinem main und führen Sie den anderen Code dort auch den Würfel erscheint.
Also meine Frage wäre: Wie kann ich Pufferobjekte in meiner Klasse generieren und binden? Ich arbeite mit opengl 3.3 durch die Art und Weise
"* Wie kann ich Pufferobjekte in meiner Klasse generieren und binden? *" Code ändert sich nicht, nur weil er "in meiner Klasse" ist. Wenn Sie also wissen, wie Sie überhaupt Pufferobjekte verwenden, sollten Sie sie innerhalb einer Klasse verwenden können. –