src/scene.c

changeset 83
f7ce0db6f72b
parent 82
4e1e698f4b0d
child 87
874a02a683c5
equal deleted inserted replaced
82:4e1e698f4b0d 83:f7ce0db6f72b
138 glEnable(GL_DEPTH_TEST); 138 glEnable(GL_DEPTH_TEST);
139 glClear(GL_DEPTH_BUFFER_BIT); 139 glClear(GL_DEPTH_BUFFER_BIT);
140 140
141 // Sprites 141 // Sprites
142 // ------- 142 // -------
143 // TODO: implement view matrix for 2D worlds
144 shader = &asc_active_window->glctx.shader.sprite.program; 143 shader = &asc_active_window->glctx.shader.sprite.program;
145 glUseProgram(shader->id); 144 glUseProgram(shader->id);
146 glUniformMatrix4fv(shader->projection, 1, 145 glUniformMatrix4fv(shader->projection, 1,
147 GL_FALSE, camera->projection); 146 GL_FALSE, camera->projection);
147 glUniformMatrix4fv(shader->view, 1,
148 GL_FALSE, camera->view);
148 149
149 // render opaque sprites from front to back 150 // render opaque sprites from front to back
150 glDisable(GL_BLEND); 151 glDisable(GL_BLEND);
151 render_iter = cxListBackwardsIterator(render_group[ASC_RENDER_GROUP_SPRITE_OPAQUE]); 152 render_iter = cxListBackwardsIterator(render_group[ASC_RENDER_GROUP_SPRITE_OPAQUE]);
152 cx_foreach(AscSprite const *, node, render_iter) { 153 cx_foreach(AscSprite const *, node, render_iter) {

mercurial