Вопросы Edward Snowden
1 110

Какой игровой движок выбрать?

Посоветуйте, пожалуйста, игровой движок для разработки 2D игр под android (возможно в будущем и на windows). Важным критерием является цена. В следствие чего (и не только) были отброшены такие варианты, как Construct 2, GMS 2 и Clickteam Fusion 2.5. Слышал про unity и совсем недавно узнал про gudot.

p.s. знаю основы C, C++ и немного C #, опыта разработки игр не имею, но очень интересна эта тема, хотя бы как хобби для начала.

Материал опубликован пользователем. Нажмите кнопку «Написать», чтобы поделиться мнением или рассказать о своём проекте.

Написать
{ "author_name": "Edward Snowden", "author_type": "self", "tags": [], "comments": 61, "likes": 17, "favorites": 15, "is_advertisement": false, "subsite_label": "ask", "id": 28301, "is_wide": true, "is_ugc": true, "date": "Mon, 01 Oct 2018 02:26:07 +0300" }
{ "id": 28301, "author_id": 68059, "diff_limit": 1000, "urls": {"diff":"\/comments\/28301\/get","add":"\/comments\/28301\/add","edit":"\/comments\/edit","remove":"\/admin\/comments\/remove","pin":"\/admin\/comments\/pin","get4edit":"\/comments\/get4edit","complain":"\/comments\/complain","load_more":"\/comments\/loading\/28301"}, "attach_limit": 2, "max_comment_text_length": 5000, "subsite_id": 64961, "possessions": [] }

61 комментарий 61 комм.

Популярные

По порядку

Написать комментарий...
31

Ебашь на CryEngine!

Ответить
9

Попробуй взять Godot. Правда, я им не пользовался, но я пользовался Unity. Unity - это хороший движок, но у него есть ряд проблем, с которыми вы не хотите разбираться, когда садитесь делать игру. С ними можно справиться, если вы уверены, что не будете совершать ошибок.

1) Unity - неоптимально использует ресурсы компьютера, вы можете заметить это, запуская простенькие вроде бы поделки у себя на машине. Иногда, она начинает греться. Не всегда. Просто какие-то разработчики учитывают встроенные проблемы движка, а какие-то нет. В частности:
1 - а) Unity как бы обещает, что все данные хорошо кэшируются, но это не так. "Брать" камеру или трансформ объектов (даже из-под скрипта самого объекта через this) достаточно дорого. Лучше не делать это больше одного раза, и сохранять все нужные ссылки.
1 - б) Многие методы, которыми новичкам предлагают пользоваться на практике, и которые выглядят "правильно" с точки зрения подхода к разработке, тоже очень дорогие. Find, Instantiate - как примеры. Тут нужно идти на ухищрения. С тем же кэшем после Find; некоторые объекты не инстанировать в рантайме, а держать где-нибудь за сценой в выключенном состоянии. Те, которые всё же правильней инстанировать - не удалять, а сохранять ссылку и убирать за сцену и т.д.
1 - в) Асинхронная загрузка ресурсов на практике не такая уж асинхронная.
Если всего этого не знать, и не знать, что с этим делать, скорее всего вы выдадите лагающее дерьмо вместо лампового продукта. Особенно, если речь идёт об мобильных устройствах!

2) В Unity неудобная вёрстка UI и работа с анимациями.
3) В Unity нет нормальной работы со строками из коробки. Скорее всего вам придётся писать вс1 самостоятельно, или вкладывать деньги в плагины.
4) Нет сохранений или паузы.

Про Godot не знаю, но что-то чекал немного. Вроде бы там всё это есть. Наверняка имеются свои подводные камни, но я бы вас поостерёг. Либо, если всё-таки решите браться за Unity - учтите существующие проблемы заранее. Погуглите другие. На самом деле всё решаемо и не так уж страшно. Кошмаром это становится, когда выясняется уже на ходу, когда особо некуда "разворачиваться".

Ответить
2

