Как создают игры

С нуля до разработчика игр: как начать создавать видеоигры, если у вас нет опыта. Часть 1

RKBlockedUnblockFollowFollowing Jun 20, 2018

Два года назад я была простой семнадцатилетней ученицей средней школы и я ничего не знала о программировании. Но я все равно достигла своей цели и опубликовала свою первую игру в Steam.

На сегодняшний день я выпустила более 10 игр для настольных компьютеров и мобильных устройств с возможностью онлайн игры. В совокупности в мои игры сыграли более 1,9 миллиона раз.

Независимо от вашего уровня программирования, вы тоже можете написать свою первую игру. Два года назад я думала что это невозможно, но я все равно попыталась этого достичь. Для меня — разработка игр стала самым сложным испытанием в моей жизни! Но оно того стоило! Теперь я понимаю, что разработка игр подобна любому навыку в нашей жизни: вы становитесь лучше, когда что-то делаете, терпите неудачи, получаете опыт и улучшаете свои навыки.

Я сама научилась всему тому, что знаю сейчас и теперь я постараюсь научить и вас.

Чтобы сделать игру, вы должны пройти 6 этапов разработки: Разработка идеи. Арт. Программирование. Звук. Шлифовка. Публикация.

Каждый из этапов я структурировала следующим образом:

  • 🌟Совет. Здесь, я буду давать вам советы, основываясь на своем и чужом опыте.
  • 🎁Ресурсы. Также, я буду прикреплять ссылки на те или иные ресурсы, которые будут вам наиболее полезны.

Этап №1: Разработка идеи 📝

Совет 🌟

У вас есть отличная идея! Как вы ее запишите?

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

  • Изюминка. Почему вы считаете идею своей игры превосходной? Для меня это наиболее важный пункт в проекте. Как только вы определитесь с «изюминкой» вашей игры — прописать оставшиеся пункты проекта не составит вам большого труда! Ваша игра заставляет над чем-то задуматься? Может быть она скандальна? Или же это ремейк классики прошлого? Или это нечто новое, что никто и никогда не разрабатывал?
  • Механика. Что, как и с какой целью делает ваш игрок — это и есть геймплей вашей игры. Например: клавиши QWOP могут использоваться для простого перемещения или общения в «мистическом чате» игры, но также они могут быть использованы для составления множества боевых комбинаций, как в игре «Dwarf Fortress».
  • Сюжет. Какую историю вы хотите рассказать всем тем, кто будет играть в вашу игру? Какие эмоции они будут испытывать? У каждой игры есть своя история. Если сюжет вашей игры не так очевиден — придумать ее сможет и сам игрок. История может быть придумана в игре про числа «2048». Игрок, играя в популярную стратегию «Civilization», может сам придумать историю становления своего государства. Даже в игре «Monument Valley», с ее безмолвием, каждый додумывает свою историю. Подумайте, какую историю расскажет ваша игра?
  • Настроение. Какое впечатление окажет ваша игра на игроков? Каково будет ее графическое оформление? Какой звук? Первое впечатление об игре очень важно — игра может «зацепить» пользователя с первых минут и в итоге он будет играть в нее и дальше. Возможно вы сделаете вашу игру в стиле ретро: с пиксельной графикой и музыкой в стиле ретро-вейв. А возможно, вы выберете ультра-современный дизайн, с плоской геометрией объектов, «чистыми» текстурами и инструментальной музыкой.

*Сложно придумать хорошую идею для игры? На этом этапе всем нам бывает очень сложно что-то придумать. Что же делать?

  • Присоединяйтесь к игре hackathon/jam. Вам и другим участникам будет поручено сделать игру за короткий промежуток времени. Во время участия в хакатоне вы встретите единомышленников, которые будут поддерживать и помогать вам. А что насчет творческого волнения и конкуренции во время работы? Все это благоприятно скажется на вас и на ваших навыках! Не знаете с какой площадки начать? Рекомендую попробовать Ludum Dare — одну из самых больших площадок для разработчиков!
  • Записывайте все свои идеи! Я и многие другие разработчики, которых я знаю, записываем все свои идеи. Таким образом, когда вы не сможете ничего придумать, вы сможете вернуться к своим старым идеям и мыслям и что-то из них почерпнуть!

Когда вас неожиданно посещает муза или появляется вдохновение — отложите свои дела и запишите все мысли и идеи! И когда вы впадете в творческий ступор, вам не придется высасывать идеи из пальца.

Ресурсы🎁

Все нижеперечисленные ресурсы и программы опробованы мною лично и многими из них я пользуюсь до сих пор!

Для заметок:

  • Notes для Mac (👍)
  • Google docs (👍)
  • Trello

Для совместной работы (для команд):

  • Google drive
  • GitHub (👍). Требуются git и Unity .gitignore.
  • Unity Collab. Самый простой сервис из трех. У бесплатной версии есть ограничения.

Unity — это игровой движок, который я использую для создания своих игр и я буду очень часто упоминать его здесь. Однако не стесняйтесь — вы можете выбрать любой другой движок для своих игр.

