Skip to content

@orillusion/core


Class: RenderContext ​

Defined in: src/gfx/renderJob/passRenderer/RenderContext.ts:16

Drives one RTFrame's render through the GPU: opens command encoders and render-pass encoders, and builds the RendererPassState sequence (opaque / transparent / continuation passes) for the frame. Wraps GPUContextInstance so passes work against a single frame's attachments without touching the device API.

Constructors ​

Constructor ​

new RenderContext(ctx, rtFrame): RenderContext

Defined in: src/gfx/renderJob/passRenderer/RenderContext.ts:27

Parameters ​

ctx ​

Context3D

rtFrame ​

RTFrame

Returns ​

RenderContext

Properties ​

command ​

command: GPUCommandEncoder

Defined in: src/gfx/renderJob/passRenderer/RenderContext.ts:18

The command encoder currently open for this frame.


encoder ​

encoder: GPURenderPassEncoder

Defined in: src/gfx/renderJob/passRenderer/RenderContext.ts:20

The render-pass encoder currently open for this frame.


gpu ​

gpu: GPUContextInstance

Defined in: src/gfx/renderJob/passRenderer/RenderContext.ts:22

The per-context GPU helper this render context issues through.

Accessors ​

rendererPassState ​

Get Signature ​

get rendererPassState(): RendererPassState

Defined in: src/gfx/renderJob/passRenderer/RenderContext.ts:67

The most recently pushed renderer pass state (the active one).

Returns ​

RendererPassState

Methods ​

clean() ​

clean(): void

Defined in: src/gfx/renderJob/passRenderer/RenderContext.ts:34

Reset the accumulated pass states and the GPU bind cache for a new frame.

Returns ​

void


beginContinueRendererPassState() ​

beginContinueRendererPassState(color_loadOp?, depth_loadOp?): RendererPassState

Defined in: src/gfx/renderJob/passRenderer/RenderContext.ts:45

Push a renderer pass state for the current frame and return it. When earlier states already exist this is a continuation pass that loads (rather than clears) prior attachment contents; otherwise it applies the given color/depth load ops to the frame's first pass.

Parameters ​

color_loadOp? ​

GPULoadOp = 'load'

depth_loadOp? ​

GPULoadOp = 'load'

Returns ​

RendererPassState


beginOpaqueRenderPass() ​

beginOpaqueRenderPass(): void

Defined in: src/gfx/renderJob/passRenderer/RenderContext.ts:72

Begin the opaque pass: clear color + depth, then open a fresh command and encoder.

Returns ​

void


beginTransparentRenderPass() ​

beginTransparentRenderPass(): void

Defined in: src/gfx/renderJob/passRenderer/RenderContext.ts:79

Begin a transparent pass: load color + depth (continuation), then open a fresh command and encoder.

Returns ​

void


specialtRenderPass() ​

specialtRenderPass(): void

Defined in: src/gfx/renderJob/passRenderer/RenderContext.ts:86

Begin a special-purpose continuation pass: load color + depth, then open a fresh command and encoder.

Returns ​

void


endRenderPass() ​

endRenderPass(): void

Defined in: src/gfx/renderJob/passRenderer/RenderContext.ts:93

End the current render pass: close the encoder then submit the command.

Returns ​

void


begineNewCommand() ​

begineNewCommand(): GPUCommandEncoder

Defined in: src/gfx/renderJob/passRenderer/RenderContext.ts:99

Open a new command encoder for this frame.

Returns ​

GPUCommandEncoder


endCommand() ​

endCommand(): void

Defined in: src/gfx/renderJob/passRenderer/RenderContext.ts:105

Submit and clear the current command encoder.

Returns ​

void


beginNewEncoder() ​

beginNewEncoder(): GPURenderPassEncoder

Defined in: src/gfx/renderJob/passRenderer/RenderContext.ts:111

Begin a render-pass encoder for the active pass state on the open command.

Returns ​

GPURenderPassEncoder


endEncoder() ​

endEncoder(): void

Defined in: src/gfx/renderJob/passRenderer/RenderContext.ts:117

End and clear the current render-pass encoder.

Returns ​

void