i think i broke somthing
This commit is contained in:
@@ -1,20 +1,32 @@
|
||||
#include "headers/mesh.h"
|
||||
#include "mesh.h"
|
||||
|
||||
Mesh::Mesh(GLfloat *vertices, unsigned int numVerticies) {
|
||||
Mesh::Mesh(GLfloat *vertices, unsigned int *indices, unsigned int numVerticies) {
|
||||
m_drawCount = numVerticies;
|
||||
|
||||
glGenVertexArrays(1, &m_VAO);
|
||||
glGenBuffers(1, &m_VBO);
|
||||
glGenBuffers(1, &m_EBO);
|
||||
|
||||
glBindVertexArray(m_VAO);
|
||||
|
||||
glGenBuffers(NUM_BUFFERS, m_VBO);
|
||||
glBindBuffer(GL_ARRAY_BUFFER, m_VBO[POSITION_VB]);
|
||||
glBufferData(GL_ARRAY_BUFFER, numVerticies * sizeof(vertices[0]), vertices, GL_STATIC_DRAW);
|
||||
glBindBuffer(GL_ARRAY_BUFFER, m_VBO);
|
||||
glBufferData(GL_ARRAY_BUFFER, sizeof(vertices), vertices, GL_STATIC_DRAW);
|
||||
|
||||
glVertexAttribPointer(0, 3, GL_FLOAT, GL_FALSE, 0, 0);
|
||||
glBindBuffer(GL_ELEMENT_ARRAY_BUFFER, m_EBO);
|
||||
glBufferData(GL_ELEMENT_ARRAY_BUFFER, sizeof(indices), indices, GL_STATIC_DRAW);
|
||||
|
||||
// position attribute
|
||||
glVertexAttribPointer(0, 3, GL_FLOAT, GL_FALSE, 8 * sizeof(float), (void*)0);
|
||||
glEnableVertexAttribArray(0);
|
||||
// color attribute
|
||||
glVertexAttribPointer(1, 3, GL_FLOAT, GL_FALSE, 8 * sizeof(float), (void*)(3 * sizeof(float)));
|
||||
glEnableVertexAttribArray(1);
|
||||
// texture coord attribute
|
||||
glVertexAttribPointer(2, 2, GL_FLOAT, GL_FALSE, 8 * sizeof(float), (void*)(6 * sizeof(float)));
|
||||
glEnableVertexAttribArray(2);
|
||||
|
||||
glBindBuffer(GL_ARRAY_BUFFER, 0);
|
||||
glBindVertexArray(0);
|
||||
|
||||
std::cout << "Mesh loaded successfully" << std::endl;
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user