A FrameScript describes render operations being done to produce a single frame.
Frame scripts are loaded once like a template, and then compiled to produce an optimized result. When a pass is disabled or re-enabled, the script is rebuilt, so refrain from doing this frequently.
On DX12 and Vulkan, the compile process serves to insert proper barriers, events and semaphore operations such that shader resources are not stomped or read prematurely.
- Copyright
- (C) 2016-2020 Individual contributors, see AUTHORS file
|
| FrameScript () |
| constructor
|
|
virtual | ~FrameScript () |
| destructor
|
|
Memory::ArenaAllocator< BIG_CHUNK > & | GetAllocator () |
| get allocator
|
|
void | SetResourceName (const Resources::ResourceName &name) |
| set name
|
|
const Resources::ResourceName & | GetResourceName () const |
| get name
|
|
void | AddOp (Frame::FrameOp *op) |
| add frame operation
|
|
Frame::FrameOp * | GetOp (const Util::String &search) |
| get frame operation, searches hierarchies using /
|
|
void | AddTexture (const Util::StringAtom &name, const CoreGraphics::TextureId tex) |
| add texture
|
|
const CoreGraphics::TextureId | GetTexture (const Util::StringAtom &name) |
| get texture
|
|
const Util::Dictionary< Util::StringAtom, CoreGraphics::TextureId > & | GetTextures () const |
| get all textures
|
|
void | AddBuffer (const Util::StringAtom &name, const CoreGraphics::BufferId buf) |
| add buffer
|
|
const CoreGraphics::BufferId | GetBuffer (const Util::StringAtom &name) |
| get buffer
|
|
void | Setup () |
| setup script
|
|
void | Discard () |
| discard script
|
|
void | Run (const IndexT frameIndex, const IndexT bufferIndex) |
| run script
|
|
void | Build () |
| build framescript, this will delete and replace the old frame used for Run()
|
|
| RefCounted () |
| constructor
|
|
int | GetRefCount () const |
| get the current refcount
|
|
void | AddRef () |
| increment refcount by one
|
|
void | Release () |
| decrement refcount and destroy object if refcount is zero
|
|
bool | IsInstanceOf (const Rtti &rtti) const |
| return true if this object is instance of given class
|
|
bool | IsInstanceOf (const Util::String &className) const |
| return true if this object is instance of given class by string
|
|
bool | IsInstanceOf (const Util::FourCC &classFourCC) const |
| return true if this object is instance of given class by fourcc
|
|
bool | IsA (const Rtti &rtti) const |
| return true if this object is instance of given class, or a derived class
|
|
bool | IsA (const Util::String &rttiName) const |
| return true if this object is instance of given class, or a derived class, by string
|
|
bool | IsA (const Util::FourCC &rttiFourCC) const |
| return true if this object is instance of given class, or a derived class, by fourcc
|
|
const Util::String & | GetClassName () const |
| get the class name
|
|
Util::FourCC | GetClassFourCC () const |
| get the class FourCC code
|
|