Base class that users can derive from in order to implement custom passes for the compositor.  
 More...
|  | 
| virtual CompositorPass * | addPass (const CompositorPassDef *definition, Camera *defaultCamera, CompositorNode *parentNode, const CompositorChannel &target, SceneManager *sceneManager)=0 | 
|  | Creates a CompositorPass from a CompositorPassDef for Compositor Pass of type 'custom'. 
 | 
|  | 
| virtual CompositorPassDef * | addPassDef (CompositorPassType passType, IdString customId, CompositorTargetDef *parentTargetDef, CompositorNodeDef *parentNodeDef)=0 | 
|  | Called from CompositorTargetDef::addPass when adding a Compositor Pass of type 'custom'. 
 | 
|  | 
| void | operator delete (void *ptr) | 
|  | 
| void | operator delete (void *ptr, const char *, int, const char *) | 
|  | 
| void | operator delete (void *ptr, void *) | 
|  | 
| void | operator delete[] (void *ptr) | 
|  | 
| void | operator delete[] (void *ptr, const char *, int, const char *) | 
|  | 
| void * | operator new (size_t sz) | 
|  | 
| void * | operator new (size_t sz, const char *file, int line, const char *func) | 
|  | operator new, with debug line info 
 | 
|  | 
| void * | operator new (size_t sz, void *ptr) | 
|  | placement operator new 
 | 
|  | 
| void * | operator new[] (size_t sz) | 
|  | 
| void * | operator new[] (size_t sz, const char *file, int line, const char *func) | 
|  | array operator new, with debug line info 
 | 
|  | 
| virtual void | translateCustomPass (const AbstractNodePtr &node, CompositorPassDef *customPassDef) | 
|  | Optional override which allows users to define custom properties in the compositor scripts for custom passes. 
 | 
|  | 
Base class that users can derive from in order to implement custom passes for the compositor. 
- How to implement one: You need to derive three classes:
- CompositorPassProvider
- CompositorPassDef
- CompositorPass
 
The first one is this class. You need to overload the two public virtuals. i.e. CompositorPassDef* MyProvider::addPassDef( ... ) { return OGRE_NEW MyPassDef( ... ); }
CompositorPass* MyProvider::addPass( ... ) { return OGRE_NEW MyPass( ... ); }
The second and third one are the implementations. 
- See also
- CompositorPassScene and 
- 
CompositorPassSceneDef, 
- 
CompositorPassQuad and 
- 
CompositorPassQuadDef, 
- 
CompositorPassClear and 
- 
CompositorPassClearDef for examples on how to implement your own pass. For example, you could literally copy the code from CompositorPassClear & CompositorPassClearDef and implement your own custom pass that clears the render target.