Una biblioteca 3D de JavaScript que facilita crear y renderizar escenas 3D en el navegador con WebGL y WebGPU.
gkjohnson/three-gpu-pathtracer
Un renderizador de path tracing para three.js que usa WebGPU y three-mesh-bvh para producir imágenes con base física en el navegador.
- Estrellas
- 2,023
- Forks
- 199
- Issues abiertos
- 63
- Último commit
- hace 20 horas
¿Qué es?
three-gpu-pathtracer es un renderizador de path tracing para three.js que se ejecuta en la GPU mediante compute shaders de WebGPU. Usa la biblioteca three-mesh-bvh para acelerar las intersecciones de rayos y ofrecer un renderizado de alta calidad con base física directamente en el navegador.
La biblioteca expone una clase WebGPUPathTracer que recibe una escena y una cámara de three.js, y acumula muestras progresivamente en cada fotograma. También incluye un BlurredEnvMapGenerator para generar mapas de entorno previamente desenfocados, lo que puede acelerar la convergencia a costa de obtener reflejos menos nítidos.
El proyecto requiere WebGPU. Las luces spot, direccionales y puntuales solo se admiten con multiple importance sampling, y solo se renderizan MeshStandardMaterial y MeshPhysicalMaterial. El repositorio incluye demos de carga de glTF, luces de área y spot, profundidad de campo, entornos HDR, reducción de ruido y renderizado de animaciones.
Funciones clave
- 01Path tracing de escenas de three.js mediante compute shaders de WebGPU.
- 02Intersección de rayos acelerada con three-mesh-bvh.
- 03Muestreo progresivo mediante un sencillo bucle renderSample.
- 04Compatibilidad con luces de área, spot, direccionales y puntuales mediante multiple importance sampling.
- 05Generación de mapas de entorno desenfocados para acelerar la convergencia.
- 06Compatibilidad con MeshStandardMaterial y MeshPhysicalMaterial.
Casos de uso
- Crear previsualizaciones fotorrealistas en el navegador de escenas de productos o arquitectura hechas con three.js.
- Prototipar iluminación y materiales con base física para aplicaciones 3D web.
- Renderizar imágenes fijas de alta calidad o fotogramas de animación a partir de modelos glTF.
Inicio rápido
- 1
Instala las dependencias para ejecutar los ejemplos localmente
npm install - 2
Inicia las demos localmente
npm start - 3
Abre una página de demo en el puerto 5173 de localhost con el nombre de la demo
Antes de usarlo
- El proyecto requiere WebGPU, por lo que no se ejecutará en navegadores sin compatibilidad con WebGPU.
- Solo se admiten MeshStandardMaterial y MeshPhysicalMaterial.
- SpotLights, DirectionalLights y PointLights solo se admiten con MIS.
Temas
Preguntas frecuentes
- ¿Qué es three-gpu-pathtracer?
- Un renderizador de path tracing para three.js que usa WebGPU y three-mesh-bvh para producir imágenes con base física en el navegador. three-gpu-pathtracer es un renderizador de path tracing para three.js que se ejecuta en la GPU mediante compute shaders de WebGPU. Usa la biblioteca three-mesh-bvh para acelerar las intersecciones de rayos y ofrecer un renderizado de alta calidad con base física directamente en el navegador.
- ¿three-gpu-pathtracer es gratuito? ¿Qué licencia tiene?
- three-gpu-pathtracer es open source bajo la licencia MIT. Revisa los términos de la licencia antes de usarlo en productos comerciales.
- ¿three-gpu-pathtracer sigue mantenido?
- Mantenimiento activo. El último commit de three-gpu-pathtracer fue el 5 nov 2026.
- ¿Para qué puedo usar three-gpu-pathtracer?
- Crear previsualizaciones fotorrealistas en el navegador de escenas de productos o arquitectura hechas con three.js. Prototipar iluminación y materiales con base física para aplicaciones 3D web. Renderizar imágenes fijas de alta calidad o fotogramas de animación a partir de modelos glTF.
- ¿Cómo se instala three-gpu-pathtracer?
- Instala las dependencias para ejecutar los ejemplos localmente: npm install Inicia las demos localmente: npm start Abre una página de demo en el puerto 5173 de localhost con el nombre de la demo
- ¿Dónde consigo three-gpu-pathtracer?
- El código fuente y las instrucciones de instalación están en GitHub: https://github.com/gkjohnson/three-gpu-pathtracer
Resumen generado por IA a partir del README del proyecto. Las estadísticas de GitHub se actualizan a diario.
Proyectos relacionados
Motor de juegos 3D y renderizado en JavaScript/TypeScript que funciona en el navegador con WebGL, WebGPU y WebXR.
Serie gratuita de libros en línea que enseña a crear un trazador de rayos desde cero en C++, con el código fuente completo de cada etapa.
Un mod beta para Fabric que añade path tracing de NVIDIA RTX Remix a Minecraft Java Edition 1.21.1 en GPU GeForce RTX.
Renderizador oceánico en tiempo real para three.js (WebGL2), con olas FFT, rompientes, espuma, cáusticas, vista submarina y objetos flotantes.
Un renderizador de Three.js para escenas de 3D Gaussian Splatting, compatible con WebGPU y WebGL2 y con LOD en streaming para modelos grandes.