|
Cogs.Core
|
Public Member Functions | |
| void | initialize (class GraphicsDeviceVK *graphicsDevice) |
| EffectHandle | loadComputeEffect (const StringView &fileName, EffectFlags::EEffectFlags effectFlags=EffectFlags::None) override |
| Load the compute shader with the given file name and create an effect. | |
| EffectHandle | loadComputeEffect (const StringView &fileName, const PreprocessorDefinitions &definitions, EffectFlags::EEffectFlags effectFlags=EffectFlags::None) override |
| Load the compute shader with the given file name and create an effect. | |
| void | releaseEffect (EffectHandle effectHandle) override |
| Release the effect with the given handle, freeing all resources generated during program loading. | |
| void | releaseResources () override |
| Release all allocated effect resources. | |
| EffectHandle | load (const ProcessedContent &vsSource, const ProcessedContent &hsSource, const ProcessedContent &dsSource, const ProcessedContent &gsSource, const ProcessedContent &psSource, const StringView &vsEntryPoint, const StringView &hsEntryPoint, const StringView &dsEntryPoint, const StringView &gsEntryPoint, const StringView &psEntryPoint, const EffectDescription &desc) final |
| bool | initializeEffectLayout (EffectVK &effect) |
Public Member Functions inherited from Cogs::EffectsCommon | |
| EffectHandle | loadEffect (const EffectDescription &description) final |
| Load an effect from the given description. | |
| EffectHandle | loadEffectSource (const EffectDescription &description) |
| EffectHandle | loadEffectContents (const EffectDescription &description, const EffectContents &contents) |
| EffectHandle | loadEffect (const StringView &fileName, EffectFlags::EEffectFlags effectFlags=EffectFlags::None) final |
| Load the given single file effect. | |
| EffectHandle | loadEffect (const StringView &fileName, const PreprocessorDefinitions &defines, EffectFlags::EEffectFlags effectFlags=EffectFlags::None) |
| EffectHandle | loadEffect (const StringView &vsFileName, const StringView &psFileName, EffectFlags::EEffectFlags effectFlags=EffectFlags::None) final |
| Load an effect created from the vertex and pixel shader files given. | |
| EffectHandle | loadEffect (const StringView &vsFileName, const StringView &psFileName, const PreprocessorDefinitions &defines, EffectFlags::EEffectFlags effectFlags=EffectFlags::None) final |
| Load an effect created from the vertex and pixel shader files given, applying the given preprocessor definitions to the shaders. | |
| EffectHandle | loadEffectSource (const StringView &vsSource, const StringView &psSource, EffectFlags::EEffectFlags effectFlags=EffectFlags::None) final |
| Load an effect created from the vertex and pixel shader sources given. | |
| EffectHandle | loadEffectSource (const StringView &vsSource, const StringView &psSource, const PreprocessorDefinitions &defines, EffectFlags::EEffectFlags effectFlags=EffectFlags::None) final |
| Load an effect created from the vertex and pixel shader sources given, applying the given preprocessor definitions to the shaders. | |
| EffectHandle | loadEffectSource (const StringView &vsSource, const StringView &gsSource, const StringView &psSource, EffectFlags::EEffectFlags effectFlags=EffectFlags::None) final |
| Load an effect created from the vertex, geometry, and pixel shader sources given. | |
| EffectHandle | loadEffectSource (const StringView &vsSource, const StringView &gsSource, const StringView &psSource, const PreprocessorDefinitions &defines, EffectFlags::EEffectFlags effectFlags=EffectFlags::None) final |
| Load an effect created from the vertex, geometry, and pixel shader sources given, applying the given preprocessor definitions to the shaders. | |
| EffectVariableHandle | getEffectVariable (EffectHandle effectHandle, const StringView &name) override |
| Get a handle to the variable with the given name in the effect with the given effectHandle. | |
| ConstantBufferBindingHandle | getConstantBufferBinding (EffectHandle effectHandle, const StringView &name) override |
| Get a handle to a constant buffer binding, mapping how to bind a constant buffer to the given effect. | |
| TextureBindingHandle | getTextureBinding (EffectHandle effectHandle, const StringView &name, const unsigned int slot) override |
| Get a handle to a texture object binding, mapping how to bind textures to the given effect. | |
| SamplerStateBindingHandle | getSamplerStateBinding (EffectHandle effectHandle, const StringView &name, const unsigned int slot) override |
| Get a handle to a sampler state object binding, mapping how to bind the sampler state to the given effect. | |
| BufferBindingHandle | getBufferBinding (EffectHandle effectHandle, const StringView &name) override |
| Get a handle to a buffer binding. | |
| void | releaseBufferBinding (BufferBindingHandle bufferBindingHandle) override |
| Release a handle to a buffer binding. | |
| void | setIOHandler (IIOHandler *handler) override |
| Sets an external I/O handler to use for I/O operations. | |
| IIOHandler * | getIOHandler () override |
| Gets the external I/O handler. | |
| EffectHandle | load (const ProcessedContent &vsSource, const ProcessedContent &psSource, const StringView &vsEntryPoint, const StringView &psEntryPoint, const EffectDescription &desc) |
| EffectHandle | load (const ProcessedContent &vsSource, const ProcessedContent &gsSource, const ProcessedContent &psSource, const StringView &vsEntryPoint, const StringView &gsEntryPoint, const StringView &psEntryPoint, const EffectDescription &desc) |
| virtual EffectHandle | load (const ProcessedContent &vsSource, const ProcessedContent &hsSource, const ProcessedContent &dsSource, const ProcessedContent &gsSource, const ProcessedContent &psSource, const StringView &vsEntryPoint, const StringView &hsEntryPoint, const StringView &dsEntryPoint, const StringView &gsEntryPoint, const StringView &psEntryPoint, const EffectDescription &desc)=0 |
| void | initialize (struct IBuffers *buffers) |
Public Member Functions inherited from Cogs::IEffects | |
| virtual EffectHandle | loadEffect (const EffectDescription &description)=0 |
| Load an effect from the given description. | |
| virtual EffectHandle | loadEffect (const StringView &fileName, EffectFlags::EEffectFlags effectFlags=EffectFlags::None)=0 |
| Load the given single file effect. | |
| virtual EffectHandle | loadComputeEffect (const StringView &fileName, EffectFlags::EEffectFlags effectFlags=EffectFlags::None)=0 |
| Load the compute shader with the given file name and create an effect. | |
| virtual EffectHandle | loadComputeEffect (const StringView &fileName, const PreprocessorDefinitions &definitions, EffectFlags::EEffectFlags effectFlags=EffectFlags::None)=0 |
| Load the compute shader with the given file name and create an effect. | |
| virtual EffectHandle | loadEffect (const StringView &vsFileName, const StringView &psFileName, EffectFlags::EEffectFlags effectFlags=EffectFlags::None)=0 |
| Load an effect created from the vertex and pixel shader files given. | |
| virtual EffectHandle | loadEffect (const StringView &vsFileName, const StringView &psFileName, const PreprocessorDefinitions &definitions, EffectFlags::EEffectFlags effectFlags=EffectFlags::None)=0 |
| Load an effect created from the vertex and pixel shader files given, applying the given preprocessor definitions to the shaders. | |
| virtual EffectHandle | loadEffectSource (const StringView &vsSource, const StringView &psSource, EffectFlags::EEffectFlags effectFlags=EffectFlags::None)=0 |
| Load an effect created from the vertex and pixel shader sources given. | |
| virtual EffectHandle | loadEffectSource (const StringView &vsSource, const StringView &gsSource, const StringView &psSource, EffectFlags::EEffectFlags effectFlags=EffectFlags::None)=0 |
| Load an effect created from the vertex, geometry, and pixel shader sources given. | |
| virtual EffectHandle | loadEffectSource (const StringView &vsSource, const StringView &psSource, const PreprocessorDefinitions &definitions, EffectFlags::EEffectFlags effectFlags=EffectFlags::None)=0 |
| Load an effect created from the vertex and pixel shader sources given, applying the given preprocessor definitions to the shaders. | |
| virtual EffectHandle | loadEffectSource (const StringView &vsSource, const StringView &gsSource, const StringView &psSource, const PreprocessorDefinitions &definitions, EffectFlags::EEffectFlags effectFlags=EffectFlags::None)=0 |
| Load an effect created from the vertex, geometry, and pixel shader sources given, applying the given preprocessor definitions to the shaders. | |
| virtual void | releaseEffect (EffectHandle effectHandle)=0 |
| Release the effect with the given handle, freeing all resources generated during program loading. | |
| virtual EffectVariableHandle | getEffectVariable (EffectHandle effectHandle, const StringView &name)=0 |
| Get a handle to the variable with the given name in the effect with the given effectHandle. | |
| virtual ConstantBufferBindingHandle | getConstantBufferBinding (EffectHandle effectHandle, const StringView &name)=0 |
| Get a handle to a constant buffer binding, mapping how to bind a constant buffer to the given effect. | |
| virtual TextureBindingHandle | getTextureBinding (EffectHandle effectHandle, const StringView &name, const unsigned int slot)=0 |
| Get a handle to a texture object binding, mapping how to bind textures to the given effect. | |
| virtual BufferBindingHandle | getBufferBinding (EffectHandle effectHandle, const StringView &name)=0 |
| Get a handle to a buffer binding. | |
| virtual void | releaseBufferBinding (BufferBindingHandle bufferBindingHandle)=0 |
| Release a handle to a buffer binding. | |
| virtual SamplerStateBindingHandle | getSamplerStateBinding (EffectHandle effectHandle, const StringView &name, const unsigned int slot)=0 |
| Get a handle to a sampler state object binding, mapping how to bind the sampler state to the given effect. | |
| virtual void | releaseResources ()=0 |
| Release all allocated effect resources. | |
| virtual void | annotate (EffectHandle handle, const StringView &name) |
| Associate a name with an object for use in graphics debugging. | |
| virtual void | annotateVS (EffectHandle handle, const StringView &name) |
| Associate a name with an object for use in graphics debugging. | |
| virtual void | annotateGS (EffectHandle handle, const StringView &name) |
| Associate a name with an object for use in graphics debugging. | |
| virtual void | annotatePS (EffectHandle handle, const StringView &name) |
| Associate a name with an object for use in graphics debugging. | |
| virtual void | annotateCS (EffectHandle handle, const StringView &name) |
| Associate a name with an object for use in graphics debugging. | |
| virtual void | setIOHandler (IIOHandler *handler)=0 |
| Sets an external I/O handler to use for I/O operations. | |
| virtual IIOHandler * | getIOHandler () |
| Gets the external I/O handler. | |
Public Attributes | |
| class GraphicsDeviceVK * | graphicsDevice |
| ResourceMap< EffectHandle, EffectVK > | effects |
Public Attributes inherited from Cogs::EffectsCommon | |
| SafeResourceMap< EffectHandle, Effect > | effects |
| ResourceMap< BufferBindingHandle, BufferBinding > | bufferBindings |
| IIOHandler * | handler = nullptr |
| std::unique_ptr< IIOHandler > | defaultHandler |
| struct IBuffers * | buffers = nullptr |
Definition at line 20 of file EffectsVK.h.
| void Cogs::EffectsVK::initialize | ( | class GraphicsDeviceVK * | graphicsDevice | ) |
Definition at line 33 of file EffectsVK.cpp.
| bool Cogs::EffectsVK::initializeEffectLayout | ( | EffectVK & | effect | ) |
Definition at line 58 of file EffectsVK.cpp.
|
finalvirtual |
Implements Cogs::EffectsCommon.
Definition at line 147 of file EffectsVK.cpp.
|
overridevirtual |
Load the compute shader with the given file name and create an effect.
| fileName | File name of a compute shader. |
| definitions | A set of preprocessor definitions to apply to the shader source. |
Implements Cogs::IEffects.
Definition at line 45 of file EffectsVK.cpp.
|
overridevirtual |
Load the compute shader with the given file name and create an effect.
| fileName | File name of a compute shader. |
Implements Cogs::IEffects.
Definition at line 40 of file EffectsVK.cpp.
|
overridevirtual |
Release the effect with the given handle, freeing all resources generated during program loading.
| effectHandle | Valid handle to a previously created effect. |
Implements Cogs::IEffects.
Definition at line 50 of file EffectsVK.cpp.
|
overridevirtual |
Release all allocated effect resources.
Implements Cogs::IEffects.
Definition at line 54 of file EffectsVK.cpp.
| ResourceMap<EffectHandle, EffectVK> Cogs::EffectsVK::effects |
Definition at line 48 of file EffectsVK.h.
| class GraphicsDeviceVK* Cogs::EffectsVK::graphicsDevice |
Definition at line 46 of file EffectsVK.h.