Ээээ, не надо на UI гнать. Он офигенный. Я 90% ui собираю в редакторе без использования кода. Просто нужно собирать так, как было задумано его разработчиками - и никаких проблем не будет

Ответить
1

А почему верстка уи неудобная? Юнити же вроде подгружает напрямую psd прям со слоями, а годот - там надо экспортить через другие форматы, атласы собирать и т.д.

Ответить
0

Не знаю, как это происходит в Godot. "Неудобная" - возможно, субъективное понятие, просто если сравнивать с тем, как это выглядит в том же UE4. Тоже про работу с анимациями - кто-то, может быть, не будет испытывать неудобства от необходимости всегда работать только в сцене. Но остальное - это всё-таки реальность.

Ответить
1

Сижу на юнити несколько лет, указанные проблемы кажутся притянутыми за уши по большей части
1 - а) Насчет Camera.main ты прав, а вот взятие трансформов, ригидбоди и других встроенных в юнити компонентов работает быстрее, чем взятие своих компонентов. Возможно кэширование ещё быстрее, но там итак достаточно быстро, чтобы об этом не думать
1 - б) Find в самом обычном подходе заменяется синглтонами, а частый instantiate пулами объектов. Только почему-то о синглтонах большинство туториалов начальных молчит, сам не понимаю почему (да, они так себе, но в тысячу раз лучше, чем GameObject.Find
1 - в) Не сталкивался с такой проблемой, ничего не могу сказать

2) Никогда с этим проблем не было, дело вкуса?
3) Тоже проблем не было, не понял откуда взялись
4) Time.timeScale можно для простой паузы использовать, но соглашусь, что тут проблема, что нельзя таймскейл не глобально устанавливать, а насчет сохранений - непонятно что ожидалось. Я создаю свои врапперы для данных, которые сериализую в json, сохраняя на диске/сервере. Есть вроде ассеты, которые позволяют прям сцену целиком сериализовать, но это как-то совсем жестко по-моему. А для совсем простых и быстрых штук есть PlayerPrefs

Ответить
0

Насчёт вещей по первому пункту - да, всё решаемо. Пулами объектов, синглтонами. Так и есть. Но новичок об этом вряд ли знает, поэтому об этом нужно было сообщить.
Я ж не говорю, что там ничего невозможно выправить, и всё коту под хвост сразу. Я написал - движок хороший, но надо знать узкие места.

2 - дело вкуса, согласен.
3 - ну так а как вы из коробки выгружаете локали? Там движок никакого для этого функционала не предоставляет. Или самому писать, или плагин купить. Написать самому - не конец света, но вряд ли человек, который решил делать игру захочет тратить на это время, если предполагается, что подобные вещи движки предоставляют из коробки.
4 - всё как говорите.
Но повторюсь, тут речь не о нерешаемых проблемах, а о том, чего от движка всё-таки ждёшь, а он не может.

Ответить
10

опыта разработки игр не имею, но очень интересна эта тема, хотя бы как хобби для начала

Я не то что бы опытный советчик, но все же...

Почему бы не попробовать сделать jRPG в каком-нибудь RPG Maker MV? Просто, относительно быстро и гарантированный результат. Получишь бесценный опыт ведения проекта "от" и "до".

Поиграйся с ним до весны, посмотри будет ли получаться. Если сделаешь хотя бы пару проектов, которые не стыдно выложить в STEAM - решай продолжать на нем же, или переходить на движки серьезнее.

А одновременно учиться скажем программировать игры не имея опыта разработки проектов - это вдвойне сложно. ИМХО.

p.s.: лично я для себя выбрал именно этот путь.

Ответить
1

Стоит RPG Maker MV раза в 2-3 дешевле вышеперечисленных платных аналогов, это плюс, низкий порог вхождения тоже +. Но игры можешь создавать исключительно в жанре RPG. За совет спасибо, если возникнут идеи для этого жанра, то пожалуй так и поступлю. А уже потом буду делать выводы.

Ответить
9

