TestTriangle
This commit is contained in:
@@ -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);
|
||||
|
||||
@@ -23,9 +23,9 @@ class TestTriangle : public Archimedes::Module {
|
||||
std::list<std::function<void()>>::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;
|
||||
|
||||
Reference in New Issue
Block a user