AdvancedThe colour of the view's own target; see RenderGraph#defaultColor
Depth paired with PassBuilder#defaultColor
The view's global texture bindings, to pass to PassBuilder#sample
The colour this pass draws into: RenderGraph#sceneColor, or for a pass whose camera has a render texture, that camera's own target
A pass that presents the finished picture writes PassBuilder#defaultColor instead.
Depth paired with PassBuilder#targetColor
Creates a colour texture the graph allocates; see RenderGraph#createColor
Size, resolution, format and label; see TransientTextureOptions.
The handle for the new transient colour resource.
Creates a depth texture the graph allocates; see RenderGraph#createColor
Size, resolution, format and label; see TransientTextureOptions.
The handle for the new transient depth resource.
The texture of a scene output the graph attaches, for this pass to write or read; see RenderGraph#getSceneOutput
An output in the graph's sceneOutputs
The output's texture handle
Declares that this pass writes handle itself, with a copy, compute work or targets it binds
The graph counts handle as written, as for PassBuilder#writeColor, but binds and clears
nothing for it; get the texture in render with RenderGraph#getTexture.
The resource this pass produces.
The same handle, for inline capture.
Declares a read the graph doesn't bind, for a copy or a pass that builds its own bindings
It keeps the earlier passes that write the texture running; get the texture in render with
RenderGraph#getTexture.
The resource this pass reads.
The same handle, for inline capture.
Declares a read-only depth attachment: the pass depth-tests against handle without
writing it
The depth resource attached read-only.
The same handle, for inline capture.
Declares that this pass samples handle through binding
The graph puts the frame's texture in the binding before the pass renders. A texture the graph allocated that another pass attaches as a render target needs a bind group this pass owns; RenderGraph#compile throws for a global binding.
The resource this pass samples.
Where the texture goes.
The same handle, for inline capture.
Keeps this pass running when no other pass reads what it writes, for work that leaves the graph, such as a readback to the CPU
The graph runs a pass only when a later pass uses what it writes, or when it writes the screen,
an imported texture or a camera's target. A pass that calls this in setup runs too, and so do
the passes it reads from.
It doesn't override the pass's condition: on a frame the condition skips this pass, any pass
that only feeds it is skipped too. The scene still writes every scene output a pass requires,
every frame.
Declares that this pass draws into handle as a render target
The first pass each frame to write a texture the graph allocated clears it, unless that pass writes it with PassBuilder#produce instead; a texture you import with RenderGraph#importColor keeps its content. Later writers draw over earlier ones, and a pass that writes several colours attaches them in the order it declares them.
A pass's target is exactly the attachments it declares, so to draw into this pass's target,
declare both writeColor(b.targetColor) and writeDepth(b.targetDepth). Declared alone, the
colour gets a target of its own: over the screen that isn't pixi's target, and inside a 2D
filter it loses the view's place on the filter's texture.
The colour resource this pass writes as an attachment.
The same handle, for inline capture.
Declares that this pass draws into the depth handle; see PassBuilder#writeColor
The depth resource this pass writes as an attachment.
The same handle, for inline capture.
Declares what a pass reads and writes; GraphRenderPass#setup receives one
Each declaration returns its handle, so
const color = b.writeColor(b.targetColor)captures it inline.