Какой язык использовался для программирования приложения Angry Birds? [закрытый]
Я никогда не программировал игру,но имею около десятка лет программных интерфейсов. После нескольких игр на моем телефоне Android я застрял, задаваясь вопросом, какой язык используется для программирования игр, таких как Angry Birds, и как такие графические манипуляции могут произойти. Родные языки или какой-то кросс-платформенный код?
спасибо!
5 ответов
Я не уверен, но учитывая, что довольно много .файлы lua находятся внутри папки приложения angry bird, я бы сказал, что они использовали LUA в некоторых аспектах. Но из того, что я слышал, LUA не является основным языком, просто чем-то, с чем можно писать. Тем не менее, я тоже не программист obj-c, поэтому поверьте мне на слово с солью.
последующая ссылка https://web.archive.org/web/20120502071633/http://blog.anscamobile.com/2010/04/lua-the-lingua-franca-of-iphone-games/
Android приложения кодируются на Java с Android development kit, iphone игры кодируются в objective C
Android dev kit доступен здесь http://developer.android.com/index.html
iPhone (iOS) development kit доступен здесь (внимание требует mac) http://developer.apple.com/devcenter/ios/index.action
поскольку оба языка основаны на синтаксисе C, существует много перекрестной совместимости между основные части вашего кода, однако, взаимодействия с телефоном выполняются через соответствующие sdk, поэтому вам придется внести изменения в учетную запись для этого. Также стоит иметь в виду, что objective c на iphone не является мусором, поэтому вам нужно беспокоиться об управлении памятью!
AngryBirds (и некоторые другие игры) используют код C/++ и NDK. Источники:какой язык использовался для программирования приложения "Angry Birds"?, http://www.gamasutra.com/view/feature/6481/postmortem_vector_units_riptide_.php
должно быть C для ядра, по крайней мере. Если бы я был ими, я бы написал ядро на C и обернул java вокруг него для android (я думаю, вы можете это сделать) и objective c для iPhone (я знаю, что вы можете это сделать).
Я всегда предполагал, что эти разработчики программируют основные функции в c/C++, а затем используют собственные наборы разработки для связи двух. Например, я знаю, что в разработке android вы можете использовать NDK для обертывания java вокруг c / C++
http://developer.android.com/sdk/ndk/index.html
по иронии судьбы Java не является языком "build once, run every everywhere" в этом случае: p