KriopeG

https://expdd.ru
Пикабушник
Дата рождения: 11 ноября 2000
поставил 3 плюса и 4 минуса
Награды:
5 лет на Пикабу
105 рейтинг 1 подписчик 2 подписки 1 пост 0 в горячем

Space Slug - моя очередная поделка на Unity

Доброго времени суток всем!


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


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


Итак, идея заключалась в том, чтобы по специальным круглым камням по или против часовой стрелки ползал слизень и, прыгая по другим таким же камням, должен был добраться до конца уровня. А для разнообразия процесса на пути должны были располагаться препятствия и другие вспомогательные элементы. Хотелось сделать игру слегка хардкорной, аля Boshy. В итоге с начала марта я, вооружившись движком Unity, неспешно принялся за дело. Я не буду расписывать техническую часть, так как там все довольно банально. Просто хочу рассказать о том, как игра вышла такой какая есть, ну и, собственно, показать результат.

Space Slug - моя очередная поделка на Unity Android, Игры на Android, Unity, Gamedev, Инди игра, 2D, Google Play, Видео, Длиннопост

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


Слизень был разделен на части и проанимирован в юнити, но когда я стал смотреть, как анимация ползания не соответствует равномерному движению по окружности, была добавлена небольшая деталь, которая несколько усложняет геймплей, а именно, я стал менять скорость движения слизня в зависимости от анимации. Благо, юнити позволяет в окне анимации изменять и публичные свойства скриптов, прикрепленных к анимируемому объекту.

Сначала мне представлялось, что слизень будет прыгать на фоне облаков и какого-то абстрактного фона типа гор и т.д. Но в процессе, с учетом того, что камни получились похожими на какие-то космические тела, в игре, по задумке, присутствовали порталы, звездочки, а главный герой отдаленно напоминает инопланетян из симпсонов или футурамы, было решено использовать тематику космоса. Почти сразу появились мысли, что на фоне можно изобразить планеты, туманности и звезды, и все это в параллаксе, а для названия игры неплохо подойдет Space Slug. Заценил, что выдает Google Play по данному запросу, похожих названий он не выдавал, вот и отлично!


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

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


Что касается озвучки, звуковые эффекты я взял из бесплатных баз, а музыку сделал сам, набросав на айпаде простой мотивчик, добавив генератор битов и немного эффектов сверху.

Серьезных сложностей в процессе разработки не возникло, разве что изначально я использовал Universal Render Pipeline для 2D освещения, игра выдавала 60 fps, но в процессе тестирования, я заметил, что по прошествии 3-5 минут, телефон нагревался, начинался троттлинг и фпс проседал до 40-30 и это было очень заметно. После анализа профайлера, я пришел к выводу, что возможно дело в URP, было многовато вызовов отрисовки на кадр. Вероятно, я некорректно его использовал, но я не стал в это сильно вникать и предпочел выпилить его из проекта, что в конечном итоге помогло.


Как итог, от начала разработки и до релиза в Google Play вышло около 3 месяцев. Возможно, кто-то скажет, что это слишком много, но, как я уже говорил, процесс шел очень неспешно, так сказать, по настроению. Ну а результат вы можете оценить в Google Play или на видосе ниже. Возможно, вышло несколько сумбурно, если у вас есть какие-то вопросы, рекомендации и критика, прошу в комментарии.


Страница игры в Google Play: https://play.google.com/store/apps/details?id=ru.kriopeg.spaceslug


Небольшое видео с демонстрацией геймплея игры:

Показать полностью 1 1
Отличная работа, все прочитано!