Hi,

before I go restart X-servers all over the lab, can you give a bit more
info... :)

On 14/11/2011 20:13, Paul Palumbo wrote:
Can somebody do a test for me? I'm using OSG 3.0.0 and this works
with NVIDIA Driver (Linux) 260.19.21 but doesn't seem to work with
newer versions of the driver (e.g. 275.31 beta) with no other changes
being made. I've been in contact with NVIDIA with this problem and
they seem to think that it is an OSG problem.

I'm having trouble when I create an osgViewer, destroy it, restart
the X server and then create the osgViewer.  I've boiled my problem
down to a small test case in the attached file which is a slightly
modified version of osgviewer.

I know this test case is somewhat convoluted but bare with me. Our
application is required to restart the X server before starting to
display an image.

Normally, osgviewer would do the following: 1) osgViewer::Viewer
viewer(arguments); 2) viewer.setSceneData( loadedModel.get() ); 3)
viewer.realize(); 4) viewer.run(); 5) exit(0);

I have modified it to do the following:

Code:

while (forever) { {  // Define a scope of the osgViewer::Viewer
osgViewer::Viewer viewer(arguments); viewer.setSceneData(
loadedModel.get() ); viewer.realize(); viewer.run(); }  //
osgViewer::Viewer scope has ended and its destructor called.
sleep(2); system(“/usr/sbin/gdm-restart”); sleep(20); }

Do you have to do the restart from a C++ app? What happens if you manually restart gdm and then start another osg process? It might be some GL resource that is only released when the process exits. Or a windowing system static that OSG assumes is still valid, but is obviously not since the gl driver restarted.

I know there was a discussion about static resources when e.g. using OSG as part of a larger library or as a plugin. How does one get OSG into its original state without restarting the process... I can go dig it up if you want.

jp



Compile and run this program. Since this program restarts the X
server (with the gdm-restart command) and attempts to display an
image, you will need use two machines (a remote machine and a target
machine). Running this using one machine will cause the program to be
killed when the X server is restarted. To run this program, do the
following:

a. On the console of the target machine, login normally.  Open a
terminal window and type “xhost +” b. From a remote computer login
to your target machine and “setenv DISPLAY :0.0” to keep the
display on the remote machine. c. From this remote computer window,
run the attached version of osgviewer as “osgviewer cow.osg”. d.
Hit the escape key on the target machine to dismiss the cow being
displayed. e. At this point, the target machine X server will
restart. IMMEDIATELY after the X server has restarted, login to the
target machine again from its console. Open a terminal window and
select “xhost +” again.  It you don't do this last part, you will
not have permissions to display an image on the target machine from
the remote machine. The program will give you 20 second before it
attempts to display an image on on the target machine. f. At this
point, you should see a cow image on the display but with this new
driver, we’ve been seeing a totally black image.

When I run this program, instead of seeing the cow image the second
time, I'm seeing a black screen. I didn't see this problem with
earlier version of the NVIDIA driver (also using OSG 3.0.0).

Is anybody else having this problem?

Paul P.

------------------ Read this topic online here:
http://forum.openscenegraph.org/viewtopic.php?p=43865#43865






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

--
This message is subject to the CSIR's copyright terms and conditions, e-mail legal notice, and implemented Open Document Format (ODF) standard. The full disclaimer details can be found at http://www.csir.co.za/disclaimer.html.

This message has been scanned for viruses and dangerous content by MailScanner, and is believed to be clean.

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

Reply via email to