Module bevy::render::render_phase
Structs
An identifier for a
Draw
function stored in DrawFunctions
.Stores all draw functions for the
PhaseItem
type hidden behind a reader-writer lock.
To access them the DrawFunctions::read
and DrawFunctions::write
methods are used.Tracks the current
TrackedRenderPass
state to ensure draw calls are valid.Wraps a
RenderCommand
into a state so that it can be used as a Draw
function.
Therefore the RenderCommand::Param
is queried from the ECS and passed to the command.A resource to collect and sort draw requests for specific
PhaseItems
.A [
RenderPass
], which tracks the current pipeline state to ensure all draw calls are valid.
It is used to set the current RenderPipeline
, BindGroups
and buffers.
After all requirements are specified, draw calls can be issued.Enums
Traits
Registers a
RenderCommand
as a Draw
function.
They are stored inside the DrawFunctions
resource of the app.A
PhaseItem
that can be batched dynamically.An item which will be drawn to the screen. A phase item should be queued up for rendering
during the
RenderStage::Queue
stage.
Afterwards it will be sorted and rendered automatically in the
RenderStage::PhaseSort
stage and
RenderStage::Render
stage, respectively.RenderCommand
is a trait that runs an ECS query and produces one or more
TrackedRenderPass
calls. Types implementing this trait can be composed (as tuples).Functions
This system batches the
PhaseItem
s of all RenderPhase
s of this type.This system sorts all
RenderPhases
for the PhaseItem
type.