{ "author_name": "Артём Слободчиков", "author_type": "self", "tags": ["\u0440\u0430\u0437\u0431\u043e\u0440","\u0433\u0435\u0439\u043c\u0434\u0438\u0437\u0430\u0439\u043d","uncharted4"], "comments": 21, "likes": 64, "favorites": 46, "is_advertisement": false, "section_name": "gamedev", "id": "7929", "is_wide": "" }
Артём Слободчиков
5 353
Gamedev

Язык окружения: как сделать сцены понятными для игрока

Приёмы и советы.

Поделиться

В избранное

В избранном

Дизайнер уровней Эмилия Шатц (Emilia Schatz) из Naughty Dog выделила основные принципы того, какой нужно делать интуитивно понятную пользователю игровую среду. Мы перевели статью.

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

Проблема достижения реализма

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

Эмилия советует: посмотрите на мир и попробуйте выделить в нём всё, с чем вы можете взаимодействовать. Возможностей будет очень много. На фотографии ниже их практически бесконечное количество. Можно прочитать любую книгу, сжечь их, разложить по категориям или попытаться их съесть. Возможности эти называются аффордансами — этот термин придумал психолог восприятия Джеймс Гибсон в его статье «Теория аффордансов» (The Theory of Affordances). Аффордансом называется возможность взаимодействия с объектом, основанная на законах физической реальности.

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

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

Но что если в игре нельзя лазать по лестницам? Тогда каждая лестница, находящаяся на уровне, будет разрушать эффект погружения — игроки взбирались на них не только в других играх, но и в реальной жизни. Лестница связывает два места — низ и верх, — так почему бы не расположить наверху что-то ценное?

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

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

Язык окружения

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

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

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

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

Каталогизируйте механики

Чтобы понять, какие аффордансы можно использовать, нужно каталогизировать доступные игроку механики. В Uncharted 4 можно:

  • двигаться (бег/ходьба);
  • карабкаться;
  • прыгать;
  • занять укрытие;
  • залезть;
  • кинуть верёвку.

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

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

Буферы для механик

Чтобы избежать двусмысленных характеристик, стоит продумать буферные зоны. В Uncharted Натан Дрейк может залезть на уступ высотой 3,5 метра или меньше. Поэтому разработчики предусмотрели «мёртвую зону» между 3,25 и четырьмя метрами — в неё не должен попадать ни один уступ, на который можно залезть.

Также был создан буфер для наклонных плоскостей, по которым можно ходить — всех поверхностей с уклоном менее 35 градусов. Поэтому в игре не было поверхностей с уклоном между 30 и 45 градусами.

Ещё один пример — высота низкого укрытия. Дрейк может прятаться за объектами высотой от 0,9 до 1,25 метра. Поэтому ничто высотой меньше или больше этого диапазона на 0,5 метра не считалось укрытием, как видно по диаграмме ниже.

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

Буфер для расположения

Когда объект должен выделяться, контрастируя со свободным от аффордансов задником, ему нужна своеобразная граница. Необходимо убирать всё, что пересекается с этим объектом или находится слишком близко к нему. В Uncharted аффорданс уступа, на который можно залезть, рассчитать непросто, поэтому разработчики постарались не располагать рядом с ними горизонтальные плоскости, на которые залезать нельзя.

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

Сохранение силуэтов

На изображении из Uncharted 4 ниже, единственный прямоугольный объект — тот, на который можно забраться. Его окружают вытянутые, диагональные формы. Также важно сохранять силуэты объектов — чем сильнее размываются внешние границы, тем сложнее понять, что это за объект.

Использование примитивных форм

У людей практически всех культур сформированы базовые эмоциональные ассоциации с кругами, квадратами и треугольниками. Круглые формы вызывают ощущение безопасности и спокойствия. Они воспринимаются как неагрессивные из-за отсутствия углов. Аффорданса у них почти нет.

С другой стороны, квадратные формы воспринимаются как твёрдые, стабильные и мощные. Они вызывают ощущение силы, либо видятся препятствиями, которые нужно преодолеть, или же объектами, которые можно стабильно использовать. Квадратные формы — сильный индикатор аффорданса. Наконец, диагональные и острые формы вызывают чувство опасности и дисбаланса. Они аффорданс отвергают.

Но это не значит, что стоит избегать круглых и угловатых форм. Но если визуальный язык сцены считывается слабо, примитивные формы могут с этим помочь.

Культурные аффордансы

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

В типе окружения «руины», которых в Uncharted много, можно несколько пренебречь реалистичностью расположения лестниц и дверей. Вообще, у любой среды, которой часто и долго пользовались люди, зачастую бывает необъяснимая архитектура, что для игр определённо полезно, как в плане сторителлинга, так и в плане аффордансов. Каменные блоки-укрытия неплохо выглядят в джунглях.

Не стоит дразнить игрока

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

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

Нежелательные аффордансы

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

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

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

Будьте собственным тестером