Если ты умеешь работать со скриптами, то игры на RPG Maker можно делать в любом жанре: от стратегии в стиле Cannon Fodder до 2D-шутеров на манер Contra. А вообще ты серьёзно? Хочешь делать 2D-игры, но отбрасываешь единственные хорошие движки? Unity - движок для опытных программистов. Если ты сидел за компьютером, чесал яйца, после чего решил «Ебать, да ведь я талант! Буду делать игры», то с ним не справишься. Начни с Construct 2 или GameMaker. Лично мне было проще с GM. На твоё усмотрение. И поскольку ты марамой, скачай торрент и не парься. Как разбогатеешь занесёшь деньги разработчикам и получишь лицензию.

Ответить
0

Если бы ценообразование в Construct 2 и GMS 2 было как в Unity, то для начала скорее всего выбрал бы что-то из конструкторов. А так платишь немало денег за программу + отдельно за поддержку android. На unity насколько мне известно бесплатно, пока ты не заработаешь 100 000 $. С Construct 2 имел опыт небольшой, все довольно просто, но почитал, что она в принципе предназначена для html5 и быстродействие в больших проектах и на разных устройствах может страдать. А с unity я думаю справлюсь, пускай и не сразу. В общем буду думать между RPG GMV и Unity. А за совет спасибо.

Ответить
7

Да, сейчас в GameMaker доплачиваешь за поддержку на других платформах, но я в 2015 взял GameMaker Studio 1.8 и она поддерживала все платформы, включая консоли. Сейчас её никак не приобрести. Только GM2. Не знаю, стоит ли сразу лезть на мобильный рынок. Попробуй сначала выложить игру в Steam. По крайней мере рассчитывай на него. Да, там много дерьма, да, все то и дело ноют о том, что из-за плохих игр никто не увидит их инди-шедевров, но я тебе скажу, как сам считаю: нормальным игрокам похуй на рекомендации Steam и внутренний магазин. Люди оценивают товар по рецензиям на сторонних ресурсах, вроде этого же DTF. Сделай игру. Напиши статью, что ты сделал игру и теперь каждый может поиграть в неё на Steam. Профит. Помимо этого добавь коллекционные карточки, достижения, и по возможности таблицу лидеров, чтобы подстегнуть желание игроков приобрести твой продукт.

Ответить
2

Не знаю, стоит ли сразу лезть на мобильный рынок. Попробуй сначала выложить игру в Steam.

Вот и появились люди, которые считают стим большей помойкой чем гугл плей.

Ответить
0

Я только не понимаю, как они узнают, что ты заработал 100 000 $? Они в твой кошелёк заглядывают? Или бегут на сайт Галёнкина?

Ответить
0

... стер, чтобы перенести ...

Ответить
0

Да, у C2 проблема с ценой сейчас. Они специально её так сильно задрали, чтобы люди на C3 переходили. В целом, runtime C3 шустрее чем C2 (по крайней мере все разрабы из чата так считают). У него пока только поддержки всех плагинов нет (но постепенно и их переписывают). Так что, в принципе, взять за 100 бачей лицензию на год - вполне себе вариант. Не такие уж и большие деньги на целый год. Констракт супер простой в освоении, но если знаешь языки (JavaScript/HTML5), то его функционал довольно сильно расширяется. Для 2D игр - самое то. А вообще, если хотите побольше об этом узнать от тех, кто на нём работает сейчас - https://discord.gg/6QMRpZ вот инвайт в чат. Правда, тут всё на английском.

Ответить
3

Не обратил внимания на твои знания языков программирования. Но всё равно бери что-то из моих предложенных вариантов. За Unity ты заплатишь не меньше. Не надо думать, что эта программа даётся каждому бесплатно, только потому, что они решили делать игры. Разумеется для 2D-игры о разработке на CryEngine или Unreal Engine даже не думай.

Ответить
2

Уточнение: за Юнити нужно платить только в случае если годовой доход превысит $100 000. Не думаю что топикстартеру это грозит в ближайшем будущем. А уж если такая «беда» вдруг случится, то $35 в месяц — вообще ничто.

