simvx.graphics.renderer.render_pass¶
RenderPass base class and FrameContext — foundation for the render graph.
RenderPass is a concrete base class with no-op defaults (not abc.ABC) to avoid ABC construction overhead and clutter. Subclasses override what they need.
Module Contents¶
Classes¶
Per-frame state passed to render passes during record(). |
|
Base class for a single render pass. Subclasses override setup/record/resize/destroy. |
Data¶
API¶
- simvx.graphics.renderer.render_pass.__all__¶
[‘RenderPass’, ‘FrameContext’]
- class simvx.graphics.renderer.render_pass.FrameContext[source]¶
Per-frame state passed to render passes during record().
Built once per frame by ForwardRenderer, then passed to every pass. Packs all per-frame state so passes don’t chain through engine attributes.
Initialization
- __slots__¶
(‘frame_index’, ‘width’, ‘height’, ‘delta_time’, ‘camera_view’, ‘camera_proj’, ‘camera_pos’, ‘inv_vp…
- class simvx.graphics.renderer.render_pass.RenderPass[source]¶
Base class for a single render pass. Subclasses override setup/record/resize/destroy.
Class attributes (override in subclasses): name: Unique identifier, e.g. “ssao”. stage: “pre_render” or “render” — controls which graph phase runs this pass. inputs: Resource names consumed, e.g. (“hdr_depth”,). outputs: Resource names produced, e.g. (“ao_texture”,).
- __slots__¶
()
- name: str = <Multiline-String>¶
- stage: str¶
‘render’
- inputs: tuple[str, ...]¶
()
- outputs: tuple[str, ...]¶
()
- enabled: bool¶
True
- setup(ctx: simvx.graphics.renderer.render_context.RenderContext) None[source]¶
Initialise GPU resources. Called once at renderer setup time.
- record(cmd: Any, frame: simvx.graphics.renderer.render_pass.FrameContext) None[source]¶
Record GPU commands for this pass. Called every frame by the RenderGraph.