threejs-fundamentals

Set up Three.js scenes, cameras, renderers, and object hierarchies for browser-based 3D applications.

Updated May 4, 2026
One-click install
npx skills add https://github.com/jtgiron/portfolio --skill threejs-fundamentals-jtgiron
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: threejs-fundamentals
Source: https://github.com/jtgiron/portfolio/tree/main/.agents/skills/threejs-fundamentals
Command: npx skills add https://github.com/jtgiron/portfolio --skill threejs-fundamentals-jtgiron

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve?

This Skill helps you quickly set up and reason about the foundation of a Three.js application, reducing confusion around scenes, cameras, rendering, transforms, and object relationships.

Core Features & Use Cases

  • Scene and renderer setup: Create and configure the core rendering loop, pixel ratio, antialiasing, shadows, tone mapping, and responsive resizing.
  • Camera and transform fundamentals: Work with perspective and orthographic cameras, Object3D hierarchies, world and local transforms, and coordinate systems.
  • Practical 3D workflow: Use groups, meshes, vectors, matrices, quaternions, and cleanup patterns to build and maintain browser-based 3D scenes.
  • Use case: A developer can use this Skill to bootstrap an interactive product demo, position objects correctly in 3D space, and keep the scene performant and maintainable.

Quick Start

Ask for a Three.js starter scene with a camera, renderer, lights, a rotating mesh, and responsive resize handling.

Frequently Asked Questions about threejs-fundamentals

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I set up a Three.js scene with a camera and renderer?

To set up a Three.js scene, you create a scene graph, configure a perspective or orthographic camera, and initialize a renderer with parameters like pixel ratio and antialiasing. This establishes the core rendering loop for interactive browser-based 3D applications.

What is the best way to manage object transforms and coordinate systems in Three.js?

The best way to manage transforms in Three.js is by utilizing Object3D hierarchies and groups to control world and local coordinate systems. This ensures correct positioning of meshes using vectors, matrices, and quaternions within the 3D scene.

Does Three.js support responsive viewport management and resizing?

Yes, Three.js supports responsive viewport management by handling resize events to update camera aspect ratios and renderer dimensions. This maintains correct projection and performance-aware rendering configuration across changing browser window sizes.

How do I configure performance-aware rendering and tone mapping in Three.js?

Configure performance-aware rendering in Three.js by adjusting renderer settings for shadows and tone mapping while managing the animation loop efficiently. Proper cleanup patterns also help maintain optimal performance during browser-based 3D scene execution.

When do I need to use quaternions and matrices in Three.js object hierarchies?

You need to use quaternions and matrices in Three.js when calculating world and local transforms within Object3D hierarchies. They prevent gimbal lock during rotations and ensure accurate mathematical positioning of meshes in 3D space.