Hi Otto,

do you also _disable_ all other pointers which might be set?

If for example texture pointer is set from other drawables, it surely
will crash when you overflow the current texture pointers size.

OpenGL state can be a beast...

regards Ralph

Am 15.03.2010 16:12, schrieb Otto Cologne:
> Hi,
> 
> ok this is definitely strange. This is what my draw implementation looks like 
> now:
> 
> Code:
> 
>     osg::State& state = *renderInfo.getState();
> 
>     state.setVertexPointer( 3, GL_FLOAT ,0, &(*verts)[0] );
>     state.setColorPointer( 3 , GL_FLOAT ,0 , &(*colors)[0] );
> 
>     for ( size_t i = 0; i < active->size(); ++i )
>     {
>         if ( (*active)[i] )
>         {
>             state.glDrawArraysInstanced( GL_LINE_STRIP, (*startIndexes)[i], 
> (*pointsPerLine)[i], 1);
>         }
>     }
> 
>     state.disableVertexPointer();
>     state.disableColorPointer();
> 
> 
> 
> 
> It works if I only render a few lines, like 2000 or sometimes even up to 35k. 
>  More than that it always crashes in the glDrawArrays call, the point at 
> which the crash occurs is pretty random. Since i tripple checked all my 
> arrays ten times, the only thing i can think of now is that something changes 
> the OpenGL state, thus invalidating the vertex pointer. Now is there a way to 
> check on that guess and if it's the case to prevent it somehow?
> 
> 
> Thank you!
> 
> Cheers,
> Otto
> 
> ------------------
> Read this topic online here:
> http://forum.openscenegraph.org/viewtopic.php?p=25677#25677
> 
> 
> 
> 
> 


_______________________________________________
osg-users mailing list
osg-users@lists.openscenegraph.org
http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org

Reply via email to