Protected_Protected_Protected_Protected_The clear color of the renderer.
Protected_Protected_Protected_Protected_Protected_Protected_Protected_Protected_Protected_Protected_Protected_Protected_Protected_Cached light data to avoid GC pressure.
Protected_Protected_Protected_Protected_Protected_Protected_Protected_Global quality settings.
Protected_Protected_Protected_Protected_Protected_Protected_Protected_Protected_Protected_Protected_Protected Optional_Protected_Protected_Protected_The global post processing volume/group.
ReadonlytypeThe type of the renderer.
Gets the clear color of the renderer.
Read by the fragment shader's global bind group; reassigned once by
CascadedShadowPassGPU when a real cascaded shadow map first exists.
Read by the fragment shader's global bind group; reassigned once by
SpotShadowPassGPU when a real spot shadow map first exists.
Rebuilt once (not per-frame) by a shadow pass, the first time a real shadow map for that
light type exists -- see CascadedShadowPassGPU/SpotShadowPassGPU.
Satisfies RenderPass-consuming passes, which have no other way to reach this.
Satisfies Renderer interface
Satisfies RenderPass-consuming passes, which have no other way to reach this.
Gets the global quality settings of the renderer.
Reused every frame (never reallocated) -- see _updateGlobalBuffers().
Same Map instance every frame -- shadow passes .get()/.set() on it directly.
Optionalscene: SceneProtected_Protected_Protected_Protected_Builds the material bind group layout for shaderId, containing only the texture bindings
that material actually declares (plus normalMap/envMap/emissiveMap, which the shared PBR
lighting chunk references regardless of what an individual material's own layout declares).
A layout with every possible material texture bound at once (diffuse, normal, specular,
terrain x4, metallic, roughness, env, emissive, alpha, opaque, reflection, opaqueDepth = 15,
plus the 5 IBL/shadow textures in the global bind group = 20) exceeds WebGPU's guaranteed
per-stage sampled-texture minimum of 16 on any device that doesn't happen to allow more.
Protected_Protected_Protected_Protected_Protected_Protected_Protected_Protected_Protected_Protected_OptionalvMat: Float32Array<ArrayBufferLike>OptionalwireframeMode: "structural" | "triangles"OptionalprojMatrix: Float32Array<ArrayBufferLike>Protected_OptionalvMat: Float32Array<ArrayBufferLike>Destroys the renderer and releases its resources.
Extracts all lights from the scene for rendering.
The scene to extract lights from.
An object containing all extracted light data.
Initializes the renderer.
Optionalattributes: Record<string, unknown>Optionalconfig: EngineOptionsSets the active render target for off-screen rendering. If null, the renderer targets the screen/post-processing buffer.
The target to render into.
OptionalactiveCubeFace: number
Optional. Which face (0-5) of the RenderTargetCube to render into.
Sets the size of the render viewport.
Modern WebGPU implementation with dynamic vertex updates and memory management.