#include <PipelineState.h>
Inherits AZ::RHI::DeviceObject.
Inherited by AZ::DX12::PipelineState, AZ::Metal::PipelineState, AZ::Null::PipelineState, and AZ::Vulkan::PipelineState.
|
void | Init (Device &device) |
| The derived class should call this method to assign the device.
|
|
void | Shutdown () override |
| Clears the current bound device to null.
|
|
void | add_ref () const |
|
void | release () const |
|
AZStd::atomic_int | m_useCount = 0 |
|
The pipeline state object is an opaque data structure representing compiled graphics or compute state. Typically called a 'PSO', it holds the following platform-specific state:
- The compiled shader byte code.
- The compiled pipeline layout containing shader bindings and how they map to provided shader byte codes.
- [Graphics Only] State to control the fixed function output-merger unit. This includes Blend, Raster, and Depth-Stencil state.
- [Graphics Only] State to identify stream buffers to the fixed function input assembly unit.
◆ Init() [1/3]
Initializes a compute pipeline state, associated with the provided device, using the provided descriptor. If successful, the PSO is valid to use with DispatchItems within scopes executing on device used for initialization.
- Parameters
-
pipelineLibrary | An optional pipeline library used to de-duplicate and cache the internal platform pipeline state data, reducing compilation and memory cost. It can be left null. |
◆ Init() [2/3]
Initializes a graphics pipeline state, associated with the provided device, using the provided descriptor. If successful, the PSO is valid to use with DrawItems within scopes executing on device used for initialization.
- Parameters
-
pipelineLibrary | An optional pipeline library used to de-duplicate and cache the internal platform pipeline state data, reducing compilation and memory cost. It can be left null. |
◆ Init() [3/3]
Initializes a ray tracing pipeline state, associated with the provided device, using the provided descriptor. If successful, the PSO is valid to use with DispatchRaysItems within scopes executing on device used for initialization.
- Parameters
-
pipelineLibrary | An optional pipeline library used to de-duplicate and cache the internal platform pipeline state data, reducing compilation and memory cost. It can be left null. |
The documentation for this class was generated from the following file:
- Gems/Atom/RHI/Code/Include/Atom/RHI/PipelineState.h