Skip to content

Scene.traverse

Summary

Scene.traverse iterates over every mesh in the scene and invokes a callback for each. Traversal order follows mesh insertion order. Use this for batch updates and mesh-side analysis operations.

Syntax

Scene.traverse(callback: (mesh: Mesh) => void): void
scene.traverse(callback);

Parameters

Name Type Required Description
callback (mesh: Mesh) => void Yes Function executed once per mesh in scene.meshes.

Returns

void - No value is returned; callback side effects drive behavior.

Type Details

// No additional descriptor expansion is required for this signature.

Example

const canvas = document.querySelector("canvas");
const wgpu = await WasmGPU.create(canvas);

const scene = wgpu.createScene();
scene.add(wgpu.createMesh(wgpu.geometry.box(1, 1, 1), wgpu.material.unlit({ color: [1, 0.5, 0.2] })));
scene.add(wgpu.createMesh(wgpu.geometry.sphere(0.7, 20, 14), wgpu.material.unlit({ color: [0.2, 0.7, 1.0] })));

scene.traverse((mesh) => {
    mesh.transform.translate(0, 0.05, 0);
});

See Also