Mobile

Unity VS Marmalade VS Что-то еще

14 фев 2013 14:07
+10
(Текст записи скрыт. Показать...)
Привет,

Выбирается мультиплатформенный движек для создания мобильных приложений на iOS и Android. На данный момент остановились на Unity VS Marmalade VS Что-то еще...

Интересует:
1) Доступ к нативной платформе;
2) Легкость интеграции In-App Purchases;
3) Возможность разделения серверно-клиентской частей (как вариант игровая логика находится на сервере);
4) Готовые подключаемые облачные решения (leaderboards, achievements, социальные и тд);
5) Работа с дефрагментацией устройств (особенно на Андроиде);
6) Легкость работы как для кодеров так и для артистов: готовые 2Д 3Д редакторы, встроенные дебаггеры, профайлеры и тд;
7) Решение специфических задач например как вариант рандомная генерация уровней;
8) Производительность;
9) Встроенные или готовые расширения для подключения рекламных сетей, аналитики (Google Mobile, Flurry, etc) либо простота создания таких расширений;
10) Легкость создания GUI (специализированные средства / расширения)...

Буду признателен за любые содержательные комментарии и мысли...
Отправлено 14.02.2013 в 14:35
Отвечает на сообщение 388626
0
ты мне помнится про флеш рассказывал, как хорошо портируется и работается
все таки не срослось?
Отправлено 14.02.2013 в 14:40
Отвечает на сообщение 388627
+2
Флеш смотря для чего. Переносить готовые проекты на флеше на мобильные - относительно просто. Писать на флеше только под мобильные при наличии специализированных средств - я бы не советовал... Да и по ощущениям - Adobe никто не любит, ни Google, ни Apple...
Отправлено 14.02.2013 в 14:35
Отвечает на сообщение 388626
0
Unity ))) как юнити программист говорю )) юнити ))
Отправлено 14.02.2013 в 15:07
Отвечает на сообщение 388628
0
А если не секрет как пошла игра Deep War?
Отправлено 16.02.2013 в 02:15
Отвечает на сообщение 388631
0
Не секрет, хреново..
Но мы изучили опыт, поняли свои ошибки, исправляемся.

Второй наш проект надеемся выстрелит
Сергей Елисеев  16.02.2013 12:04
Гурий Проткин  16.02.2013 14:51
Сергей Елисеев  17.02.2013 11:48
Отправлено 14.02.2013 в 15:06
Отвечает на сообщение 388626
0
Голый мармелад из коробки почти ничего не умеет. Нужно или писать свой движок или использовать что-то вроде cocos2dx.
Отправлено 14.02.2013 в 15:12
Отвечает на сообщение 388630
0
Константин Бороненков пишет:
>
> Голый мармелад из коробки почти ничего не умеет. Нужно
> или писать свой движок или использовать что-то вроде
> cocos2dx.


Вообще на мармеладе очень неплох сий движок: http://www.drmop.com/index.php/iwgame-engine/ .
Отправлено 14.02.2013 в 15:17
Отвечает на сообщение 388632
0
Владимир Алямкин пишет:
>
> Вообще на мармеладе очень неплох сий движок:
> http://www.drmop.com/index.php/iwgame-engine/ .

Только напрягает, что текущая версия 0.4
Владимир Алямкин  14.02.2013 15:20
Сергей Елисеев  14.02.2013 17:49
В ветке ещё 4 сообщения
Отправлено 14.02.2013 в 15:23
Отвечает на сообщение 388626
0
Смотря для каких игр Сергей, и для какого перфоманса. Если это 2Д игра которую вы хотите запустить и на слабых девайсах типа 1 япада тогда Корона СДК + Мармеладка, к примеру.
Отправлено 14.02.2013 в 17:59
Отвечает на сообщение 388636
0
Слабые девайсы особо не интересуют. Скорее интересует скорость развертки набора приложений плюс удобство использования вместе с теми вопросами что я озвучил выше...
Отправлено 14.02.2013 в 17:53
Отвечает на сообщение 388626
0
Я лично предпочитаю мармелад, так как он дает очень много контроля, особенно нравится полный контроль над памятью и рендером. В юнити если вы уткнетесь в то что сжирается память или тормоза - то порешать это практически без шансов, в отличии от.
Отправлено 14.02.2013 в 18:15
Отвечает на сообщение 388626
0
В мармеладе типа есть community плагин для Flurry - на самом деле его нужно сразу переписывать, но сделать это легко. Для меня была заминка только на освоении xcode-objectiveC кухни.

