Open 3D Engine Atom Gem API Reference 26.05.0
O3DE is an open-source, fully-featured, high-fidelity, modular 3D engine for building games and simulations, available to every industry.
AZ::RHI::DeviceFeatures Struct Reference

Public Attributes

bool m_geometryShader
 Whether the adapter supports geometry shaders.
 
bool m_computeShader
 Whether the adapter supports compute shaders.
 
bool m_independentBlend
 Whether color attachments can utilize independent blend modes.
 
bool m_dualSourceBlending = false
 Whether the adapter supports dual source blending.
 
bool m_customSamplePositions = false
 Whether the adapter supports custom sample positions.
 
AZStd::array< QueryTypeFlags, HardwareQueueClassCount > m_queryTypesMask = { { QueryTypeFlags::None, QueryTypeFlags::None, QueryTypeFlags::None } }
 Supported query types.
 
bool m_occlusionQueryPrecise = false
 Whether the adapter supports precise occlusion query.
 
bool m_predication = false
 Whether the adapter supports predication.
 
bool m_indirectDrawSupport = true
 Whether the adapter supports indirect draw.
 
bool m_indirectDrawCountBufferSupported = false
 Whether the adapter supports a count buffer when doing indirect drawing.
 
bool m_indirectDispatchCountBufferSupported = false
 Whether the adapter supports a count buffer when doing indirect dispatching.
 
bool m_indirectDrawStartInstanceLocationSupported = false
 Whether the adapter supports supplying a start instance location when doing indirect drawing.
 
RHI::IndirectCommandTiers m_indirectCommandTier = RHI::IndirectCommandTiers::Tier0
 Tier of supported indirect commands.
 
SubpassInputSupportType m_subpassInputSupport = SubpassInputSupportType::None
 The type of support for subpass inputs of render target attachments.
 
bool m_rayTracing = false
 Whether Ray Tracing support is available.
 
bool m_rayTracingClas = false
 Whether Ray Tracing supports CLAS structures.
 
bool m_unboundedArrays = false
 Whether Unbounded Array support is available.
 
bool m_simulateBindlessUA = false
 Whether Unbounded Array support is simulated for Bindless Srg.
 
bool m_isPsoCacheFileOperationsNeeded = true
 Whether PipelineLibrary related serialized data needs to be loaded/saved explicitly as drivers (like dx12/vk) do not support it internally.
 
bool m_tiledResource = true
 Whether supports tile resource.
 
RHI::ShadingRateTypeFlags m_shadingRateTypeMask = RHI::ShadingRateTypeFlags::None
 Supported modes for setting the variable shading rate.
 
RHI::ShadingRateFlags m_shadingRateMask = RHI::ShadingRateFlags::None
 Supported values for setting the shading rate.
 
bool m_dynamicShadingRateImage = false
 
bool m_waveOperation = false
 Whether the adapter supports wave/subgroup operation.
 
RHI::ScalingFlags m_swapchainScalingFlags = RHI::ScalingFlags::None
 Whether swapchain scaling support is available.
 
bool m_signalFenceFromCPU = false
 
bool m_float16 = false
 Whether float16 (half-precision floating-point format) support is available.
 
bool m_crossDeviceDeviceMemory = false
 Whether device memory can be shared with other devices.
 
bool m_crossDeviceHostMemory = false
 Whether host memory can be shared with other devices.
 
bool m_crossDeviceFences = false
 Whether fences can be shared with other devices.
 

Member Data Documentation

◆ m_dynamicShadingRateImage

bool AZ::RHI::DeviceFeatures::m_dynamicShadingRateImage = false

Whether the shading rate attachment is read by the GPU during execution. Otherwise, the image is read by the CPU during scope execution (so it must not be modified by either CPU or GPU at that time).

◆ m_signalFenceFromCPU

bool AZ::RHI::DeviceFeatures::m_signalFenceFromCPU = false

Whether fences can be signalled from the CPU If this is false, the Fence::SignalOnCpu inserts the signal command into a queue


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