Что такое детализация в играх

Что такое детализация в играх

LOD (англ. Levels Of Detail — уровни детализации ) — приём в программировании трёхмерной графики, заключающийся в создании нескольких вариантов одного объекта с различными степенями детализации, которые переключаются в зависимости от удаления объекта от виртуальной камеры. Другой метод заключается в использовании одной основной, «грубо приближенной», модели и нескольких внешних надстроек к ней. Каждая последующая надстройка к основной модели дополняется элементами детализации пропорционально номеру надстройки. То есть на самом большом расстоянии будет отображаться единственная главная модель объекта. С приближением же последнего к камере игрока к конвейеру отрисовки будут последовательно подключаться последующие надстройки деталей.

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

Статические и динамические методы детализации [ править | править код ]

Существуют два подхода к управлению детализацией: статический и динамический LOD-уровень. [2] [3]

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

Динамические LOD системы, например, ROAM (Real-time Optimally Adapting Meshes) и RQT (Restricted Quadtree Triangulation). [4]

Мы – небольшая инди-команда Heat beat Games. Мы любим игры, мы в них играем и мы их делаем. Стараемся комбинировать механики и производить игры, которых еще не было.

Я, Кирилл, плоский рисовальщик, по сути занимаюсь всем 2D-артом в проекте: то-сё, концепты, UI, иногда анимацией, персонажами, фонами…

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

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

Форма объекта должны быть понятной, передавать характер, состояние объекта и его свойства.

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

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

Размываем всё это… Создаются некие подобия цветных пятен Роршаха. И тут начинается творческий процесс в поиске форм. Вы видите тут что-то?

Далее, при необходимости, отрезаем ненужное.

Детализируем и делаем небольшие доработки. Разбрасываем основные цвета и светтень.

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

Если ваш заказчик или геймдизайнер даёт вам точные референсы, то задача с концептом немного упрощается. У вас есть конкретные пункты от которых нужно отталкиваться. Важно указать, чего не стоит делать. В таком случае мы избегаем фраз: «Я не это имел ввиду!».

После создания серии концептов перед командой стоит явное визуальное представление будущего проекта. Но теперь необходимо выбрать стилистику игры. И это также можно сделать по-разному.

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

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

Самый простой в реализации, но наименее креативный подход — передрать или скопировать стилистику. Референсы лучше использовать в поиске деталей, но не в полном копировании.

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

Сразу же разбросайте примерные цвета по объектам заднего плана, персонажам, интерфейсу, прочему.

Заготовьте палитры цветов. Палитры можно выбирать разными способами. Например цвета из референсов. Либо наложить на цветовой круг фильтр. Можно составить и свою палитру. Главное придерживаться заданного направления.

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

Для большего комфорта следует соблюдать хотя бы элементарные законы физики. Объекты находящиеся дальше — более светлые и менее насыщенные.

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

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

Читайте также:  Метод евклида для нахождения нод

Насыщенность цветов персонажа обычно меньше в ногах и больше в верхней части (так подчёркиваются самые важные элементы).

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

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

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

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

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

Не детализируйте до таких мелких вещей, которых не будет видно в игре. Они будут создавать только шум, а отрисовка их заберёт драгоценное время. Оговорите заранее минимальный размер видимого на камере объекта.

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

Неестественно смотрятся объекты уходящие в никуда. Поэтому на границе двух объектов должны быть обозначенные места стыка. Так картинка будет выглядеть более естественно и гармонично.

После создания всех объектов следует проверять их сочетаемость и тут же исправлять ошибки. Чтобы предотвратить такие ошибки хорошо бы всегда держать под рукой другие эталонные элементы (ориентиры).

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

Внеся небольшое разнообразие в одну и ту же “болванку” можно получить абсолютно разные ассеты. Это сэкономит время как при создании новых элементов так и при их анимации.

Создав условия для возможности покраски повторяющихся элементов шейдером и уменьшить все «тайловые» элементы, можно неплохо сэкономить место на атласе.

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

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

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

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

