CS::RenderManager::AutoFX::FramebufferTex< RenderTree > Class Template Reference (Crystal Space 2.0 Public API Reference)

| ## Public API Reference

- Main Page
- Related Pages
- Modules
- Namespaces
- Classes
- Files

- Class List
- Class Index
- Class Hierarchy
- Class Members

Public Member Functions
CS::RenderManager::AutoFX::FramebufferTex< RenderTree > Class Template Reference

Render manager helper for automatic framebuffer content textures. More...

`#include <csplugincommon/rendermanager/autofx_framebuffertex.h>`

Inheritance diagram for CS::RenderManager::AutoFX::FramebufferTex< RenderTree >:

List of all members.

## Public Member Functions
void | operator() (typename RenderTree::MeshNode *node, size_t layer, typename RenderTree::MeshNode::SingleMesh &mesh, const csBitArray &names)
| Operator doing the actual work.

## Detailed Description

### template<typename RenderTree>
class CS::RenderManager::AutoFX::FramebufferTex< RenderTree >

Render manager helper for automatic framebuffer content textures.

When some shader used in a render tree context uses a framebuffer content texture (SV name `tex framebuffer color` or `tex framebuffer depth`) the contents of the framebuffer before the mesh using the shader is rendered are copied to the textures.

Usage: Functor for TraverseUsedSVSets. Application must happen after shader and ticket setup (e.g. SetupStandardTicket()). Example:

     // Define type using rendermanager-dependent render tree and context setup
     typedef CS::RenderManager::AutoFX::FramebufferTex<RenderTreeType,
       ContextSetupType> AutoFramebufferTexType;

     // Instantiate helper in rendering
     RenderManagerType::AutoFramebufferTexType fxFB (
       rmanager->framebufferTexPersistent);
     // Set up a traverser for the sets of shader vars used over each mesh
     typedef TraverseUsedSVSets<RenderTreeType,
       RenderManagerType::AutoFramebufferTexType> SVTraverseType;
     SVTraverseType svTraverser
       (fxFB, shaderManager->GetSVNameStringset ()->GetSize (), fxFB.svUserFlags);
     // Do the actual traversal.
     ForEachMeshNode (context, svTraverser);

The template parameter RenderTree gives the render tree type.

Definition at line 131 of file autofx_framebuffertex.h.

## Member Function Documentation

template<typename RenderTree >

void CS::RenderManager::AutoFX::FramebufferTex< RenderTree >::operator() | ( | typename RenderTree::MeshNode * | node,
|  | size_t | layer,
|  | typename RenderTree::MeshNode::SingleMesh & | mesh,
|  | const csBitArray & | names
| ) |  | `[inline]`

Operator doing the actual work.

If one of the reflection or refraction textures is detected in the set of shader vars used (names) by mesh textures are set up.

Definition at line 143 of file autofx_framebuffertex.h.

The documentation for this class was generated from the following file:

- csplugincommon/rendermanager/autofx_framebuffertex.h