initialization problems


we would like to solve two initialization problems and wonder what would be the best way to handle them with Panda3D:

  • see

can we detect insufficient hardware? what’s the best way to do this? i assume that we can make some calls before we do “import direct.directbase.DirectStart” and react accordingly?

  • is it possible to fallback to pandagl if pandadx9 does not work?

any pointers or hints would be appreciated.


Hmm, that is a pretty messy exit. It’s not supposed to be that messy; it’s supposed to gracefully fail over to DX8, OpenGL, whatever else you might have listed in your Config.prc file for aux-display. That seems like a bug in dxGraphicsStateGuardian9.cxx. You might try replacing the assert() call with a nassertv() call instead, and see what that does for you.

Of course, if you really don’t have any DX9-capable hardware graphics card, these other interfaces will all fail too.


Ah, aux-display is for the fallback?

Hm… we don’t have a aux-display set - the Config.prc we use is directly from Panda3D-1.3.0, only difference there is that we load-display pandadx9 instead of pandagl.

You can add aux-display line(s), one for each fallback display. The form is the same as load-display.