Table of Contents

Class GraphicsDeviceFeatures

Namespace
NeoVeldrid
Assembly
NeoVeldrid.dll

Enumerates the optional features supported by a given GraphicsDevice.

public class GraphicsDeviceFeatures
Inheritance
GraphicsDeviceFeatures
Inherited Members

Properties

BufferRangeBinding

Indicates whether uniform and structured buffers can be bound with an offset and a size. If false, buffer resources must be bound with their full range.

public bool BufferRangeBinding { get; }

Property Value

bool

CommandListDebugMarkers

Indicates whether CommandList instances created with this device support the PushDebugGroup(string), PopDebugGroup(), and InsertDebugMarker(string) methods. If not, these methods will have no effect.

public bool CommandListDebugMarkers { get; }

Property Value

bool

ComputeShader

Indicates whether Compute Shaders can be used.

public bool ComputeShader { get; }

Property Value

bool

DepthClipDisable

Indicates whether DepthClipEnabled can be set to false.

public bool DepthClipDisable { get; }

Property Value

bool

DrawBaseInstance

Indicates whether a non-zero "instanceStart" value can be used in Draw(uint, uint, uint, uint) and DrawIndexed(uint, uint, uint, int, uint).

public bool DrawBaseInstance { get; }

Property Value

bool

DrawBaseVertex

Indicates whether a non-zero "vertexStart" value can be used in Draw(uint, uint, uint, uint) and DrawIndexed(uint, uint, uint, int, uint).

public bool DrawBaseVertex { get; }

Property Value

bool

DrawIndirect

Indicates whether indirect draw commands can be issued.

public bool DrawIndirect { get; }

Property Value

bool

DrawIndirectBaseInstance

Indicates whether indirect draw structures stored in an Indirect DeviceBuffer can contain a non-zero FirstInstance value.

public bool DrawIndirectBaseInstance { get; }

Property Value

bool

FillModeWireframe

Indicates whether Wireframe is supported.

public bool FillModeWireframe { get; }

Property Value

bool

GeometryShader

Indicates whether Geometry Shaders can be used.

public bool GeometryShader { get; }

Property Value

bool

IndependentBlend

Indicates whether a BlendStateDescription can be used which has multiple different BlendAttachmentDescription values for each attachment. If false, all attachments must have the same blend state.

public bool IndependentBlend { get; }

Property Value

bool

MultipleViewports

Indicates whether multiple independent viewports can be set simultaneously. If this is not supported, then only the first Viewport index will be used for all render outputs.

public bool MultipleViewports { get; }

Property Value

bool

SamplerAnisotropy

Indicates whether Anisotropic is supported.

public bool SamplerAnisotropy { get; }

Property Value

bool

SamplerLodBias

Indicates whether LodBias can be non-zero. If false, it is an error to attempt to use a non-zero bias value.

public bool SamplerLodBias { get; }

Property Value

bool

ShaderFloat64

Indicates whether 64-bit floating point integers can be used in shaders.

public bool ShaderFloat64 { get; }

Property Value

bool

StructuredBuffer

Indicates whether StructuredBufferReadOnly and StructuredBufferReadWrite can be used. If false, structured buffers cannot be created.

public bool StructuredBuffer { get; }

Property Value

bool

SubsetTextureView

Indicates whether a TextureView can be created which does not view the full set of mip levels and array layers contained in its target Texture, or uses a different PixelFormat from the underlying Texture.

public bool SubsetTextureView { get; }

Property Value

bool

TessellationShaders

Indicates whether Tessellation Shaders can be used.

public bool TessellationShaders { get; }

Property Value

bool

Texture1D

Indicates whether a Texture can be created with Texture1D.

public bool Texture1D { get; }

Property Value

bool