|
|
|
|
@ -52,6 +52,7 @@ bool initGLTexture(const util_image image, GLuint& tex_id);
|
|
|
|
|
bool loadMeshIntoGL(default_render_object* ro_out, mesh_info* mi_in); |
|
|
|
|
inline void updateMatrices(default_shader_program* shader, |
|
|
|
|
camera& cam, |
|
|
|
|
glm::mat4 world_xform, |
|
|
|
|
glm::mat4 node_xform); |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
@ -157,7 +158,7 @@ drawDefault(render_objects* r_objs,
|
|
|
|
|
default_shader_program* shader = sw.default_shader; |
|
|
|
|
default_render_object* objects = (default_render_object*) r_objs->objects; |
|
|
|
|
glUseProgram(shader->program_id); |
|
|
|
|
updateMatrices(shader, cam, objects->node_xform); |
|
|
|
|
updateMatrices(shader, cam, world_transform, objects->node_xform); |
|
|
|
|
if (lights->needs_update) lightsUpdate(lights, shader); |
|
|
|
|
|
|
|
|
|
for (uint i = 0; i < r_objs->count; i++) { |
|
|
|
|
@ -289,8 +290,11 @@ loadMeshIntoGL(default_render_object* ro_out, mesh_info* mi_in)
|
|
|
|
|
inline void |
|
|
|
|
updateMatrices(default_shader_program* shader, |
|
|
|
|
camera& cam, |
|
|
|
|
glm::mat4 world_xform, |
|
|
|
|
glm::mat4 node_xform) |
|
|
|
|
{ |
|
|
|
|
glUniformMatrix4fv( |
|
|
|
|
shader->world_transform_id, 1, GL_FALSE, &world_xform[0][0]); |
|
|
|
|
glUniformMatrix4fv(shader->model_matrix_id, 1, GL_FALSE, &node_xform[0][0]); |
|
|
|
|
glUniformMatrix4fv(shader->view_matrix_id, 1, GL_FALSE, &cam.view[0][0]); |
|
|
|
|
glUniformMatrix4fv(shader->projection_matrix_id, 1, GL_FALSE, |
|
|
|
|
|