Лучше, чтобы ваш уровень проходили другие — они могут найти или не найти то, о чём вы даже не подозреваете. Однако каждый раз, когда вы будете играть на нём сами, постарайтесь мыслить так же, как они. Заходите везде, игнорируйте геймплейные цели, играйте «неправильно», идите туда, куда идти не следует. Обращайте внимание на формы, которые странно взаимодействуют с механиками или недостаточно понятно сообщают о своих аффордансах. Вот наиболее распространённые примеры:

  • ​Верёвки/кабели. Они достаточно крепкие, чтобы с ними можно было столкнуться? Может ли игрок их перепрыгнуть? Что происходит, когда игрок приземляется на одну из них? Меняется ли аффорданс в зависимости от длины?
  • «Жёсткая» растительность. Если через кусты невозможно пройти, достаточно ли это понятно? Они не должны быть там, куда игрок может приземлиться, прыгнуть или встать.
  • Поверхности и платформы, по которым нельзя ходить из-за неочевидных причин. Почему игрок не может стоять или ходить там? Смог бы он пройти там в реальной жизни?

#разбор #геймдизайн #uncharted4

Популярные материалы
Показать еще
{ "is_needs_advanced_access": false }

Комментарии Комм.

Популярные

По порядку

0

Прямой эфир

Узнавайте первым важные новости

Подписаться
[ { "id": 1, "label": "100%×150_Branding_desktop", "provider": "adfox", "adaptive": [ "desktop", "tablet" ], "auto_reload": true, "adfox": { "ownerId": 228129, "params": { "pp": "g", "ps": "clmf", "p2": "ezfl" } } }, { "id": 2, "label": "1200х400", "provider": "adfox", "adaptive": [ "phone" ], "auto_reload": true, "adfox": { "ownerId": 228129, "params": { "pp": "g", "ps": "clmf", "p2": "ezfn" } } }, { "id": 3, "label": "240х200 _ТГБ_desktop", "provider": "adfox", "adaptive": [ "desktop" ], "adfox": { "ownerId": 228129, "params": { "pp": "g", "ps": "clmf", "p2": "fizc" } } }, { "id": 4, "label": "240х200_mobile", "provider": "adfox", "adaptive": [ "phone" ], "adfox": { "ownerId": 228129, "params": { "pp": "g", "ps": "clmf", "p2": "flbq" } } }, { "id": 5, "label": "300x500_desktop", "provider": "adfox", "adaptive": [ "desktop" ], "adfox": { "ownerId": 228129, "params": { "pp": "g", "ps": "clmf", "p2": "ezfk" } } }, { "id": 6, "label": "1180х250_Interpool_баннер над комментариями_Desktop", "provider": "adfox", "adaptive": [ "desktop", "tablet" ], "adfox": { "ownerId": 228129, "params": { "pp": "h", "ps": "clmf", "p2": "ffyh" } } }, { "id": 7, "label": "Article Footer 100%_desktop_mobile", "provider": "adfox", "adaptive": [ "desktop", "tablet", "phone" ], "adfox": { "ownerId": 228129, "params": { "pp": "g", "ps": "clmf", "p2": "fjxb" } } }, { "id": 8, "label": "Fullscreen Desktop", "provider": "adfox", "adaptive": [ "desktop", "tablet" ], "auto_reload": true, "adfox": { "ownerId": 228129, "params": { "pp": "g", "ps": "clmf", "p2": "fjoh" } } }, { "id": 9, "label": "Fullscreen Mobile", "provider": "adfox", "adaptive": [ "phone" ], "auto_reload": true, "adfox": { "ownerId": 228129, "params": { "pp": "g", "ps": "clmf", "p2": "fjog" } } }, { "id": 10, "label": "Native Partner Desktop", "provider": "adfox", "adaptive": [ "desktop", "tablet" ], "adfox": { "ownerId": 228129, "params": { "pp": "g", "ps": "clmf", "p2": "fmyb" } } }, { "id": 11, "label": "Native Partner Mobile", "provider": "adfox", "adaptive": [ "phone" ], "adfox": { "ownerId": 228129, "params": { "pp": "g", "ps": "clmf", "p2": "fmyc" } } }, { "id": 12, "label": "Кнопка в шапке", "provider": "adfox", "adaptive": [ "desktop", "tablet" ], "adfox": { "ownerId": 228129, "params": { "pp": "g", "ps": "clmf", "p2": "fdhx" } } }, { "id": 13, "label": "DM InPage Video PartnerCode", "provider": "adfox", "adaptive": [ "desktop", "tablet", "phone" ], "adfox_method": "create", "adfox": { "ownerId": 228129, "params": { "pp": "h", "ps": "clmf", "p2": "flvn" } } }, { "id": 14, "label": "Yandex context video banner", "provider": "yandex", "yandex": { "block_id": "VI-250597-0", "render_to": "inpage_VI-250597-0-549065259", "adfox_url": "//ads.adfox.ru/228129/getCode?p1=bxeub&p2=fpjw&puid1=&puid2=&puid3=&puid4=&puid8=&puid9=&puid21=&puid22=&puid31=&puid32=&fmt=1&pr=" } }, { "id": 15, "label": "Плашка на главной", "provider": "adfox", "adaptive": [ "desktop", "tablet", "phone" ], "adfox": { "ownerId": 228129, "params": { "p1": "byudo", "p2": "ftjf" } } } ]