AnimationClip — A reusable set of keyframe tracks representing one animation (e.g. "walk"), played via an AnimationAction on an AnimationMixer (Ch 09-Animation group).
AnimationMixer — Per-object player that advances one or more AnimationActions each frame and applies their blended result to the target object's properties.
BufferAttribute — Typed-array-backed storage for one per-vertex data channel (position, normal, uv, color, custom) inside a BufferGeometry.
BufferGeometry — Vertex data container (positions + attributes + optional index) — the modern replacement for the old Geometry class, required by all current geometry types.
Compute shader — A WebGPU-only shader stage (via WebGPURenderer) for general-purpose GPU computation outside the render pipeline, written in TSL and dispatched with workgroups.
Frustum culling — Automatic skipping of objects outside the camera's view volume; controlled per-object via Object3D.frustumCulled.
Instancing (InstancedMesh) — Drawing many copies of one geometry/material pair in a single draw call, each with its own transform/color — the standard technique for rendering thousands of similar objects performantly.
Loader — A class (GLTFLoader, TextureLoader, FontLoader, etc.) that asynchronously fetches and parses an external asset format into three.js objects.
LOD (Level of Detail) — An object that swaps between multiple geometry/mesh representations based on camera distance, trading detail for performance.
Material — Defines how a mesh's surface is shaded (color response to light, transparency, texture mapping). Classic materials (MeshStandardMaterial) use fixed shading models; *NodeMaterial variants accept custom TSL graphs.
Node (TSL) — The base unit of the Node Material / TSL system: a typed graph node representing a shader-stage value, composed via chaining/operators and compiled to GLSL or WGSL.
Object3D — The base class for anything placed in a scene graph (mesh, light, camera, group...); provides position/rotation/scale, parent/children hierarchy, and matrix transforms.
Raycaster — Utility for casting a ray into the scene and finding intersected objects — the standard mechanism for mouse/touch picking.
Render target — An off-screen buffer a renderer draws into instead of the canvas, used for post-processing, shadow maps, reflections, and multi-pass effects.
Scene graph — The parent/child tree of Object3D instances rooted at a Scene; transforms compose down the hierarchy (a child's world matrix depends on its ancestors').
Skinning (SkinnedMesh) — Vertex deformation driven by a Skeleton of Bone objects with per-vertex bone weights/indices — the standard technique for animated characters.
Tangent space — A per-vertex local coordinate frame (normal/tangent/bitangent) used to interpret normal-map data; three.js can compute it via BufferGeometry.computeTangents().
Tone mapping — The final HDR→displayable-range color transform applied by the renderer (ACESFilmicToneMapping, AgXToneMapping, etc.) — set via renderer.toneMapping.
TSL (Three.js Shading Language) — The JS-embedded shader authoring DSL that compiles to both GLSL (WebGL2) and WGSL (WebGPU) from one source; see Ch 797–799.
UV mapping — 2D texture coordinates per vertex, defining how a 2D texture wraps onto a 3D surface.
WebGLRenderer — The classic renderer targeting WebGL1/2; still the default for broad compatibility.
WebGPURenderer — The modern renderer targeting the WebGPU API, with a WebGL2 fallback; required for TSL compute shaders and is the forward-looking rendering path.