API reference

Every public class, method, and event in @codexo/exojs. Generated from source.

C

classRenderPipeline

@codexo/exojs / rendering / stable

An ordered list of RenderPass steps, played once per frame against a RenderingContext. A `RenderPipeline` is **itself a `RenderPass`**, so pipelines nest freely and a disabled pipeline skips its whole subtree. It **owns** the passes added to it (exclusive ownership - a pass belongs to at most one pipeline): resize and destroy cascade to them. It never owns scene nodes or caller RenderTextures. Adding a pass that would create a direct or indirect cycle throws at add time.

3
props
11
methods
0
events
Import
import { RenderPipeline } from '@codexo/exojs'

An ordered list of RenderPass steps, played once per frame against a RenderingContext.

A `RenderPipeline` is **itself a `RenderPass`**, so pipelines nest freely and a disabled pipeline skips its whole subtree. It **owns** the passes added to it (exclusive ownership - a pass belongs to at most one pipeline): resize and destroy cascade to them. It never owns scene nodes or caller RenderTextures. Adding a pass that would create a direct or indirect cycle throws at add time.

Constructors1
Methods11
Append a pass and take exclusive ownership of it. Throws if the pass already belongs to any pipeline, if adding it would create a direct/indirect cycle, during execute, or after destroy.
clear(): this
Remove all passes and release their ownership. Does not destroy them. The pipeline stays usable.
destroy(): void
Cascade destroy() to every pass, release their ownership, then clear the list. Idempotent. Throws during execute (before any teardown begins). Best-effort teardown: the pipeline is marked destroyed and detached from its passes up front, so it always ends in a single, consistent destroyed-and-empty state - every child gets a destroy() attempt and has its owner slot released even if an earlier child throws. If one or more children throw, the first error is re-thrown after the cascade completes.
Play every enabled pass in order against context. No-op if this.enabled === false (a pipeline is itself a directly-executable pass, so disabling it skips its whole subtree). Not re-entrant. Throws after destroy.
Insert a pass at index (clamped to [0, size]). Same ownership / cycle / execute / destroy throws as addPass.
Remove a pass by identity and release its ownership. Returns false if absent. Does not destroy it.
resize(width: number, height: number): void
Cascade resize(width, height) to every pass (enabled and disabled).
Properties3
enabled: boolean
When false, the containing RenderPipeline skips this pass during execute. Default true. Evaluated by the parent - a direct execute call runs the pass regardless.
label: string
Debug label (inspector / logging). Defaults to the constructor name. Display only - not an identity.
size: number
Number of registered passes (enabled and disabled).
Source