class
GpuParameterSet
Contains descriptions for all parameters in a set of programs (ones for each stage) and allows you to write and read those parameters.
All parameter values are stored internally on the CPU, and are only submitted to the GPU once the parameters are bound to the pipeline.
Public
Methods
~GpuParameterSet
staticCreate
Creates a new set of GPU parameters using an object describing the parameters.
- parameterSetLayout
- Description of GPU parameters for a specific GPU pipeline state.
- setIndex
- Index of the parameter set within the pipeline.
~TGpuParameterSet<IsRenderProxy>
GetStructParameter
GetSampledTextureParameter
GetStorageTextureParameter
GetStorageBufferParameter
GetUniformBufferParameter
GetSamplerStateParameter
TryGetStructParameter
TryGetSampledTextureParameter
TryGetStorageTextureParameter
TryGetStorageBufferParameter
TryGetUniformBufferParameter
TryGetSamplerStateParameter
GetUniformBuffer
Gets a uniform buffer from the specified slot/array index combination.
GetSampledTexture
Gets a texture bound to the specified slot/array index combination.
GetStorageTexture
Gets a storage texture bound to the specified slot/array index combination.
GetStorageBuffer
Gets a buffer bound to the specified slot/array index combination.
GetSamplerState
Gets a sampler state bound to the specified slot/array index combination.
GetTextureSurface
Gets information that determines which texture surfaces to bind as a sampled texture parameter.
GetStorageTextureSurface
Gets information that determines which texture surfaces to bind as a storage texture parameter.
SetUniformBuffer
Sets an uniform buffer at the specified slot.
It is up to the caller to guarantee the provided buffer matches uniform descriptor for this slot.
- slot
- Slot at which to bind the buffer, as defined by the pipeline GPU program.
- buffer
- Buffer to bind.
- arrayIndex
- In case the bind point represents an array, index to bind the buffer to.
- offset
- Dynamic offset in the buffer, at which the to start reading the buffer.
Returns: Returns true if the operation succeeded, otherwise logs and errors and returns false.
TrySetUniformBuffer
Equivalent to SetUniformBuffer(const String & , const UniformBufferType & , u32, u32), but doesn't warn if the parameter cannot be found.
Return true if the parameter was found.
SetSampledTexture
Sets a texture at the specified slot.
Returns true if the operation succeeded, otherwise logs and errors and returns false.
SetStorageTexture
Sets a storage texture at the specified slot.
Returns true if the operation succeeded, otherwise logs and errors and returns false.
SetStorageBuffer
Sets a storage buffer at the specified slot combination.
- slot
- Slot at which to bind the buffer, as defined by the pipeline GPU program.
- buffer
- Buffer to bind.
- arrayIndex
- In case the bind point represents an array, index to bind the buffer to.
- view
- Optional view information that controls how is the buffer viewed when bound to the pipeline.
Returns: Returns true if the operation succeeded, otherwise logs and errors and returns false.
SetSamplerState
Sets a sampler state at the specified slot.
Returns true if the operation succeeded, otherwise logs and errors and returns false.
Internal
Methods
MarkRenderProxyDataDirtyInternal
Marks the main thread object as dirty, causing it to sync its contents with its render thread counterpart.
MarkResourcesDirtyInternal
Marks the resource dependencies list as dirty and schedules it for rebuild.
Protected
Constructors
GpuParameterSet
Methods
GetSelf
CreateRenderProxy
Creates an object that contains render thread specific data and methods for this object.
Can be null if such object is not required.
CreateRenderProxySyncPacket
Creates a data packet that will be used for syncing the core object with it's render proxy.
Caller must free the retrieved packet using the provided allocator when done using it.
GetListenerResources
Retrieves all the resources that the class depends on.
NotifyResourceLoaded
Called when a resource has been fully loaded.
NotifyResourceChanged
Called when the internal resource the resource handle is pointing to changes.