Tim Wang's eLearning Blog

08/28/07

Fix for Graphic Card Drivers Caused Croquet to Crash - Fatal VM error

Filed under: Arts Metaverse and Croquet — timwang @ 06:51:24 pm

My Dell XPS 1710 was sent back for a fix due to the NVIDIA GeForce 7900 GTX failed. The dell technical team replaced the old card with the NVIDIA GeForce 7950 GTX. However, it comes with a specific driver. After re-installing Croquet, it keeps crashing upon starting the world rendering. The error message looks like this: croquet-Fatal-VM-error
"Sorry but the VM has crashed.
Exception code: C00000FD
Exception address: 69929A87
Current byt code: 241
Primitive index: 120"

After checking the crash.dmp file located at the Croquet's root directory, I realize it is a graphic rendering issue could be caused by the graphic card driver...

Then I learned from an email at the smalltalk user list written by Jeff McNeill:

If I understand the issue properly, the new Nvidia drivers are optimized for duo core systems (when present), but the application Croquet is not, so there is a need to force the app to use the Ogl as if there was a single core processor on the computer.

He suggested to turn off the OpenGL Threading Optimization. I went ahead and changed mine, it fixed the problem instantly. Here is how to do it with a nvidia driver, goto display properties, "settings" tab, "advanced" button, choose the GeForce XXXXXX (your video card)" tab, "start nvidia control panel". for GeForce Go 7950, it should look like this:
croquet-vm-error-turn-off-opengl-thread-1.jpg

Then look for a section under "3D configuration", look for a setting for "threaded optimization", it should be put on as "auto" by default, change the setting to "off". Mine looks like this:
croquet-vm-error-turn-off-opengl-thread

This should fix the crash right a way, no need to reboot. Jeff also suggested to modify the registration if you can't find the thread optimization setting with your video card driver:

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Video\
{1714F987-8B2B-498D-A45A-FB2AE3436429}\0000\
_Croquet.exe:Ogl_ThreadControl=dword:00000002

I didn't need to try this, but you can if you know what you are doing.

Comments:

No Comments for this post yet...

This post has 1 feedback awaiting moderation...

Leave a comment:

Your email address will not be displayed on this site.
Your URL will be displayed.

Allowed XHTML tags: <p, ul, ol, li, dl, dt, dd, address, blockquote, ins, del, span, bdo, br, em, strong, dfn, code, samp, kdb, var, cite, abbr, acronym, q, sub, sup, tt, i, b, big, small>
(Line breaks become <br />)
(Set cookies for name, email and url)
(Allow users to contact you through a message form (your email will NOT be displayed.))

hosted by Learning Object Authoring Zone | Learn Mandarin Chinese the Simple Way