GLCapabilitiesChooser: available[] doesn't account for available VRAM?

Howdy,

Using today’s build of JSR231, I’ve noticed that some (practically) unusable GLCapabilities appear to be passed to my CapabilitiesChooser as elements of the available[] array. The problem appears to be that I can pick a mode which is impossible due to the VRAM requirements.

glxinfo reports some multisample modes, but I assume my hardware cannot (practically) use them due to my video card’s limited VRAM (32MB perhaps?).

My CapabilitiesChooser picks a mode which looks like it’ll be great (it doesn’t know that VRAM is tight) and then ultimately, an invalid GLContext exception is thrown when the GLCanvas is instantiated.

Is there a way to know how much VRAM is available, or to have my CapabilitiesChooser called again with the invalid mode nulled out?

Thanks,

-Ed

Currently no.

Note that you get the window system’s recommended choice passed to you. You may be able to use this as a hint as to what pixel formats will work well.

You may be able to do somewhat of a hack and create, display and destroy multiple GLCanvases in a loop, using different GLCapabilities but the same GLCapabilitiesChooser, to see what the OS recommends for various display formats.

You may be able to create a 1x1 pbuffer for the purpose of figuring out the GL_VENDOR and using a different code path in yor GLCapabilitiesChooser for certain boards.

The capabilities selection mechanism is one of the areas we hope to work on more after the initial release of JSR-231. Unfortunately there isn’t really a good answer for you at this point.