tutorial three examples babylon javascript webgl

javascript - examples - three.js tutorial



SceneJS vs Three.JS vs otros (4)

A menudo utilizo la popularidad de un proyecto en GitHub como un indicador de su éxito. Si bien hay problemas con este método, encuentro que a menudo es la mejor manera de tomar una decisión. Listado de proyectos populares de WebGL, en popularidad decreciente por número de "estrellas":

Esto también refleja lo que he encontrado al investigar estos proyectos. three.js parece ser la característica más completa, tiene un conjunto extenso de ejemplos, una base de código bien estructurada y una comunidad próspera.

¿Pros y contras a alguien? No se pudo encontrar un conjunto completo de funciones para la biblioteca three.js. Aunque sé que es popular y en desarrollo activo. Tal vez alguien haya hecho algo de I + D en los motores WebGL y pueda sugerir qué beneficios ofrece cada biblioteca.


Como autor de SceneJS pensé en lanzar esto si fuera útil: SceneJS está especializada en la representación rápida de grandes cantidades de objetos articulados individualmente, sin efectos de motor de juego como sombras, reflejos, etc.

En otras palabras, está dirigido a los requisitos de CAD, anatomía médica, visualizaciones de ingeniería, elementos con miles de tuercas y tornillos, órganos, etc.

Por lo tanto, tiene menos flexibilidad que three.js, GLGE y PhiloGL.

Sin embargo, tiene una API JSON pura, que la gente ha encontrado que se integra bien con AJAX, analizadores y bases de datos (por ejemplo, CouchDB).

Entonces, si estás escribiendo un juego, te apuntaría a uno de los otros marcos, pero si estás escribiendo un visor CAD, entonces SceneJS podría hacer el truco.


Esto es básicamente un duplicado de WebGL Framework , pero las respuestas probablemente han cambiado desde entonces. Consulte también ¿Qué marco de WebGL debo aprender?

Dado que el mundo de WebGL se está desarrollando tan rápido ahora, sería difícil encontrar una comparación completa y actualizada de los marcos de WebGL. Tan pronto como alguien pasara el tiempo investigando tal cosa, sería obsoleto. Pero aquí hay una lista anotada de los marcos de WebGL:

http://www.khronos.org/webgl/wiki/User_Contributions

Si inicia un proyecto utilizando uno de estos marcos y luego actualiza esta lista en función de su experiencia, estará más actualizada que antes.

Por cierto, al mirar ahora mismo a PhiloGL , quedé impresionado con el conjunto completo de documentos API, y que han transferido todas las lecciones de WebGL para usar PhiloGL (solo código fuente, sin texto explicativo). No veo un tutorial per se; pero tienen varios ejemplos, así que en general están mejor que tres.js con respecto a la documentación.

Algunas notas más, para aquellos que pueden venir después (incluyéndome a mí):

  • CopperLicht parece especializarse en la carga de modelos desde archivos, en lugar de generar geometría en código. No es de código abierto.
  • PhiloGL usa O3D para generar geometría, por ejemplo, esferas.
  • Three.js viene con texturas de uso común.

Soy el autor de Jax ( http://blog.jaxgl.com/what-is-jax ), un marco con énfasis en el desarrollo guiado por pruebas, el comportamiento y la productividad total. Jax ofrece potentes generadores de código, un servidor de aplicaciones integrado y un entorno de prueba, y una arquitectura MVC (Modelo, Vista, Controlador) perfectamente organizada para su aplicación WebGL.

Jax está diseñado, ante todo, alrededor de Getting Stuff Done. Es un marco de convención sobre configuración, lo que significa que, si bien puede hacer que haga las cosas como le plazca, si acepta sus convenciones, descubrirá que hay muy poco costo inicial para que su aplicación salga de la aplicación. suelo.

Además, Jax fue diseñado alrededor de la extensibilidad. Es fácil crear mallas con cualquier conjunto de datos o algoritmos que prefieras usar, desde cargarlos a través de JSON hasta generarlos en el sombreado de vértices; y el marco incluye un sistema de complementos honesto a la bondad para que pueda elegir y elegir una funcionalidad adicional (como la detección de colisiones) según las necesidades de su aplicación, sin inflar el marco con cosas que no le interesan.

Tiene mucha documentación y estoy agregando más cada oportunidad que tengo; la página de inicio rápido ahora está en línea en http://jaxgl.com , y un conjunto de guías integrales están avanzando lentamente hacia http://guides.jaxgl.com . Los enlaces a la documentación de la API también están disponibles allí.

Una creciente selección de demostraciones en vivo de Jax en acción también está viva y bien en Github: http://sinisterchipmunk.github.com .