Ответить
0

Эдвард Сноуден уже писал об этом.

Ответить
0

В Викиликс?

Ответить
0

Нет, здесь, в комментариях.

Ответить
0

А в RPG Maker можно три-в-ряд делать? )

Ответить
0

если очень хочется то можно

Ответить
0

Если углубиться в написание скриптов - то без проблем. Даже аналог Puzzle quest вроде делали на нем.

Само собой, на данный момент мне до этого как до луны.

Ответить
5

На всякий подумать еще, опыт так сказать.

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

В GMS2 тоже не просто, но чуть легче. GMS2 в Steam на распродаже под Win/Mac стоит 1024 рубля.

Если грубо Godot / U4 / Unity / GMS2 по убывающей, это твое желание заниматься разработкой и движком больше, чем игрой. Реши насколько ты готов.

Если делаешь jRPG то конечно же RPG Maker, если Визуальную Новеллу то Renpy. Но лучше, не делай на них то, для чего они не предназначены. Это можно, но не надо. Битье об невидимые стены головой не приносит радости, даже если ты их потом пробиваешь.

Игру лучше делай не под ведроид, а если небольшую и интересную, то в Itch.io и бесплатно, просто для скила, фидбека и общего развития, если большую и интересную, то в Стим.

Удачи!

Ответить
1

Спасибо за развернутый ответ

Ответить
0

Могу поделиться с Gms2, но у меня версия только на винду.

Ответить
5

Юнити изучать легче - материалов в сети хоть жопой жуй. Зато годот опенсорсный. А вообще это тема для срача - из серии, что лучше, эпл или виндовс, пк или приставка?

Ответить
0

Я же сузил так сказать круг поиска. Ориентируюсь на разработку 2d игр для android. В сравнение unity с gudot читал, что в для 2d будет лучше gudot. Но туториалов, примеров и материалов по unity конечно больше.

Ответить
2

Поправлю - Godot.

Ответить
1

Говоря о туториалах: Unity показался мне запарным и я забросил работу с ним. Мне показалось, что для ленивого любителя он не подходит, а вот работать с GM было интереснее и проще. Обучение смотрел в справке к движку, а также на YouTube-каналах Shaun Spaulding и HeartBeast. Там были и другие, не менее полезные, но я изучал программу конкретно по этим двум.

Ответить
5

Попробуй Gamemaker Studio. На нем куча крутых игр была сделана

Ответить
5

Если 2D под Android, то Corona либо Defold

Ответить
3

Всё это изучил уже?

Ответить
0

Нет, про многие не знал)
Про cocos2d немного читал, но забыл упомянуть в вопросе. На ней сделана игра badland. Но кокос, насколько я знаю не совсем движок.

Ответить
0

Corona от русскоязычных, так что вполне сможешь обратиться напрямую. У них чат прямо на сайте.

Ответить
2

Как уже писали выше, начинать лучше конечно же с RPG Maker MV. Если же «порог вхождения» не пугает, то можно и на Godot. У меня даже есть «небольшая» вводная статья на эту тему. ꈍꈊꈍ

https://murlab.github.io/blog/Godot%20Nachalo/

Ответить
1

Глянул, все хорошо, но назревает вопрос: а будет продолжение? Нашел в вашем блоге 2 статьи по годо, неужели бросили данный движок? Спрашиваю, потому что сам выбрал именно godot.
Заметил, что вы хорошо освоены в RPG maker . Есть какие то игры готовые ? Продаете или в качестве хобби создаете игры?

Ответить
1

Статьи обязательно будут, ибо некоторый опыт имеется, как и желание поделится знаниями. Но самая большая проблема это наличие свободного времени, и настроение любимой музы :)

RPG Maker я больше пока изучаю. Пишу плагины и скрипты. Если несколько наработок на Ruby и JavaScript. Игра у меня в процессе создания. Но поскольку постоянно хочется что-то улучшить и переделать, выход очень сильно затягивается. Кроме того мне не нравятся, что все игры созданные в RPG Maker как братья-близнецы поэтому приходится ещё и рисовать свою графику, а это тоже время ¯\_(ツ)_/¯

