2010-12-13 20 views
13

Nunca he programado un juego, pero tengo alrededor de una docena de años programando interfaces. Después de jugar unos pocos juegos en mi teléfono Android, estoy atascado preguntándome qué lenguaje se usa para programar juegos como Angry Birds, y cómo puede ocurrir esa manipulación gráfica. ¿Idiomas nativos o algún código multiplataforma?¿Qué idioma se usó para programar la aplicación 'Angry Birds'?

¡Gracias!

Respuesta

9

No estoy seguro, pero teniendo en cuenta que bastantes archivos .lua están dentro de la carpeta de la aplicación angry bird, diría que usaron LUA en algunos aspectos. Pero por lo que he escuchado, LUA no es un idioma primario, solo algo con lo que se puede guiar. Dicho esto, tampoco soy un programador obj-c, así que tome mi palabra con un grano de sal.

Seguimiento enlace https://web.archive.org/web/20120502071633/http://blog.anscamobile.com/2010/04/lua-the-lingua-franca-of-iphone-games/

+0

Esto es lo que estaba buscando. Donka! –

4

aplicaciones de Android están codificados en Java con el kit de desarrollo de Android, juegos de iPhone están codificados en el objetivo c

kit de desarrollo de Android está disponible aquí http://developer.android.com/index.html

iPhone (iOS) kit de desarrollo disponible aquí (Precaución requiere a mac) http://developer.apple.com/devcenter/ios/index.action

Como los dos idiomas se basan en la sintaxis C, existe una gran compatibilidad cruzada entre las partes básicas de su código. Sin embargo, las interacciones con el teléfono se realizan a través del los sdk respectivos, así que tendrás que hacer cambios para dar cuenta de eso. También vale la pena tener en cuenta que el objetivo c en el iPhone no es basura, ¡así que tendrás que preocuparte por la administración de la memoria!

+0

Java no está basado en absoluto en C, aparte de algunos aspectos de la sintaxis. –

+0

Me refería a la sintaxis, lo siento si eso no estaba claro – Robb

+0

Ya programo aplicaciones de Android, quizás debería haber dicho eso. No estaba seguro de si era Java o algo más. Gracias por la respuesta clara sin embargo. –

1

Tiene que ser C para el núcleo al menos. Si yo fuera ellos escribiría el núcleo en C y lo envolvería para Android (creo que puedes hacer eso) y el objetivo c para el iPhone (sé que puedes hacer eso).

+3

¿Por qué tiene que ser C para el núcleo? – aioobe

+1

C es multiplataforma, lo que significa que puedes compilarlo tanto para Android (si entiendo correctamente, no soy un programador de Android) como para iPhone. Revisé mi respuesta. –

+0

para la respuesta de Android es SÍ: puede hacer un núcleo en lenguaje C y envolverlo con JNI para poder usarlo desde Java (sdk de Android). – Mark

1

Siempre he asumido que estas funcionalidades básicas programa de desarrolladores en C/C++ y luego usar los kits de desarrollo nativo para enlazar los dos. Por ejemplo Sé que en el desarrollo de Android se puede utilizar el NDK para envolver java alrededor de C/C++

http://developer.android.com/sdk/ndk/index.html

Irónicamente Java no es la "construcción de una vez, ejecutar todos los lados" lengua en este caso: p

Cuestiones relacionadas