[sldev] force object redraw?

Dave Parks davep at lindenlab.com
Sun Feb 3 23:18:20 PST 2008


In order for a drawable to be picked up by the render pipeline, it has 
to pass the occlusion and frustum culling checks (meaning it must exist 
in a spatial partition) and have valid geometry to draw.  The call to 
markRebuild merely adds it to a queue to be prepared to be drawn, but 
does not actually cause it to be drawn.  markRebuild should only be 
called if the base geometry of the object has changed (like on an LOD 
switch).  The functions in LLPipeline you are looking for are 
"updateCull" (figure out what's visible), "stateSort" (last minute 
preparation for rendering, optimization of render call ordering), and 
"renderGeom" (running through the various drawpools and issuing OpenGL 
drawing commands).


Anna Gulaev wrote:
> Is there a way to force an immediate object redraw? I had thought 
> something like this would work, and I've confirmed that it is being 
> put in the priority queue:
>
> gPipeline.markRebuild( object->mDrawable, LLDrawable::REBUILD_ALL, TRUE);
>
> but it doesn't redraw. The object will redraw if I select it, and 
> sometimes when the window is obscured and then exposed, and sometimes 
> with a LOD change, but I can't get it to redraw when I want it to.
> ------------------------------------------------------------------------
>
> _______________________________________________
> Click here to unsubscribe or manage your list subscription:
> /index.html
>   



More information about the SLDev mailing list