Всегда получайте удовольствие от Вашей работы. Если это не так, то, возможно, вы заняты чем-то не тем. Не бойтесь экспериментировать. Читайте литературу и развивайтесь. Экономьте свои силы и силы своих сотрудников. Развлекайтесь и следите за своим здоровьем. Удачи в работе!

Большинство картинок из этого доклада были взяты из нашей новой игры Space Animals. Игра рассчитана на широкую аудиторию, но мы уделили больше внимания детской аудитории. Игра в гибридном жанре кликер и раннер о крутых животных, летающих в космос в поисках приключений.

Интересное о дизайне уровней.

Анатомия игрового пространства

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

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

Структурная геометрия

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

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

В качестве примера можно привести уровни из игры Left 4 Dead (2008, Valve) с ярко выраженным городским пейзажем. Мысленно убираем все уличные детали (столбы, скамейки, знаки, машины, мусорные контейнеры) — и у нас остается голая структурная геометрия, формирующая «тело» уровня.

Читайте также:  Ноутбук asus i7 4710hq

Left 4 Dead © 2008, Valve

Роль структурной геометрии также могут играть любые элементы ландшафта созданные природой — такие как скалы, пещеры, поля, овраги и т.п. Основную геометрию, формирующую рельеф местности, часто называют «террейном» (от англ. «terrain» — местность) или «лэндскейпом» (от англ. «landscape» — ландшафт).

Уровень «Afghan» из Call of Duty: Modern Warfare 2 (2009, Infinity Ward) служит отличным примером использования террейна (или природного ландшафта) в качестве структурной геометрии. Компонентами, формирующими тело уровня, здесь будут скалы, сквозная сеть пещер, небольшой бункер, и центральный элемент — упавший военный самолет.

Call of Duty: Modern Warfare 2 © 2009, Infinity Ward

Детали игрового окружения

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

Такие объекты в дизайне уровней называют «пропсами» (от англ. «props» — реквизит). Они выполняют роль бутафорского реквизита на съемочной площадке и помогают зрителю в полной мере прочувствовать обстановку места действия.

Обычно при планировании нового уровня выделяют три группы пропсов:

  • Крупногабаритные объекты (массивные конструкции, павильоны, ограждения, автомобили, грузовики, деревья и т.д.)
  • Среднегабаритные объекты (домашняя и уличная мебель, рекламные вывески, антенны, мачты освещения, контейнеры и т.п.)
  • Малогабаритные объекты (мелкие детали интерьера и экстерьера — бутылки, камни, трава, листья и т.д.)

Каким образом детали преображают уровень? За примером давайте снова обратимся к Left 4 Dead (2008, Valve), где недетализированная структурная геометрия выглядит вот так:

Left 4 Dead © 2008, Valve

Добавляем на уровень пропсы самых различных габаритов:

Left 4 Dead © 2008, Valve

И получаем полноценное детализированное игровое окружение:

Left 4 Dead © 2008, Valve

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

Помимо пропсов для детализации уровней также используют так называемые «декали» (от англ. «decal» — клеймо, наклейка). Декали — это проекция специального изображения на поверхность, которая позволяет добавить дополнительные детали.

Например, при помощи декалей в Left 4 Dead (2008, Valve) на стены добавлено множество трещин, потеков, граффити и имитаций всевозможных вентиляционных решеток, окон и рекламных объявлений. Для детализации дорожной поверхности используется автомобильная разметка, бумажный мусор, лужи, ливневые стоки и т.д.

Left 4 Dead © 2008, Valve

Еще один пример грамотного использования декалей можно подсмотреть в Fallout 3 (2008, Bethesda Game Studios). Практически все детали на любых поврежденных бетонных поверхностях выполнены при помощи декалей в виде разломов и трещин, создающих эффект сложной и детализированной геометрии.

Fallout 3 © 2008, Bethesda Game Studios

Задний план

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

Вместе с развитием технологий и увеличением детализации свой путь эволюции прошел и задний план. Изначально он представлял собой фотопанораму либо трехмерную визуализацию, где все детали были частью статичного двухмерного изображения. Например, вот так в Half-Life (1998, Valve) выглядит статичная панорама каньона:

