Hello Martin,

Martin Karlsson wrote:
> Hi!
> 
> I seam to have isolated the problem to the line:
> Thread::getCurrentChangeList()->merge(*clientHandle->getChangeList());
> 
> In my display function:
> void OpenSGClient::display(){
>       if(needSync==true) {
>               needSync = false;
>               std::cout << "display have recieved a needSync\n";
> 
>               syncBarrier->enter(2);
>               std::cout << "display is syncing\n";
> Thread::getCurrentChangeList()->merge(*clientHandle->getChangeList());
>               clientHandle->getChangeList()->applyAndClear();
>               syncBarrier->enter(2);
>       }
>       mgr->redraw();
>       OSG::Thread::getCurrentChangeList()->clearAll();
>       glClear(GL_COLOR_BUFFER_BIT);
>       glutSwapBuffers();
> }
> 
> So how to work around this problem? because if I don't have this line, 
> the render servers will never notice any change to the scene. Can I use 
> any other command than merge?

none, that I can think of, sorry.
I'd like to know the contents of the change lists, can you change the
display function around the merge to this:

syncBarrier->enter(2)
std::cout << "display is syncing\n";
std::cerr << "Current Thread CL -- PRE" << std::endl;
Thread->getCurrentChangeList()->dump();
std::cerr << "Client Thread CL -- PRE" << std::endl;
clientHandle->getChangeList()->dump();

Thread::getCurrentChangeList()->merge(*clientHandle->getChangeList());
clientHandle->getChangeList()->applyAndClear();

std::cerr << "Current Thread CL -- POST" << std::endl;
Thread->getCurrentChangeList()->dump();
std::cerr << "Client Thread CL -- POST" << std::endl;
clientHandle->getChangeList()->dump();
syncBarrier->enter(2);

Could you also please set the environment variable OSG_LOG_LEVEL=DEBUG,
run your program

yourApp >yourApp.log 2>&1

and mail me the yourApp.log file (possibly by PM since this is likely a
big file: carsten_neumann AT gmx DOT net) ?


        Thanks,
                Carsten



-------------------------------------------------------------------------
This SF.net email is sponsored by DB2 Express
Download DB2 Express C - the FREE version of DB2 express and take
control of your XML. No limits. Just data. Click to get it now.
http://sourceforge.net/powerbar/db2/
_______________________________________________
Opensg-users mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/opensg-users

Reply via email to