Crate gfx_core[][src]

Low-level graphics abstraction for Rust. Mostly operates on data, not types. Designed for use by libraries and higher-level abstractions only.

Re-exports

pub use self::factory::Factory;

Modules

buffer

Memory buffers

command

Command Buffer device interface

dummy

Dummy backend implementation to test the code for compile errors outside of the graphics development environment.

factory

Resource factory

format

Universal format specification. Applicable to textures, views, and vertex buffers.

handle

Resource handles

mapping

Memory mapping

memory

Types to describe the properties of memory allocated for gfx resources.

pso

Raw Pipeline State Objects

shade

Shader handling.

state

Fixed-function hardware state.

target

Render target specification.

texture

Texture creation and modification.

Structs

AdapterInfo

Information about a backend adapater.

Capabilities

Features that the device supports.

DomainShader
Frame

Handle to a backbuffer of the swapchain.

GeometryShader
HullShader
PixelShader
VertexShader

Enums

IndexType

A type of each index value in the slice’s index buffer

Primitive

Describes what geometric primitives are created from vertex data.

ShaderSet

A complete set of shaders to link a program. TODO: TransformFeedback

SubmissionError

Constants

MAX_COLOR_TARGETS

Compile-time maximum number of color targets.

MAX_CONSTANT_BUFFERS

Compile-time maximum number of constant buffers.

MAX_RESOURCE_VIEWS

Compile-time maximum number of shader resource views (SRV).

MAX_SAMPLERS

Compile-time maximum number of samplers.

MAX_UNORDERED_VIEWS

Compile-time maximum number of unordered access views (UAV).

MAX_VERTEX_ATTRIBUTES

Compile-time maximum number of vertex attributes.

Traits

Adapter

Represents a physical or virtual device, which is capable of running the backend.

CommandQueue

Dummy trait for command queues. CommandBuffers will be later submitted to command queues instead of the device.

Device

A Device is responsible for submitting CommandBuffers to the GPU.

QueueFamily

QueueFamily denotes a group of command queues provided by the backend with the same properties/type.

Resources

Different types of a specific API.

Surface

A Surface abstracts the surface of a native window, which will be presented

SwapChain

The SwapChain is the backend representation of the surface. It consists of multiple buffers, which will be presented on the surface.

Type Definitions

AttributeSlot

Slot for an attribute.

ColorSlot

Slot for an active color buffer.

ConstantBufferSlot

Slot for a constant buffer object.

InstanceCount

Draw number of instances

PatchSize

Number of vertices in a patch

ResourceViewSlot

Slot for a shader resource view.

SamplerSlot

Slot for a sampler.

SubmissionResult
UnorderedViewSlot

Slot for an unordered access object.

VertexCount

Draw vertex count.