2011-05-24 8 views
13

Estoy creando un juego en línea basado en web y estoy tratando de encontrar la mejor opción en términos de un marco para la parte delantera del juego. El back-end del juego está usando asp.net mvc 2. Dado que podría tomar las acciones del controlador y convertirlas en acciones de servicio de WCF, la elección en la parte de atrás no debería afectar mis opciones de una interfaz.Motores de juego basados ​​en la web - Solicitud de entrada

Una cosa es cierta, no necesita jugar en un navegador. He hecho algunas investigaciones sobre el HTML 5-only extremo anterior como parte de este proceso y probablemente estoy inclinado en esta dirección, pero tengo algunas preocupaciones:

  1. Suponiendo que este juego es completado dentro de un año, lo ¿Qué tipo de dificultades tendré con los niveles actuales de adopción de HTML 5? Específicamente, me preocupa que Firefox 3.6 e IE 7/8 sigan teniendo una gran base de instalación. He revisado Chrome Frame para resolver el problema de IE, pero no estoy seguro de si existen inconvenientes que desconozco (aparte del requisito de instalación).

  2. Estoy acostumbrado a hacer C# con un buen IDE completo con información en tiempo real sobre si el código se compila e intellisense recordándome los nombres de los símbolos. ¿Voy a tener un problema con Javascript donde mi código se vuelve grande y difícil de administrar? El problema de accesibilidad que soluciona un motor de JavaScript para mis usuarios es más importante que conveniente para mí, pero por supuesto no puede ser inmanejable.

  3. ¿Los motores HTML 5 en el mercado ahora son lo suficientemente maduros como para confiar en mi inversión de tiempo? ¿Estoy en alto riesgo de adoptar un marco que se deteriorará en un año a partir de ahora? De los motores que he analizado, ninguno parece tener un gran apoyo de la comunidad, ¿me equivoco? ¿Hay otros por ahí que lo hagan?

aquí son los que he encontrado hasta ahora:

¿alguien sabe algo de la comunidad con éstos o tiene alguna razón para confiar en que cualquiera de ellos será bien mantenido o disponibles al menos durante los próximos varios años? ¿Alguien sabe de otro marco que está por ahí? ImpatJS tiene la demo más impresionante de todas y también es la única que no es gratuita.

Gracias por cualquier ayuda/consejo. Solo me preocupa elegir un front-end del que me arrepiento y no quiero tener que empezar de cero 4 o 5 meses después.

Este es un juego de navegador en 2D. No se está orientando a dispositivos móviles ahora, pero se trasladará a dispositivos móviles inmediatamente después del primer lanzamiento. Una de las esperanzas es que funcionará bien en dispositivos móviles si utilizo HTML 5. Tal vez tenga que ajustarlo para el tamaño de la pantalla, pero si no tengo que portarlo al dispositivo móvil, eso sería una ventaja definitiva.

+2

Es una pregunta muy amplia ... No estoy muy seguro de que se puede responder de manera satisfactoria. –

+0

¿Por qué no diseñar su API para que pueda cambiar marcos y tener un código limitado para cambiar? ¿Qué tipo de juego es este, 2D, 3D, shooter en primera persona, basado en fichas? Hay tantos tipos diferentes de juegos, cuanto más preciso sea, mejores serán las respuestas. –

+0

@James - eso suena bien en teoría. El problema es que, para que un juego funcione bien, debe realizar optimizaciones específicas de la plataforma que afecten a la arquitectura. – rboarman

Respuesta

4

Estos son mis dos centavos que han pasado por el mismo proceso de toma de decisiones para mi empresa.

Nuestro objetivo era crear un juego tan amplio como sea posible que significa que necesita para funcionar con mayor número de navegadores posible. Descarté html5 de inmediato porque la adopción no está allí y parece que estará al menos un par de años hasta que alcance más del 60% de penetración.

Esto me dejó con Flash contra Silverlight. La base instalada de Flash es enorme y hay muchos motores de juegos disponibles para ella. Flash es una apuesta segura a menos que tengas requisitos específicos para video o 3d.

elijo Silverlight porque quería una buena base instalada (60%) y quería aprovechar la experiencia .Net en la casa de mis empresas. También quería usar WCF para el backend y no quería mezclar entornos.

Tenga en cuenta que SL5 es compatible con la mayoría de XNA, que es un gran problema. Hay una tonelada de motores XNA y código fuente que puede usar para comenzar.

Aquí es un gran sitio para mirar soporte de los navegadores HTML5:

http://caniuse.com/

+0

¿Qué piensas de esto hoy? Gracias. – johnny

+1

Html5 todo el camino ... :) – rboarman

1

