panda3d on debian unstable

I have tried installing panda 3d (the deb for sarge) on debian unstable(python 2.3.5,linux 2.4.14-2). I haven’t checked tuxracer because i did not have it installed on my machine, but i have run ogre3d(game engine with a glx renderer IIRC) examples and they run fine.

I have installed the deb from sarge as dpkg did not complain much. But when i try to run the examples, i got an error about model path.I was unable to figure out where to set this path, so i sym linked the files to the /usr/share/panda3d/models directory which was already in my path.

Question 1: How can i set the model path

Once i set the paths correctly, i ran the example and i got the following errors. I get a blank screen with the errors on the console which i have to kill manually.

Question 2: Is the above error because of installing a stable deb on unstable?
Question 3: I am running this on a laptop which has no graphics card but a 16mb graphics (shared RAM)memory.Is this the reason for this error?

Any pointers will be helpful.

OK, let me translate the important error messages for you:

libGL error: failed to open DRM: Operation not permitted

  • “DRM” is one of the linux mechanisms for accelerated graphics. Something is wrong with DRM.

libGL error: reverting to (slow) indirect rendering
:display:glxdisplay(error): Using GL renderer Mesa GLX Indirect; it is probably a software renderer.

  • The first message is from the graphics library, which has realized that it has no choice but to use software rendering. The second message is from panda, which has realized that we’re probably about to use software rendering.

:display:glxdisplay(error): To allow use of this display add FM_software to your frame buffer mode.

  • The panda config file, as shipped, does not allow panda to fall back to software rendering. Panda has just noticed this. Panda is about to shut down completely because of this. It is telling you (in a rather awkward way) that you can enable software rendering if you wish by changing the panda config file.

The reason we don’t allow it to fall back to software rendering is that many users will try installing panda, and they’ll think that panda is slow, when in reality, it’s just that they haven’t installed their graphics drivers yet. We don’t want them to get the wrong impression.

So anyhow, if your laptop really doesn’t have accelerated 3D, then look in the panda config file for the word “hardware”, and add the word “software” after it.

  • Josh

Josh, thanks for your patient and informative reply.

I have reinstalled panda and that fixed some issues. But i am facing the following issues:

  • I am able to run the panda3d example (panda example in the manual) only as root and the rendering speed is decent.When i try to run it as a user i get a blank screen followed by the same glx error. So, this looks like a file permissions issue, but which file?

  • I have added the software option to the config file after which i am able to render the scene, but the animation is very very slow when i run it as non-root, but as root it looks fine.

  • Also the greeting card example is taking 1-2 minutes to load on my laptop.Is this normal? Someone on the irc reported that it is just 9 seconds.But the panda example is loading in 1-2 seconds and that looks quite fast. I am unable to understand where the errror lies in this case.

Unfortunately, your problem goes deeper than my knowledge level. As you say, it’s obvious that something has the wrong permissions set, but I wouldn’t know what. However, I think I know how to track it down. The following message is from OpenGL, not Panda3D:

libGL error: failed to open DRM: Operation not permitted

When I type that message into google, lots of results came up. Apparently, when people try to run OpenGL on Linux, this is a fairly common problem. So you might want to try digging through those google results.

Your second question: why does the greeting card take forever to run? My wild guess is this: the greeting card uses some very big files. Is it possible that the laptop is struggling to handle such big files? Try an experiment: don’t run the greeting card, instead, just copy the greeting card program from one directory to another (including the model files). Tell me how long the copy operation takes. If it’s very long, then we’ve pinpointed the culprit.