Diligent Engine
Loading...
Searching...
No Matches
Diligent::RadientPBRRenderer Class Referencefinal

#include <RadientPBRRenderer.hpp>

Public Member Functions

RefCntAutoPtr< IShaderResourceBindingGetOrCreateFrameSRB (RadientIBLResources *pResources, const RadientPBRFrameResources &Resources={})
void InitMaterialSRBVars (IShaderResourceBinding *pSRB, IBuffer *pMaterialAttribsBuffer, Uint32 MaterialAttribsRange) const

Static Public Member Functions

static DebugViewType GetDebugViewType (RADIENT_DEBUG_VISUALIZATION DebugVisualization) noexcept

Detailed Description

PBR renderer specialization that separates frame/global resources from draw/material resources into two pipeline resource signatures.

Member Function Documentation

◆ GetDebugViewType()

PBR_Renderer::DebugViewType Diligent::RadientPBRRenderer::GetDebugViewType ( RADIENT_DEBUG_VISUALIZATION DebugVisualization)
staticnoexcept

Converts a renderer-independent Radient debug visualization to the corresponding PBR renderer debug view.

◆ GetOrCreateFrameSRB()

RefCntAutoPtr< IShaderResourceBinding > Diligent::RadientPBRRenderer::GetOrCreateFrameSRB ( RadientIBLResources * pResources,
const RadientPBRFrameResources & Resources = {} )

Returns the cached frame SRB for the IBL and renderer-wide buffers, creating it if necessary. Each buffer version must change whenever the corresponding buffer object is replaced.

◆ InitMaterialSRBVars()

void Diligent::RadientPBRRenderer::InitMaterialSRBVars ( IShaderResourceBinding * pSRB,
IBuffer * pMaterialAttribsBuffer,
Uint32 MaterialAttribsRange ) const

Initializes common material resources and binds the primitive and shared material attribute buffers so passes can select records through dynamic offsets.