Ich habe ein einfaches 2D-Dreieck auf dem Bildschirm angezeigt, ich möchte die Farbpufferdaten jedes Bild aktualisieren, so ändert sich die Farbe des Dreiecks ständig, aber ich bin nicht sicher Wie aktualisiert man die Daten effizient?wie vertex buffer daten häufig aktualisieren (jedes frame) opengl
Dies ist der Code für den Farbpuffer:
GLfloat colourVert[] = {
0.0f, 1.0f, 0.0f,
1.0f, 0.0f, 0.0f,
0.0f, 0.0f, 1.0f
};
GLuint colourBuffer;
glGenBuffers(1, &colourBuffer);
glBindBuffer(GL_ARRAY_BUFFER, colourBuffer);
glBufferData(GL_ARRAY_BUFFER, sizeof(colourVert), colourVert, GL_DYNAMIC_DRAW);
glEnableVertexAttribArray(1);
glVertexAttribPointer(1, 3, GL_FLOAT, GL_FALSE, 0, 0);
Muss ich etwas in diesen Zeilen hinzufügen müssen oder muss ich die Shadern ändern, kann jede Hilfe bitte, danke für jemand erklären.
Sie sollten entscheiden, welche Art von OpenGL Sie wollen, da die Antwort weitgehend davon abhängt. Und bitte geben Sie auch an, welche Version. Zum Beispiel verwendet es 3.0 VAOs, um Attributbindungen zu speichern, während 2.0 dies nicht tut. – BDL
@BDL In IOS opengles 2.0 unterstützt vollständig VAOs aber nicht Android – Sung