Последнее воскресенье 2021 года проходит в Unity

Всем привет!

Месяц с небольшим назад пробовал устроиться разработчиком игр на движке Unity, после 10-15 собеседований, один раз только общался не с HR менеджером. Но об этом опыте можно сделать отдельный пост.

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

Жанр:
Шутер от первого лица.

Предстоит отстреливаться от волн зомби. Остальное будет придумываться и реализовываться по мере разработки. Можно писать идеи и пожелания, будем разбираться.

Начинаем всё с простой сцены, до боли всем знакомой:

Последнее воскресенье 2021 года проходит в Unity Android, Разработка, Gamedev, Unity, Компьютер, Инди игра, Инди, Видеоигра, Игры, Шутер, Видео, Длиннопост

Первым что добавил так это продвинутый и бесплатный счётчик ФПС, на раннем этапе понимать, что у меня нагружает проект.
Называется ассет: Ultimate FPS Counter. В ассет сторе бесплатный, всем рекомендую!

Добавляется он просто, перетаскиваем префаб на сцену и всё работает, в инспекторе подгоняем его под себя, настраиваем цвета и радуемся!


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

Последнее воскресенье 2021 года проходит в Unity Android, Разработка, Gamedev, Unity, Компьютер, Инди игра, Инди, Видеоигра, Игры, Шутер, Видео, Длиннопост

Теперь всё кидаем на нашу сцену, благо есть фильтр в Unity, можно использовав его работать только с префабами.

Последнее воскресенье 2021 года проходит в Unity Android, Разработка, Gamedev, Unity, Компьютер, Инди игра, Инди, Видеоигра, Игры, Шутер, Видео, Длиннопост

Когда локация готова для того что бы посмотреть как всё выглядит в игре, надо добавить игрока и управление.
Для этого я использовал ассет опять из столь часто упомянутого ассет стора, название у него MFPC - Mobile First Person Controller. Но он платный, предупреждаю!

Сам ассет до ужаса просто в использовании, по поводу как прикрутить стрельбу и все что надо знать про настройки есть в файлике reedme, но про работу ассета уже будет в будущем.

Последнее воскресенье 2021 года проходит в Unity Android, Разработка, Gamedev, Unity, Компьютер, Инди игра, Инди, Видеоигра, Игры, Шутер, Видео, Длиннопост

Импортируем, добавляем префаб на сцену и всё готово! Только канвас игрока переносим на 1 слой, для работы с этим канвасом.
Дальше переносим игру на мобильную сборку и ждём.

Последнее воскресенье 2021 года проходит в Unity Android, Разработка, Gamedev, Unity, Компьютер, Инди игра, Инди, Видеоигра, Игры, Шутер, Видео, Длиннопост

Сразу в настройках игры надо установить флажки в ориентации экрана, у нас вертикально всё, ставим и забываем об этом.

Последнее воскресенье 2021 года проходит в Unity Android, Разработка, Gamedev, Unity, Компьютер, Инди игра, Инди, Видеоигра, Игры, Шутер, Видео, Длиннопост

Немного мусора в сцене выглядит со стороны так:

Последнее воскресенье 2021 года проходит в Unity Android, Разработка, Gamedev, Unity, Компьютер, Инди игра, Инди, Видеоигра, Игры, Шутер, Видео, Длиннопост

Билдим игру, устанавливаем и проверяем!

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

Последнее воскресенье 2021 года проходит в Unity Android, Разработка, Gamedev, Unity, Компьютер, Инди игра, Инди, Видеоигра, Игры, Шутер, Видео, Длиннопост

Вешаем на пустой объект на сцене, переходим писать простой скрипт.

Последнее воскресенье 2021 года проходит в Unity Android, Разработка, Gamedev, Unity, Компьютер, Инди игра, Инди, Видеоигра, Игры, Шутер, Видео, Длиннопост

Я тут использовал проверку на сохранение данных, так как если перезагружать сцену, то качество графики будет постоянно уменьшаться на 20%, если кто-то знает как сделать лучше или правильнее, тогда пишите в коментах, будем исправлять.
Потом мы разрешаем изменение ФПС и устанавливаем в пределах 60 кадров в секунду.
Изначально стоит 30 кадров в секунду и я не знаю даже почему, если есть знатоки, пишите и делитесь секретом)

