Fixed bug with only one model rendering

dev
shariq 8 years ago
parent b7f490ebdb
commit 363b42758f
  1. 8
      src/geometry.c
  2. 4
      src/geometry.h
  3. 2
      src/model.c

@ -300,7 +300,7 @@ static void create_vao(struct Geometry* geometry)
array_len(geometry->vertices) * sizeof(vec3), array_len(geometry->vertices) * sizeof(vec3),
geometry->vertices, geometry->vertices,
GL_STATIC_DRAW); GL_STATIC_DRAW);
renderer_check_glerror("Geometry::create_vbo::vertex"); renderer_check_glerror("geometry:create_vbo:vertex");
glEnableVertexAttribArray(0); glEnableVertexAttribArray(0);
glVertexAttribPointer(0, 3, GL_FLOAT, GL_FALSE, 0, 0); glVertexAttribPointer(0, 3, GL_FLOAT, GL_FALSE, 0, 0);
@ -312,7 +312,7 @@ static void create_vao(struct Geometry* geometry)
array_len(geometry->normals) * sizeof(vec3), array_len(geometry->normals) * sizeof(vec3),
geometry->normals, geometry->normals,
GL_STATIC_DRAW); GL_STATIC_DRAW);
renderer_check_glerror("Geometry::create_vbo::normal"); renderer_check_glerror("geometry:create_vbo:normal");
glEnableVertexAttribArray(1); glEnableVertexAttribArray(1);
glVertexAttribPointer(1, 3, GL_FLOAT, GL_TRUE, 0, 0); glVertexAttribPointer(1, 3, GL_FLOAT, GL_TRUE, 0, 0);
} }
@ -325,7 +325,7 @@ static void create_vao(struct Geometry* geometry)
array_len(geometry->uvs) * sizeof(vec2), array_len(geometry->uvs) * sizeof(vec2),
geometry->uvs, geometry->uvs,
GL_STATIC_DRAW); GL_STATIC_DRAW);
renderer_check_glerror("Geometry::create_vbo::uv"); renderer_check_glerror("geometry:create_vbo:uv");
glEnableVertexAttribArray(2); glEnableVertexAttribArray(2);
glVertexAttribPointer(2, 2, GL_FLOAT, GL_FALSE, 0, 0); glVertexAttribPointer(2, 2, GL_FLOAT, GL_FALSE, 0, 0);
} }
@ -338,7 +338,7 @@ static void create_vao(struct Geometry* geometry)
array_len(geometry->vertex_colors) * sizeof(vec3), array_len(geometry->vertex_colors) * sizeof(vec3),
geometry->vertex_colors, geometry->vertex_colors,
GL_STATIC_DRAW); GL_STATIC_DRAW);
renderer_check_glerror("Geometry::create_vbo::color"); renderer_check_glerror("geometry:create_vbo:color");
glEnableVertexAttribArray(3); glEnableVertexAttribArray(3);
glVertexAttribPointer(3, 3, GL_FLOAT, GL_FALSE, 0, 0); glVertexAttribPointer(3, 3, GL_FLOAT, GL_FALSE, 0, 0);
} }

@ -1,5 +1,5 @@
#ifndef geometry_H #ifndef GEOMETRY_H
#define geometry_H #define GEOMETRY_H
#include "num_types.h" #include "num_types.h"
#include "linmath.h" #include "linmath.h"

@ -80,7 +80,7 @@ void model_render_all(struct Entity* camera_entity, int draw_mode)
for(int j = 0; j < array_len(material->registered_models); j++) for(int j = 0; j < array_len(material->registered_models); j++)
{ {
/* for each registered model, set up uniforms and render */ /* for each registered model, set up uniforms and render */
struct Entity* entity = entity_get(material->registered_models[i]); struct Entity* entity = entity_get(material->registered_models[j]);
struct Model* model = &entity->model; struct Model* model = &entity->model;
struct Transform* transform = &entity->transform; struct Transform* transform = &entity->transform;

Loading…
Cancel
Save