Для разработчиков:

-Книга «The Art of Game Design» . Автор Джесси Шелл

-Сайт Gamasutra

Этап №2: Арт 🖌

Совет 🌟

Вы продумали свою игру и записали все свои идеи; Мои поздравления — это потрясающе! Теперь пора поработать над реализацией ваших задумок!

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

Вы не умеете рисовать? Не волнуйтесь. Каждый из нас может нарисовать что-то красивое, руководствуясь тремя основными принципами визуализации: цвет, форма и пространство.

UI

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

Что лучше? 🤔

2D анимация

У вас есть два варианта для создания 2D анимации:

  • Кадр за кадром. Здесь вам придется рисовать каждый кадр анимации и затем соединять их воедино. Для этого вам следует использовать спрайт- листы вместе с TexturePacker (или, если вы используете Unity — Sprite Packer).
  • Скелетная анимация. Нарисуйте все нужные конечности объекта и затем анимируйте, меняя их положение относительно предыдущего состояния. Этот способ анимации быстрее, проще и сэкономит место на вашем жестком диске, по сравнению с анимацией «кадр за кадром». Если вы решили создать 2D анимацию и используете движок Unity — попробуйте начать с анимации спрайтов или Anima2D.

Разное

Вот несколько общих советов по оформлению игр:

  • Разбивайте элементы на плитки для создания плиточных изображений и экономии места на жестком диске.

Неразбитый и разбитый на плитки элементы

  • 9-частей / 9-квадратов. Масштабируйте объекты с немасштабируемыми границами через центр изображения (растягивайте и сжимайте изображение) для изменения его масштаба и сохранения памяти.

😲 Синее пятно увеличилось, однако его расположение осталось неизменным

  • Сделайте каждую текстуру или объект кратным размеру 4 и силе равной 2 (мера качества изображения) для экономии памяти.
  • Если вы используете Photoshop, используйте «File»> «Export»> «Layers to Files», для того чтобы быстро экспортировать каждый слой в виде файла (например PNG или JPEG).

Ресурсы 🎁

Программы для создания UI:

-Photoshop (👍).

Концепции UI:

  • Google Material Design (👍).
  • Apple’s UI Do’s and Don’ts.

Программы для создания 2D объектов (ассетов):

  • Photoshop (👍).
  • Gimp.
  • Paint Tool SAI — отлично подходит для создания плоских изображения в стиле аниме.

Программы для создания 3D объектов:

  • Blender (👍). Мощная программа, которую достаточно сложно выучить.
  • Maya. Хороша для анимации.
  • Max. Хороша для рендеринга.

Сайты с ассетами:

  • Behance. Шрифты + иконки + темы дизайна
  • KennyNL. Полностью готовые к игре UI /2D /3D арт и ассеты высокого качества.
  • Open Game Dev Art. Огромная пользовательская библиотека концепт- арта.

Для вдохновения:

  • Dribbble. Дизайнерские концепт-арты от приглашенных художников.
  • Behance. Пользовательские дизайны.
  • itch.io . Сайт с инди-играми.

Как создать игру самому?

