Таблетка была белая, синие и красные кончились
Плохой мальчик. Перезагрузка
Почему использовался именно Unity для создания RATOMON?
Замечание 1. Спасибо Grassnake за вопрос, почему для RATOMON я выбрал Unity. Размер ответа превысил мои первоначальные ожидания, а т.к. вопрос хороший, и есть ненулевая вероятность получить его в будущем, то пусть он будет в виде отдельного поста.
Замечание 2. С GameMaker сравнивать не могу, т.к. никогда не рассматривал его в качестве альтернативы и не углублялся в его возможности. Рассматривал Godot, и ниже будет понятно, почему не выбрал его.
Итак, почему Unity, а не другой движок/технология? С учётом жанра игры и её наполнения, как будто бы "лишний груз".
Но всё не так просто, ведь выбор инструмента для создания и публикации игры - это не всегда поиск "лучшего" инструмента. Это может быть и "наследство" прошлых частей: условно, надо сделать гоночную игру "Нужна скорость 3", и есть доступ к коду и наработкам от "Нужна скорость 2" и спин-оффа "Нужна ли скорость?", которые написаны на PHP и Lua; возможно, использовать прошлый код будет хорошим решением. С другой стороны может быть оптимальным использовать ту технологию, которую уже знают разработчики, чтобы сэкономить на переобучении. И это может быть выгодно, несмотря на то, что известная технология проигрывает альтернативам по каким-то показателям. Unreal для мобильных Hidden Object игр? 3D шутер на Ren'Py? Последнее - перебор, конечно, но смысл, надеюсь, передал, надо сравнивать детально плюсы и минусы.
В моём случае, была одна главная причина, ещё две второстепенные, и пучок совсем малозначимых.
Во-первых, для меня игра RATOMON была не только поводом для тщеславной ачивки "Моя игра есть в стиме" или алчного желания подзаработать (тут иллюзий не было никаких), но и попыткой переквалифицироваться на юнити-разработчика. До этого на офисной работе я касался нескольких юнити-проектов, но это было на пару-тройку месяцев каждый и с совмещением работы над другими проектами (C#, AS3/Haxe/JS). В общем, этого было бы недостаточно, чтобы "если что" найти хорошую работу (везде требуются годы опыта с Unity, и не все готовы учитывать 10+ лет опыта геймдев разработки на других технологиях). Ну а дальше вопрос востребованности специалиста решается монеткой: Unity vs Unreal. С анриалом я работал до этого, мне он не очень нравится (это на отдельную простыню текста можно расписать).
Во-вторых, когда-то давно я прочитал что-то типа "надо определиться, вы хотите делать игру или игровой движок", и, к своему сожалению, осознал, что мне игровые движки нравится делать больше. С этим надо бороться, потому что кастомные игровые движки нафиг никому не нужны. Ну и чтобы максимально оторваться от привычного прототипостроения, я взял не просто Unity, а ещё и TopDown Engine поверх. Загнал себя в угол построения именно игры. Это помогло, хотя в отдельных аспектах срывался и срываюсь до сих пор, тратя время на внутренние шестерёнки, вместо бросающегося в глаза визуала. Сюда же можно добавить, что я начал с топ-даун шутера, но не собираюсь ограничиваться только этим жанром. Может быть, сделаю продолжение RATOMON'а и ещё одну игру (которая уже лет 9-10 ждёт в отдельной папке А4 листов, недодизайненная и едва начатая на флеше), а потом попробую другие жанры, в том числе, в 3D. Наверно, это тоже аргумент для "почему не GameMaker".
В-третьих, как недавний представитель корпоративной среды (и здравого смысла), я понимаю, что с нуля написать ВСЁ - это или сроки взлетят, или игра станет памятником минимализма. Изначально я на 4 месяца рассчитывал, включая вспоминание и изучение нужных кусочков Unity. А делать что-то минималистичное, типа Downwell, - это немного конфликтует с пунктом 1, ведь для освоения инструмента надо попытаться охватить максимальное количество его возможностей. Чтобы и сроки держать в узде, и не скатываться в монохромный гиперказуал, надо иметь доступ до "кирпичиков", которые сделали добрые люди за меня. У юнити для этого есть ассет-стор, где иногда бесплатно, иногда по нормальной скидке можно взять супер-полезные штуки. Тот же Rewired или I2 Localization сэкономили много времени (на их освоение, правда, тоже не один день ушёл). Есть ли подобное в Godot? Да, есть. Но там всё сильно скромнее. И, отскакивая в сторону, в лицензии для Unity ассетов есть приятный момент: их можно использовать в других движках (если я когда-нибудь до них доберусь).
Это - основные причины. По каждой можно ещё углубиться, если есть желание. Ну и можно пару микропричин упомянуть, которые тоже учитывались, а именно: язык программирования для движка (и поддержки IDE для него) и возможность работать в линуксе. Задавайте ещё вопросы, а я буду учиться отвечать короче.
Морфеус?
P.s Сидели как-о в одном местечке)