diff options
author | Sergey Sharybin <sergey.vfx@gmail.com> | 2016-09-02 17:17:20 +0300 |
---|---|---|
committer | Sergey Sharybin <sergey.vfx@gmail.com> | 2016-09-05 11:14:07 +0300 |
commit | 3b52c4056aafe8267feb45b934e02d5047bb8179 (patch) | |
tree | 713418cfb48d6609a7557a40bee8951f02d50bcf /source/blender/blenkernel/intern/editderivedmesh.c | |
parent | 062732905ae52855d26884378de029e49bc68fec (diff) |
Fix glUniform called from glBegin/glEnd blocks
Was causing some invalid operations in OpenGL.
After more testing should be fine for 2.78.
Diffstat (limited to 'source/blender/blenkernel/intern/editderivedmesh.c')
-rw-r--r-- | source/blender/blenkernel/intern/editderivedmesh.c | 20 |
1 files changed, 1 insertions, 19 deletions
diff --git a/source/blender/blenkernel/intern/editderivedmesh.c b/source/blender/blenkernel/intern/editderivedmesh.c index 1aba76baa2c..e51a3c3c4b0 100644 --- a/source/blender/blenkernel/intern/editderivedmesh.c +++ b/source/blender/blenkernel/intern/editderivedmesh.c @@ -1410,24 +1410,6 @@ static void emDM_drawMappedFacesTex( emDM_drawFacesTex_common(dm, NULL, setDrawOptions, compareDrawOptions, userData); } -static void emdm_pass_attrib_update_uniforms(const DMVertexAttribs *attribs) -{ - int i; - if (attribs->totorco) { - glUniform1i(attribs->orco.gl_info_index, 0); - } - for (i = 0; i < attribs->tottface; i++) { - glUniform1i(attribs->tface[i].gl_info_index, 0); - } - for (i = 0; i < attribs->totmcol; i++) { - glUniform1i(attribs->mcol[i].gl_info_index, GPU_ATTR_INFO_SRGB); - } - - for (i = 0; i < attribs->tottang; i++) { - glUniform1i(attribs->tang[i].gl_info_index, 0); - } -} - /** * \note * @@ -1548,7 +1530,7 @@ static void emDM_drawMappedFacesGLSL( do_draw = setMaterial(matnr = new_matnr, &gattribs); if (do_draw) { DM_vertex_attributes_from_gpu(dm, &gattribs, &attribs); - emdm_pass_attrib_update_uniforms(&attribs); + DM_draw_attrib_vertex_uniforms(&attribs); if (UNLIKELY(attribs.tottang && bm->elem_index_dirty & BM_LOOP)) { BM_mesh_elem_index_ensure(bm, BM_LOOP); } |