Sorry to bother you, but I have a bit of a problem. I’m trying to get CEGUI# into a workable condition, and I’m a bit stuck. Specifically, how do I get rid of the “mouse droppings?” That is, when the mouse cursor moves across the screen, its old images are not removed. Looking at the CEGUI C++ code, I see this:
Code: Select all
void System::renderGUI(void)
{
//////////////////////////////////////////////////////////////////////////
// This makes use of some tricks the Renderer can do so that we do not
// need to do a full redraw every frame - only when some UI element has
// changed.
//
// Since the mouse is likely to move very often, and in order not to
// short-circuit the above optimisation, the mouse is not queued, but is
// drawn directly to the display every frame.
//////////////////////////////////////////////////////////////////////////
if (d_gui_redraw)
{
d_renderer->resetZValue();
d_renderer->setQueueingEnabled(true);
d_renderer->clearRenderList();
if (d_activeSheet)
{
d_activeSheet->render();
}
d_gui_redraw = false;
}
d_renderer->doRender();
// draw mouse
d_renderer->setQueueingEnabled(false);
MouseCursor::getSingleton().draw();
// do final destruction on dead-pool windows
WindowManager::getSingleton().cleanDeadPool();
}