В итоге мы уменьшили качество графики, что не видно на самом деле во время игры, а это экономия энергоресурсов телефона и немного выигрыш в ФПС для слабеньких смартфонов.
Ну и радуем глаз в 60 ФПС. Для первых шагов этого достаточно. Когда будем делать уже игровые локации, то данный файл можно вынести в меню игры, так как значения нужны эти только один раз.

Вот что вышло при проверке на 60 ФПС. У меня телефон для проверки Xiaomi mi 6, ничего не проседает, всё работает, но это только сейчас, так как нет ни врагов, ни оружия, ничего короче говоря)
Дальше я попробовал поиграть с URP, первый взгляд страшен когда не знаешь с чем имеешь дело.

Последнее воскресенье 2021 года проходит в Unity Android, Разработка, Gamedev, Unity, Компьютер, Инди игра, Инди, Видеоигра, Игры, Шутер, Видео, Длиннопост

Так выглядит локация с URP, но всё быстро решается автоподгоном большинства стандартных материалов. Но там есть префабы с родными материалами, что говорит о том, что надо самому переделывать полностью материал, а так как он сделан для смартфонов, я решил отказаться от URP на данный момент.
Всем спасибо!
После НГ надеюсь на следующий пост.

Лига Разработчиков Видеоигр

6.8K постов22.2K подписчиков

Добавить пост

Правила сообщества

ОБЩИЕ ПРАВИЛА:

- Уважайте чужой труд и используйте конструктивную критику

- Не занимайтесь саморекламой, пишите качественные и интересные посты

- Никакой политики


СТОИТ ПУБЛИКОВАТЬ:

- Посты о Вашей игре с историей её разработки и описанием полученного опыта

- Обучающие материалы, туториалы

- Интервью с опытными разработчиками

- Анонсы бесплатных мероприятий для разработчиков и истории их посещения;
- Ваши работы, если Вы художник/композитор и хотите поделиться ими на безвозмездной основе

НЕ СТОИТ ПУБЛИКОВАТЬ:

- Посты, содержащие только вопрос или просьбу помочь
- Посты, содержащие только идею игры

- Посты, единственная цель которых - набор команды для разработки игры

- Посты, не относящиеся к тематике сообщества

Подобные посты по решению администрации могут быть перемещены из сообщества в общую ленту.

ЗАПРЕЩЕНО:

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

- Выдавать чужой труд за свой

Подобные посты будут перемещены из сообщества в общую ленту, а их авторы по решению администрации могут быть внесены в игнор-лист сообщества.


О РАЗМЕЩЕНИИ ССЫЛОК:

Ссылка на сторонний ресурс, связанный с игрой, допускается только при следующих условиях:

- Пост должен быть содержательным и интересным для пользователей, нести пользу для сообщества

- Ссылка должна размещаться непосредственно в начале или конце поста и только один раз

- Cсылка размещается в формате: "Страница игры в Steam: URL"

6
Автор поста оценил этот комментарий
За КРАЙНЕЕ вместо последнее - минус
раскрыть ветку (1)
2
Автор поста оценил этот комментарий

Стоит исправить?)

показать ответы
Автор поста оценил этот комментарий
Я выше говорил контр аргумент на этот счет, по поводу отработкии т.д, им все бьется

работодатель НЕ ВПРАВЕ заставить тебя отработать что-то. Ты в любой момент можешь свалить по собственному желанию. Только какие-то договора оформлять по компенсации, а это гемор на ровном месте, кому он нужОн? Т.е. чисто правовая подоплёка под это - договор с компенсациями, а что с тебя взять, если ты идёшь на 20к (условно) зп? Это невыполнимая по факту задачка, которая ничего работодателю не гарантирует, а гемора подкидывает на ровном месте.


ну и:

