Expand description

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

Modules

Part of rafx-framework. Handles extracting, preparing, and writing draw calls

Part of rafx-framework.

Macros

Use to declare a new render feature that can be registered. Registration allows easy global access to the render feature index from anywhere in the binary

Use to declare a new render feature flag that can be registered. Registration allows easy global access to the render feature flag index from anywhere in the binary

Structs

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.

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.

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.

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

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

Enums

Constants

Traits

Implement to customize how PoolAllocator resets and destroys pools

Type Definitions