From bd032299892a5dc4d504ed6eb5c3de50f360a731 Mon Sep 17 00:00:00 2001 From: ganovelli Date: Mon, 8 Nov 2010 11:03:18 +0000 Subject: [PATCH] patch to force immediate mode (bug with vbo to be solved) bug in call glTexCoordPointer fixed --- wrap/gl/splatting_apss/splatrenderer.h | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/wrap/gl/splatting_apss/splatrenderer.h b/wrap/gl/splatting_apss/splatrenderer.h index 02b2c733..fad2606c 100644 --- a/wrap/gl/splatting_apss/splatrenderer.h +++ b/wrap/gl/splatting_apss/splatrenderer.h @@ -746,10 +746,16 @@ void SplatRenderer::drawSplats(std::vector & meshes, vcg::G // check if we have to use the immediate mode if(meshes.empty()) return; int nV = 0; + + /* temporary patch: If the number of vertices is above IMMEDIATE_MODE_THR, + use the immediate mode + */ + const int IMMEDIATE_MODE_THR = 0; + unsigned int ii = 0; for(; ii < meshes.size();++ii){ nV+=meshes[ii]->vn; - if((nV>150000) || (meshes[ii]->vn!=(int) meshes[ii]->vert.size())) + if((nV>IMMEDIATE_MODE_THR) || (meshes[ii]->vn!=(int) meshes[ii]->vert.size())) break; } bool immediatemode = ii::drawSplats(std::vector & meshes, vcg::G glTexCoordPointer( 1, GL_FLOAT, - size_t(m.vert[1].cR())-size_t(m.vert[0].cR()), + size_t(&m.vert[1].cR())-size_t(&m.vert[0].cR()), &m.vert[0].cR() ); glEnableClientState(GL_TEXTURE_COORD_ARRAY);