Для ios appstore есть апи, почти нормальное из коробки.
Чтоб не упускать детали - что мне в этом не понравилось: ios возвращает список продуктов одной пачкой; marmalade зачем-то разбивает эту пачку и поштучно передает в колбэк. Тут есть 2 нюанса: в колбэк нельзя передать "userdata", т.е. с ним нельзя стыковать какую-либо ооп модель. И еще в него не передается никакой информации что пачка закончилась.
Вобщем тоже лучше передалать.

Как с ним легко работать артисту на ios?
Вот представим обычная потребность нужно отправить на девайс каких-то новых спрайтов и увидеть их в игре. Как этого добиться - делать самим, ничего нет.
Отправлено 14.02.2013 в 22:39
Отвечает на сообщение 388626
+7
Привет, я в силу обстоятельств расскажу больше про юнити:
1) на unity через плагины все ок работает с нативными штуками. правда не очень удобно поддерживать ios/android либы - поэтому что-то простое лучше переписывать так чтоб жило внутри юнити(C#)(если я правильно понял пункт )
2) http://prime31.com/plugins - тут есть для ios/android - судя по дизайну апи и отзывам все вменяемое
3) тоже ок. сетевые нашлепки - если хочется чтобы клиент и сервер был на одном языке (C#) - тогда photon(exit games) либо tnet (от товарища который сделал ngui о котором ниже ), либо если хочется чтобы юнити движок был сервером - тогда uLink(muchDifferent)
4) тоже prime31 плагины
5) речь скорее о фрагментации - работает на всем "из коробки".
6) unity asset store можно посетить из самой юнити - там на топовых местах неплохие решения для 2д. 3d редактор в самой юнити хороший. c# дебаггер на monodevelop что несколько непривычно, но работает хорошо(кодать удобнее в vs )
7) сложно сказать, но скорость написания кода на C# и очень короткие итерации располагают.C# быстрый, даже как-то и не верится.если нужно что-то neon специфичное - тогда пункт 1 ок.
8) с# быстрый(снова). бывает что профайлер показывает какие-то ацкие тормозные внутренности самого движка - но чаще всего решается "другим техническим дизайном" и/или combine/merge ассетов(textures/meshes)(если тормозят именно они)
9) prime31.com разделы analytics & event tracking
10) NGUI - мы это используем(скоро год как).вполне нравится - по сути родная нашлепка поверх идеологии/архитектуры юнити. есть костыли и ошибки - но есть исходники,автор очень толковый парень и отзывчивый(http://www.tasharen.com/?page_id=140, там же можно почитать про Tnet ). или uniSWF - не пробовал но по дизайну выглядит очень правильно - играет swf а кодаешь на c#(action script не поддерживается)
из минусов:
1. иногда бывают случаются таинственные падения внутри юнити(особенно когда с бандлами химичишь) - гугление иногда помогает, иногда приходится копаться и изолировать последние телодвижения, которые привели к падениями.
2. я сам как-то очень про windows - поэтому комфортное кодание для меня в винде под vs, а собрать под ios можно только на mac.поэтому приходится воротить костыли и билдмашины на mac/vmmac.
3. Адские metafiles к каждому файлу. к ним надо привыкать.если народу сильно много - тогда писать какие-то хуки и тд чтобы делать меньше ошибок.
4. Размер исполняемого файла. это обратная сторона крутого C#. у нас это 21мб с использованием strip bytecode/subset 2.0 . ниже него только micro mscorlib - но там например нет сокетов - поэтому придется воротить костыли с native либо юзать внутреннее юнитевcкое www. ну т.е. если хочется пролезть с сетевой игрой через OTA 50 mb limit который в аппсторе - то ассетов должно быть 30-35мб сжатых.
5. на IOS из-за того что c# нельзя запускать JIT'ом - сделан AOT,который имеет ряд ограничений бороться с которыми (по-первости особенно) жутковато, но потом привыкаешь и вполне ничего:)

Еще немного субъективного:
Сам писал-портировал движок на ios - поэтому на юнити смотрел раньше с презрением.поэтому сперва поглядел мармалад - он очень такой "программерский" - ну т.е. по сути это удобная абстракция для кодания на всем всем всем. но там из коробки тулзы - эмм,мне показались "неудобными". Если команда людей которые будут писать "продукт" суровые кодеры/движкописатели - мармалад им более менее ок. там кстати прикольно еще что на ios можно собирать на песи. юнити - это такой сразу подготовленный автомобиль - прыг в него и погнал фича за фичей, итерация за итерацией. вот тут коллеги из bad piggies делятся как сели делать прототип а в результате всю игру там и сделали - http://www.develop-online.net/features/1798/Unity-Focus-Bad-Piggies
Отправлено 14.02.2013 в 23:43
Отвечает на сообщение 388656
0
Спасибо, то что нужно.
Отправлено 15.02.2013 в 13:09
Отвечает на сообщение 388626
+2
Если нужно просто "попробовать", то по большому счету все равно на какой технологии - и юнити, и кокос, и мармелад подойдут. Все рабочие, на всех есть крутые успешные игры.

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

Ну а по тулзам и плагинам юнити конечно заруливает всех. Нюанс только в том, что плагины потом скорее всего выкинешь и сам все перепишешь )) Как это всегда бывает, впрочем.
Отправлено 18.02.2013 в 18:46
Отвечает на сообщение 388665
0
У мармелада уже все хорошо с охватом платформ, хоть на smart TV пиши.
Лицензия стоит дешевле.
Но у мармелада конечно проблема в программистах, в то время как Unity3D программисты плодятся, как PHP-прогеры после дождя(со всеми вытекающими).
Отправлено 18.02.2013 в 21:40
Отвечает на сообщение 388693
0
Олег Тищенко пишет:
>
> У мармелада уже все хорошо с охватом платформ, хоть на
> smart TV пиши.
> Лицензия стоит дешевле.
> Но у мармелада конечно проблема в программистах, в то
> время как Unity3D программисты плодятся, как
> PHP-прогеры после дождя(со всеми вытекающими).


