LiteFX 0.4.1.2025
Computer Graphics Engine
Loading...
Searching...
No Matches
LiteFX::Rendering::GraphicsDeviceFeatures Struct Reference

Describes optional features that can be supported by a device. More...

#include <rendering_api.hpp>

Public Attributes

bool MeshShaders { false }
 Enables or disables mesh shader support.
 
bool RayTracing { false }
 Enables or disables ray-tracing support.
 
bool RayQueries { false }
 Enables or disables ray query and inline ray-tracing support.
 
bool DrawIndirect { false }
 Enables or disables support for indirect draw.
 

Detailed Description

Describes optional features that can be supported by a device.

Device features are evaluated when creating a IGraphicsDevice. If a feature is not supported by the device, an exception is raised.

Note that feature support is not strictly enforced by the engine. For example, if you are calling any feature-related API, the call may succeed even if the feature is not enabled, if the GPU supports it. Graphics API validation may warn about it and the same program may fail on GPUs that do not support this feature. Enabling a feature through the settings in this structure makes the device check for support creation, resulting in a clear fail path, if a required extension is not supported by the system hardware.

Member Data Documentation

◆ DrawIndirect

bool LiteFX::Rendering::GraphicsDeviceFeatures::DrawIndirect { false }

Enables or disables support for indirect draw.

◆ MeshShaders

bool LiteFX::Rendering::GraphicsDeviceFeatures::MeshShaders { false }

Enables or disables mesh shader support.

◆ RayQueries

bool LiteFX::Rendering::GraphicsDeviceFeatures::RayQueries { false }

Enables or disables ray query and inline ray-tracing support.

◆ RayTracing

bool LiteFX::Rendering::GraphicsDeviceFeatures::RayTracing { false }

Enables or disables ray-tracing support.