Login  Register

Re: Off screen Canvas3D crushes when graphics mode of the display changes

Posted by philjord on Jul 02, 2017; 10:08pm
URL: https://forum.jogamp.org/Off-screen-Canvas3D-crushes-when-graphics-mode-of-the-display-changes-tp4038041p4038051.html

Alexei,
The log files you've attached simply show that there is no real 3D drivers available under Text Mode, and the only driver found was a software emulated OpenGL 1.1 driver, which won't work for Java3D (or anything really). So when Java3D asks for a new Frame Buffer Object (or probably any 3D operation at all) it gets told their is nothing available to support that operation.

This is exactly as expected of course, you are forcing the OS completely swap it's graphics system to a character buffer, so it's not surprising it no longer has any concept of pixels.

The only way anyone could look into this is by installing an XP virtual machine
http://www.download3k.com/articles/How-to-add-an-XP-Mode-Virtual-Machine-to-Windows-10-or-8-using-Hyper-V-00770
and seeing if it uses a real Text Mode for full screen console.

I suspect however that it will use an emulated Text Mode, by way of a real graphics driver forcing the output down to a character buffer. This would probably mean that Java3D would work fine under this environment.

So the problem is really one of return on investment, if someone spends half a day setting up this virtual machine and discovers the graphics drivers are running fine, then we can't solve your issue (as it hasn't been reproduced).

If some one sets up this environment and finds it does truly swap to Text Mode, then it's really likely that there is no way to force the OS to run the graphics driver that's needed, presumably it's totally unloaded and gone.

So what I'm saying is there really isn't a good enough reason to invest it "solving" this issue.

I'd suggest you'd be better off trying to detect the app swap situation and pause all 3D operations and restart them when context switches back to your app, or at least the right graphics mode. But to be honest I expect that all the resources will have been disposed of you and you'll have to rebuild your Java3D universe from scratch in this case.

Sorry I can't be of more help, your project certainly looks very interesting.
Phil.