Сборник полезных материалов про разработку игр
Здесь вы можете почерпнуть теоретические и практические знания.
Разработка игры — комплексная задача, которая затрагивает сразу несколько сложных дисциплин. В этом материале мы собрали тексты, которые могут помочь в проработке каждого аспекта игры.
Здесь есть как теоретические тексты с описанием принципов дизайна, так и практические туториалы, которые пригодятся для создания каких-то конкретных вещей.
Этот материал собран в поддержку нашего инди-джема, в котором ещё можно успеть поучаствовать.
Оглавление
Прототипирование и создание концепции
Поиск и развитие идей
- Откуда берутся идеи. Олег Чимде опросил нескольких разработчиков и выяснил, как они генерируют идеи для своих игр. В тексте есть несколько примеров того, как разные люди подходят к творческому процессу, а также объяснение, где брать вдохновение.
- Как выбрать идею для игры. Алексей Иванович также затронул тему поиска идей. К примеру, он считает, что во время геймджема важно выделить одну ключевую механику и откинуть лишнее.
- Практические инструменты для геймдизайнеров. По словам Альваро Сальваньо, поиск идеи — это лишь маленькая часть процесса разработки игры (хоть и невероятно важная). Для начала стоит систематизировать свои мысли хотя бы на бумаге — создать схемы взаимодействия разных игровых аспектов. Для проработки концептов вы можете использовать диаграммы связей, таблицы, смотреть на идеи глазами игроков или пытаться разбивать чужие концепции на компоненты.
- Методология итеративных экспериментов в геймдизайне. Марк Браун предложил итеративный подход развития концепта: сначала создать прототип, а затем экспериментировать с ним, пытаясь найти состояние, в котором он приносит больше всего радости и удовольствия игроку.
- Как сделать геймплей увлекательным. Инди-разработчик Йонас Тироллер наглядно показал, какие механизмы приводят к тому, что игра приносит удовольствие пользователям. Он выделил несколько компонентов: воздействие на мир игры, получение вознаграждения, преодоление испытания и интересный сеттинг.
- Создание нарративного прототипа игры. Геймдизайнер Джейми Антонис в выступлении на GDC описал собственный подход к созданию прототипа нарративной игры: когда основная концепция готова, он начинает её прорабатывать — расписывает предысторию, определяет для игрока роль, цель, конфликт, доступный выбор и действия.
Инструменты
- Сборник-помощник для начинающих разработчиков игр: бесплатные программы и ассеты. Иван Михайлов собрал внушительный список программ и сервисов для создания полноценной игры или реализации отдельных аспектов. Там есть конструкторы игр, полноценные движки, графические редакторы, специализированные инструменты для скульптинга, анимирования и многие другие инструменты.
- Как разобраться в игровых движках. Алексей Иванович подробно рассказал о различиях игровых движков, а также перечислил основные примеры и классифицировал их по сложности использования.
- Как сделать текстовый квест за два часа. Пользователь Сергей Токарев описал простой способ создания текстового квеста — редактор Twine. Автор перечислил сильные стороны программы, а также показал, как использовать инструмент.
- Разрабатываем свою карточную игру с помощью nanDECK. Если вы хотите сделать карточную игру, то рекомендуем этот гайд от Владимира Белецкого, в котором он рассказал, как пользоваться программой nanDECK.
- Создание разветвлённого сценария силами Ren'Py. Здесь подробно описан процесс создания короткой визуальной новеллы при помощи движка Ren'Py. По словам автора, это очень простой и быстрый способ разработки игр, который не требует углубленных знаний. К примеру, на создание небольшой детской игры, в которой нужно отвечать на загадки, у него ушло около 20 минут.
- Три полезных инструмента для прототипирования — опыт разработчиков. Разработчик Джоэль Бирдшоу рассказал о полезных инструментах для прототипирования, которые он использует — Twine, Fungus и ProBuilder. Fungus применяется для визуального программирования в Unity, а ProBuilder позволяет легко моделировать базовые 3D-элементы окружения в Unity.
- Создание текстовых адвенчур в Inform. Небольшой туториал по работе в Inform — движке, благодаря которому можно разработать текстовую адвенчуру.
Планирование разработки и управление командой
- Дорожная карта — что это такое и чем она полезна разработчику. Планирование необходимо для того, чтобы разработка не превращалась в рутину без внятного конца. Чёткий план помогает следить за собственными успехами и ограничивать творческие порывы. Конечно, во время джема у разработчиков сильно ограничено время, но это не значит, что вам нужно отказаться от плана. В своём тексте Владимир Тырлов подробно описал пользу от «дорожной карты» разработки.
- Как закончить бесконечную разработку и наконец выпустить игру. Дерек Ю рассказал, что разработчики очень легко могут попасть в «смертельную петлю», из-за которой они никогда не выйдут из цикла постоянных улучшений и изменений.
- О командной работе в геймдеве. Если вы работаете в команде, то вам придётся планировать не только свою занятость, но и рабочее время своих товарищей. Зачастую ошибки в управлении командой приводят к тому, что студия распадается, поэтому приходится срочно искать людей на замену. В своём материале Пётр Леонтьев подробно описал разные трудности, которые могут возникнуть при совместной работе, а также рассказал, как их можно избежать.
Геймдизайн
- Как объяснить механику и не потерять игрока в первые минуты. Первое впечатление имеет большое значение для дальнейшего восприятия игры и удержания пользователя. Вы должны сделать так, чтобы игра доходчиво объясняла основные механики, но при этом оставалась увлекательной.
- Как не утомить пользователя во время обучения. Обучение — это один из самых главных игровых аспектов, который позволяет наладить коммуникацию с пользователем и объяснить правила. Ольга Качалина рассказала, как люди запоминают информацию, и что нужно сделать, чтобы информация из туториала беспроблемно перешла из сенсорной памяти в долгосрочную.
- Методы удержания игрока. Раф Костер подробно рассказал про добавление эмергентности, темпе раскрытия контента, творчестве, истории и многом другом.
- Создание системы мотивации для вовлечения и удержания игрока. Геймдизайнер Дэниел Берубе рассказал про разные классификации мотивации игрока. Например, она может различаться по времени — бывает краткосрочная, среднесрочная и долгосрочная мотивация. Также мотивация делится по типу источника — внутренняя и внешняя. Знания об этом позволяет грамотно выстроить основной цикл геймплея: цель — испытание — награда.
- Пять практик представления новых механик в игре. Один из распространённых способов удержание пользователя — введение новых механик. В своём материале Олег Кочетков рассказал, как сделать это безболезненно для игрока.
- 13 базовых принципов геймдизайна. Пользователь Christophe Steam пересказал статью геймдизайнера Мэтта Алмера, который сформировал список основных принципов геймдизайна. Эти советы универсальны и применимы к самым разным играм. К примеру, автор рассказал про важно фокальных точек, прогрессии, коммуникации.
- Разработчики рассказали о главных заветах создания игр. Здесь собрано множество советов от разных дизайнеров. К примеру, всегда стоит записывать, почему вы отказались от той или иной идей, потому что рано или поздно вы к ней вернётесь.
- Как правильно выстроить сложность в видеоигре. Чрезмерная сложность игры демотивирует и отталкивает ваших пользователей. Есть разные подходы к настройке сложности в играх, но в любом случае вы должны сделать так, чтобы пользователь всё время находился в состоянии потока — он не должен скучать из-за слишком простых испытаний, но при этом не стоит делать их слишком сложными.
- Почему так сложно создать состояние «потока» в играх. Разработчик Journey описал, почему настолько сложно добиться этого состояния. Также он дал несколько советов начинающим геймдизайнерам: например, порекомендовал добавлять в основную механику вариативность, чтобы игроки могли самостоятельно усложнять или облегчать прохождение.
- Проверка взаимодействия игровых систем с помощью таблиц. Часто к проблемам со сложностью игры приводит неправильный баланс — разные системы плохо работают друг с другом, из-за чего страдает игрок. Чтобы справиться с этим, нужно использовать таблицы, которые помогают тонко настраивать отдельные аспекты геймдизайна.
Отдельные аспекты игрового дизайна
Если в предыдущем блоке мы затронули общие принципы геймдизайна, то в этом поговорим про отдельные решения, которые применимы лишь для отдельных игр.
- Как устроена система регистрации столкновений в играх. Часто при создании хитбоксов разработчики предпочитают хитрить в пользу игрока: хитбокс главного героя делают чуть меньше, чем модель или спрайт, а у противников — чуть больше. Благодаря этому пользователь чувствует радость, потому что ему «везёт», и он чудом уворачивается от ударов.
- Преднамеренные случайности в геймдизайне — описание двух типов рандома. Случайность — это полезный инструмент в руках геймдизайнера. Но многое зависит от того, как разработчик его использует. К примеру, «последующая случайность» часто ведёт к разочарованию и гневу от упущенных возможностей, а «предварительная» — к радости от приобретения.
- Зачем игры манипулируют вероятностями. Разработчики не так уж часто применяют настоящий рандом — обычно они делают так, чтобы он работал в пользу игроков.
- На что влияет камера в видеоиграх. Если вы не знаете, какой должна быть камера в вашей игре, то обратите внимание на этот материал — он поможет понять, как разные ракурсы влияют на впечатления от игры.
- Как помочь игроку избежать тупиковых ситуаций — два типа прогрессии в головоломках. Проблема головоломок часто заключается в непроходимых ситуациях, из-за которых игроки бросают прохождение. В этом тексте описаны альтернативные способы структурировать прогрессию в головоломках, чтобы избежать тупиковых моментов для пользователей.
- Как сделать систему жизней, которая не приводит игроков в ярость. Система жизней героя — это почти обязательная механика для экшен-игр. Тем не менее есть разные способы её реализации. Марк Браун рассказал, как сделать механику жизней, которая ничуть не раздражает пользователей.
- Принципы создания увлекательной механики передвижения в играх. Перемещение в играх — это полноценная механика, которая не только позволяет менять местоположение героя в пространстве, но и может приносить удовольствие. Движение дарит ощущение свободы, скорости и собственного мастерства.
Повествование
- Базовые приёмы повествования в играх. Есть множество способов рассказать историю в игре — диалоги, катсцены, записки. При этом у каждого подхода есть свои плюсы и минусы.
- Повествование в левелдизайне: как окружение влияет на нарратив, эмоции и идентичность. Марк Браун описал три подхода того, как мир можно использовать для повествования: для понимания, ощущения и идентичности.
- Четыре вопроса, чтобы улучшить твой нарративный дизайн. Разработчик Крис Бэйтмен перечислил четыре вопроса, которые должен задать себе каждый нарративный дизайнер во время работы над игрой. Например, важно постоянно помнить про связь повествования и остальных систем — они не должны слишком противоречить друг другу.
- Как сделать структуру повествования понятной игроку. Концепция потока работает и в области повествования — в этом тексте описано, как напряжение в сюжете используется для того, чтобы сохранять интерес аудитории.
- Нелинейная структура сюжета в играх. Есть несколько основных типов структуры сюжета в игре: к примеру, линейная, разветвлённая. Геймдизайнер Нейтан Сейвент подробно описал каждый подход, а также проанализировал их влияние на впечатления пользователя.
- Структурные особенности визуальных новелл. Нелинейность. Пользователь Alexander Dak подробно рассказал про разные подходы к структуре выбора в визуальных новеллах. Сюжетные развилки позволяют самостоятельно выбрать, в какую сторону будет развиваться повествование.
- Что такое нарративные карты и как они помогают планировать повествование в игре. Нелинейность в сюжете часто устроена намного сложнее, чем обычный выбор между двумя вариантами. Если история комплексная, то совмещение всех развилок превращается в трудную задачу. Чтобы справиться с этим, разработчики применяют нарративные карты — схемы, которые помогают эффективно структурировать нелинейное повествование.
Персонажи и диалоги
- Игроки запоминают персонажей, а не сюжет: почему сценаристам не стоит цепляться за трёхактную структуру. По мнению разработчиков Тома Эбернети и Ричарда Роуса III, игроки запоминают в первую очередь не конкретные сюжетные ходы, а персонажей.
- Четыре полезных подхода к созданию ваших персонажей и Ещё четыре способа создать вашего персонажа. Александр Гинзбург подробно описал принципы создания интересных и запоминающихся героев. Автор рассказал про разные методики, которые применяются в сценаристике и драматургии.
- Диалоги в играх: четыре полезных принципа. Также Гинзбург рассказал про особенности создания диалогов в играх. Он дал четыре совета, которые помогут повысить качество бесед.
- Принципы создания случайных диалогов в играх. Разработчица Натали Миккельсон считает, что случайные реплики от окружающих NPC — это важный элемент, который вносит жизнь в окружение. Она описала, каким критериям должны соответствовать подобные диалоги, чтобы они воспринимались естественными и ценными.
- Как сделать разговорную механику не менее интересной, чем стрельба. Традиционно диалоги в играх — это достаточно спокойные моменты прохождения, во время которых можно посидеть и подумать. Но некоторые разработчики решили поэкспериментировать и добавить динамики.
Арт
- Использование знаний об оптике и физике в работе художника. Художница Мария Ярцева рассказала об особенностях оптики и физики, которые влияют на наше восприятие освещения, форм и цветов. Эти знания можно использовать для создания более ясного и понятного арта.
- Советы начинающим 2D-художникам. Художник Томас Браш показал основные этапы создания 2D-сцены для игры. Его рассказ сложно воспринимать как туториал, но он позволяет примерно понять логику рисования.
- Пять художественных техник для разработчиков, которые не умеют рисовать. Арт для игры могут рисовать не только профессиональные художники, но и остальные члены команды. Главное — выбрать простой художественный стиль, который не требует продвинутых навыков рисования. В этом тексте перечислено пять подобных стилей — геометрические фигуры, пиксель-арт, ASCII, черновые наброски и ротоскопинг.
- Приложения и программы в помощь художникам. Существует множество редакторов, благодаря которым можно сделать игровую графику — есть как универсальные, так и специфические программы.
Создание отдельных аспектов
- Учимся делать визуальные эффекты. Если вы хотите сделать эффекты для своей казуальной игры, то этот туториал позволит вам понять принцип их создания. В нём подробно расписан каждый этап — от поиска референсов до настройки поведения частиц.
- Совмещение 2D и 3D-графики в Blightbound — разбор визуальных эффектов. В этом тексте представлена деконструкция эффектов от разработчика Blightbound — он рассказал, из каких элементов состоит каждый эффект.
- Как создаются скайбоксы в играх. В игровых движках можно добавить стандартный скайбокс в свой проект. Если же вы хотите кастомизировать его, вы можете воспользоваться этим гайдом от разработчика World of Warcraft.
- Создание эффекта динамического освещения для облаков. Многоплановость в скайбоксах применяется для придания глубины сцене. Но при этом разработчики стремятся сделать так, чтобы облака не выглядели как искусственный фон. Этот краткий туториал позволит вам понять, как используются карты нормалей, чтобы облака выглядели реалистичнее.
- Туториал по созданию эффекта сел-шейдинга в Unity. В изобразительном искусстве существует огромное количество самых разных техник, и игровые художники иногда копируют их. Стиль сел-шейдинга позволяет сделать графику похожей на рисованный комикс. Благодаря этому гайду вы сможете понять, как реализовать такой стиль в своей игре.
- Как создать динамическое освещение для 2D-игры. В этом туториале автор описывает процесс добавления динамического освещения в свою 2D-игру.
- Как использовать частицы в пиксель-арте — советы новичкам. Автор дал несколько советов, как улучшить частицы в своей игре. Например, не стоит использовать градиент и размытие, а сглаживание вообще нужно отключить.
- 11 программ для работы с пиксель-артом. Подборка инструментов, которые отлично подходят для графики в стиле пиксель-арта.
- Семь программ для работы с воксель-артом. Подборка программ для работы с воксель-артом.
- Как имитировать динамическое освещение на пиксельном спрайте. Карты нормалей можно применять даже к обычным спрайтам. Благодаря этому можно добиться динамического освещения на персонажах.
- Как сделать дизайн персонажа запоминающимся: работа с силуэтом и формой. Советы от Smirnov School по рисованию персонажей для игр.
- Анатомия дома для художников. Когда вы рисуете различные здания, вы должны понимать их внутреннее устройство. Например, всегда стоит помнить про фундамент, подвалы, лифты.
- Как нарисовать робота. Здесь описаны основные советы при рисовании роботов. Например, в их основе чаще всего лежат примитивы.
- Как рисовать разные выражения лица. Туториал по рисованию мимики.
- Как нарисовать движение: 16 лучших приёмов. Здесь собраны советы, которые помогут нарисовать объект в движении.
- Как научиться рисовать любые материалы. А в этом материале представлены принципы рисования разных материалов.
3D-моделирование
- Как делаются модели для AAA-игр. Здесь описан общий пайплайн создания моделей, а также перечислены основные этапы.
- Всё про драфты. В этом тексте собраны советы по созданию черновой версии модели.
- Lowpoly, Highpoly и вертекс нормали. Подробное описание некоторых этапов моделирования объекта.
- UV Развёртка. Гайд по развёртке.
- Текстурирование — создание смарт-материала в Substance Painter. Руслан Феликин подробно объяснил принцип текстурирования в Substance Painter.
- Что такое тайловое текстурирование — общие принципы и использование. В этом материале Феликин рассказал про тайловое текстурирование, которое повсеместно используется в индустрии.
- Как создать стилизованного персонажа в Zbrush. В этом тексте Юлия Соколова подробно описала процесс моделирования героев в Zbrush.
Анимация
- Анимирование для новичков — поэтапный туториал. Инди-разработчик jakefriend описал, как анимировать персонажей без продвинутых художественных навыков.
- Элементарные приёмы 2D-анимации. Инди-разработчик Анатолий Логиновских в своём материале также рассказал о принципах покадрового анимирования 2D-спрайтов. Например, он советует ограничиться всего четырьмя кадрами для idle-анимации — этого достаточно, чтобы вдохнуть жизнь в персонажей.
- Принципы создания игровой анимации. Здесь перечислены основные принципы, на основе которых разработчики анимируют своих персонажей. Автор рассказал про ключевые позы, а также объяснил, почему многие движения выглядят слишком преувеличенными.
- Как делать энергичную анимацию. Советы и техники от аниматора Skullgirls. Благодаря этому разбору анимаций из Skullgirls вы сможете узнать, на что следует опираться при создании движений. К примеру, силуэт имеет чрезвычайно большое значение, так как именно он помогает игроку верно распознать атаку противника.
- Как сделать плавную анимацию для абстрактного персонажа. В этом кратком туториале наглядно показано, как небольшие детали делают анимацию по-настоящему «сочной».
- Краткий туториал по созданию процедурной анимации для насекомоподобных существ. Ещё один распространённый способ создания движений персонажей — процедурная анимация. В этом материале представлен процесс настройки подобной анимации на примере насекомоподобного существа.
Левелдизайн
- Советы по созданию блокмеша игрового уровня. Пользователь не должен теряться в игре — сам уровень должен подсказывать, куда идти дальше. Левелдизайнеры придумали множество способов ненавязчиво управлять движением игрока. Геймдизайнер Naughty Dog Дэвид Шейвер рассказал о главных способах создания подобной коммуникации между пользователем и игрой.
- Что такое аффорданс-объекты, и как они влияют на визуальный язык окружения. Эмилия Шац из Naughty Dog описала ключевые подходы при создании визуального языка, благодаря которому игрок может считывать предназначение элементов окружения.
- Базовые принципы размещения источников света на игровых локациях. Роберт Янг подробно рассказал, как свет применяется для управления вниманием игрока.
- Визуальные магниты в играх: как ориентиры влияют на опыт пользователей. Визуальные магниты привлекают пользователей и позволяют ориентироваться в пространстве.
- Залог успеха при создании локаций: список вопросов для каждого левелдизайнера. Если вы не знаете, что именно будет на вашей локации, и в чём заключается её идея, то прочитайте этот материал. В нём перечислены основные вопросы, которые нужно задать себе, чтобы придумать концепцию уровня.
- Метрики и визуальный язык: как направлять игрока в локации. Чтобы игровые элементы выглядели правдоподобно и пропорционально по отношению друг к другу, нужно использовать метрики.
- Композиция в левелдизайне. Композиция и размещение элементов окружения влияют на опыт и впечатления игрока. В этом материале описаны основные вещи, которые нужно учитывать при создании блокмеша уровня.
- Базовое проектирование трёх типов уровней: линейных, открытых и с несколькими путями. Есть несколько типов локаций, которые различаются свободой перемещения — линейные, полуоткрытые и открытые. И у каждого есть свои плюсы и недостатки.
- Как создаются локации с помощью процедурной генерации и ГПСЧ. Уровни можно создавать не собственноручно, а при помощи генератора. В этом тексте описаны два подхода для создания локаций: в первом карта просто собирается из заранее подготовленных кусочков, а во втором — создаётся с нуля, следуя определённым правилам.
- Как экономить время работы при создании игрового окружения. Чтобы экономить время при создании уровней, часто применяются префабы — заранее созданные компоненты локаций.
Звуки
- Основы саунддизайна в играх. У звуков в играх есть множество важных функций — от коммуникации с пользователем до создания нужной атмосферы. Аудио-дизайнер Ринат Ситдиков рассказал о главных аспектах применения звука в играх.
- Четыре совета для создания эффективного аудиодизайна. Аудио позволяет добавить жизнь в виртуальный мир. В этом материале описано несколько принципов саунд-дизайна, благодаря которому вы сможете создать нужную атмосферу.
- Делаем игру за три дня: день третий — музыка. Инди-разработчик Анатолий Логиновских дал несколько советов о том, как создать звуки для игры в ограниченные сроки. Он показал, какие инструменты стоит использовать новичкам, чтобы добиться нужного результата.
- Пять советов для начинающих звуковых дизайнеров. Саунд-дизайнер из Mighty Bear Games Абель Тан поделился несколькими советами, которые позволяют облегчить весь процесс создания аудио для игры. Например, он советует заранее спланировать весь звуковой ландшафт игры, а лишь затем приступать к созданию отдельных звуков.
- Как быстро, легко и бесплатно создать музыку для своей игры. Если вы хотите быстро написать простую мелодию, то можете воспользоваться этим туториалом.
- Как создавались звуки в God of War. Разработчики намеренно стремились наполнить сцены разными эмиттерами — точечными источниками звука, которые делают окружение правдоподобным.
Наверняка мы забыли упомянуть какие-то полезные материалы. Если вы помните такие, дайте ссылку в комментариях. И удачи на Ииинди-джеме!
Добавлю в закладки и забуду об этом, спасибо.
С друзьями поделитесь и лайк поставьте!)
ух ебать
Комментарий недоступен
Заметка в тему. Сам постоянно ищу материалы по этой теме.
Пытаюсь, что то строить сам. Применять архитектуры из общего программирования.
Последняя идея это применение TDD(test-driven development). Помимо все прочего такая методология рвет много ненужных связей.
Если что, то предлагаю держатся вместе.
Это просто ахуенно! Иногда хочется перечитать конкретную тему, но из-за того что закладки нельзя тематически группировать - хрен найдешь. Еще и с небольшим описанием... просто идеально.
Спасибо большое!
кстати хорошая идея : можно создавать темы и периодически подкидывать туда "типа закладки"