Update: I’m now convinced it is the pip installation (and by it’s extension, the pip wheel), if you want to know why, listen to this long story below.
So while I was testing, I hatched the idea to use the official sdks (both 32bit and 64bit) and extract the direct3d plugin from them.
At first I installed the 32bit sdk to my VMware virtual machine (windows xp), and I obtained the pandadx9.dll from it, then vary hesitantly I installed the 64bit sdk to my bootcamp windows 8 installation.
And I obtained the dll file from it, of course both did not work, now I heard something bad would happen if one were the install the official sdk when the pip install already exist, so I had feared the worst about my sdk installed to my windows 8.
So I went ahead and tried it out, and if you read the previous post, I had last left it where the config only attempts to load direct3d, so I was expecting a error message of no graphics pipeline if the sdk still worked.
The script booted up, and the game ran slowly, what? this had to be the openGL plugin loaded, so did the config just reset? so typed up a search from the C drive for the config.prc (since I do not know where it is located) and I get two entries.
This makes since because of the newly install from the official sdk, so as joke, I thought let me match up the config files where both only load direct3d, when I loaded up the script, the game ran at full speed and at this point I know the direct3d kicked in.
Perplexed, I made a guess that panda3d must have now loaded from the official install instead of the pip installation, and to confirm this I decided to do a windows search on the directory of the official install and yup did I find it’s own “pandadx9.dll” file.
So I decided to copy that pandadx9.dll file to inject into the runtime, so I ran the setup.py to begin building the runtime once again, there was something I did not notice before, and that was it grabbed a 32bit wheel.
Then it dawned on me that “win32” from the setup.py is 32bit windows! so what was 64bit windows? I needed to know as I my windows 8 installation was 64bit, doing a bit of research I found only one entry that was both windows and 64bit.
And that was “win_amd64”, now I knew of this entry from the article Thaumaturge showed me, but did not use it because the word “AMD”, you see I use intel processors and I know AMD has there own x86 based processors, so I assumed this wouldn’t work.
But doing research on the internet, I found out it has that name because AMD supposedly invented the x64 instruction set for x86 processors, not because of a compatibility issue, so I went ahead and build the win_amd64 runtime.
And, no, it did not work, so doing a bit more research on these forums, I read in a post that the developers of Panda3d were aiming to make the least license burden copies of Panda3d when composing the wheels, that is probably why the direct3d plugin is missing and not functional, so there you go.
I would have to make a wheel myself that includes direct3d in it’s makeup, but sadly that is way too advanced for me, so I guess windows users are going to have deal with needing more powerful hardware (I,m vary sorry about this).