Первый девлог стелс-игры
Введение
Привет, я Игорь, разработчик игр. В этой статье я сделаю девлог игры, над которой сейчас работаю. У игры пока нет названия, поэтому я называю ее «игра-хамелеон». Игра стелс, и основная идея такова: вы хамелеон, который должен маскироваться, чтобы его не заметили враги.
Мои цели в этой игре
Важным моментом, когда мы начинаем новый проект, является понимание того, почему вы работаете над ним. Это снижает вероятность того, что мы сдались.
Итак, у меня две основные цели:
- Сделать 3D игру для портфолио
- Показать все мои способности кода.
Во-первых, я хочу сделать 3D-игру для своего портфолио. Многие работодатели ищут кого-то с опытом работы в 3D-играх, поэтому важно иметь его в портфолио.
И вторая причина — показать все свои кодовые способности. В настоящее время в моем портфолио есть три общедоступных исходных кода (вы можете посмотреть их здесь). Первый был сделан на Unity (игровой движок); Второй с Python (язык программирования); И третий с Javascript (тоже язык программирования).
Игра на Unity создавалась для геймджема с дедлайном около 3 дней. За это время мне пришлось кодировать его так быстро, как я мог, и хотя его исходный код неплох, он не так чист, как проект, сделанный в разумные сроки.
Проекты Python и Javascript хороши (за исключением нескольких структурных проблем в игре Python). Основная проблема с ними в том, что это простые игры, не требующие слишком много кода. Я закодировал основную логику игры на питоне на своем мобильном телефоне, чтобы вы поняли.
Поэтому мне нужна игра, чтобы показать мои истинные способности программиста игр, демонстрирующие все мои навыки рефакторинга и структурирования кода. И эта игра — игра-хамелеон, у которой средний срок (около 2–3 месяцев на прохождение), что позволяет мне показать свои способности.
Как я понял идею
Теперь мы начнем говорить о самой игре. Во-первых, как я понял эту идею. Что ж, я решил попробовать технику (которая работала довольно хорошо):
- Получить около 5 игровых тем
- Проведите мозговой штурм по каждой теме в формате ментальной карты.
- Обсудите идеи между двумя или более темами в формате ментальной карты.
- Выбирайте лучшие идеи
- Выберите одну из этих лучших идей для работы, а остальные заархивируйте.
Чтобы сделать карту разума, я использовал сайт Coggle.
Пример темы (реальный пример) был «Выбери путь»:
У меня было несколько общих идей по каждой теме. Затем я добавил новые идеи, детализирующие дженерики и объединяющие идеи.
В результате получилось 17 полезных идей. Тот, который, как я думал, будет лучшим для этого проекта, был:
«Стелс-игра, в которой игрок является хамелеоном и должен маскироваться в зависимости от цвета окружающей среды, имея возможность выбирать цвета из палитры. В зависимости от выбранного цвета сложность врага меняется. В игре есть несколько уровней, на которых игрок переходит из точки А в точку Б, не будучи замеченным, и ему нужно выбрать правильный момент, чтобы изменить цвет и перейти в другое место».
Эта идея пришла из темы «Ничего не убивай» и из абстрактной идеи, которая у меня уже была до того, как я получил эти темы. Эта абстрактная идея заключалась в том, что игра была стелс-игрой, и игрок должен маскироваться, чтобы спрятаться от врагов.
Выбрав идею, я начал планировать игру.
Планирование
Первое, что я сделал, это поискал активы. У меня нет опыта 3D-моделирования, поэтому я искал модель-хамелеон и активы окружения (я выбрал Simple Forest Pack). К сожалению, я не нашел ни одной модели хамелеона, подходящей для моей игры. Итак, мне пришлось сделать свой собственный (не зная, как делать 3D-модели).
После того, как я получил ассеты окружения и решил, что буду делать хамелеона, я начал конкретизировать идею, описывая каждую механику, врагов, входы и т. д. Я использовал Понятие , чтобы сделать это.
Несколько моментов, которые я хотел бы осветить, — это механика усиления и враги:
Начиная с бонусов. Я провел исследование и обнаружил, что хамелеоны едят насекомых. Поэтому я решил сделать насекомых, которые дадут игроку некоторое ускорение (например, увеличение скорости), как только игрок их съест.
Теперь враги. Я также провел исследование, чтобы узнать, кто является хищником-хамелеоном, и обнаружил, что это змеи, некоторые птицы и даже более крупные ящерицы. Я решил добавить их в качестве врагов.
Во время этого исследования я обнаружил, что хамелеоны могут защищаться, и иногда это срабатывает. Итак, в моей игре, если некоторые враги видят вас, хамелеон все еще может попытаться убежать или попытаться запугать врага (например, изменить цвет на яркий или издать шум).
Ну вот и все по плану. После этого я написал несколько задач по игровой механике (моя первая веха) и начал кодировать игру.
Кодирование
Первой механикой игрока, которую я закодировал, было движение. После этого я настроил камеру (используя Unity Cinemachine), затем я провел атаку и после этого запустил механику смены цвета.
Модель хамелеон
Как я уже говорил, я не знал, как делать 3D-модели. Итак, мне нужно было изучить хотя бы основы. И я сделал это с некоторыми видеороликами на YouTube и практиковался (пока я пытался сделать модель хамелеона). У меня было около 7 попыток, пока я не получил 3D-модель, которая достаточно хороша для использования:
Это точно не финальная версия, я еще буду ее улучшать. Это похоже на лучший заполнитель для использования (по сравнению с параллелепипедом, который я использовал в Unity).
Несколько улучшений, которые я уже планирую, это добавить больше полигонов к голове (а также добавить рот, так как хамелеоны едят через язык) и увеличить размер хвоста.
Заключение
Это прогресс, который я сделал до сих пор. Я рассказал, почему я работаю над этой игрой, о планировании игры, о первых механиках, которые я написал, и о модели хамелеона. Я напишу больше статей, в которых расскажу о своем прогрессе в игре. Если вы заинтересованы, не стесняйтесь следовать за мной.
Это моя первая статья, поэтому, если у вас есть какие-либо советы или предложения, также не стесняйтесь делиться ими.
В любом случае, до свидания!👋
Изображения для этой статьи взяты с сайта Pixabay