Stratos: Punto de Encuentro de Desarrolladores

¡Bienvenido a Stratos!

Acceder

Foros





Mi experiencia con Corona

Iniciado por XÑA, 31 de Diciembre de 2011, 02:56:44 PM

« anterior - próximo »

XÑA

Buenas a todos. Estoy desarrollando un juego en Corona, y quería contaros un poco las impresiones.

Me decidí por Corona porqué el juego tenía que tener físicas y este API lo lleva integrado. Hubiera preferido Marmalade, porqué al ser en C++ y permitir depuración es mucho más sencillo el desarrollo, pero no sé porqué extraña razón Marmalade trabaja con integers los floats y eso me vuelve un poco loco. Además no soporta físicas por defecto, aunque hay cosas por ahí.

Corona se programa con LUA y permite generar para Android, iOS y Kindle  Oo . Yo no había trabajado con Lua, poco cosa, pero no me costó mucho ponerme con el tema. Por desgracia Lua no tiene clases, y hay que hacer algunas virguerías para simularlas. Pero lo más duro de todo es que NO hay debugger, con lo que funcionas con el viejo método del PRINT  :'(

Además Lua genera las variables 'on the fly' con lo que si te equivocas de letra y pones objeto.rottation=50 traga y no te salta error ni nada. Luego ponte a buscar errores... :-\

Corona tiene muuuucha documentación y ejemplos. Además el API es bastante lógico y sencillo. Sin embargo, al final el hecho de hacer un juego con Lua, teniendo montones de métodos desperdigados en un montón de archivos, donde no sabes qué método llama a otro, o dónde se utiliza, se vuelve una auténtica pesadilla.
Además tuve el problema de que en el emulador me funcionaba el juego, pero en el móvil no. Descubrir el problema fue un acto de fe por mi parte, porqué estuvo a punto de dejarlo.

Por otro lado, puedes trabajar perfectamente sin comprar la suscripción anual, así que eso también me parece muy importante. La mayoría de gente quiere probar hasta el final, porqué luego aparecen los auténticos misterios. Un claro ejemplo es el propio Corona, que hasta hace muy poco...¡no permitía controlar el botón de atrás!

Hasta que el juego no está terminado...¡no te fies!

No puedo contaros nada del juego, pero al ritmo que vamos, supongo que lo tendremos terminado dentro de unos meses. Espero que lo consiga, la verdad, porqué está costando bastante esto de cerrar el círculo.

Feliz 2012  ;)


Gallo

CitarMe decidí por Corona porqué el juego tenía que tener físicas y este API lo lleva integrado

hombre fisicas puedes tenerlas con otras apis como box2d directamente, ¿corona es tu primera eleccion o has probado con otras apis antes?

CitarYo no había trabajado con Lua, poco cosa, pero no me costó mucho ponerme con el tema

Por lo ke dices a continuacion sobre lua creo ke te falta bastante ke aprender. Eso ke has escrito puedes hacer que te de error si utilizaras getters y setters o si quieres reestringiendo el como se agregan propiedades al objeto. Las "virguerias" como las metatables, son simplemente caracterisitcas que no estan en otros lenguajes de programacion que quizas conoces. En el fondo su emulacion de las clases es lo mismo ke c++ hace durante la compilacion, solo ke tu no lo ves.

Aprende lua mas a fondo para sacarle el maximo partido.

XÑA

Vicente, estoy deseando que salga el deltaEngine adelante!!!  :o

Y respondiendo a Gallo, pues no, he probado Marmalade, Unity y Corona. También probé Shiva, pero lo descarté pronto. ¿qué opción más hay por ahí que sea?

Cierto, de Lua me falta mucho por aprender. He usado clases con las metatables, y el juego está orientado a objetos ( dentro de lo posible de Lua). Pero aunque Lua tiene algunas ventajas, para mi es un simple lenguaje de scripts que lo están usando para algo mucho más gordo. De ahí sus limitaciones, que se resuelven, pero que 'cuesta' mucho para gente acostumbrada a .Net o C++, porqué el paradigma es otro completamente distinto.

Vicente

A ver si Benjamin se pone las pilas con Delta y avanza la cosa sip :)

Zagahlo

Como alternativa a Corona... que opináis del AndEngine?

XÑA

Me parece muy muy bueno, pero sólo para Android...  :(