Ответить
1

Спасибо за ссылку, обязательно гляну

Ответить
–1

Unity или UE4 других вариантов нету

Ответить
9

UE4 - для 2D-то. Ну вперёд и с песней.

Ответить
0

*для 2d на android

Ответить
0

Octopath Traveler для свича сделали и не жаловались

Ответить
0

Думаю Unity больше подходит по моим запросам. В UE4 нет необходимости

Ответить
0

Не тратьте времени на конструкторы. Лучше сразу браться за взрослые движки вроде юнити или godot. Для новичка лучше unity, сейчас вылезут диванные эксперты орущие про юнити говно и советующие написать свой движок, не слушайте их.

Ответить
1

Unity - не говно, но у него есть проблемы, о которых нужно знать. Я примерно накидал что как отдельным комментом.

Ответить
1

Юнити говно, пусть на OpenGL пишет.

Ответить
1

Юнити бери, там платить надо от 100к баксов, точно не твой вариант где ты и где 100к баксов. Самый топовый движок если для мобилок, карты близзарда на нём сделаны(Х*р с камнями которые), близзард фигни выбирать не будет. Ну и капхед на ней сделан.

Ответить
1

А что, теперь кокос не модно предлагать?) Кокос криэйтор, только осторожнее, что-то версия 2+ под пристальным наблюдением ибо фпс дропается иногда в хроме)

Ответить
1

Unity или Unreal Engine 4. Unity хорош полноценной 2D физикой, Unreal графикой и всеми оттуда вытекающими. Оба варианта бесплатны пока не будет заработана определённая сумма. UE4 например собирает 5% после достижения отметки в 3000$/мес.

Ответить
0

Если кому интересно, в итоге я выбрал godot engine

Ответить
0

Если не секрет, чем руководствовался? Тоже смотрю в его сторону

Ответить
2

Во-первых, мне стало интересно, почему многие так хорошо отзываются о нем и я решил знакомство с граф. движками именно с godot, а там, если не понравится, перейти на unity.

Выбирал в итоге среди движков, где не только через код все делать надо, но и через 2d/3d рабочее пространство со сценами и прочими вещами. Варианты для себя рассматривал следующие: unity, godot, cocos2d-x + CocosCreator. Есть еще defold, но из-за малой распространенности по нему мало туториалов есть + компиляция там вроде только через сайт. Кокос говорят хорош, но документацая там никакая, да и с крейтором последним проблемы могут быть. Unty еще не учил, но читал комменты и отзывы людей, хорошо знакомых с юнити и изучающих godot, что в последнем некоторые вещи реализованы удобнее + Godot полностью бесплатный и с открытым исходным кодом.

Поработал с ним буквально пару дней и пока все нравится, хотя с GDScript раньше дела не имел.

p.s. Если тоже планируешь под андроид делать игры + не жалко 8тысяч рублей, то советую покупать game mamer studio 2.

Ответить
0

Defold же. Как раз под 2D и в отличие от юньки размер билдов меньше в разы.

Ответить
0

Если готов освоить Java, то можно воспользоваться libgdx.

Ответить
0

Прямой эфир

