2010-10-08 17 views
10

Estoy planeando escribir un juego 3D FPS, basado en WebGL.WebGL Framework

  • ¿Debo utilizar algún framework WebGL?
  • ¿Cuál es la biblioteca WebGL más activa y popular hoy en día? ¿Admite LOD, Heightmaps, COLLADA y algunos sistemas de materiales?

Gracias.

+0

[Las preguntas que nos piden que recomiendemos o busquemos un libro, herramienta, biblioteca de software, tutorial u otro recurso externo están fuera del tema de Stack Overflow] (http://stackoverflow.com/help/on-topic) – gman

Respuesta

14

Sorprendido nadie mencionado Three.js. Tiene una gran comunidad detrás que agrega nuevas características de forma regular. Puede probarlo y jugar con él en WebGL parque infantil:

http://webglplayground.net/

hay una plantilla Three.js para nuevos proyectos.

4

Sí, definitivamente debe usar un marco WebGL, le ahorrará mucho trabajo.

El ecosistema WebGL está en un estado de cambio tan rápido en el momento en que es bastante difícil elegir una biblioteca en particular. Sin embargo, de todas las bibliotecas que he visto, sugeriría Copperlicht, ya que parece estar dirigido a juegos de FPS en particular. Hay tan pocos juegos WebGL completamente desarrollados publicados en este momento que es difícil decir qué biblioteca es popular.

3

También es posible que desee echar un vistazo a GLGE y SceneJS. Como dice Liam, todavía no hay líderes establecidos, pero por lo que he visto, esos dos y Copperlicht son los más discutidos. SceneJS en particular tiene una lista de correo muy activa.

3

Recientemente he estado buscando en diferentes bibliotecas de WebGL.

SceneJS es con el que he estado experimentando más hasta ahora. Es liviano y se enfoca únicamente en la creación y manipulación del gráfico de escena. Los objetos y los datos del gráfico de escena se definen en JSON, y me parece agradable trabajar con ellos. Los nodos de gráficos son encontrados más tarde por una ID y pueden ser manipulados.

Se proporciona una documentación completa, aunque hay algunos agujeros evidentes. Buen apoyo de la comunidad a través de un grupo de Google.

Comparado con GLGE y Copperlicht, lamentablemente es corto en características. Sin animación esquelética, sin detección de colisión, sin sistema de partículas, ¡ni luz ambiental!

En el futuro estaré mirando GLGE, C3DL y el puerto WebGL de CubicVR.

+0

La luz ambiente estará en la próxima versión de SceneJS, pero la animación esquelética, la detección de colisiones y las partículas están fuera del alcance del marco, que está orientado a aplicaciones de visualización de alto detalle (ingeniería, medicina, etc.). – xeolabs

2

Ha pasado casi un año desde que lo solicitó y WebGL ahora se envía en Firefox y Chrome y Firefox para Android.

Si tuviera que considerar este momento, creo que me gustaría ir con GlgE para los recién llegados a OpenGL, SpiderGL si usted sabe ya OpenGL, y tal vez miro PhiloGL si usted es un desarrollador de ExtJS/Sencha y al igual que el estilo de haciendo cosas. Sencha touch tendrá más sentido para una aplicación 3d cuando el webkit incorporado en los móviles se envíe con WebGL.

0

Algunas nuevas opciones surgieron desde que se hizo esta pregunta por primera vez.

Para los juegos, Turbulenz es una muy buena biblioteca: http://biz.turbulenz.com/developers

Playcanvas parece ser bueno también: https://playcanvas.com/

Dependiendo de sus necesidades en cuanto a tamaño de la descarga, la unidad puede ser una buena opción también. Con él, puede exportar su juego a casi cualquier plataforma. El único inconveniente es quizás los archivos relativamente grandes que produce. http://docs.unity3d.com/Manual/webgl-gettingstarted.html

0

Hay una biblioteca WebGL centrada en el diseño e implementación de juegos web llamada Babylon.js. http://www.babylonjs.com

Su gran ventaja es que proporciona una gran cantidad de efectos en la biblioteca de renderizado y se puede simplemente llamar a estas funciones.

Por supuesto, Three.js es una biblioteca fundamental para WebGL y todas las cosas pueden ser implementadas por ella, solo puede llevar mucho tiempo para el diseño del juego. Pero te sugiero que comiences con Three.js para familiarizarte con WebGL y luego uses Babylon.js para hacer tu juego.

0

Dependiendo de su plataforma, si su juego FPS se ejecuta en el navegador de la PC con una poderosa tarjeta gráfica y CPU, entonces la mejor opción para usted es unity3D.

Si su juego se enfoca en un teléfono móvil, quizás podría probar THREE.js o SceneJS.

Y si su tiempo es limitado, y su juego es un poco sofisticado, le recomiendo el LAYABOX, por su ecosistema completo y lleno de herramientas, que podría ahorrar mucho trabajo. Espero eso ayude.