Open 3D Engine Atom Gem API Reference 23.10.0
O3DE is an open-source, fully-featured, high-fidelity, modular 3D engine for building games and simulations, available to every industry.
AZ::DX12::PlatformLimitsDescriptor Class Referencefinal

A descriptor used to configure limits for each backend. More...

#include <PlatformLimitsDescriptor.h>

Inherits AZ::RHI::PlatformLimitsDescriptor.

Public Member Functions

 AZ_RTTI (AZ::DX12::PlatformLimitsDescriptor, "{ADCC8071-FCE4-4FA1-A048-DF8982951A0D}", Base)
 
 AZ_CLASS_ALLOCATOR (AZ::DX12::PlatformLimitsDescriptor, AZ::SystemAllocator)
 
void LoadPlatformLimitsDescriptor (const char *rhiName) override
 
- Public Member Functions inherited from AZ::RHI::PlatformLimitsDescriptor
 AZ_RTTI (AZ::RHI::PlatformLimitsDescriptor, "{3A7B2BE4-0337-4F59-B4FC-B7E529EBE6C5}")
 
 AZ_CLASS_ALLOCATOR (AZ::RHI::PlatformLimitsDescriptor, AZ::SystemAllocator)
 
virtual void LoadPlatformLimitsDescriptor (const char *rhiName)
 

Static Public Member Functions

static void Reflect (AZ::ReflectContext *context)
 
- Static Public Member Functions inherited from AZ::RHI::PlatformLimitsDescriptor
static void Reflect (AZ::ReflectContext *context)
 
static RHI::Ptr< PlatformLimitsDescriptorCreate ()
 

Public Attributes

AZStd::unordered_map< AZStd::string, AZStd::array< uint32_t, NumHeapFlags > > m_descriptorHeapLimits
 
float m_staticDescriptorRatio = 0.5f
 
FrameGraphExecuterData m_frameGraphExecuterData
 
- Public Attributes inherited from AZ::RHI::PlatformLimitsDescriptor
TransientAttachmentPoolBudgets m_transientAttachmentPoolBudgets
 
PlatformDefaultValues m_platformDefaultValues
 
HeapPagingParameters m_pagingParameters
 
HeapMemoryHintParameters m_usageHintParameters
 
HeapAllocationStrategy m_heapAllocationStrategy = HeapAllocationStrategy::MemoryHint
 

Static Public Attributes

static const uint32_t NumHeapFlags = 2
 

Detailed Description

A descriptor used to configure limits for each backend.

Member Function Documentation

◆ LoadPlatformLimitsDescriptor()

void AZ::DX12::PlatformLimitsDescriptor::LoadPlatformLimitsDescriptor ( const char *  rhiName)
overridevirtual

Reimplemented from AZ::RHI::PlatformLimitsDescriptor.

Member Data Documentation

◆ m_descriptorHeapLimits

AZStd::unordered_map<AZStd::string, AZStd::array<uint32_t, NumHeapFlags> > AZ::DX12::PlatformLimitsDescriptor::m_descriptorHeapLimits

string key: string version of DESCRIPTOR_HEAP_TYPE. int array: Max count for descriptors

◆ m_staticDescriptorRatio

float AZ::DX12::PlatformLimitsDescriptor::m_staticDescriptorRatio = 0.5f

Denote portion of the shader-visible descriptor heap used to maintain static handles. NOTE: dynamic descriptors are needed to allocate per-frame descriptor tables for resources that are not bound via bindless, so this number should reflect that. If the majority of resources correctly leverage the bindless mechanism, this number can be higher (e.g. [0.8f, 0.9f]).


The documentation for this class was generated from the following file: