From 5ab345460c32e2df0626a27037694e9f11838d33 Mon Sep 17 00:00:00 2001 From: Nathan Date: Wed, 4 Feb 2026 09:29:15 -0600 Subject: [PATCH] TestTriangle --- .../TestTriangle/TestTriangle.cpp | 17 +++++++++++------ .../TestTriangle/TestTriangle.h | 6 +++--- 2 files changed, 14 insertions(+), 9 deletions(-) diff --git a/modules/Archimedes-Modules/TestTriangle/TestTriangle.cpp b/modules/Archimedes-Modules/TestTriangle/TestTriangle.cpp index 0c223e2..1ebd025 100644 --- a/modules/Archimedes-Modules/TestTriangle/TestTriangle.cpp +++ b/modules/Archimedes-Modules/TestTriangle/TestTriangle.cpp @@ -37,17 +37,17 @@ void TestTriangle::onLoad() { wm->getRenderer()->getCmdList().push_back([this](){ // 0. copy our vertices array in a buffer for OpenGL to use - glBindBuffer(GL_ARRAY_BUFFER, vbo); - glBufferData(GL_ARRAY_BUFFER, sizeof(vertices), vertices, GL_STATIC_DRAW); + //glBindBuffer(GL_ARRAY_BUFFER, vbo); + //glBufferData(GL_ARRAY_BUFFER, sizeof(vertices), vertices, GL_STATIC_DRAW); // 1. then set the vertex attributes pointers - glVertexAttribPointer(0, 3, GL_FLOAT, GL_FALSE, 3 * sizeof(float), (void*)0); - glEnableVertexAttribArray(0); + //glVertexAttribPointer(0, 3, GL_FLOAT, GL_FALSE, 3 * sizeof(float), (void*)0); + //glEnableVertexAttribArray(0); // 2. use our shader program when we want to render an object glUseProgram(program); glBindVertexArray(vao); // 3. now draw the object glDrawArrays(GL_TRIANGLES, 0, 3); - glBindVertexArray(0); + //glBindVertexArray(0); }); rcmd_it = --wm->getRenderer()->getCmdList().end()++; @@ -55,10 +55,15 @@ void TestTriangle::onLoad() { //////////////////////// glGenBuffers(1, &vbo); + glGenVertexArrays(1, &vao); + + glBindVertexArray(vao); + glBindBuffer(GL_ARRAY_BUFFER, vbo); glBufferData(GL_ARRAY_BUFFER, sizeof(vertices), vertices, GL_STATIC_DRAW); - glGenVertexArrays(1, &vao); + glBindBuffer(GL_ARRAY_BUFFER, 0); + glBindVertexArray(0); vs = glCreateShader(GL_VERTEX_SHADER); glShaderSource(vs, 1, &vertexShaderSource, NULL); diff --git a/modules/Archimedes-Modules/TestTriangle/TestTriangle.h b/modules/Archimedes-Modules/TestTriangle/TestTriangle.h index fd32b56..d414ded 100644 --- a/modules/Archimedes-Modules/TestTriangle/TestTriangle.h +++ b/modules/Archimedes-Modules/TestTriangle/TestTriangle.h @@ -23,9 +23,9 @@ class TestTriangle : public Archimedes::Module { std::list>::iterator rcmd_it; float vertices[3 * 3] = { - 0.5, 0.5, 0.0, - 0.5, 0.5, 0.0, - 0.0, 0.5, 0.0 + -0.5f, -0.5f, 0.0f, + 0.5f, -0.5f, 0.0f, + 0.0f, 0.5f, 0.0f }; unsigned int vao, vbo, vs, fs, program;