Multisample Issues - Strange Behavior

To use shaders with dx9, you need to download the latest build, not the pre-packaged SDK. Most shaders will work correctly then.

As for the hardware multisampling issue, there are some bugs.

  1. Under Dx9 if you enable multi-sampling, your off-screen buffers will have screwed up depth-testing. So if you need to use off-screen buffers, you can’t use multi-sampling under Dx9.

  2. Under Opengl, the anti-aliasing (at least for Panda under windows), is not MSAA but something closer to FSAA. FSAA is equivalent to rendering to a 2x buffer and then downsizing. ie., if your windows resolution is 1024x768, the internal GPU draw buffer is actually 2048x1536, which is auto-sampled down to 1024x768 at the end. This is a big deal if you want to do a lot of post-processing, or particles as EVERYTHING requires 4x pixel fill rate.

Bottom line, if you need to do anything fancy, don’t use hardware multisampling.

If you want to do something fancy and still want AA, I suggest you looking into shader solutions like MLAA and FXAA. Pretty much everyone seems to be going down this route anyway, and it’s a very viable alternative to hardware AA.