Тогда не должно быть нытья о недостатке кадров.
если их нет, откуда их взять? Обучать под себя - нужны деньги на это. По большому счёту ты пользу начнёшь приносить месяца через 2-3 (минимум, в лучшем случае) после трудоустройства. А если тебя учить - соответственно через 2-3 после окончания обучения. На всё время обучения надо тратить бабки на того парня, который будет тебя учить/менторить и т.п. Т.е. он не будет заниматься своей работой, а будет заниматься твоей, по факту. Как я писал выше - как-то привязать тебя к галере работодатель не имеет возможности и это всё превращается в лотерею с шансами где-то 1 к 5 или даже 1 к 10 . Не только лишь все могут себе чисто финансово такое позволить. А готовых кадров взять неоткуда, никто не учит. Вот и цветут всякие скил-фектори и прочие гикбрейнсы со своими "курсами". Кадровый голод значительный, а специалистов взять неоткуда. Даже те, которые есть (сами собой учатся) - труднодоступны. Потому что на тебя одного такого умного будет 10 человек, которые синтаксис даже не понимают (опять же условно)

раскрыть ветку (1)
Автор поста оценил этот комментарий

Стоит отметить что гикбрейнс и прочие готовят очень хреновых работников.

Автор поста оценил этот комментарий

т.е. в следующих постах ты переделаешь управление и/или графику свою замастрячишь?.. Тогда зачем этот пост?

раскрыть ветку (1)
Автор поста оценил этот комментарий

От начала до конца расписать свою работу.

Делать ещё много чего. На одних ассетах далеко не уедешь так же как и на контроллерах.

показать ответы
Автор поста оценил этот комментарий
И в условиях if нужно избавляться от восклицательных знаков. Если никак то идти от if(<условие>) return; else <действие>
раскрыть ветку (1)
Автор поста оценил этот комментарий

Спасибо за информацию, не один раз просто видел, думал так правильнее.

А про разделение скриптов, да, немного проще потом работать так, понимаю суть.

Автор поста оценил этот комментарий

Ты лихо взял. Мидл и в стеке который ты не трогал и не знаешь. Это даже не конверсия из смежной области. Джуновская позиция так прокатит, но не выше.

раскрыть ветку (1)
Автор поста оценил этот комментарий

Мне вообще интересно было, что требуют от работника и что предлагают взамен.

Я не от безысходности а от любопытства, если и получится что-то, то я не против заниматься тем, что мне по душе. Учиться я хочу, чем в принципе занимаюсь.

показать ответы
5
Автор поста оценил этот комментарий

гы, прикольно, дожили, что чел пилит посты, которые были актуальны лет 8 назад "как сделать кое-что на юнити, ничего не зная", в контексте "я буду делать проект в портфель".
А вот скажи, автор, пожалуйста:
Вот допустим я, условно, твой потенциальный работодатель. Я захожу в твой проект для портфеля и вижу там скачанные ассеты для графики, для управления и... и всё. Чего мне это даст? Ничего? Я не знаю, сможешь ли ты реализовать какое-то кастомное управление, ведь ты скачал готовый вариант с ассет-стора. Я не представляю что ты знаешь про графику, ты её тоже тиснул с ассет стора. Какой смысл в портфеле держать такой проект? Что мне, как потенциальному работодателю, этот проект о тебе как о специалисте расскажет?

раскрыть ветку (1)
Автор поста оценил этот комментарий

Этоне последний пост.

показать ответы
4
Автор поста оценил этот комментарий

Как-то так это должно выглядеть.

Иллюстрация к комментарию
раскрыть ветку (1)
Автор поста оценил этот комментарий

Вот на этом, большое спасибо!

Скрипты загрузки и сохранения это вынесенный PlayerPref?

показать ответы
1
Автор поста оценил этот комментарий

По своему опыту предположу, что нет опыта работы в разработке или не работал с конкретными технологиями и скил не так вкачан?

раскрыть ветку (1)
3
Автор поста оценил этот комментарий

Да, конкретные технологии с которыми нет опыта, к тому же замах сразу на мидла был, это где я общался не с HR манагерами. В других просто делал задачу тестовую и без ответа.

показать ответы
1
Автор поста оценил этот комментарий

Почему не взяли?

раскрыть ветку (1)
1
Автор поста оценил этот комментарий

Об этом напишу отдельный пост, есть чем поделиться)

показать ответы