Open sourceMotor gráfico web

Oroya Animate

Librería TypeScript para describir escenas una vez y renderizarlas con Three.js, SVG o Canvas2D mediante una arquitectura independiente del renderer.

Autor · Arquitectura del motor, renderers y documentación
Contexto

Oroya Animate separa la intención de una escena de la tecnología que la dibuja. La misma estructura puede probarse y representarse en renderers con capacidades distintas.

El reto

Diseñar una abstracción útil sin esconder las fortalezas ni imponer el coste de cada renderer.

Mi contribución
  • Scene graph y ciclo de vida.
  • Contratos para geometría, materiales y animación.
  • Renderers Three.js, SVG y Canvas2D.
  • Ejemplos, documentación y publicación de paquetes.
Decisiones clave

Core independiente

La escena y sus componentes no importan Three.js ni una API concreta de dibujo.

Capacidades explícitas

Cada renderer declara lo que puede representar en lugar de simular paridad falsa.

Ejemplos como especificación

Las demos muestran el contrato completo y detectan diferencias entre implementaciones.

Arquitectura simplificada
Cómo se validó
  • Pruebas unitarias del core y transformaciones.
  • Ejemplos equivalentes en distintos renderers.
  • Build de paquetes y consumo desde una aplicación independiente.
Resultado
Una arquitectura gráfica reutilizable que permite experimentar con rendering sin reescribir la lógica de la escena.
Capacidades demostradas
Gráficos 2D/3DDiseño de APIsArquitectura de libreríasTypeScript
// Disponible para colaborar

De la arquitectura al producto.
Del código a la educación.

Abierto a oportunidades, consultoría, colaboraciones open source y proyectos educativos.