Expand description
Material bind group management for bindless resources.
In bindless mode, Bevy’s renderer groups materials into bind groups. This allocator manages each bind group, assigning slots to materials as appropriate.
Structs§
- Fallback
Bindless Resources - Dummy instances of various resources that we fill unused slots in binding arrays with.
- Fallback
Buffer - A dummy buffer that substitutes for a shader buffer if that shader buffer points to an invalid buffer.
- Material
Bind Group Allocators - A resource that places materials into bind groups and tracks their resources.
- Material
Bind Group Bindless Allocator - The allocator that places bindless materials into bind groups and tracks their resources.
- Material
Bind Group Index - The index of each material bind group.
- Material
Bind Group NonBindless Allocator - The allocator that stores bind groups for non-bindless materials.
- Material
Bind Group Plugin - A
Pluginthat provides the material bind group allocator. - Material
Bind Group Slot - The index of the slot containing material data within each material bind group.
- Material
Binding Id - The location of a material (either bindless or non-bindless) within the slabs.
- Material
Bindless Slab - A single bind group and the bookkeeping necessary to allocate into it.
- Material
Slab - The public interface to a slab, which represents a single bind group.
- Render
Material Bindings - A resource that maps each untyped material ID to its binding.
Enums§
- Material
Bind Group Allocator - The allocator that manages a specific material.
Functions§
- material_
uses_ bindless_ resources - Returns true if the material will actually use bindless resources or false if it won’t.
- prepare_
material_ bind_ groups - Creates and/or recreates any bind groups that contain materials that were modified this frame.
- write_
material_ bind_ group_ buffers - Uploads the contents of all buffers that the
MaterialBindGroupAllocatormanages to the GPU.