Для создания игры вам нужно знать язык программирования, а сейчас все они на английском, да и они сложные, там есть свой, так называемый синтаксис, который тоже нужно знать. Так вы себе представляете создание игры, верно?
Не совсем.
Конечно, почти все высоко бюджетные игры делаются с помощью одного из ключевых языков, однако для новичка даже этого знать не обязательно.
Существуют специальные программы для создания игр, одной из которых является Game Maker. Они были созданы специально для создания игр (программа так и называется — создатель игр). Лично я работаю в Game Maker и он позволяет делать вполне качественные игры под любые платформы, от андроида, до ios.
Так-же можно посоветовать Unity или Construct 2, в качестве хороших альтернатив.
Все эти инструменты развиваются, а для Game Maker Studio 2 недавно вышла вторая часть, про которую я писал вот тут: Что нового в Game Maker Studio 2? Обзор GMS 2
Лично моё мнение, Game Maker — одна из самых удобных программ для создания игр именно для новичков, тогда как освоение Unity с нуля может занять куда больше времени.
Если вы выбираете Game Maker — то мой блог и канал вам существенно помогут в его освоении, ну а если вам выбор остановится на Unity или чем-то еще, тотам тоже существует огромное количество бесплатных обучающих материалов высокого качества на Русском.
В любом случае, первый (нулевой 🙂 этап — это выбор программы для создания игр.

Второй этап — непосредственно создание игры, код

Главная и основная часть создания игры — собственно говоря её создание, написание кода. Тут всё зависит от среды и программы, в которой вы игру делайте, однако в Game Maker и для новичков существует система drug and drop — перетаскивай и бросай.

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

  • С чего начать разработку игр

Чтобы сделать свою первую игру с нуля вам не обязательно знать язык программирования, достаточно использовать систему drug and drop, которая выглядит примерно вот так:

Как конструктор
Замечательная особенность Game Maker Studio 2 в том, что там все эти элементы автоматически расшифровываются в программный код, который видит разработчик.
Это позволяет постепенно учить код и переходить от drug and drop к кодингу.
Конкретные вопросы типа: как сделать движение, как сделать выстрел, какие бывают эффекты и всё такое прочее, вы сможете найти на моём ютуб канале в виде специальных уроков по основам создания игр.

Сколько занимает создание игры?

Вопрос сложный, всё зависит от ваших навыков, от того, что это за игра и других факторов.
Иногда простую игру на телефон опытный человек может сделать за пару недель, иногда игры среднего качества делаются небольшой командой из нескольких человек за 6-12 месяцев, ну а крупные проекты делаются большими студиями и разработка может занимать 1-2 и больше лет, при этом над игрой трудиться команда из 100 и более человек.
По примерным данным создание одной крупной игры занимает порядка 2-3 лет для команды из 200 человек, если мы говорим про серьезные проекты типа GTA 5.
При этом не забывайте что бывают и исключения из правил. Notch написал первую версию Minecraft за неделю и эта версия уже имела большую часть базовых структур. но в итоге разработка заняла несколько лет, хотя в отличие от GTA, над Майнкрафт работала очень маленькая команда, а доходы от Майнкрафт были очень серьезными.
Хотя это больше исключение, а не правило. Сейчас конкуренция существенно выше и подобные супер успешные и супер дешёвые проекты появляться всё реже.
На эту тему я позже писал большую статью:

  • Сколько по времени делают игры?

Третий этап — графика

Графика обычно делается параллельно с процессом разработки и написания кода, и обычно ей занимается отдельный человек. Очень трудно совмещать работу не только программиста, но и дизайнера, однако иногда это удаётся сделать в одиночку, к тому-же некоторые проекты не требует очень качественной графики, либо-же берутся уже готовые картинки и спрайты.

  • Читайте: Где брать спрайты для игр?

Графика и рисование это очень затратный процесс.
По моему опыту, если вы делайте игру в одиночку, на графику может уходить 40-60% общих затрат времени. По сути дела для инди разработчика одиночки хорошая графика может удвоить общее время на создание игры. И если удвоение с 1 месяца до 2 это не страшно, то удвоение с 2 до 4 лет, это очень много.
Поэтому крайне рекомендуется для начинающих разработчиков использовать все возможные способы получить бесплатную графику (может быть взять художника/дизайнера в долю) или же в качестве первых игр сделать графическое оформление минимальным.
В крайнем случае, можно заказать графику отдельно на стороне, с помощью аутсорса.

Однако, если вы хотите сделать всё сами, то есть множество способов научиться рисовать. Я тоже учусь (недавно купил планшет) и для обучения рисованию могу посоветовать вам некоторые хорошие ютуб каналы:

  • Хорошие YouTube каналы про Геймдев и Графику

Четвертый этап — звук

Звук и саундтрек в играх — очень важная часть, которая, однако, очень часто игнорируется начинающими разработчиками. Подумайте, у игрока, как и у любого человека, есть всего несколько основных органов чувств, а чем больше органов чувств в игре задействовано, тем лучше погружение игрока в процесс.
Сколько органов чувств задействовано у игрока?
Обоняние? Нет. Осязание? Иногда, что связанно с некоторыми системами управления в играх. Зрение? Вот на зрении всё и строиться, это основа.
Поэтому такая высокая важность графики и визуальных элементов. И по сути дела кроме зрения в играх можно задействовать еще только одно чувство — слух.
Если вы раньше играли в компьютерные игры, то у вас наверняка есть любимые, а так-же есть какой-то любимый OST (Музыка из игр). И игра вам могла запомниться именно за счёт музыки. Про мой любимый OST я писал вот тут:
Звуки — это еще один удар по органам чувств, звук сопровождающий действие может как-бы усиливать эффект от этого действия. Просто выстрел и вылет пули — скучно. Верный звук перезарядки, выстрела, столкновения пули с поверхностью (разные для разной поверхности), падение гильзы на пол и прочее существенно усиливают погружение игрока в процесс.
Вы же знаете про всякие специальные звуки и фразы в таких играх как Unreal Tournament и насколько сильно они увеличивают фан от игры.
Другими словами — верные звуки и музыка делают игру атмосферной, эмоциональной, человечной и куда более интересной.
У меня был небольшой опыт когда я делал игру Lonely Dude.
Тогда для этой игры мой знакомый написал уникальный OST, а остальные звуки я просто взял из бесплатных источников.
Что я хочу сказать? Для простой игры совершенно необязательно сильно заморачиваться со звуком, достаточно просто поместить в игру звуки для основных действий (выстрел, взятие бонуса, завершение уровня, прыжок и т.п.) и это уже существенно усилит общее впечатление от игры. Музыку написать конечно существенно сложнее, но иногда можно купить трек за каких-то $1-5, ну или посидеть с такими программами как FL Studio, дабы написать пару простых треков для своей игры.
Бесплатные звуки вы можете найти вот тут: http://soundbible.com/
Или на других подобных сайтах.

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *