Как кодировать видеоигру: 12 шагов (с изображениями)

Оглавление:

Как кодировать видеоигру: 12 шагов (с изображениями)
Как кодировать видеоигру: 12 шагов (с изображениями)
Anonim

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

Шаги

Часть 1 из 2: выбор двигателя

Код для видеоигры, шаг 1
Код для видеоигры, шаг 1

Шаг 1. Узнайте об игровых движках

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

Код для видеоигры, шаг 2
Код для видеоигры, шаг 2

Шаг 2. Рассмотрим простую программу для создания игр

Эти инструменты требуют очень мало знаний в области программирования, поэтому они могут не подойти вам, если вас интересуют аспекты кодирования при создании игр. С другой стороны, простой подход «нырять вправо» может научить вас многому в вашей игре и позволить вам настроить концепцию более высокого уровня, прежде чем переходить к более крупному прототипу. Вот несколько бесплатных вариантов:

  • Для мобильных игр попробуйте MIT App Inventor или Game Salad.
  • Для браузерных игр попробуйте Scratch или более серьезную версию Snap! предназначенный как вводный инструмент программирования
  • Для приключенческих игр используйте Visionaire.
  • Если вам нужна программа с перетаскиванием и возможностью копаться в коде, попробуйте бесплатную версию GameMaker.
Код для видеоигры, шаг 3
Код для видеоигры, шаг 3

Шаг 3. Попробуйте более профессиональные интерфейсы для разработки

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

  • Для мобильных игр: ProjectAnarchy
  • Для 3D-игр на любой платформе: Unity
  • Для более продвинутых программистов: LWJGL (на основе Java), SFML (на основе C ++)
Код для видеоигры, шаг 4
Код для видеоигры, шаг 4

Шаг 4. Выберите инструмент для создания собственного движка

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

  • ActionScript позволит вам создать движок на основе Flash. Это хорошее начало для программистов среднего уровня.
  • Java относительно прост в освоении. Вам понадобится Java Development Kit (JDK), а также Eclipse или другая интегрированная среда разработки (IDE) для Java. Если вы не знаете, с чего начать.
  • Если вы уже знаете язык программирования (особенно язык C или Python), поищите IDE для этого языка. Он должен включать компилятор и возможность легко работать с графикой, звуком и другим кодом в одном проекте.
Код для видеоигры, шаг 5
Код для видеоигры, шаг 5

Шаг 5. Создайте свой собственный движок

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

  • Сервер на стороне клиента, который интерпретирует вводимые пользователем данные и обрабатывает результат. Прежде чем серьезно поработать над графикой и игровым процессом, заставьте систему ввода реагировать правильно. (Попробуйте изучить "слушателей действий", если вы застряли.)
  • AI для других персонажей, чтобы они реагировали на действия пользователя. Для более простого проекта просто попросите персонажей двигаться и действовать по заданному пути.
  • Возможность рендеринга графики (собирать и отправлять инструкции на видеокарту).
  • Игровой цикл, который выполняется постоянно во время выполнения игры. Это должно принимать пользовательский ввод, обрабатывать его, обрабатывать другую игровую логику (например, движение врага, фоновую анимацию и запускаемые события), вычислять, что нужно нарисовать (отображать на экране), и отправлять информацию на видеокарту. Выполняйте это как минимум 30 раз в секунду (30 кадров в секунду), если ваша система может с этим справиться.

Часть 2 из 2: Разработка игры

Код для видеоигры, шаг 6
Код для видеоигры, шаг 6

Шаг 1. Сначала закрепите свою концепцию

Потратьте немало времени на то, чтобы понять, что представляет собой ваша игра, прежде чем коснуться строчки кода. Какой это жанр? Это 2D или 3D? Продвигается ли игрок в игре, решая головоломки, следя за сюжетом / создавая историю, сражаясь с врагами и / или исследуя? Чем больше вопросов вы ответите и чем больше подробностей вы дадите своим идеям, тем больше времени вы сэкономите в долгосрочной перспективе. Если вы решите внести серьезные изменения после того, как уже начали кодировать, изменение может занять во много раз больше времени.

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

Код для видеоигры, шаг 7
Код для видеоигры, шаг 7

Шаг 2. Работайте над приведенными ниже шагами в любом порядке

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

Код для видеоигры, шаг 8
Код для видеоигры, шаг 8

Шаг 3. Соберите или создайте художественные активы

Если вы не создаете текстовую игру, вам понадобятся 2D-изображения и, возможно, 3D-модели и текстуры (шаблоны, которые вы применяете к моделям). Музыка и звуковые эффекты вы можете отложить на более позднее время в процессе, но они настоятельно рекомендуются, если вы планируете опубликовать свою игру. Простые значки, пользовательский интерфейс и шрифты имеют самый низкий приоритет, когда ваша игра молодая, но небольшие усилия здесь могут значительно улучшить впечатление от игры.

  • В Интернете есть много мест, где можно найти бесплатные или дешевые произведения искусства. Попробуйте этот список на makechool.com.
  • Наем художника имеет большое значение. Если вы не можете себе этого позволить, соберите ресурсы самостоятельно и покажите результат друзьям-художникам или разместите их на форумах разработчиков игр или в Интернете для получения совета.
Код для видеоигры, шаг 9
Код для видеоигры, шаг 9

Шаг 4. Работа над историей или дизайном дуги прогресса

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

Код для видеоигры, шаг 10
Код для видеоигры, шаг 10

Шаг 5. Работа над дизайном уровней

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

Используйте источники света и падающие предметы, чтобы направить игрока к следующему месту в этой области. Используйте тени, чтобы отговорить игроков от попадания в тупики или неудобные пути, и используйте врагов для обеих целей (в зависимости от того, как игра учит вас обходить врагов). Хорошо продуманная область заставляет игрока чувствовать, что он принимает собственные решения или исследует, но ведет его по самому простому маршруту, используя тонкие подсказки

Код для видеоигры, шаг 11
Код для видеоигры, шаг 11

Шаг 6. Настройте и оптимизируйте графику

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

Код для видеоигры, шаг 12
Код для видеоигры, шаг 12

Шаг 7. Получите обратную связь от тестеров

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

Рекомендуемые: