Three.js Development
Build high-performance 3D web applications using Three.js. Contains 556 searchable examples across 13 categories, 60 API classes, and 20 use-case templates.
When to Use
- Building 3D scenes, games, or visualizations
- Loading 3D models (GLTF, FBX, OBJ)
- Implementing animations, physics, or VR/XR
- Creating particle effects or custom shaders
- Optimizing rendering performance
Search Examples & API
Use the search CLI to find relevant examples and API references:
python3 scripts/search.py "<query>" [--domain <domain>] [-n <max_results>]
Search Domains
| Domain |
Use For |
Example Query |
examples |
Find code examples |
"particle effects gpu" |
api |
Class/method reference |
"PerspectiveCamera" |
use-cases |
Project recommendations |
"product configurator" |
categories |
Browse categories |
"webgpu" |
Quick Examples
# Find particle/compute examples
python3 scripts/search.py "particle compute webgpu"
# Search API for camera classes
python3 scripts/search.py "camera" --domain api
# Get examples for a use case
python3 scripts/search.py "product configurator" --use-case
# Filter by category
python3 scripts/search.py --category webgpu -n 10
# Filter by complexity
python3 scripts/search.py --complexity high -n 5
Example Categories
| Category |
Count |
Description |
webgl |
216 |
Standard WebGL rendering |
webgpu (wip) |
190 |
Modern WebGPU + compute shaders |
webgl / advanced |
48 |
Low-level GPU, custom shaders |
webgl / postprocessing |
27 |
Bloom, SSAO, SSR, DOF |
webxr |
26 |
VR/AR experiences |
physics |
13 |
Physics simulation |
Common Use Cases
| Use Case |
Recommended |
Complexity |
| Product Configurator |
GLTF, PBR, EnvMaps |
Medium |
| Game Development |
Animation, Physics, Controls |
High |
| Data Visualization |
BufferGeometry, Points |
Medium |
| 360 Panorama |
Equirectangular, WebXR |
Low |
| Architectural Viz |
GLTF, HDR, CSM Shadows |
High |
Quick Start
// 1. Scene, Camera, Renderer
const scene = new THREE.Scene();
const camera = new THREE.PerspectiveCamera(
75,
window.innerWidth / window.innerHeight,
0.1,
1000,
);
const renderer = new THREE.WebGLRenderer({ antialias: true });
renderer.setSize(window.innerWidth, window.innerHeight);
renderer.setPixelRatio(window.devicePixelRatio);
document.body.appendChild(renderer.domElement);
// 2. Lighting
scene.add(new THREE.AmbientLight(0x404040));
const dirLight = new THREE.DirectionalLight(0xffffff, 1);
dirLight.position.set(5, 5, 5);
scene.add(dirLight);
// 3. Load GLTF Model
import { GLTFLoader } from "three/addons/loaders/GLTFLoader.js";
const loader = new GLTFLoader();
loader.load("model.glb", (gltf) => scene.add(gltf.scene));
// 4. Animation Loop
function animate() {
requestAnimationFrame(animate);
renderer.render(scene, camera);
}
animate();
Progressive Reference Files
Level 1: Fundamentals
references/00-fundamentals.md - Core concepts, scene graph
references/01-getting-started.md - Setup, basic rendering
Level 2: Common Tasks
references/02-loaders.md - GLTF, FBX, OBJ loaders
references/03-textures.md - Texture types, mapping
references/04-cameras.md - Camera types, controls
references/05-lights.md - Light types, shadows
references/06-animations.md - AnimationMixer, clips
references/11-materials.md - PBR, standard materials
references/18-geometry.md - BufferGeometry, primitives
Level 3: Interactive
references/08-interaction.md - Raycasting, picking
references/09-postprocessing.md - Bloom, SSAO, SSR
references/10-controls.md - OrbitControls, etc.
Level 4: Advanced
references/12-performance.md - Instancing, LOD, batching
references/13-node-materials.md - TSL shader graphs
references/17-shader.md - Custom GLSL shaders
Level 5: Specialized
references/14-physics-vr.md - Physics, WebXR
references/16-webgpu.md - WebGPU, compute shaders
External Resources
1---2name: hs-threejs3description: Build 3D web experiences with Three.js. Use for WebGL/WebGPU scenes, GLTF models, animations, physics, VR/XR. Supports 556 searchable examples.4license: MIT5---67# Three.js Development89Build high-performance 3D web applications using Three.js. Contains 556 searchable examples across 13 categories, 60 API classes, and 20 use-case templates.1011## When to Use1213- Building 3D scenes, games, or visualizations14- Loading 3D models (GLTF, FBX, OBJ)15- Implementing animations, physics, or VR/XR16- Creating particle effects or custom shaders17- Optimizing rendering performance1819## Search Examples & API2021Use the search CLI to find relevant examples and API references:2223```bash24python3 scripts/search.py "<query>" [--domain <domain>] [-n <max_results>]25```2627### Search Domains2829| Domain | Use For | Example Query |30| ------------ | ----------------------- | ------------------------ |31| `examples` | Find code examples | `"particle effects gpu"` |32| `api` | Class/method reference | `"PerspectiveCamera"` |33| `use-cases` | Project recommendations | `"product configurator"` |34| `categories` | Browse categories | `"webgpu"` |3536### Quick Examples3738```bash39# Find particle/compute examples40python3 scripts/search.py "particle compute webgpu"4142# Search API for camera classes43python3 scripts/search.py "camera" --domain api4445# Get examples for a use case46python3 scripts/search.py "product configurator" --use-case4748# Filter by category49python3 scripts/search.py --category webgpu -n 105051# Filter by complexity52python3 scripts/search.py --complexity high -n 553```5455## Example Categories5657| Category | Count | Description |58| ------------------------ | ----- | ------------------------------- |59| `webgl` | 216 | Standard WebGL rendering |60| `webgpu (wip)` | 190 | Modern WebGPU + compute shaders |61| `webgl / advanced` | 48 | Low-level GPU, custom shaders |62| `webgl / postprocessing` | 27 | Bloom, SSAO, SSR, DOF |63| `webxr` | 26 | VR/AR experiences |64| `physics` | 13 | Physics simulation |6566## Common Use Cases6768| Use Case | Recommended | Complexity |69| -------------------- | ---------------------------- | ---------- |70| Product Configurator | GLTF, PBR, EnvMaps | Medium |71| Game Development | Animation, Physics, Controls | High |72| Data Visualization | BufferGeometry, Points | Medium |73| 360 Panorama | Equirectangular, WebXR | Low |74| Architectural Viz | GLTF, HDR, CSM Shadows | High |7576## Quick Start7778```javascript79// 1. Scene, Camera, Renderer80const scene = new THREE.Scene();81const camera = new THREE.PerspectiveCamera(82 75,83 window.innerWidth / window.innerHeight,84 0.1,85 1000,86);87const renderer = new THREE.WebGLRenderer({ antialias: true });88renderer.setSize(window.innerWidth, window.innerHeight);89renderer.setPixelRatio(window.devicePixelRatio);90document.body.appendChild(renderer.domElement);9192// 2. Lighting93scene.add(new THREE.AmbientLight(0x404040));94const dirLight = new THREE.DirectionalLight(0xffffff, 1);95dirLight.position.set(5, 5, 5);96scene.add(dirLight);9798// 3. Load GLTF Model99import { GLTFLoader } from "three/addons/loaders/GLTFLoader.js";100const loader = new GLTFLoader();101loader.load("model.glb", (gltf) => scene.add(gltf.scene));102103// 4. Animation Loop104function animate() {105 requestAnimationFrame(animate);106 renderer.render(scene, camera);107}108animate();109```110111## Progressive Reference Files112113### Level 1: Fundamentals114115- `references/00-fundamentals.md` - Core concepts, scene graph116- `references/01-getting-started.md` - Setup, basic rendering117118### Level 2: Common Tasks119120- `references/02-loaders.md` - GLTF, FBX, OBJ loaders121- `references/03-textures.md` - Texture types, mapping122- `references/04-cameras.md` - Camera types, controls123- `references/05-lights.md` - Light types, shadows124- `references/06-animations.md` - AnimationMixer, clips125- `references/11-materials.md` - PBR, standard materials126- `references/18-geometry.md` - BufferGeometry, primitives127128### Level 3: Interactive129130- `references/08-interaction.md` - Raycasting, picking131- `references/09-postprocessing.md` - Bloom, SSAO, SSR132- `references/10-controls.md` - OrbitControls, etc.133134### Level 4: Advanced135136- `references/12-performance.md` - Instancing, LOD, batching137- `references/13-node-materials.md` - TSL shader graphs138- `references/17-shader.md` - Custom GLSL shaders139140### Level 5: Specialized141142- `references/14-physics-vr.md` - Physics, WebXR143- `references/16-webgpu.md` - WebGPU, compute shaders144145## External Resources146147- Docs: https://threejs.org/docs/148- Examples: https://threejs.org/examples/149- Editor: https://threejs.org/editor/150- Discord: https://discord.gg/56GBJwAnUS