From: Luke Lau Date: Fri, 12 Oct 2018 22:00:30 +0000 (+0100) Subject: Add belly to triangle X-Git-Tag: assignment-3~1 X-Git-Url: http://git.lukelau.me/?p=opengl.git;a=commitdiff_plain;h=c5d984e4904ae7b286bf095a1c640cc25cebe9be Add belly to triangle --- diff --git a/main.cpp b/main.cpp index 1df11ec..67c3ebe 100644 --- a/main.cpp +++ b/main.cpp @@ -86,7 +86,7 @@ void drawPyramids(float d, glm::vec3 lightPos) { glUniformMatrix4fv(modelId, 1, GL_FALSE, glm::value_ptr(model)); - glDrawArrays(GL_TRIANGLES, 0, 12); + glDrawArrays(GL_TRIANGLES, 0, 18); } }; @@ -166,12 +166,20 @@ GLuint setupBuffers(glm::vec3* vertices, glm::vec3* normals, GLuint progId) { 1, 0, 0, 1, 0, 0, 1, 1, + 0, 1, 0, 1, + 1, 0, 0, 1, + 0, 0, 1, 1, + + 0, 1, 0, 1, + 1, 0, 0, 1, + 0, 0, 1, 1, + 0, 1, 0, 1, 1, 0, 0, 1, 0, 0, 1, 1 }; - GLuint numVerts = 12; + GLuint numVerts = 18; GLuint vbo; glGenBuffers(1, &vbo); @@ -307,7 +315,7 @@ void validateProgram(GLuint progId) { } void init() { - glm::vec3 vertices[12] = { + glm::vec3 vertices[18] = { glm::vec3(0.0f, 1.0f, 0.0f), glm::vec3(1.0f, -1.0f, -1.0f), glm::vec3(-1.0f, -1.0f, -1.0f), @@ -322,12 +330,19 @@ void init() { glm::vec3(0.0f, 1.0f, 0.0f), glm::vec3(1.0f, -1.0f, 1.0f), - glm::vec3(1.0f, -1.0f, -1.0f) + glm::vec3(1.0f, -1.0f, -1.0f), + + glm::vec3(1, -1, 1), + glm::vec3(-1, -1, 1), + glm::vec3(-1, -1, -1), + glm::vec3(-1, -1, -1), + glm::vec3(1, -1, -1), + glm::vec3(1, -1, 1) }; // work out the normals - glm::vec3 normals[12]; - for (int i = 0; i < 4; i++) { + glm::vec3 normals[18]; + for (int i = 0; i < 6; i++) { glm::vec3 a = vertices[i * 3]; glm::vec3 b = vertices[i * 3 + 1]; glm::vec3 c = vertices[i * 3 + 2];