Хорошая ли идея писать мобильные игры на ActionScript3, а не на Java / Objective-C?

#android #iphone #performance #actionscript-3 #mobile

#Android #iPhone #Производительность #actionscript-3 #Мобильный

Вопрос:

Привет,
я пишу простую игру на моем физическом движке для Android (на Java). Поскольку я хочу поиграть с некоторыми специальными графическими эффектами, для меня очень важна производительность.
Я прочитал в Интернете, что вы можете написать приложение на ActionScript3, а затем просто экспортировать его как приложение для iPhone / iPad или Android. Это означает, что мне не пришлось бы переписывать все с Java на Objective-C, если бы я хотел создать версию также для iPhone.

Есть ли у вас опыт написания игр на ActionScript3 как для Android, так и для iPhone / iPad? Есть ли какие-либо существенные преимущества / недостатки?

Комментарии:

1. Спасибо всем за ваши ответы. Возможно, я просто неправильно сформулировал вопрос, но я спрашивал не об игровых движках. Я хотел знать, хорошо ли писать приложения для iPhone или Android на ActionScript с точки зрения производительности 🙂

Ответ №1:

Я создавал игры как на AndEngine, так и на air для Android. Air для Android работает значительно медленнее. Если вашей игре нужна производительность, Air 2.6 — текущая версия — не сможет с этим справиться.

AIR 2.6 может обрабатывать простые игры. Одна с небольшим запасом производительности.

Я надеюсь, что AIR 2.7 (сейчас в бета-версии) улучшит ситуацию, поскольку он поддерживает OpenGL. Но пока я бы посоветовал держаться подальше от AIR для игр с высокой производительностью.

Чтобы увидеть пример простой игры, созданной с помощью AIR, ознакомьтесь с этой, сделанной моим другом:http://www.appbrain.com/app/kibble-katchers-free/air.com.munchiegames.KibbleCatchersFree

Играется нормально, но иногда сильно тормозит, если у вас происходит много всего одновременно. Если ваша игра будет более интенсивной, переходите на AIR.

Ответ №2:

По моему опыту, всегда лучше писать приложения на родном языке для устройства. Конечно, в зависимости от масштаба вашей игры преимущества могут не иметь значения. При использовании Flash для экспорта в iOS вы ограничены тем, к чему можете получить доступ на телефоне (например, виджетами пользовательского интерфейса и такими функциями, как доступ к камере). Я также читал, что Adobe не собирается включать эту функцию в будущие версии Creative Suite. Таким образом, вы можете потерять поддержку своей игры. На мой взгляд, существуют лучшие инструменты для разработки для обоих устройств. Посмотрите на Corona или Unity.

Ответ №3:

У меня сложилось впечатление, что нет, не очень хорошая идея, пока они не повысят производительность. Хотя в этом посте все выглядит довольно прилично. Я создал приложение для playbook, и симулятор отрисовал его просто отлично, но как только я увидел его на реальном устройстве, оно стало довольно медленным. Я не знал, что там уже есть поле прокрутки, и я сделал свою собственную реализацию с помощью прослушивателя ввода фрейма, и это было довольно медленно.

Если вы переходите на iOS, то в итоге получаете файлы большего размера. Итак, хотя flash / as3 отлично подходит для создания прототипов и некоторых простых приложений, я бы предложил использовать язык более низкого уровня, который не нужно переосмысливать.

Ответ №4:

Возможно, AndEngine мог бы быть чем-то для вас. Это 2D игровой движок для Android, поддерживающий физику. Я немного поиграл с ним, и он действительно мощный, но простой в использовании.

Ответ №5:

Производительность отличная, но подумайте также об успехе вашей игры в охвате аудитории — flash легко внедряется в Веб. Платформа flash и ее виртуальная машина постоянно совершенствуются из-за требований к производительности, а также мобильного оборудования. Постарайтесь написать раз и навсегда, насколько это возможно)