InternalConstructs a ViewManager.
This constructor does not allocate GPU resources. Call init before use.
Internal_activeCurrently active renderer view.
The WebGL canvas is positioned/sized to this view’s HTML element.
Internal_gpuOwns GPU-side geometry/mesh buffers and data-texture uploads.
Internal_meshTranslates scene/view changes into GPU uploads (transforms, colors, flags, etc.).
Internal_pickManages GPU picking resources and queries.
Internal_rendererMap of view id -> renderer view wrapper.
Internal_renderExecutes draw passes for the active view.
Internal_snapManages GPU snap-to-vertex / snap-to-edge picking.
GPU-backed textures created/owned by GPUMemoryManager.
Exposed for diagnostics.
Available after init succeeds; undefined after destroy.
Returns the current list of renderer view wrappers.
Notifies that the camera view matrix was updated. Forwards to MeshManager to update camera-dependent GPU state.
Destroys all renderer-managed resources and detaches from the Viewer.
After calling this, the instance must not be used unless init is called again.
undefined to help catch use-after-destroy in development.InternalPassthrough to MeshManager.enableStepStats — toggles
opt-in step-level timing inside MeshManager._addMesh. See
MeshManager.enableStepStats.
Returns scene geometry by (batchIndex, geometryIndex) as stored in GPU memory.
Geometry batch index managed by GPUMemoryManager.
Geometry index within the batch.
The SceneGeometry if present, otherwise null.
Returns current GPU memory usage statistics for the renderer.
SDKInternalException If the manager has not been initialized.
Returns a scene mesh by (batchIndex, meshIndex) as stored in GPU memory.
Mesh batch index managed by GPUMemoryManager.
Mesh index within the batch.
The SceneMesh if present, otherwise null.
Returns the RenderInspector used to inspect draw calls.
Returns the View at a given index in the internal view list.
Index into the internal view list (aligned with View.viewIndex).
The view, or null if the index is out of range.
Returns the shared WebGL canvas element used to render the active view.
SDKInternalException If the manager has not been initialized.
Initializes the manager and all underlying pipeline components for a given Viewer.
A separate init method is used so initialization can fail gracefully via SDKResult rather than throwing.
Optionaldebugging?: booleanEnables additional debugging behavior in the render context.
Memory configuration used to create RenderContext.
The viewer whose Viewer.viewList will be managed.
SDKResult that is ok: true when initialization succeeds, or ok: false
with an SDKErrorType and message when initialization fails.
Performs a pick operation in the given view with the specified parameters. Forwards to PickManager.
Notifies the renderer that a SceneGeometry was created.
Notifies the renderer that a SceneGeometry was destroyed.
Notifies that a SceneMaterial's linePattern or
hatchPattern was updated. Forwards to
GPUMemoryManager so the per-batch pattern tables
can re-encode the affected slot. The per-mesh attribute
texture is left untouched — the slot index there is keyed
on material.uniqueId, which doesn't change.
Notifies that a SceneMesh's base color changed. Forwards to MeshManager to queue GPU updates.
Notifies the renderer that a SceneMesh was created.
Forwards to MeshManager to allocate and upload required GPU structures.
Notifies the renderer that a SceneMesh was destroyed.
Forwards to MeshManager to release associated GPU structures.
Notifies that a SceneMesh's world matrix changed (eg. moved/rotated/scaled). Forwards to MeshManager to queue GPU updates.
Notifies that a SceneMesh's opacity changed. Forwards to MeshManager to queue GPU updates.
Notifies the renderer that a SceneModel was created.
Forwards to MeshManager to allocate and upload required GPU structures.
Notifies the renderer that a SceneModel was destroyed.
Forwards to MeshManager to release associated GPU structures.
Notifies the renderer that a SceneObject was created.
Forwards to MeshManager to create/track renderable state.
Notifies the renderer that a SceneObject was destroyed.
Forwards to MeshManager to release renderable state.
Notifies that a SceneObject had a SceneMesh added.
Notifies that a SceneObject had a SceneMesh removed.
Notifies that a SceneTexture's imageData was mutated in
place (e.g. heat-map brush painting). Routes to
GPUMemoryManager which re-uploads the pixels into every
atlas that holds the texture, then schedules a redraw on every
registered view so the change becomes visible without the caller
having to nudge the render loop themselves.
Notifies that a SceneTransform's matrix changed. Forwards to MeshManager to queue GPU updates.
Registers a newly created View with the renderer.
Creates a ViewRenderState wrapper and assigns View.viewIndex.
If there are already the maximum allowed number of views, returns an error result without adding the view. Any other operations on ViewManager for a view that was not successfully added will be quietly ignored, to reduce logging noise.
The view to add.
SDKResult indicating success or failure.
SDKInternalException If the given view id is already registered.
Unregisters a View and releases its associated rendering resources.
If the View is not registered with the manager, this method will return ok:true with no value,
and will not throw an error, since it's possible for the viewer to update views that have not been added
to the renderer (eg. if they were filtered out due to max view limits).
The view to remove.
SDKResult indicating success.
Notifies that a ViewObject's x-ray flag changed. Forwards to MeshManager to queue GPU updates.
Notifies that a ViewObject's colorize state changed. Forwards to MeshManager to queue GPU updates.
Notifies that a ViewObject's culled flag changed. Forwards to MeshManager to queue GPU updates.
Notifies that a ViewObject's highlight flag changed. Forwards to MeshManager to queue GPU updates.
Notifies that a ViewObject's opacity override changed. Forwards to MeshManager to queue GPU updates.
Notifies that a ViewObject's pickable flag changed. Forwards to MeshManager to queue GPU updates.
Notifies that a ViewObject's selection flag changed. Forwards to MeshManager to queue GPU updates.
Notifies that a ViewObject's visibility flag changed. Forwards to MeshManager to queue GPU updates.
Applies updates for a View and renders it.
This will activate the view if it is not currently active, upload any queued GPU changes, and issue a render.
If the View is not registered with the manager, this method will return ok:true with no value,
and will not throw an error, since it's possible for the viewer to update views that have not been added
to the renderer (eg. if they were filtered out due to max view limits).
The view to update and render.
SDKResult from the render call, or ok:true if the view is not registered, which is OK.
Reinitializes GPU and render state after a WebGL context restoration event.
Call this after the underlying WebGL context has been restored to recreate GPU resources for memory, rendering, and picking.
SDKInternalException If the manager has not been initialized.
Top-level, internal rendering and pipeline manager within a WebGLRenderer.
Remarks
ViewManageris owned by a single WebGLRenderer instance.Architectural Role
ViewManager.ViewManagermanages all Views for the associated Viewer, supporting multi-view rendering.ViewManagerand its managers.Lifecycle