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.