I'm currently trying to get my VMware Workstation 6 guest OS with Windows XP to run the LWJGL demos from the site. Is this possible? I keep getting the following error:
Java Web Start 1.6.0_02
Using JRE version 1.6.0_02 Java HotSpot(TM) Client VM
User home directory = C:\Documents and Settings\Matthew D. Hicks
----------------------------------------------------
c: clear console window
f: finalize objects on finalization queue
g: garbage collect
h: display this help message
m: print memory usage
o: trigger logging
p: reload proxy configuration
q: hide console
r: reload policy configuration
s: dump system and deployment properties
t: dump thread list
v: dump thread stack
0-5: set trace level to <n>
----------------------------------------------------
Use -fullscreen for fullscreen mode
java.lang.Exception: Failed to set display mode.
at org.lwjgl.util.Display.setDisplayMode(Display.java:243)
at org.lwjgl.examples.spaceinvaders.Game.setDisplayMode(Game.java:279)
at org.lwjgl.examples.spaceinvaders.Game.initialize(Game.java:213)
at org.lwjgl.examples.spaceinvaders.Game.<init>(Game.java:179)
at org.lwjgl.examples.spaceinvaders.Game.main(Game.java:580)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
at java.lang.reflect.Method.invoke(Unknown Source)
at com.sun.javaws.Launcher.executeApplication(Unknown Source)
at com.sun.javaws.Launcher.executeMainClass(Unknown Source)
at com.sun.javaws.Launcher.doLaunchApp(Unknown Source)
at com.sun.javaws.Launcher.run(Unknown Source)
at java.lang.Thread.run(Unknown Source)
Unable to enter fullscreen, continuing in windowed mode
Game exiting - exception in initialization:
org.lwjgl.LWJGLException: Could not find a valid pixel format
at org.lwjgl.opengl.WindowsPeerInfo.nChoosePixelFormat(Native Method)
at org.lwjgl.opengl.WindowsPeerInfo.choosePixelFormat(WindowsPeerInfo.java:52)
at org.lwjgl.opengl.WindowsDisplayPeerInfo.initDC(WindowsDisplayPeerInfo.java:54)
at org.lwjgl.opengl.WindowsDisplay.createWindow(WindowsDisplay.java:149)
at org.lwjgl.opengl.Display.createWindow(Display.java:260)
at org.lwjgl.opengl.Display.create(Display.java:743)
at org.lwjgl.opengl.Display.create(Display.java:695)
at org.lwjgl.opengl.Display.create(Display.java:677)
at org.lwjgl.examples.spaceinvaders.Game.initialize(Game.java:216)
at org.lwjgl.examples.spaceinvaders.Game.<init>(Game.java:179)
at org.lwjgl.examples.spaceinvaders.Game.main(Game.java:580)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
at java.lang.reflect.Method.invoke(Unknown Source)
at com.sun.javaws.Launcher.executeApplication(Unknown Source)
at com.sun.javaws.Launcher.executeMainClass(Unknown Source)
at com.sun.javaws.Launcher.doLaunchApp(Unknown Source)
at com.sun.javaws.Launcher.run(Unknown Source)
at java.lang.Thread.run(Unknown Source)
#### Java Web Start Error:
#### null
I've enabled 3D acceleration on the VMware instance, but not sure what else to do.
I personally have never had any luck. I just don't think the drivers for VMWare's pseudo 3D support can handle it.
That's what I was afraid of. I don't suppose there's anything LWJGL could do to make it compatible is there? :)
try running with:
-Dorg.lwjgl.opengl.Display.allowSoftwareOpenGL=true
As far as I know, vmware 3d support only covers direct3d, not opengl.
- elias
Thanks for the tip Matzon, that seems to have gotten me a bit further, but now I'm getting this exception:
java.lang.RuntimeException: OpenGLException caused before any GL commands by LWJ
GLImageGraphics!
at com.jmex.awt.swingui.LWJGLImageGraphics.update(Unknown Source)
at com.jmex.awt.swingui.ImageGraphics.update(Unknown Source)
at com.jmex.awt.swingui.JMEDesktop.draw(Unknown Source)
at com.jme.scene.Spatial.onDraw(Unknown Source)
at com.jme.scene.Node.draw(Unknown Source)
at com.jme.scene.Spatial.onDraw(Unknown Source)
at com.jme.renderer.lwjgl.LWJGLRenderer.draw(Unknown Source)
at com.captiveimagination.jme.GameManager.render(GameManager.java:288)
at com.captiveimagination.jme.GameManager.run(GameManager.java:348)
at java.lang.Thread.run(Unknown Source)
Caused by: org.lwjgl.opengl.OpenGLException: Invalid enum (1280)
at org.lwjgl.opengl.Util.checkGLError(Util.java:56)
... 10 more
This is probably a bug in jME, where it doesn't check for opengl capabilities before using them. The default windows opengl software renderer only supports opengl 1.1 with few extensions.
- elias