frame-pass-assemble

Assemble multi-pass GPU rendering frames with attachment lifetimes and load/store semantics.

74|5|Updated Dec 13, 2019
One-click install
npx skills add https://github.com/mikialex/rendiation --skill frame-pass-assemble
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: frame-pass-assemble
Source: https://github.com/mikialex/rendiation/tree/main/.claude/skills/frame-pass-assemble
Command: npx skills add https://github.com/mikialex/rendiation --skill frame-pass-assemble

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve?

Frame assembly becomes error-prone when you need multiple GPU render passes, correct attachment lifetimes, MSAA resolves, and consistent load/store behavior while keeping the renderer maintainable.

Core Features & Use Cases

  • Functional multi-pass frame builder: Compose passes with a chainable API that wires attachments and pass execution together.
  • Attachment allocation and reuse: Allocate transient color/depth textures from the frame pool, including MSAA sample counts and size transforms.
  • Correct GPU render semantics: Select per-attachment load/store operations, handle MSAA resolves, and support conditional pass content.
  • Pass content orchestration: Use .by() and .by_if() to render one or many draw units inside each pass, including fullscreen quad post-processing.

Quick Start

Use the frame-pass-assemble skill to build a three-pass pipeline that renders a 4x MSAA scene into an offscreen attachment, resolves it into a single-sample texture, and then post-processes it into your final render target.

Frequently Asked Questions about frame-pass-assemble

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I assemble multi-pass GPU frames with correct attachment lifetimes?

Assembling multi-pass GPU frames requires coordinating render pass descriptions, attachment lifetimes, and per-attachment load/store semantics. You use a chainable API to construct passes via pass() and attachment() from a FrameCtx, wiring color/depth targets and execution together.

What is the best way to handle MSAA resolve chains in a WebGPU render pipeline?

Handling MSAA resolve chains involves allocating transient color textures with specific sample counts and configuring resolve targets. You build a pass that renders a 4x MSAA scene into an offscreen attachment, then resolves it into a single-sample texture for downstream post-processing.

How do I conditionally render pass content in a frame graph?

Conditional rendering in a frame graph is achieved by orchestrating pass content with .by_if(). This executes draw units inside a pass only when specific runtime conditions are met, allowing optional pass content without breaking the overall frame structure.

When do I need to configure load/store operations for GPU render passes?

You need to configure load/store operations for GPU render passes whenever multiple passes share attachments or require specific clear behavior. Correct load/store semantics ensure transient textures are cleared or preserved accurately between passes, preventing visual artifacts and state errors.

Does this multi-pass frame builder support fullscreen quad post-processing?

Yes, the multi-pass frame builder supports fullscreen quad post-processing. You use the .by() method to render draw units inside a pass, enabling a final pass that consumes a resolved single-sample texture to apply post-processing effects into the final render target.