Navigation
API > API/Runtime > API/Runtime/RHI
| Name | FRayTracingPipelineStateInitializer |
| Type | class |
| Header File | /Engine/Source/Runtime/RHI/Public/RHIResources.h |
| Include Path | #include "RHIResources.h" |
Syntax
class FRayTracingPipelineStateInitializer : public FRayTracingPipelineStateSignature
Inheritance Hierarchy
- FRayTracingPipelineStateSignature → FRayTracingPipelineStateInitializer
Constructors
| Name | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|
FRayTracingPipelineStateInitializer() |
RHIResources.h |
Variables
Public
| Name | Type | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|---|
| BasePipeline | FRayTracingPipelineStateRHIRef | Ray tracing pipeline may be created by deriving from the existing base. | RHIResources.h | |
| bBackgroundCompilation | bool | Hints to the RHI that this PSO is being compiled by a background task and will not be needed immediately for rendering. | RHIResources.h | |
| bPartial | bool | Partial ray tracing pipelines can be used for run-time asynchronous shader compilation, but not for rendering. | RHIResources.h | |
| ShaderBindingLayout | const FRHIShaderBindingLayout * | Shader binding table layout used during shader compilation which needs to be the same for all shaders in the RTPSO and defines how uniform buffers needs to be bound at runtime (global(RayGen) vs local(miss/hit/callable) data) | RHIResources.h |
Protected
| Name | Type | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|---|
| CallableTable | TArrayView< FRHIRayTracingShader * > | RHIResources.h | ||
| HitGroupTable | TArrayView< FRHIRayTracingShader * > | RHIResources.h | ||
| MissTable | TArrayView< FRHIRayTracingShader * > | RHIResources.h | ||
| RayGenTable | TArrayView< FRHIRayTracingShader * > | RHIResources.h |
Functions
Public
| Name | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|
const TArrayView< FRHIRayTracingShader * > & GetCallableTable() |
RHIResources.h | ||
const TArrayView< FRHIRayTracingShader * > & GetHitGroupTable() |
RHIResources.h | ||
uint32 GetMaxLocalBindingDataSize() |
Retrieve the max local binding size of all the raytracing shaders used in the RTPSO. | RHIResources.h | |
const TArrayView< FRHIRayTracingShader * > & GetMissTable() |
RHIResources.h | ||
const TArrayView< FRHIRayTracingShader * > & GetRayGenTable() |
RHIResources.h | ||
void SetCallableTable
(
const TArrayView< FRHIRayTracingShader* >& InCallableShaders, |
Shaders that can be explicitly invoked from RayGen shaders by their Shader Binding Table (SBT) index. | RHIResources.h | |
void SetHitGroupTable
(
const TArrayView< FRHIRayTracingShader* >& InHitGroups, |
Shaders that will be invoked when ray intersects geometry. | RHIResources.h | |
void SetMissShaderTable
(
const TArrayView< FRHIRayTracingShader* >& InMissShaders, |
Shaders that will be invoked if a ray misses all geometry. | RHIResources.h | |
void SetRayGenShaderTable
(
const TArrayView< FRHIRayTracingShader* >& InRayGenShaders, |
Shaders used as entry point to ray tracing work. At least one RayGen shader must be provided. | RHIResources.h |