Class RaytracingShaderGroupInfo

Nested Relationships

Nested Types

Inheritance Relationships

Base Type

Class Documentation

class RaytracingShaderGroupInfo : public gpa::playback::ResourceInfo

Graphics API agnostic information for raytracing shader group.

Note

For D3D12 this object represents D3D12_HIT_GROUP_DESC or single raytracing shader (ray generation, miss or callable) in Vulkan this object represents VkRayTracingShaderGroupCreateInfoKHR

Public Types

enum class Type

Enumerates RaytracingShaderGroupInfo types.

Values:

enumerator kUnknown
enumerator kGeneral
enumerator kTrianglesHitGroup
enumerator kProceduralHitGroup

Public Functions

virtual TypeId GetTypeId() const final override

Gets this RaytracingShaderGroupInfo object's TypeId.

Returns

This RaytracingShaderGroupInfo object's TypeId

Public Members

Type type = {Type::kUnknown}

This RaytracingShaderGroupInfo's Type.

ShaderLink generalShader = {kNullShader}

The link to ray generation, miss or callable shader if type is equal to kGeneral.

ShaderLink closestHitShader = {kNullShader}

The link to closest hit shader if type is equal to kTrianglesHitGroup or kProceduralHitGroup.

ShaderLink anyHitShader = {kNullShader}

The link to any hit shader if type is equal to kTrianglesHitGroup or kProceduralHitGroup.

ShaderLink intersectionShader = {kNullShader}

The link to intersection shader if type is equal to kProceduralHitGroup.

size_t captureIdSize = {0}

The number of bytes in captureId.

uint8_t const *pCaptureId = {nullptr}

The capture time shader identifier.

PipelineSignatureInfo const *pLocalSignatureInfo = {nullptr}

The pointer to associated local root signature.

Public Static Attributes

static ShaderLink kNullShader

Special value for unused shaders.

struct ShaderLink

This struct represents a certain shader in the library.

Public Members

ResourceId libraryId = {0}

The identifier of the ShaderInfo.

size_t entryPointIndex = {0}

The index of the library entry point.

char const *pGlobalName = {nullptr}

The name from D3D12_EXPORT_DESC if available, otherwise entrypoint name.