мм, честно говоря сильно не согласен. говнокодеров - много, но зачем они нужны в реальных проектах? Только помеха. Видел не один юнитевский проект от вполне уверенных компаний, который после n месяцев разработки превращался в гуано.

Знание C# или Java, даже уверенное и "с опытом", но без геймдев подоплеки - это ничто. А "уверенно" в си-шарпе через полгода кодинга можно себя почувствовать.

с мармаладом как раз в этом плане гораздо проще. Классический сипипишный кодер, а особенно с опытом (хотя бы обзорным) DX/OGL и подобных технологий, в мармаладе "разбирается" горадо быстрее.

Потому все зависит от проекта и _имеющихся_ кадров.
Отправлено 15.02.2013 в 13:45
Отвечает на сообщение 388626
0
Три наши последние игрушки на Unity, писал я один и не использовал ни одного плагина :) По времени разработки три игрушки заняли столько же времени как разработка одной на Blitz3d (первый Древний Рим).

И все три без проблем работают и запускаются на iOS, правда Ancient Rome 2 надо для первого iPad немножко оптимизировать. Хотя игра уже работает, но мы работу над версией для iPad пока отложили в связи с тем что не верим в iOS рынок :)
Отправлено 15.02.2013 в 15:08
Отвечает на сообщение 388667
+2
Туда ринулись практически все, выходит много игр и большинство теряется и приносят небольшие доходы. К тому же если игра чисто для iOS, её будет труднее продать на других платформах, если вообще будет возможно (кроме мобилок). Хотя тот же Big Fish говорит что его казуальная PC площадка приносит в три раза больше денег чем мобильная. Делать игру для iOS это как бы делать игру всего для парочки порталов :) Грубо говоря...
Сергей Елисеев  15.02.2013 18:36
Aleksej Datsko  15.02.2013 19:22
Cергей Грицай  15.02.2013 23:22
В ветке ещё 1 сообщение
Иван Поляков  20.02.2013 17:48
В ветке ещё 1 сообщение
Отправлено 17.02.2013 в 23:14
Отвечает на сообщение 388626
+3
Я для 2D использую http://www.giderosmobile.com
из плюсов:
* компилируешь у себя на компе, а не в облаке как корона или moai. поэтому можно взять ноут и в тайгу или необитаемый остров для завершения проекта
* lua
* свой проигрыватель для windows, mac, android, ios - очень удобно разрабатывать и сразу видеть результат
* простой. делали упор похожести на actionscript, Stage, addChild вот это всё.
* проект экспортится в проект для android sdk или xcode и релиз компилируется уже первородными средами

