Vixen
02b45cc4
csharp
public sealed class RenderGraphPassBuilder

What a pass declares about itself, before it runs.

No guide page documents this yet — the page shows what the code says about itself.

Remarks

Declaration is separated from execution because the graph has to know the whole frame before any of it happens: what nothing reads can be culled, what does not overlap can share memory, and what changes use needs a barrier — and none of those are answerable one pass at a time.

The builder is handed to the setup callback and is not valid afterwards. Keeping one and declaring into it later would declare into a graph that has already been compiled, which RenderGraph refuses rather than silently ignores.

Fields and properties (1)

  • public PassKind Kind

    Which queue the pass belongs on.

Methods (8)

  • public void Reads(GraphTexture texture, ResourceState state = ShaderRead)

    States that the pass reads a texture.

  • public void Reads(GraphBuffer buffer, ResourceState state = ShaderRead)

    States that the pass reads a buffer.

  • public void Writes(GraphTexture texture, ResourceState state = ShaderWrite)

    States that the pass writes a texture.

  • public void Writes(GraphBuffer buffer, ResourceState state = ShaderWrite)

    States that the pass writes a buffer.

  • public void ColourAttachment(GraphTexture texture, LoadAction load = Clear, Color4 clear = default(Color4), StoreAction? store = null)

    Renders into a texture as a colour attachment.

  • public void DepthAttachment(GraphTexture texture, LoadAction load = Clear, float clearDepth = 0, byte clearStencil = 0, bool readOnly = false, StoreAction? store = null)

    Renders into a texture as the depth-stencil attachment.

  • public void SideEffect()

    States that the pass matters even if nothing reads what it writes.

  • public void Execute(Action<RenderGraphContext> body)

    What the pass does when it runs.

Used by (36)

  • PbrShowcaseGamePbrShowcase
  • TriangleGameHelloTriangle
  • UiHostHelloUi
  • VideoGameVideoPlayback
  • BufferReadbackRendererVixen.Rendering
  • BufferTransferTestsVixen.Rendering.Tests
  • BufferUploadRendererVixen.Rendering
  • ClusterCullingRendererVixen.Rendering
  • ComputeRendererVixen.Rendering
  • DebugDrawImageTestsVixen.Graphics.Golden.Tests
  • EditorGizmoFacingDeviceTestsVixen.Graphics.Golden.Tests
  • FullScreenRendererVixen.Rendering
  • GlobalDistanceFieldRendererVixen.Rendering
  • GoldenImageTestsVixen.Graphics.Golden.Tests
  • GpuCullingRendererVixen.Rendering
  • HiZRendererVixen.Rendering
  • IrradianceFieldRendererVixen.Rendering
  • LineImageTestsVixen.Graphics.Golden.Tests
  • PipelineStateImageTestsVixen.Graphics.Golden.Tests
  • PunctualShadowRendererVixen.Rendering
  • ReflectionRendererVixen.Rendering.PostFx
  • RenderGraphVixen.Graphics.RenderGraph
  • RenderGraphPropertyTestsVixen.Graphics.RenderGraph.Tests
  • RenderGraphTestsVixen.Graphics.RenderGraph.Tests
  • RenderPassRendererVixen.Rendering
  • ScreenProbeGatherRendererVixen.Rendering.PostFx
  • ShadowAtlasTileDeviceTestsVixen.Graphics.Golden.Tests
  • ShadowMapRendererVixen.Rendering
  • SurfaceCacheRendererVixen.Rendering
  • UiFrameLifetimeTestsVixen.Graphics.Golden.Tests
  • UiImageTestsVixen.Graphics.Golden.Tests
  • VirtualShadowRendererVixen.Rendering
  • VisibilityBufferRendererVixen.Rendering
  • EditorHostVixen.Editor.Host
  • PickingRendererVixen.Editor.SceneView
  • ScenePresenterVixen.Editor.App