Чуть больше полугода в одно лицо делаю VR игру вдохновленную Osmos-ом 2009 года.

Хотя некоторый опыт программирования у меня и был, но с Юнити я до этого ни разу не работал, лишь пытался в разные этапы жизни его установить и что-нибудь покопать, но спотыкался об сотни настроек и забивал. К счастью для меня теперь есть ЛЛМки, которые готовы ответить на любые самые тупые вопросы, поэтому в этот раз вкатиться было намного проще.
Сама идея сделать VR Osmos пришла в голову довольно рандомно. Это была одна из моих любимейших игр зари инди на ряду с World of Goo и Super Meat boy, при этом для Osmos-like игры не нужно особо много работы с 3D моделями, буквально все обьекты - сферы, да и сюжет и замороченная стилистика тоже не нужны, ведь Osmos вытягивал геймплеем с проработанной физикой (ну и звуковым оформлением тоже).

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

И так потихоньку, по 4-5 часов в день я начал пилить проект. Кстати стоит упомнять еще одну игру, которая оказала влияние, в частности на выбор именно VR подхода - Chroma Lab. Это даже не игра, а скорее просто симмуляция частиц в VR пространстве, где игрок стоит в центре кубической комнаты и спавнит партиклы из пистолета, а они разлетаются, отскакивают, преломляются гравитацией и т.п. В VR выглядит очень эффектно, поэтому было принято решение как-то скрестить chrom-lab c Osmos.

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

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

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

Чуть больше полугода в одно лицо делаю VR игру вдохновленную Osmos-ом 2009 года.

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

На данном этапе игра почти завершена, 6 различных режимов уровней со своими отдельными механиками, в сумме 33 левла, прохождение которых заняло у меня 8 с половиной часов, что на мой взгляд звучит достойно. Для себя я ставил дедлайн в один год, так что у меня еще есть несколько месяцев добавить режим с нпц сферами-противниками, были также идеи добавить юзабельные абилки или пассивные бонусы, посмотрим как пойдёт.

Еще собрал компиляцию своих футажей разработки, которые делал для показа друзьям, вот:

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

В общем, если есть фанаты старого Osmos, да и у вас еще каким-то образом завалялся VR шлем - то рекоммендую чекнуть (я еще и демку недавно релизнул)

10
3
6 комментариев