Image processing with pixel shaders

Is it possible to use Panda3D to do image processing with pixel shaders?

I’m thinking of something like, load a texture into a quad, with a shader in it and render it to an offscreen buffer, then save that buffer into a second image.

Would this be possible?

Yup. I think this is how Panda’s bloom effects work.
You can look into the FilterManager class, which can set up such stuff automatically for you, or you can manually set up offscreen buffers, like in the Glow Demo, the Advanced version.

If using the FilterManager class, the documentation is found here: … iew=markup
Use the renderSceneInto function (which returns a quad) to render the scene into a quad. Then, you could apply a shader to the quad. If you wanted another pass, you could do renderQuadInto to re-apply the same technique.

Ah great. I was planning on using this for generating procedural textures (similar to a .theprodukkt demo) to a texture cache. Since most of my textures are designed with MapZone it would be a waste of space to not to generate them when needed.