Cocos2d para iPhone vs Cocos2d-x [cerrado]


He trabajado con Cocos2d para iPhone y lo encuentro delicioso. Estoy empezando otro proyecto, y me he topado con Cocos2d-x, un puerto C++. Estoy tentado por la noción de poder (con consideración) construir para múltiples plataformas a la vez. Me siento igualmente cómodo con Obj-C y C++, y no estoy buscando comparaciones entre los dos lenguajes a menos que esté específicamente relacionado con el trabajo con Cocos2d.

Alguien Ha trabajado con ambas versiones del motor, y puede comentario sobre pros y contras específicos de los dos? ¿Cocos2d-x está "terminado"? ¿Confiable?

Author: WiseOldDuck, 2011-06-19

7 answers

El atractivo de las construcciones multiplataforma es una pesadilla disfrazada. Cualquier diseñador web le contará historias de terror de tratar de hacer malabares IE con Firefox con Chrome con lo que sea al mismo tiempo. Usted no va a ganar de repente más ventas porque usted fue capaz de lanzar en Android/iOS/etc en el primer día. Lo más probable es que sus intentos de multiplataforma restrinjan su aplicación de maneras que la matarán en todas las plataformas. Tu mejor apuesta es comenzar con una plataforma, terminarla y luego construir para otras. Su producto final se lo agradecerá.

No hay pros/contras para Cocos2d-x a menos que le guste C++ más que Obj-C.

 34
Author: Sold Out Activist,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2011-08-16 05:40:23

Estoy de acuerdo en que debe centrarse en el desarrollo de una sola plataforma hasta que tenga un buen producto sólido por ahí. Sin embargo, muchos desarrolladores que hacen esto después de que el hecho se da cuenta de cuánto esfuerzo y costo adicional se necesita para reescribir completamente el juego en una nueva plataforma. Sería un poco por adelantado pensado que puede minimizar la necesidad de reelaboración y por lo tanto minimizar su costo una vez que esté listo para portar su juego. Android es demasiado grande de una cuota de mercado para ignorarlo por completo; en mi mind Cocos2d-x es el camino a seguir si te gusta Cocos2d.

 18
Author: bigtunacan,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2012-01-28 17:07:13

No se sobre cocos2d-iphone pero si se sobre cocos2d-x.

Ventajas:

  • cocos2d-x utiliza C++ (bueno, no es realmente un profesional para algunos, pero esto es un profesional para mí)
  • Puede implementar fácilmente en diferentes plataformas, suponiendo que lo haya configurado correctamente (consulte a continuación)
  • Es compatible con Lua y JavaScript, para una codificación aún más fácil

Contras:

  • cocos2d-x tiene poca o ninguna documentación. Confiaría en los proyectos de prueba y la Referencia de API. Gracias a Dios que hay son personas como Nat Weiss que pusieron el aprendizaje fácilmente a disposición de los usuarios. ( http://paralaxer.com/cocos2d-x-book/)
  • Configurar tu proyecto para que funcione en todas las plataformas es una molestia. Tendrías que ser bueno en múltiples IDEs, así como comandos de línea de comandos/terminal
  • La mayoría de los scripts que vienen con la biblioteca para crear nuevos proyectos no son multiplataforma, lo que significa que todavía tiene que configurarlo individualmente para todas las plataformas
  • Integración de terceros SDK como Facebook, anuncios y otras cosas toma mucho tiempo, ya que tendría que implementarlos para cada plataforma que se dirige
 9
Author: alxcyl,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2017-05-23 12:00:47

Estoy desarrollando con cocos2d-x para iphone y está funcionando bien para mí. El único problema que puede encontrar es que la api siempre está ligeramente por detrás de la versión de cocos2d para iphone. Sin embargo api en sí es fiable y un facsímil en la mayoría de los aspectos de la original.

Si usted es serio acerca de portar a otra plataforma a pesar de que va a tratar de tener éxito en una sola plataforma primero, cocos2d-x es el camino a seguir, porque usted no tendrá que reescribir la esencia de su código en algún otro lenguaje posterior (es decir, port de c++ a objc o de objc a c++).

 5
Author: andrewz,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2013-06-05 22:15:06

He trabajado con Cocos2d y Cocos2d-X solo para el desarrollo de iPhone (hasta ahora). Trabajé con Cocos2d durante aproximadamente 1.5 años y he pasado a Cocos2d-x en los últimos seis meses más o menos. Al principio, no estaba dispuesto a pasar a Cocos2d-x porque, en mi opinión, todavía estaba madurando. Coco2d 2.0 había salido con muchos cambios y sabía que estaba bien desplegado y probado. Coco2d-x parecía que todavía estaba en flujo. Esto ha cambiado y he decidido usar Cocos2d-x para la duración, mientras siga siendo apoyado.

Ambos marcos parecen funcionar como se anuncia, en general, y dan un buen rendimiento para lo que estoy trabajando (puede ver algunos ejemplos aquí).

Me siento cómodo trabajando tanto en el mundo de Object-C como en el de C++. No se si alguna vez portaré mis "cosas" a Android, pero es bueno tener la opción.

Sin Embargo, el BIG factor decisivo para mí fue reutilización. Construyo muchos componentes y widgets que reutilizo en otros proyectos. Si desarrollara solo para iOS, Objective-C sería el camino a seguir. Pero trabajo principalmente en C++ y no quiero tener que recodificar todas las ideas de un lenguaje a otro cada vez que quiero sacar una herramienta probada de la caja de herramientas.

Creo que esto va a sonar verdadero para cualquier marco que elija usar para su desarrollo. Si usted tiene la opción, ir con la opción que le dará la mejor explosión para su dinero hoy, y abajo carretera.

 3
Author: FuzzyBunnySlippers,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2013-10-06 01:24:26

Actualmente estoy trabajando en cocos2d-x y estoy muy contento con él. Mi consejo sería comenzar el proyecto en una plataforma (prefiero IOS). Y cuando se haya lanzado con éxito en una plataforma, comience en otra.

Si tu juego tiene éxito, al final también tienes que lanzarlo en otra plataforma. Así que es mejor planificar con anticipación.

 2
Author: user739711,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2013-10-07 10:14:02

Me quedaría con Cocos2D-iphone. Concéntrese en el producto de la comunidad más grande con muchos más recursos. Cuando esté listo para portar, use apportable para compilar su aplicación para Android cuando haya terminado.

 0
Author: Zac Bowling,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2013-05-30 10:50:15