Exposes Direct3D 11-specific functionality, useful for interoperating with native components which interface directly with Direct3D 11. Can only be used on a GraphicsDevice whose GraphicsBackend is D3D11.
Exposes OpenGL-specific functionality, useful for interoperating with native components which interface directly with OpenGL. Can only be used on a GraphicsDevice whose GraphicsBackend is OpenGL.
Exposes Vulkan-specific functionality, useful for interoperating with native components which interface directly with Vulkan. Can only be used on a GraphicsDevice whose GraphicsBackend is Vulkan.
A device resource which allows the recording of graphics commands, which can later be executed by a GraphicsDevice. Before graphics commands can be issued, the Begin() method must be invoked. When the CommandList is ready to be executed, End() must be invoked, and then SubmitCommands(CommandList) should be used. NOTE: The use of CommandList is not thread-safe. Access to the CommandList must be externally synchronized. There are some limitations dictating proper usage and ordering of graphics commands. For example, a Framebuffer, Pipeline, vertex buffer, and index buffer must all be bound before a call to DrawIndexed(UInt32, UInt32, UInt32, Int32, UInt32) will succeed. These limitations are described in each function, where applicable. CommandList instances cannot be executed multiple times per-recording. When executed by a GraphicsDevice, they must be reset and commands must be issued again. See CommandListDescription.
A synchronization primitive which allows the GPU to communicate when submitted work items have finished executing.
A device resource used to control which color and depth textures are rendered to. See FramebufferDescription.
Represents an abstract graphics device, capable of creating device resources and executing commands.
Enumerates the optional features supported by a given GraphicsDevice.
A device object responsible for the creation of graphics resources.
A bindable device resource which controls how texture values are sampled within a shader. See SamplerDescription.
A device resource encapsulating a single shader module. See ShaderDescription.
A device resource providing the ability to present rendered images to a visible surface. See SwapchainDescription.
A platform-specific object representing a renderable surface. A SwapchainSource can be created with one of several static factory methods. A SwapchainSource is used to describe a Swapchain (see SwapchainDescription).
A device resource used to store arbitrary image data in a specific format. See TextureDescription.
Represents errors that occur in the Veldrid library.
A Pipeline component describing the blend behavior for an individual color attachment.
A Pipeline component describing how values are blended into each individual color target.
A structure describing Direct3D11-specific device creation options.
A Pipeline component describing the properties of the depth stencil state.
Represents a single output of a Framebuffer. May be a color or depth attachment.
Describes a single attachment (color or depth) for a Framebuffer.
A structure describing several common properties of a GraphicsDevice.
A structure describing the format expected by indirect dispatch commands contained in an indirect DeviceBuffer.
A structure describing the format expected by indirect draw commands contained in an indirect DeviceBuffer.
A structure describing the format expected by indirect, indexed draw commands contained in an indirect DeviceBuffer.
A structure describing the layout of a mapped MappableResource object.
A typed view of a MappedResource. Provides by-reference structured access to individual elements in the mapped resource.
Describes an individual output attachment and its format.
Describes a set of output attachments and their formats.
Describes the properties that are supported for a particular combination of PixelFormat, TextureType, and TextureUsage by a GraphicsDevice. See GetPixelFormatSupport(PixelFormat, TextureType, TextureUsage, out PixelFormatProperties).
A Pipeline component describing the properties of the rasterizer.
Describes an individual resource element in a ResourceLayout.
A color stored in four 8-bit unsigned normalized integer values, in RGBA component order.
A color stored in four 32-bit floating-point values, in RGBA component order.
A Pipeline component describing a full set of shader stages and vertex layouts.
Describes a single shader specialization constant. Used to substitute new values into Shaders when constructing a Pipeline.
Describes how stencil tests are performed in a Pipeline's depth-stencil state.
Describes a single element of a vertex.
Describes the layout of vertex data in a single DeviceBuffer used as a vertex buffer.
Describes a 3-dimensional region.
A structure describing Vulkan-specific device creation options.
A resource owned by a GraphicsDevice, which can be given a string identifier for debugging and informational purposes.
A marker interface designating a device resource which can be mapped into CPU-visible memory with Map(MappableResource, MapMode, UInt32)
Controls the influence of components in a blend operation.
Controls how the source and destination factors are combined in a blend operation.
A bitmask describing the permitted uses of a DeviceBuffer object.
Describes how new values are compared with existing values in a depth or stencil comparison.
Indicates which face will be culled.
The winding order used to determine the front face of a primitive.
The specific graphics API used by the GraphicsDevice.
The format of index data used in a DeviceBuffer.
Identifies how a MappableResource will be mapped into CPU address space.
The format of data stored in a Texture. Each name is a compound identifier, where each component denotes a name and a number of bits used to store that component. The final component identifies the storage type of each component. "Float" identifies a signed, floating-point type, UNorm identifies an unsigned integer type which is normalized, meaning it occupies the full space of the integer type. The SRgb suffix for normalized integer formats indicates that the RGB components are stored in sRGB format.
Indicates how the rasterizer will fill polygons.
Determines how a sequence of vertices is interepreted by the rasterizer.
Identifies a particular binding model used when connecting elements in a ResourceLayout with resources defined in API-specific shader code.
The kind of a BindableResource object.
Miscellaneous options for an element in a ResourceLayout.
An addressing mode for texture coordinates.
A constant color that is sampled when Border is used.
Determines how texture values are sampled from a texture.
The data type of a shader constant.
A bitmask representing a set of shader stages.
Identifies an action taken on samples that pass or fail the stencil test.
Describes the number of samples to use in a Texture.
Identifies a particular type of Texture.
A bitmask indicating how a Texture is permitted to be used.
The format of an individual vertex element.
The type of a vertex element, describing how the element is interpreted. NOTE: This enumeration is only meaningful for the Direct3D 11 backend. When using Veldrid.SPIRV to cross-compile a vertex shader to HLSL, all vertex elements will use TextureCoordinate.