Version 26 (modified by art, 12 years ago) (diff)


Welcome to the osgPPU webpage

osgPPU is a library to use with  OpenSceneGraph. It provides you with a graph based specification of a computation pipeline which is based on so called PostProcessingUnits (PPUs). Each ppu does render a screen aligned quad in a frame buffer object. During the rendering a shader can be applied. The results (there could be many per one pass) are passed to the next ppu in the graph. The outcoming result of the pipeline can either be shown on the screen by using PostProcessingUnitOut? or used as a texture for other cool things.

Currently the osgPPU is in beta phase. So I would be very appreciated on every input, like: critics, suggestions, patches etc.


  • Very usefull also for GPGPU (general purpose GPU) computations
  • Supports multiple rendering targets (MRT) as output of ppu
  • Supports multiple inputs to a ppu
  • Supports out of the pipeline texture inputs to a ppu
  • Mipmapping supported
  • Use PostProcessUnitOutCapture? to capture frames in upto 4096x4096 resolution (or 8192x8192 on G80 GPUs)
  • Example application describes how to implement HDR Rendering with osgPPU
  • An example application showing Depth Of Field emulation is in development...
  • An example application showing Deferred Lighting with osgPPU is in development...


  • At least OpenGL 1.5 (support for FBOs and Shader programs is required)
  • Shader Model 3.0 and higher GPUs (well tested on nVidia, no idea about ATI)
  •  OpenSceneGraph 2.2 (compatibility for 2.0 is in development)


There exists a doxygen of the complete source code. You can find it  here

A first time osgPPU was presented as a part of a project at the  OpenSceneGraph BOF at Siggraph 2007 in San Diego, USA. You can download the presentation slides from  here.


To get the latest revision of the source use following command:

svn co svn:// osgPPU

There is currently no stable release. Please use the source from the svn.


19th, January 2008 osgPPU does now compiles under Windows. Thank to Stephane Lamoliatte for providing a proper CMake build system to the osgPPU project. Currently osgPPU is under heavy development and there is less time left before first developer release (pre stable release). To accomplish this mission some more test on different platforms and in different applications are required.