из минусов:
* используется свой IDE, пока слабоват.

Но все плюсы перекрывают минус
Отправлено 18.02.2013 в 18:41
Отвечает на сообщение 388626
+1
Прошу прощения если повторюсь(все комменты нету времени читать)
1. Marmalade - low-level, пляши как хочу, оптимизируй тоже. Marmalade - это и есть прямой доступ к нейтив. У Unity3D с этим похуже, но на iOS есть доступ к objective-C обертке над Unity проектом, там тоже можно костылей под свой проект напихать(сам таким занимался). Андроид же сразу executable генерит, Java код можно только через C# подключать.
2. Плагины есть под обе платформы, с этим проблем нет. Так же есть плагин для амазона.
3. Строго пофиг, для юнити есть хороший сервер Photon, но принципиально хоть свой пиши. Так же у юнити есть понятие подгрузка ресурсов(assets), на Marmalade опять же пиши что хочешь, все зависит от продвинутости ваших программистов и времени на реализацию проекта.
4. Опять же плагины есть на Unity3D, к мармеладу не прикручивал, но думаю там тоже с этим нету проблем(ЕА часть iOS игр сделали на мармеладе)
5. Адаптивный дизайн, запрограммировать подстройку под разные устройства и разрешения - вопрос времени, и не очень большого.
6. В Unity Pro все встроено(2д редактор с дебагерами и профайлерами). По мармеладу или писать свои редакторы или искать готовые. По поводу дебагинга на мармеладе, честно говоря не особо в курсе.
7. Встроенных средств для таких вещей не там не там нету, да и в таких универсальных движках и быть не может - можно самому написать и достаточно легко.
8. Marmalade производительней.
9. Насчет мармелада опять же не в курсе, к Unity3d круча плагинов на Prime31
10. В Unity 4 обещали продвинутые средства для GUI мобильных, в 3-й части с этим туго.

Важно понимать, что Unity это среда разработки с кучей готовых средств, в то время как Marmalade это low-level Framework с доступом в нейтив. Так что на мармеладе придется искать дополнительные средства или писать свои.

Так что чем крупнее у вас проект, тем больше будет подходить мармелад, но в большинстве случаев Unity3D с головой хватит.

Ага ну еще мармелад на моей памяти чуть ли единственная платформа, которая позволяет компилить iOS приложение на Windows.

PS сорсы Unity3D тоже можно лицензировать, там что-то порядка 5к зелени вроде было(могу быть неправ).
Отправлено 25.02.2013 в 16:58
Отвечает на сообщение 388626
+1
немного запоздала с ответом - наткнулась на тред случайно.
мои 2 копейки, если еще актуально:
на мармеладе, действительно, можно копаться глубоко в его нативных функциях, и вам наверняка придется этим много заниматься, потому что.. просто придется ;)
- управление памятью
- GUI
- дебаггинг\профайлинг
- производительность
в том, что перечислено выше, вам, скорее всего, потребуется рыться как следует.
к нему легко прикручиваются свои лидерборды, статистики, IAPы.

вывод:
в целом, мармелад хорош для быстрого и дешевого старта, но с ним надо закладываться на то, что придется потратить лишние часы\дни\недели на копание в глубинных кишках и написание своего удобного.
Отправлено 13.03.2013 в 12:57
Отвечает на сообщение 388626
0
Производительность
Извиняюсь, что врываюсь, меня сейчас тоже эти вопросы мучают :) Не совсем понятна позиция общественности по этому пункту. Т.е. совершенно очевидно, что мармелад более эффективен в плане производительности. Но насколько? Если откинуть логику приложения: на какую сложность сцены можно рассчитывать в мармеладе и юнити, скажем, в привязке к первому айпаду?
Списки доступа
  • Подписчики [573]
  • Белый список [12]
  • Черный список [2]
Права доступа
Вы можете читать группу, но не можете отвечать на сообщения и создавать новые темы.
Доступ для остальных:
анонимы : могут читать
новые : могут читать
постоянные : полный доступ

Copyright © 2021 ООО "ДТФ.РУ". Все права защищены.

Воспроизведение материалов или их частей в любом виде и форме без письменного согласия запрещено.

Замечания и предложения отправляйте через форму обратной связи.

Пользовательское соглашение