|
| CompositorPassShadows (const CompositorPassShadowsDef *definition, Camera *defaultCamera, CompositorNode *parentNode, const RenderTargetViewDef *rtv) |
|
| ~CompositorPassShadows () override |
|
ResourceTransitionArray & | _getResourceTransitionsNonConst () |
|
virtual void | analyzeBarriers (const bool bClearBarriers=true) |
| Bakes all of the memory barriers / resource transition that will be needed before executing a GPU command like rendering, copying/blit or compute. More...
|
|
void | execute (const Camera *lodCamera) override |
|
Vector2 | getActualDimensions () const |
|
Camera * | getCullCamera () const |
|
const CompositorPassDef * | getDefinition () const |
|
const CompositorNode * | getParentNode () const |
|
RenderPassDescriptor * | getRenderPassDesc () const |
|
const ResourceTransitionArray & | getResourceTransitions () const |
|
const FastArray< CompositorShadowNode * > & | getShadowNodes () const |
|
const CompositorTextureVec & | getTextureDependencies () const |
|
CompositorPassType | getType () const |
|
virtual void | notifyCleared () |
| @See CompositorNode::_notifyCleared More...
|
|
virtual void | notifyDestroyed (const UavBufferPacked *buffer) |
|
virtual void | notifyDestroyed (TextureGpu *channel) |
| @See CompositorNode::notifyDestroyed More...
|
|
virtual bool | notifyRecreated (const TextureGpu *channel) |
| @See CompositorNode::notifyRecreated More...
|
|
virtual void | notifyRecreated (const UavBufferPacked *oldBuffer, UavBufferPacked *newBuffer) |
|
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 More...
|
|
void * | operator new (size_t sz, void *ptr) |
| placement operator new More...
|
|
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 More...
|
|
void | profilingBegin () |
|
void | profilingEnd () |
|
virtual void | resetNumPassesLeft () |
|
CompositorPassShadows This class enables force-updating multiple shadow nodes in batch in its own pass.
This is useful because shadow nodes may "break" a render pass in 3:
- Normal rendering to RT
- Shadow node update
- Continue Normal rendering to the same RT
This is an unnecessary performance hit on mobile (TBDR) thus executing them earlier allows for a smooth:
- Shadow node update (all of them? Up to you)
- Normal rendering to RT
Don't forget to set shadow nodes to reuse in the pass scene passes or else you may overwrite them unnecessarily
- Author
- Matias N. Goldberg
- Version
- 1.0