No puedo hablar con la experiencia de las particularidades de HTML5 y Canvas, pero ...

  1. Como En lo que respecta al soporte, aún tendrá un gran grupo de usuarios de IE7-8. IE es un poco diferente que otros navegadores porque tienes que HACER algo para instalar actualizaciones. (es decir, vaya a Instalar actualizaciones en el Panel de control o visite ie.microsoft.com). Otros navegadores (como Firefox) solo te dicen y hacen que la actualización sea fácil. Por lo tanto, sus usuarios de FF 3.6 deberían haber desaparecido, pero IE probablemente todavía sea un problema. Tenga en cuenta, sin embargo, que gran parte del viejo compartimiento del navegador IE se debe a los depts de TI. manteniendo a sus usuarios en versiones anteriores, algo de lo que no tendrá que preocuparse.
  2. Esto podría ser un problema. Sin embargo, desarrollar JS en Visual Studio o un IDE similar no es tan malo: todavía hay IntelliSense y otras cosas útiles, así como la depuración en tiempo real. Definitivamente va a ser un poco más difícil que C#, especialmente porque muchas de las nuevas api de JS no se han implementado en los autocompletos de muchos IDE.
  3. No creo que deba tenerle miedo a esto. En este punto, HTML5 y Canvas han llegado lo suficientemente lejos como para que no sean revocados, solo mejorados. Puede haber algunas modificaciones del APIS y tal, pero no lo suficiente como para evitar que lo use.
+0

@rboarman de hecho, lo hace.Esto funciona bien en IE9: http://ie.microsoft.com/testdrive/Graphics/CanvasPinball/Default.html Además, consulte aquí: http://msdn.microsoft.com/en-us/ie/ff468705.aspx # _HTML5_canvas –

+0

¡Eso es genial! Estaba equivocado. – rboarman

1

Está HTML5 va a reemplazar a Flash? No, porque los juegos y RIA que requieren más javascript no se pueden hacer hasta que el mundo esté usando IE 15 (que es de aproximadamente 5 10 años). Safari, Chrome, FF (tal vez), estarán a la par en este momento, pero sus motores js van a requerir un buen hardware y eso no siempre estará ahí.

Silverlight es una buena opción, pero no es tan compatible con Flash. Esta es la razón por la cual el flash todavía estará presente. La próxima versión admitirá controladores de video. Se llama colina Project Mole y puedes ver mi pregunta here.

Si quieres hacer juegos super simples sin buenos gráficos prueba uno de esos servicios que sugeriste. impact.js cuesta $ 100, los otros parecen gratis. En el futuro, podremos usar node.js para manejar solicitudes con servidores, pero mientras tanto, ¡Flash es ciertamente el camino a seguir !.

Me gustaría mucho mucho mucho más bien usar javascript pero después de empezar a programar y darse cuenta de las limitaciones en comparación Flash hará que su aplicación sobresaliente.

Luego, para dispositivos móviles, iPad, iPhone, Android, etc. Si realmente crees que tu audiencia está allí, construye el juego en su idioma. Es más epensive y difícil, pero Objective C, Java, que son mucho más rápidos que el HTML, JS, CSS, etc ...

+2

Sé que su respuesta fue probablemente relativa hace dos años, pero me lo encontré y es muy divertido de leer. Sabiendo que JavaScript está alejando totalmente Flash y los juegos hechos con javascript son tan complejos, si no más complejos, que los juegos flash. – Peter

1
  1. Sí, de hecho, perderá una gran base de usuarios. Pero cuán relevante será para usted esa base de usuarios dependerá de cuál sea su objetivo. Los jugadores de rol de todos los días tienen muchas más probabilidades de tener el último navegador que los usuarios de Sunday-Morning-Sudoku.

  2. Give Eclipse + Web Tools + Aptana a try. Funcionó muy bien para mí.

  3. Sin experiencia allí.

1

lo hice un poco de ensayo se ejecuta con YUI3, motor de explosión de & Raphael para SVG animación - todo parecía funcionar bien; El módulo dragdrop de YUI incluso detecta las mismas operaciones de arrastre en Mobile sin agregar una sola línea de código.

Solo puedo imaginar que si tuviera el tiempo, una instancia de YUI3 disponible en un servidor Node.js con animación SVG de Raphael sería mi elección. Podría descartar el aspecto de SVG y utilizar técnicas gráficas más estándar, o quizás ofrecer gráficos de calidad alternativa para los Agentes de usuario con menos testículos. Tal vez podría ser que su versión de calidad alternativa sea solo otra implementación de su motor de juego, y de todos modos puede elegir desarrollar juegos que no utilicen SVG.

sólo pensamientos sobre todo, que no ayuda con su depuración IDE en tiempo real ...

1

impact.js tiene una gran community y documentation. Vale la pena echarle un vistazo. Creo que iosimpact.js es parte del paquete (aunque beta ???) que permite el desarrollo de juegos nativos para el iphone/ipad.

+0

Compré Impact hace 8 meses y estoy bien en mi juego basado en este marco. Puedo responder. Es una buena. – omatase

0

Es cierto que hay gente ahí fuera que creen que HTML5 va a reemplazar a Flash en juegos en línea. Aquí es un motor de HTML/Javascript que basado oí hablar hace unos días

http://www.youtube.com/watch?v=_RRnyChxijA

No he utilizado realmente, pero se ve muy prometedor y está diseñado para conjunto similar de requisitos que usted ha puesto. Le permite diseñar juegos 2D/2.5D (proyecciones isométricas). Y se ve prometedor.

Cuestiones relacionadas