I have been running my app on Windows XP using Panda3d 1.5.4 with both Dx8 and Dx9 without problems.
Running the app with 1.6.0 results in the following:
setting load-display pandadx9 in config.prc causes a runtime error about dsdx9_29.dll not found.
When my skybox is enabled
Dx8 causes ppython to generate a fatal application fault. display(warning): FrameBufferProperties available less than requested is printed on the console.[/list]
That’s interesting. Is the warning all you get? Does just pviewing your model crash too? Could you make a simple case to reproduce and post it somewhere so we can take a look?
There are lots of versions of DirectX9. I’m betting that 1.5.4 was compiled against an older version of DirectX9, and 1.6.0 was compiled against a new version. In order to run successfully against this newer version, you will have to download the latest DIrectX9 runtime; try using dxwebsetup.exe from Microsoft.
Does it really say “dsdx9_29.dll”, or does it say “d3dx9_29.dll”? The latter file is the name of the dll file for DirectX9 (there are lots of different version numbers of this file; you should have all of them in your c:/windows/system32 directory).
Which d3dx9_*.dll files do you have in c:/windows/system32?
Perhaps there is a bug in cube map support, either in your driver or in Panda’s dx8 and dx9 layers? I’m pretty sure that Panda’s support for cube maps works pretty well, though, so maybe it’s a driver issue on your end. What kind of graphics card do you have? Have you tried updating your graphics drivers?
Upgrading Panda to version 1.6.1 has solved the problem. 1.6.0 must have had some incompatibility with Directx as nothing else has changed on the system.