Free Plugins
Most of the plugins on this page are included if you check out the latest free branch of OpenFlipper or download the Windows or Mac binaries.
Some of the plugins are marked as staging. These plugins are not finished yet or need more polishing. Nevertheless, they are already usable. If you want to get these plugins as well, take one of the staging daily builds.
There are different categories of Plugins:
General (14) Basic functionality
Mesh Processing (11) Algorithms to manipulate meshes
File Plugins (9) Importers and exporters
Skeletal Animation (3) Dealing with skeletons and animations
Surface Reconstruction (1) Reconstruction of surfaces from point clouds
Post Processors (11) Special post processing of the rendered images
Renderers (9) Plugins used for rendering in OpenFlipper
Type Plugins (9) Providing the basic datatypes
Renderers
Render Classic
The default classical renderer implements rendering the scene of OpenFlipper with the fixed function pipeline of OpenGL.
It is suitable for most graphics cards and requires only OpenGL 2.0. Therefore the shader support of this Renderer plugin and the resulting pipeline is limited.
Requirements: OpenGL 2.0
Render Deferred Shading
This render plugin integrates deferred shading in OpenFlipper. Additionally, it shows how to perform full MSAA with offscreen render textures.
Requirements: OpenGL 3.2
Branch:Staging
Note:
This plugin is not part of the free branch yet. You can download the staging package on the download page or via the Daily-Builds. For the source code, check out the staging branch.
Render DepthPeeling
The DepthPeeling plugin integrates order-independent transparency rendering in OpenFlipper.
Two variants of depth-peeling are implemented:
- The classical depth peeling approach which peels and blends each layer of the scene from front to back. [Cass Everitt, "Interactive Order-Independent Transparency", NVIDIA OpenGL Applications Engineering 2001 ]
- An optimized depth peeling technique peels the scene from both sides in parallel (front-to-back and back-to-front), which lowers the number of required scene passes.[Louis Bavoil, Kevin Myers, "Order Independent Transparency with Dual Depth Peeling", NVIDIA February 2008 ]
Requirements: OpenGL 3.2
Render Normals
The render normals plugin is used to take the current normals of the objects in the scene and render as colors. It is usefull to inspect the normal information during the rendering or as a result of a computation. As it works directly on the buffers, no additional functionality has to be added to the plugins.
Requirements: OpenGL 3.2
Render Order Independent Transparency
This is an order independent transparency renderer. The method first builds a linked list of all fragments in the scene. In a fullscreen pass, the list of fragments belonging to the same pixel is then manually sorted and blended in back-to-front order. This technique requires only one scene pass, followed by a fullscreen pass. ref: "OIT and GI using DX11 linked lists" by Nick Thibieroz & Holger GrĂ¼n, presentation at GDC 2010
Branch:Staging
Note:
This plugin is not part of the free branch yet. You can download the staging package on the download page or via the Daily-Builds. For the source code, check out the staging branch.
Render Picking
The picking renderer plugin can be used to visualize OpenFlippers picking buffers. The picking functions use standard color picking. This means that all primitives get rendered in their own color. On a mouse click, the color in the picking buffer at the current position is used to lookup the object and possibly which part of the object has been clicked.
The plugin just renders the picking buffer into the output color buffer.
Requirements: OpenGL 2.0
Render Shader Pipeline
As opposed to the internal and classical renderer, the ShaderPipeline plugin implements the fixed fuction behaviour with shaders.
The combinatoric problem of dynamic states such as flat/smooth shading, texturing and light types is solved by dynamically generating and caching shaders for each combination while providing a high flexibility when adding additional shader code.
Requirements: OpenGL 3.2
Render SSAO
The SSAO plugin approximates the ambient occlusion factor by locally sampling the normal and depth-maps of the scene. Sampling is done by randomly rotating offsets within a spherical kernel at each pixel. The occlusion factor is then obtained by comparing the sample position with the actual depth map of the scene. In a final pass, a downsampled and blurred image of the occlusion factor is blended with the color map of the scene.[ Vladimir Kajalin, ShaderX7 - "Screen-Space Ambient Occlusion"]
Image: Left w/ SSAO, Right w/o SSAO
Render Toon
The toon render plugin replaces the default lighting model with cel-shading and additionally outlines silhouettes in a post processing step.
In cel-shading, the diffuse and specular lighting factors are quantized to a fixed pallette. Silhouette outlining is achieved applying a sobel filter for edge detection.
Requirements: OpenGL 3.2