Threejs pega el código fuente
WebGL puede manejar imágenes en 3D, lo que suena muy feliz, pero WebGL es en realidad de muy bajo nivel. WebGL resuelve los problemas de cómo dibujar en el lienzo, cómo dibujar puntos, líneas y superficies, cómo colorear, cómo mapear, cómo procesar la luz, cómo convertir y dibujar después de girar la perspectiva, etc. Para un desarrollador que crea aplicaciones 3D, hay demasiadas cosas que aprender. La aparición de la biblioteca Threejs resuelve los detalles de representación subyacentes y las estructuras de datos complejas y, en última instancia, abstrae los detalles subyacentes complejos, lo que facilita que todos desarrollen aplicaciones 3D. Después de hablar con muchos desarrolladores, esta es la primera vez que entran en contacto con la biblioteca 3D WebGL y pueden comenzar a realizar algunos experimentos fácilmente. Sin embargo, el umbral para desarrollar aplicaciones que utilizan Threejs sigue siendo muy alto, pero con funciones como cargar modelos, atenuar y seleccionar cuadros de modelos, se pueden generar cientos de líneas de código en Threejs. Al mismo tiempo, hay muchos conceptos 3D complejos que comprender. Aquí es cuando se necesita ThingJS.
ThingJS es un nivel superior de abstracción y no necesita preocuparse por conceptos complejos como renderizado, cuadrículas y luces. Es un modelo abstracto y concreto. ThingJS encapsula API para varios eventos de interacción del modelo, como clics, clics izquierdos, deslizamientos del mouse, etc. ThingJS encapsula operaciones del modelo, como mover, acercar, colorear, enganchar e incluso abrir puertas. ThingJS también encapsula la relación jerárquica del modelo, como un objeto colocado en una habitación determinada, una habitación en un piso determinado y un piso en un edificio determinado. Este edificio está en un parque.
Para más información, puedes consultar el enlace web.