Antialiasing not working

Hi there,

I’m trying to use AA with panda3d. I’ve set a mode on a node, as described in the documentation, with setAntialias without succes.
I’ve also try to apply Multisampling on render node. I have set my Config.prc file with those attributs :

framebuffer-multisample 1
multisamples 2

But application returns me : “:display(warning): FrameBufferProperties available less than requested.”

Finaly I have check result of base.win.getFbProperties().getMultisamples(). It give me a pretty 0 :slight_smile:

I’m on ubuntu, and my graphic card drivers are working fine and provide Multisampling up to x8.
NVidia’s settings are set to let application overriding.

So, question : What am I missing here ? :slight_smile:

Panda in opengl mode will engage FSAA instead of more traditional MSAA modes. The FSAA mode is rarer than MSAA and may not be supported by your videocard. David (drwr) will work on the issue I believe, but it might take a while before it’s fixed.

Ok, thank you zhao for your answer.

I don’t know how panda3d’s development is working but is there a roadmap or something I can look at to know when this issue should be fixed ?

I’m not sure this is related to the problems that zhao encountered with antialiasing. Rather, it appears that your driver is not reporting the existence of multisample buffers, perhaps because of the particular interface we are using to open a window in Panda. Does it complain about FBConfig or XVisual earlier?

David

Hi david.
Maybe I’m a little bit curious, but what did you mean with ‘particular interface to open Panda’s window’ ? Is there somethings to know about this ? Anyway, I’m interest on the inner working of Panda, I’m open to learn details on this.

Otherwise, I’ve got no complains about FBConfig or XVisual… Should be log somewhere ?

There are different ways to create an OpenGL context. X11, especially, provides multiple different interfaces to do this. Some older Linux implementations only provide the older interfaces; some Linux implementations only provide the newer interfaces; some provide all interfaces but with some features available only in certain interfaces.

Panda uses glx to open a graphics window on Linux. Other applications might use a different interface. Even within glx, there are multiple different interfaces that have come and gone over the years.

You can find the code to do this in the glxdisplay subdirectory of the Panda3D source code; I invite you to study it and see what it is doing. Of course, you’ll have to read the base class implementations and related classes as well; you’ll find these in other parts of the source code.

If you can find the magic combination that allows your particular graphics drivers to successfully open an OpenGL context with a multisample-enabled framebuffer, we’d love to have your input. :slight_smile:

David

Again, thank you for your explanations drwr.

I will take a look to the Panda3D source code. If I found magic inside, I would be happy to share it :slight_smile:
Also, if on your side you see anything that can help, please keep me inform.

vash

Any update on this situation? Im new to Panda3d and having the same issue. Kinda lost here.

This is a very old thread, describing an issue that no longer exists in the latest version of Panda3D. If you are running into issues setting up multisampling, please create a new thread describing what you have tried so far and an exact description of the problem you are running into.