Estudio de Three.js

Gráficos 3D ⭐ 92k stars
API de alto nivel para renderizar escenas 3D con WebGL en el navegador.

🤖 Skill de implementación: frontend-desarrollo (regla: solo catálogo de las 66 · versiones por ERR/MEJ)

1 · Características

2 · Casos de uso

3 · Script minimalista

Instalación: npm i three

import * as THREE from 'three';
const s = new THREE.Scene();
s.add(new THREE.Mesh(new THREE.BoxGeometry(),
  new THREE.MeshBasicMaterial({ color: 0xff6600 })));

4 · Casos de uso (implementación real)

Dos casos de uso comunes implementados con esta librería.

1. Cubo que rota

Escena 3D con un cubo animado por el render loop.

import * as THREE from 'three';

const s = new THREE.Scene();
const cam = new THREE.PerspectiveCamera(75, innerWidth / innerHeight, 0.1, 100);
cam.position.z = 3;
const r = new THREE.WebGLRenderer();
document.body.appendChild(r.domElement);

const cubo = new THREE.Mesh(new THREE.BoxGeometry(), new THREE.MeshBasicMaterial({ color: 0xff6600 }));
s.add(cubo);

function loop() { cubo.rotation.x += 0.01; cubo.rotation.y += 0.01; r.render(s, cam); requestAnimationFrame(loop); }
loop();
🔁 Cómo funciona: El render loop (`requestAnimationFrame`) actualiza la rotación y redibuja cada frame.

2. Luz y cámara orbitante

Escena iluminada con cámara que orbita alrededor del objeto.

import * as THREE from 'three';

const s = new THREE.Scene();
s.add(new THREE.AmbientLight(0x404040));
const luz = new THREE.DirectionalLight(0xffffff, 1); luz.position.set(2, 3, 4); s.add(luz);

const cam = new THREE.PerspectiveCamera(60, innerWidth / innerHeight, 0.1, 100);
cam.position.set(3, 2, 5);
const r = new THREE.WebGLRenderer(); document.body.appendChild(r.domElement);

const esfera = new THREE.Mesh(new THREE.SphereGeometry(1), new THREE.MeshStandardMaterial({ color: 0x3399ff }));
s.add(esfera);

function loop() { cam.position.x = 5 * Math.sin(Date.now() / 1000); cam.position.z = 5 * Math.cos(Date.now() / 1000); cam.lookAt(0, 0, 0); r.render(s, cam); requestAnimationFrame(loop); }
loop();
🔁 Cómo funciona: La luz direccional da sombreado al material estándar; mover la cámara orbita la escena.

5 · Referencia

CategoríaGráficos 3D
Stars (GitHub)⭐ 92k
Sitio oficialhttps://threejs.org/
GitHubhttps://github.com/mrdoob/three.js
Instalaciónnpm i three
RelacionadasBabylon.js · A-Frame · PlayCanvas
📦 Regla de librerías (local primero): revisar C:\Users\TUF\Documents\librerías\local\ antes de descargar. Volver al índice de los 66 estudios.