Agent skill

threejs-scenes

three.js Scene graph root object, linear Fog and exponential FogExp2, Scene.background for solid colors or textures, and high-level environment background concepts that tie to PMREM and loaders in other skills. Use when configuring world container, atmospheric fog, or background; for HDR env map file loading use threejs-loaders; for GPU texture settings after load use threejs-textures; for tone mapping use threejs-renderers.

Stars 254
Forks 41

Install this agent skill to your Project

npx add-skill https://github.com/partme-ai/full-stack-skills/tree/main/skills/threejs-skills/threejs-scenes

SKILL.md

When to use this skill

ALWAYS use this skill when the user mentions:

  • Scene as root, scene.background, environment or skyball setup at scene level
  • Fog or FogExp2 parameters (near, far, color, density) and interaction with camera far plane
  • Organizing render lists conceptually (children of scene)

IMPORTANT: scenes vs textures vs loaders

Concern Skill
Scene + fog API threejs-scenes
Texture sampling, PMREM generator usage threejs-textures
Fetching HDR/glTF threejs-loaders

Trigger phrases include:

  • "Scene", "Fog", "FogExp2", "background", "雾"
  • "场景根节点", "线性雾", "指数雾"

How to use this skill

  1. Instantiate Scene and add lights/meshes/cameras as children per graph rules (threejs-objects).
  2. Choose fog: linear Fog vs exponential FogExp2 for outdoor/horizon feel.
  3. Tune fog near/far alongside camera far to avoid clipping artifacts.
  4. Set scene.background to Color, Texture, or cube map per docs; env lighting still needs matching renderer/material settings.
  5. When user wants IBL from HDR file, point to loaders → textures → materials pipeline explicitly.
  6. Document that fog does not replace frustum culling for performance.

Example: Scene with fog and background

javascript
import * as THREE from 'three';

const scene = new THREE.Scene();
scene.background = new THREE.Color(0xa0a0a0);

// Linear fog — match color with background to hide horizon seam
scene.fog = new THREE.Fog(0xa0a0a0, 10, 50);

// Ensure camera far plane covers fog range
camera.far = 60; // slightly beyond fog far
camera.updateProjectionMatrix();

See examples/workflow-fog-background.md.

Doc map (official)

Docs section Representative links
Scenes https://threejs.org/docs/Scene.html
Fog https://threejs.org/docs/Fog.html
FogExp2 https://threejs.org/docs/FogExp2.html

Scope

  • In scope: Scene, fog types, background field semantics at API level.
  • Out of scope: HDR / glTF file fetch (threejs-loaders); PMREM and texture sampling (threejs-textures); tone mapping / output color space defaults (threejs-renderers); full-screen fog-only post stack (threejs-postprocessing) unless tying to scene Fog; custom atmospheric scattering shaders beyond core fog API.

Common pitfalls and best practices

  • Fog color should harmonize with background to hide the horizon seam.
  • Very large far on camera with fog still needs scene scale consistency.
  • background rotation/intensity features depend on renderer version—cite current docs.

Documentation and version

Scene, Fog, and background fields are documented under Scenes in three.js docs. Environment-related visuals often combine this skill with threejs-textures (PMREM) and threejs-loaders (HDR files) — link those pages when the user moves from “fog color” to “HDR sky”.

Agent response checklist

When answering under this skill, prefer responses that:

  1. Link Scene, Fog, or FogExp2 official pages.
  2. Relate fog distances to threejs-camera far plane and world scale.
  3. Defer PMREM/HDR file steps to threejs-textures / threejs-loaders with one sentence each.
  4. Avoid duplicating full color-management tutorials — point to renderer + textures skills.

Keywords

English: scene, fog, fogexp2, background, environment, three.js

中文: 场景、雾、Fog、背景、环境、three.js

Expand your agent's capabilities with these related and highly-rated skills.

partme-ai/full-stack-skills

ocrmypdf-batch

OCRmyPDF batch processing skill — process multiple PDFs, Docker automation, shell scripting, and CI/CD integration. Use when the user needs to OCR many PDFs, set up automated OCR pipelines, or integrate OCR into workflows.

254 41
Explore
partme-ai/full-stack-skills

ocrmypdf-optimize

OCRmyPDF optimization skill — compress PDFs, configure PDF/A output, JBIG2 encoding, and lossless optimization. Use when the user needs to reduce PDF file size, create archival PDF/A files, or optimize OCR output.

254 41
Explore
partme-ai/full-stack-skills

ocrmypdf-image

OCRmyPDF image processing skill — deskew, rotate, clean, despeckle, remove border from scanned documents. Use when the user needs to improve scanned PDF quality, fix skewed pages, remove noise, or clean up scanned documents before OCR.

254 41
Explore
partme-ai/full-stack-skills

ocrmypdf-api

OCRmyPDF Python API and plugin skill — use OCRmyPDF programmatically from Python, integrate with applications, and extend with plugins (EasyOCR, PaddleOCR, AppleOCR). Use when the user needs to call OCRmyPDF from Python code, build OCR pipelines, or use alternative OCR engines.

254 41
Explore
partme-ai/full-stack-skills

ocrmypdf

OCRmyPDF core skill — add searchable OCR text layer to scanned PDFs, convert images to searchable PDFs, support 100+ languages via Tesseract. Use when the user needs to OCR a PDF, make a scanned PDF searchable, or extract text from scanned documents.

254 41
Explore
partme-ai/full-stack-skills

svelte

Guides Svelte and SvelteKit development including reactive components, stores, transitions, lifecycle hooks, SSR, file-based routing, and deployment. Use when the user needs to build Svelte components, create SvelteKit applications, implement reactivity patterns, or configure Svelte with Vite.

254 41
Explore

Didn't find tool you were looking for?

Be as detailed as possible for better results