Half-Life © 1998, Valve

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

На уровне «Vertigo» в Counter-Strike: Global Offensive (2012, Valve) сравнительно простая архитектура игровой части уровня сбалансирована впечатляющей и богатой городской панорамой. Большинство объектов заднего плана выполнены в виде низкополигональных трехмерных зданий, которые через дымку тумана, плавно переходят в панораму неба.

Counter-Strike: Global Offensive © 2012, Valve

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

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

Отличным примером создания технологически правильной и впечатляющей панорамы ночного города служит финальный уровень из Mirror’s Edge (2008, DICE). Здесь задний план создан из большого количества низкополигональных моделей, которые плавно переходят в двухмерное панорамное изображение городского силуэта и неба. Таким образом, благодаря концентрации громадного количества низкополигональных объектов создается иллюзия насыщенного открытого пространства без потерь в производительности.

Читайте также:  Принтер hp laserjet 1320 характеристики

Mirror’s Edge © 2008, DICE

Освещение

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

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

Направленный свет (англ. «directional light») — это любой небесный источник света (вроде солнца или луны), равномерно освещающий сцену с нужного нам направления. Пример дневного освещения с направленным светом на уровне «Safehouse» в Counter-Strike: Global Offensive (2012, Valve):

Counter-Strike: Global Offensive © 2012, Valve

Глобальное освещение (англ. «global illumination» или «sky light») позволяет настроить количество света, отраженного от различных поверхностей. Таким типом освещения можно создать облачный день без солнца либо темную ночь без луны с мягким рассеянным светом.

Точечный свет (англ. «point light») излучает свет во все стороны и позволяет создать простейший источник света вроде обычной лампочки.

Прожектор (англ. «spot light») представляет собой направленный световой поток подобный фонарику или автомобильной фаре. Пример игры света и тени при помощи прожектора в BioShock (2007, Irrational Games):

BioShock © 2007, Irrational Games

Важно помнить о том, что свет не берется из пустоты и при размещении источников света нужно обязательно дублировать их объектами, объясняющими физическое появление света, такими как лампы, свечи, факелы, костры и т.д.

Аудио и визуальные эффекты

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

Чтобы придать особый шарм визуальному ряду, очень часто используют цветокоррекцию и различные постфильтры (эффект зернистости, виньетинг, HDR). Для этого дизайнер размещает на уровне вольюмы (от англ. «volume» — ёмкость) со специальными настройками, которыми можно обозначить, в какой именно локации необходимо использовать тот или иной фильтр для цветокоррекции. Например, в Left 4 Dead (2008, Valve) для придания эффекта кинематографичности используют цветокоррекцию вместе с постфильтром зернистости.

Left 4 Dead © 2008, Valve

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

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

Игровой функционал

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

Во-первых, это любые настройки, связанные с полноценным прохождением уровня. Сюда можно отнести всю игровую логику — условия победы и поражения, точки появления игроков, систему триггеров (от англ. «trigger» — курок), запускающую запланированные события на уровне, такие как скриптовые сцены (в англ. «scripted scene») или заставки (в англ. «cutscene»), места автоматического сохранения игры, музыкальные события и т.д.

На изображении ниже можно видеть пример триггера из Half-Life 2 (2004, Valve), который привязан к двум событиям на уровне. Стоит только игроку зайти в оранжевую область, как полицейский тут же начинает преследование нарушителя. В случае, если игрок покидает пределы триггера, то персонаж мгновенно прекращает преследование и возвращается на свою исходную позицию.

Half-Life 2 © 2004, Valve

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

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

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

Обычно настройки игрового функционала скрыты от глаз обычного игрока и видны только в редакторе уровней. Например, настройки геймплейной части уровня в Bulletstorm (2011, Epic Games, People Can Fly) выглядят вот так:

Bulletstorm © 2011, Epic Games, People Can Fly

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

Ссылка на основную публикацию
Adblock detector