[ { "id": 1, "label": "100%×150_Branding_desktop", "provider": "adfox", "adaptive": [ "desktop" ], "adfox_method": "createAdaptive", "auto_reload": true, "adfox": { "ownerId": 228129, "params": { "pp": "g", "ps": "clmf", "p2": "ezfl" } } }, { "id": 2, "label": "1200х400", "provider": "adfox", "adaptive": [ "phone" ], "auto_reload": true, "adfox": { "ownerId": 228129, "params": { "pp": "g", "ps": "clmf", "p2": "ezfn" } } }, { "id": 3, "label": "240х200 _ТГБ_desktop", "provider": "adfox", "adaptive": [ "desktop" ], "adfox": { "ownerId": 228129, "params": { "pp": "g", "ps": "clmf", "p2": "fizc" } } }, { "id": 4, "label": "240х200_mobile", "provider": "adfox", "adaptive": [ "phone" ], "adfox": { "ownerId": 228129, "params": { "pp": "g", "ps": "clmf", "p2": "flbq" } } }, { "id": 5, "label": "300x500_desktop", "provider": "adfox", "adaptive": [ "desktop" ], "adfox": { "ownerId": 228129, "params": { "pp": "g", "ps": "clmf", "p2": "ezfk" } } }, { "id": 6, "label": "1180х250_Interpool_баннер над комментариями_Desktop", "provider": "adfox", "adaptive": [ "desktop" ], "adfox": { "ownerId": 228129, "params": { "pp": "h", "ps": "clmf", "p2": "ffyh" } } }, { "id": 7, "label": "Article Footer 100%_desktop_mobile", "provider": "adfox", "adaptive": [ "desktop", "tablet", "phone" ], "adfox": { "ownerId": 228129, "params": { "pp": "g", "ps": "clmf", "p2": "fjxb" } } }, { "id": 8, "label": "Fullscreen Desktop", "provider": "adfox", "adaptive": [ "desktop", "tablet" ], "auto_reload": true, "adfox": { "ownerId": 228129, "params": { "pp": "g", "ps": "clmf", "p2": "fjoh" } } }, { "id": 9, "label": "Fullscreen Mobile", "provider": "adfox", "adaptive": [ "phone" ], "auto_reload": true, "adfox": { "ownerId": 228129, "params": { "pp": "g", "ps": "clmf", "p2": "fjog" } } }, { "id": 10, "label": "Native Partner Desktop", "provider": "adfox", "adaptive": [ "desktop", "tablet" ], "adfox": { "ownerId": 228129, "params": { "pp": "g", "ps": "clmf", "p2": "fmyb" } } }, { "id": 11, "label": "Native Partner Mobile", "provider": "adfox", "adaptive": [ "phone" ], "adfox": { "ownerId": 228129, "params": { "pp": "g", "ps": "clmf", "p2": "fmyc" } } }, { "id": 12, "label": "Кнопка в шапке", "provider": "adfox", "adaptive": [ "desktop", "tablet" ], "adfox": { "ownerId": 228129, "params": { "pp": "g", "ps": "clmf", "p2": "fdhx" } } }, { "id": 13, "label": "DM InPage Video PartnerCode", "provider": "adfox", "adaptive": [ "desktop", "tablet", "phone" ], "adfox_method": "createAdaptive", "adfox": { "ownerId": 228129, "params": { "pp": "h", "ps": "clmf", "p2": "flvn" } } }, { "id": 14, "label": "Yandex context video banner", "provider": "yandex", "yandex": { "block_id": "VI-250597-0", "render_to": "inpage_VI-250597-0-1134314964", "adfox_url": "//ads.adfox.ru/228129/getCode?pp=h&ps=clmf&p2=fpjw&puid1=&puid2=&puid3=&puid4=&puid8=&puid9=&puid10=&puid21=&puid22=&puid31=&puid32=&puid33=&fmt=1&dl={REFERER}&pr=" } }, { "id": 15, "label": "Плашка на главной", "provider": "adfox", "adaptive": [ "desktop", "tablet", "phone" ], "adfox": { "ownerId": 228129, "params": { "p1": "byudo", "p2": "ftjf" } } }, { "id": 17, "label": "Stratum Desktop", "provider": "adfox", "adaptive": [ "desktop" ], "auto_reload": true, "adfox": { "ownerId": 228129, "params": { "pp": "g", "ps": "clmf", "p2": "fzvb" } } }, { "id": 18, "label": "Stratum Mobile", "provider": "adfox", "adaptive": [ "tablet", "phone" ], "auto_reload": true, "adfox": { "ownerId": 228129, "params": { "pp": "g", "ps": "clmf", "p2": "fzvc" } } } ]
В лутбоксы начали включать багфиксы
Подписаться на push-уведомления