Crate rafx_framework[][src]

A mid-level framework for rendering that provides tools for resource lifetime management, descriptor set management, materials, renderpass management, and draw call dispatching

Modules

cooked_shader
descriptor_sets
graph

Structs

BufferKey
BufferResource
ComputePipelineKey
ComputePipelineResource
CookedShaderPackage
DescriptorSetAllocator
DescriptorSetAllocatorMetrics
DescriptorSetAllocatorProvider
DescriptorSetAllocatorRef
DescriptorSetArc
DescriptorSetLayout
DescriptorSetLayoutBinding
DescriptorSetLayoutResource
DescriptorSetWriteSet
DynCommandBuffer
DynCommandPool

A helper that can be allocated as needed to create very short-lived command buffers. The object may not be persisted across frames. Instead, allocated a new one every frame. They are pooled, allocation is cheap and thread-safe.

DynCommandPoolAllocator

An allocator for DynCommandPools, objects that are short-lived and NOT persisted across frames. Meant for allocating command buffers that are usually single use and only for the current frame. The allocator is multi-thread friendly, but the pools themselves are not. So if writing command buffers from multiple threads, allocate a pool per thread.

DynDescriptorSet
DynResourceAllocatorSet
DynResourceAllocatorSetProvider
FixedFunctionState
GraphicsPipelineCache
GraphicsPipelineRenderTargetMeta
GraphicsPipelineRenderTargetMetaHash
GraphicsPipelineResource
ImageKey
ImageResource
ImageViewResource
MaterialPassResource
MaterialPassVertexInput
PooledResourceAllocator

This handles waiting for N frames to pass before resetting the pool. "Restting" could mean different things depending on the resource. This allocator also has a callback for allocating new pools for use. A maximum pool count should be provided so that an unbounded leak of pools can be detected.

ReflectedDescriptorSetLayout
ReflectedDescriptorSetLayoutBinding
ReflectedEntryPoint
ReflectedShader
ReflectedVertexInput
RenderResources

A key-value structure. The key is a type, and the value is a single object of that type

ResourceArc
ResourceContext
ResourceDropSink

This handles waiting for N frames to pass before dropping the resource.

ResourceHash
ResourceLookupSet
ResourceManager
ResourceManagerMetrics
SamplerResource
ShaderModuleHash
ShaderModuleMeta
ShaderModuleResource
ShaderModuleResourceDef
SlotLocation
VertexData
VertexDataLayout
VertexDataLayoutHash
VertexDataSet
VertexDataSetLayout
VertexMember

Enums

VertexCopyError

Constants

MAX_FRAMES_IN_FLIGHT

Traits

DescriptorSetInitializer
PooledResourceImpl

Implement to customize how PoolAllocator resets and destroys pools

Type Definitions

DescriptorSetArrayPoolAllocator
RafxResult
SlotNameLookup