Декали в играх что это
Decal (декаль)
Декали (decal с англ.: бирка, ярлык, клеймо) это особый вид геометрии, который позволяет повышать детализированность игровых окружений без надобности запекать мелкие детали в текстуры, что может быть просто невозможным в ситуациях, когда множество поверхностей используют одинаковый материал. Обычно декали используют для отрисовки дырок от пуль, пятен крови или гари от взрывов, но в некоторых случаях использование уходит за пределы таких вещей. К тому же декали можно создавать не только в динамике, но и во время изготовления уровня.
Можно представить себе игровой уровень с большим количеством зданий. С помощью декалей стены этих зданий можно уникально «украсить» оборванными плакатами, трещинами или пятнами краски, здесь фантазия не ограничена. При наложении можно применять различные методы блендинга для достижения подходящего результата.
Для улучшения восприятия таких деталей можно использовать стандартные техники освещения, такие как bump mapping, parallax mapping и другие. Параллакс особенно хорошо выглядит, так как придаёт намного больше объёма и позволяет таким вещам, как дыркам от пуль «углубляться» в геометрию.
Создавать декали в динамике можно разными способами. Существует упрощённое решение, дающее во многих ситуациях неверные решения, так и более точное, требующее от двух и более треугольников под декаль.
Одно из простых решений, которое можно смело применять для создания «дырок» от выстрелов, заключается в поиске точки пересечения луча с треугольниками игрового уровня (тут нужны различные оптимизации, для того чтобы не проверять каждый треугольник и расчёт места пересечения занимал мало времени). Затем мы берём найденную точку, и используя бинормаль и тангент в этой точке создаём два треугольника, образующих квад. Если информации о бинормали и тангенте нету, можно просто взять два случайных перпендикулярных единичных вектора, расположенных в плоскости поверхности и строить квад по ним. Нормаль поверхности следует использовать как нормали в точках декаля для правильного освещения. Для избежания проблем с z-fighting’ом, который возникает на плоскостях расположенных близко друг к другу следует использовать Polygon Offset/Depth Bias. Текстурные координаты тоже можно находить разными способами, например, для дырок от выстрелов можно использовать координаты углов квада. А вот, например, для пятен крови, которые должны «размазываться» по направлению движения можно рассчитать текстурные координаты методами eye linear\object linear.
Но это простое решение может плохо работать для тех же пятен крови, имеющих большую площадь поверхности. Для таких декалей нужно рассчитывать не центральную точку пересечения, а находить треугольники попадающие в зону покрытия, и создавать множество геометрии на всех этих поверхностях.
Существует также метод при котором детали отрисовываются в текстуру, но это имеет ряд проблем, например требуется уникальность изменяемой текстуры (она должна использоваться только на одном объекте, иначе добавленные детали появятся на всех объектах, использующих изменяемую текстуру), а также страдает скорость из-за постоянных обновлений текстуры (если генерируются мип-уровни, то это будет занимать значительное количество времени).
Текстуры, используемые для декалей лучше хранить в одном текстурном атласе. В таком случае для огромного количества декалей на уровне можно будет использовать один вершинный и индексный буфера, и рисовать всю их геометрию за один вызов функции DrawIndexedPrimitive\glDrawElements.
Пропсы и декали в геймдеве
Полнота погружения пользователя в геймплей во многом зависит от детальной проработки игрового окружения. Чтобы создать иллюзию большого, впечатляющего и реалистичного мира, дизайнеры уровней используют самые разные элементы структурной геометрии, проще говоря “пропсы” и “декали”. Создание деталей игрового окружения — не менее важная задача, чем дизайн уровней, написание сценария, звука и кода.
В этой статье преподаватели Высшей школы бизнес-информатики НИУ ВШЭ, профессиональные левел-дизайнеры и авторы образовательных программ “Менеджмент игровых проектов” и “Основы создания игр”, поделятся опытом создания атмосферных уровней и расскажут, как правильно расставлять акценты на локации.
Какие бывают пропсы
Пропсы в геймдеве — это своего рода бутафория, позволяющая игроку ощутить атмосферу и оценить обстановку в окружающем мире. Все пропсы подразделяются на три основных типа:
Как использовать пропсы и декали
На «необработанную» структурную геометрию накладываются пропсы различных габаритов. Чтобы у игрока не возникло ощущения “обмана”, при ближайшем рассмотрении объектов должно четко читаться количество полигонов, текстура, комплексность и качество материалов. Это особенно важно для объектов на первом плане.
Не меньшую роль в создании реалистичной картинки играют декали. Эти специальные изображения накладываются на поверхности, создавая на них различные эффекты. Например, можно поместить на стену декаль с потеками, трещинами и граффити. Добавить к дому изображения окон, вентиляционных люков и рекламных объявлений. И, наконец, просто создать реалистичное дорожное полотно с разметкой, лужами, решетками ливневок и мусором на обочине.
Как создаются детали игрового окружения
Как правило, игровые объекты (особенно крупные) компонуются из нескольких готовых моделей. Если на high-poly моделях должны присутствовать более мелкие детали (узоры, сколы, трещины), используется технология скульптинга, основанная на принципах классической лепки.
Важно учитывать правильность отрисовки света и его взаимодействия с различными материалами. При проработке освещенности и текстуры пропсов используются различные специальные текстурные карты (кривизны и шероховатости, дополнительные эффекты и фото-текстуры). Работа со светом позволяет добиться максимально реалистичного качества графики.
Где научиться создавать реалистичное окружение в играх
Узнать подробнее, как создаются детали игрового окружения можно, пройдя обучение по программам “Основы создания игр” и “Менеджмент игровых проектов” в ВШБИ НИУ ВШЭ. Вы освоите навыки проработки реалистичного игрового мира, который необходим для создания уникальной атмосферы в игре. А помогут вам в этом профессиональные разработчики, за плечами который не один успешный продукт!
Еще больше информации вы найдете на канале МИП ВШБИ на YouTube. Подписывайтесь и не пропускайте свежие записи с открытых мероприятий ВШБИ НИУ ВШЭ.
Декали в играх что это
Это вторая часть нашего гайда. Первая, где собраны основные настройки вроде разрешения, качества текстур и теней, вы можете прочитать по ссылке.
Качество освещения (Lightning Quality)
То, насколько правдоподобно симулируется освещение в игре. Если это единственный подобный параметр в игре, то именно в эту настройку заложили уйму других, будь-то и объемный свет, и рассеивание лучей, и отражения, а иногда даже глобальное затенение. Освещение — это, пожалуй, вообще едва ли не самое основное из всего, что влияет на красоту картинки: оно делает ее объемной, натуралистичной, правдоподобной. Но и ресурсов все это дело «кушает» тоже немало. Именно поэтому, например, Nvidia так расхваливает свои новые RTX-видеокарты — они изначально разработаны под Ray Tracing — метод рендеринга, предполагающий правдоподобную симуляцию каждого луча.
Влияние на производительность
Зависит от движка, но почти во всех современных играх — очень сильное. Симулировать свет — это очень непросто, так что врубайте «ультра» только если у вас действительно мощная видеокарта.
Качество эффектов (Effects Quality)
Влияние на производительность
Тоже зависит от игры, чаще всего не особенно высокое. Но чем выше этот параметр, тем сильнее будет нагружаться ваша видеокарта в загруженных сценах, например, при масштабных перестрелках. Так что если игра начинает «подлагивать» в особо динамичные моменты, можно попробовать поиграться с этим ползунком, прежде чем снижать, например.
…Качество шейдеров (Shader Quality)
Шейдеры — это специальные программы для вашей видеокарты, исполняемые ее процессором. Грубо говоря, это такие «инструкции» от игры вашей GPU, по которым та понимает, как именно нужно отрисовывать тот или иной эффект. Чаще всего шейдеры используются для улучшения освещения, затенения, создания эффектов преломления лучей в воде (помните, как взрывала мозг та самая «шейдерная водичка из Half-Life 2: Lost Coast?), отражений, рассеиваний и так далее. Так что да, эта опция работает в тандеме с другими параметрами: качеством освещения и качеством теней. Существует три вида шейдеров: вершинные, геометрические и пиксельные, но игры, где можно отрегулировать качество каждого из них отдельно, встречаются невероятно редко.
Соответственно, чем выше качество шейдеров, тем лучше описанные выше эффекты, красивее тени и свет, реалистичнее геометрия — и тем сильнее нагрузка на видеокарту. Именно на видеокарту — потому что шейдеры считаются только GPU.
Влияние на производительность
Чаще всего — высокое. Например, в GTA V это один из самых «тяжелых» параметров в игре — снизив качество шейдеров с «Ультра» на средниее значение, вы получите прирост больше, чем в 15 FPS. Но бывает и так, что снижение этого параметра почти ничего не дает, как, например, в Mass Effect Anromeda.
Декали
Эта страница переведена не полностью.
This page has not been fully translated.
Также, убедитесь в том что статья пытается соответствовать статье об альтернативных языках.
Создать декаль не сложно: это обычный материал, у которого есть альфа-канал и который использует DecalModulate шейдер.
До того как читать дальше эту статью, рекомендуем вам ознакомится со статьей про создание материалов.
Contents
Обычные декали
Параметры материала
Настройки материала для декали выглядят примерно так:
Декали на моделях
Hammer
Это может быть достигнуто и на сервере с помощью функции engine->StaticDecal :
Индексы декалей могут быть получены вызовом decalsystem->GetDecalIndexForName или UTIL_PrecacheDecal() :
Использование модуляции
Для декалей, предназначенных для имитации выбоин или вмятин на поверхности, шейдер DecalModulate (mod2x) оказывается крайне подходящим: он осветляет целевые пиксели для каждого исходного пикселя, который имеет цвет светлее серого (>128), и затеняет целевые пиксели для каждого исходного пикселя, который имеет цвет темнее серого. Этот эффект может быть использован для придания ощущения глубины, при применении к поверхности.
Для начала создайте исходное изображение, цветовой канал которого будет использован для модуляции исходных значений. Еще раз: светлые значения будут осветлять пиксели, поверх которых они нарисованы, в то время как темные значения будут затемнять целевые пиксели. Значения с серым цветом будут рассматриваться как полупрозрачные.
Далее, создайте альфа-канал, который будет определять маску для декали. Так как модуляция не может иметь точное среднее значение корректно, маска обязательна для предотвращение появления границы (обводки) вокруг декали.
To do: Try converting source images with background colors RGB 127 127 127 with vtex found in other games other than L4D2 and see if it results in a background with RGB 124 126 124. Also, does RGB 124 126 124 apply to other versions of the Source engine as alpha for DXT1 compression?
Не то чтобы я был диким фанатом консолей, но есть вещи, которые действительно впечатляют. Понятное дело, что консолям нового поколения без впечатляющих пилотов на рынке делать нечего. Речь идет не о Watch Dogs, который тоже заслуживает внимания, как любая песочница с открытым миром, а о Tom Clancy’s The Division анонсированная для PS4 и Xbox One. Картинка (я оцениваю лишь ее) выглядит действительно хорошо. Игры уже давно стремятся быть не играми. Это уже почти кино. Меня мало волнует сейчас вопрос гейм-плея данной игры. Сейчас я просто потребитель, который готов клюнуть на вкусную обертку.
Параллельно с этим во мне просыпается девелопер-скептик, который ничего и никогда не принимает на веру, который до того как возопить о пришествии чего-либо сперва хочет убедиться в том, что пришествие произошло. Не потому, что боится выглядеть глупо, но потому что, обжегшись тысячи раз — не хочет повторить это в тысяче первый.
Мне уже давно не удается играть в игры как игроку. Иметь стопроцентное погружение. Это побочный эффект призмы через которую я смотрю на любую игру. Глаз в первую очередь цепляется за знакомые графические артефакты, ищет пути, которыми шли разработчики в создании графического контента. Одобрительно хлопает плюсам, и огорченно хмурит брови там, где все осталось как есть, без изменений. Все это помножено на «взгляд художника», который также аплодирует умелым действиям, и негодующе рычит в тех местах, где неизвестный художник допустил ошибку. Все это множится на еще не добитого геймера, который превыше всего ставит гейм-плей.
Сложный коктейль мешающий, в полной мере, наслаждаться компьютерными играми. Борьба противоположностей. Внутренний конфликт потребителя и разработчика.
Что я вижу здесь? Для начала посмотрите трейлер и решите, что видите для себя вы. А потом… лопата?
За грудами сетевого восторга вокруг новой приставки я вижу ставку командования на реалистичное освещение, десатурированую пастельную гамму (конкретно для этого проекта), кинематографические эффекты, с хорошо поданными примочками вроде FOV и DOF, пост-фильтры и безумное, поражающее воображение, количество декалей (это не опечатка, а термин, см. примечания), как средство обогащения картинки.
Весь асфальт усыпан мелкими кусочками бумаги, обрывками газет, разноцветными пятнышками. Все это – декали (см. приложения). Сейчас термин декали стал много шире чем в момент его зарождения. Декалью также может считаться повторяемая группа объектов, объединенных в один, к примеру, десяток разных банок вперемешку с рулонами туалетной бумаги и обрывками плакатов. Хотя по сути это был и остается «объект насыщения» (prefab (или static decoration object))
Пораженный хаосом город, как и мир Fallout 3 в свое время (разработанный на движке Gamebryo и имеющим ряд костылей (см. приложения)), «уделан» декалями от и до. Вся горизонтальная поверхность уровня кишит листками бумаги, банками и мусором. Это выглядит великолепно, насыщенно. Сразу дает ощущение богатства. Однако консоли имеют ограниченный бюджет мощностей в отношении ПК (в большой степени по части текстур), и любой разработчик игр для консолей должен в совершенстве владеть своими инструментами. Приглядевшись можно также увидеть, что клонируемые объекты в основе своей низкополигональны. Легкий налет осторожности в разработке.
В этой ставке на реал-тайм освещение с хорошими тенями можно совершенно не покрывать текстурами объекты, в том числе сжимать их до предела, там, где это уместно. Даже если один пиксель текстуры попадет на геометрию и задаст ей цвет — остальное сделает свет и тень.
Свет и тень вытянут все что угодно. К такому положению я пришел давно, и у меня нет никаких причин отказываться от этой аксиомы. Таким образом, все объекты, куда нельзя добраться (условно говоря «верхатура») — можно делать геометрией, заливать цветом, покрывать светом и тенью, размывать с помощью пост-фильтров, обильно приправляя более мелкой и тонкой геометрией (провода, несущие конструкции, веревки, вывески), плакатами и декалями. Что даст полную иллюзию богатства. Совсем не обязательно дать человеку богатство. Нужно заставить его поверить, что он богат. Если добавить внизу уровней кучу текстур на основе декалей — игрок просто ослепнет. Что и происходит.
После света и тени (за которые разработчики игр ведут борьбу еще с появления псевдо-трехмерных игр) на повестке дня стоит материал объектов.
Если присмотреться и мысленно отрезать декали от остального «ландшафта» то объем «визуальной детализации» резко упадет. Если присмотреться дважды то можно видеть, что объекты покрыты нейтральными текстурами, не имеющими явной фактуры. Основную работу в сцене делает объем (геометрия), свет и материал объектов и спецэффекты (отражения, лучи света, и т.д.). По качеству картинки игра приближается к фотографии. На правой колонне видны артефакты теневой карты. Не исключено, что релизная версия, как это часто бывает, будет намного хуже, вследствие проведенной оптимизации.
Реализм материалов предусматривает наличие хороших шейдеров – А, и фактур поверхностей – Б. Если дизайнер имитирует реальные материалы, то ему достаточно пользоваться сотней чистых текстур (равномерные фактуры высокого разрешения с возможностью тайлинга во все стороны), все остальное сделает цвет (цвет текстуры на шейдерной основе), помноженный на свет и тень в самой сцене.
В любом случае это хороший шаг в сторону фотореализма. Ведь «честные» стены и поверхности в нашей повседневной реальности именно так и выглядят. Это фактура «покрытая» освещением. Подойдите к любой стенке. При пристальном взгляде (и даже без оного) вы увидите поры материала. Словно поры вашей кожи. Рельеф, помноженный на цвет и освещение.
Быть может сейчас, происходит новый шаг в индустрии. Быть может именно здесь, дизайнеры уйдут от понятия «текстура» — перейдя к понятию материал и фактура. Но только не к тому, что есть сейчас на базе десятка шейдеров разной степени сложности и «детальных текстур» имитирующих поверхность объекта при близком рассмотрении, а к понятию Материал и Фактура – с больших, строчных букв.
Ведь понятие материала (шейдера) существует уже давно, но фактура, по сути, до сих пор не используется. В глобальном плане. Я не говорю о картах нормалей, и не говорю о «детальных текстурах». Тот же материал, ровно, как и фактура материала, представлен в движках крайне скудно. Есть водичка, есть «блестяшки», за которые, кстати, часто ругают тот или иной движок. Это означает то, что пользователь (игрок) присмотрелся к движку и на глаз определяет знакомый шейдер. Характерный шейдер. Нереальный. И речь идет не о нереальном качестве, а о скверном исполнении. В случае Unreal Engine, и в частности в ряде детишек от Id Software это — «тот самый пластмассовый блеск!».
Как и на предыдущих скриншотах хорошо видно как работают материалы, насколько сильно они продвигают картинку вперед на пути к реализму. В большей степени это касается — метала и пластиковых объектов (поверхностей с высокой степенью отражения). Тем не менее, в динамике можно будет видеть, что «работают» не только они.
Появление нового шейдера (как нового материала в гонке вооружения реализма) до сих пор подается как нечто особое. Нечто продвигающее владельца очередной видеокарты на новый уровень визуального восприятия. Но мы знаем, что по сути, это «развод». Добавляется один-два новых шейдера и начинается мощный пиар, где нам пытаются «воткнуть» их как манну небесную. Тогда как в пакетах моделирования, к примеру, все это существует уже давно.
Да, безусловно, теперь это все в реальном времени. Это шаг вперед. Но не революция, как это обычно подается. Всего лишь возросшие мощности техники, обеспечивающие возможность использовать то, что было статикой в режиме реального времени. И это, на мой взгляд, еще не повод чтобы трубить о революции. Всего лишь один тип болта или гайки. Еще одна полумера.
Хотя… мы прекрасно знаем, почему происходит так, а не иначе. Маркетинг. Железки должны продаваться. Каждый продукт должен иметь красивое и ясное лицо с голубыми глазами. Еще один новый голубой глаз, еще одна серия, еще один мешок с центнером купюр.
За вычетом кислятины последней пары абзацев, за «текстурами» на базе фактур – будущее. Уже сейчас каждая «текстура» может выглядеть и выглядит как связка следующих компонент:
• Текстура (diffuse map)
• Общий цвет или маска разных цветов (color map)
• Шейдер поверхности (type of material)
• Декаль (decal)
• Маска декалей (decal mask)
• Отраженный свет (specular map)
• Маска отраженного света (specular level map)
• Карта отражения (reflection map)
• Маска силы отражения (reflection level map)
• Карта рельефа (bump, normal or parallax)
• Маска силы рельефа (level of ***)
• Маска свечения (glow map)
Первые взрывы, возвещающие начало еще одной Последней Войны из тысяч ей подобных уже начались. Быть может, мы уже наблюдаем их. Может быть и так, что это лишь зарницы будущей грозы. И, конечно же, я просто подслеповатый паникер. Не исключаю.
Тем не менее нечто подобное уже происходило. С технологией Normal Mapping. Ведь в свое время 3D было настолько убого, что пришлось изобретать переходную технологию имитирующую крутизну геометрии, ее объем и наличие там, где ее быть не могло в силу ограниченности производственных мощностей. Вот это была революция. Это наконец-то позволило трехмерной графике догнать свою старшую сестру – графику двумерную. Чтобы там не говорили о качестве трехмерной графики в момент ее зарождения, на фоне проработанности двумерной графики она выглядела калекой. Перспективной калекой за счет грядущей аугментации (да-да, я знаю, ты об этом не просил).
Сегодня 3D дошло до таких масштабов, что его можно взвешивать не килограммами, но тоннами. Normal mapping постепенно устаревает. Объем геометрии неуклонно растет, перемещая Normal mapping в дополнительную технологию, но уже не несущую. Уже скоро карты нормалей станут просто фактурой кожи, цемента, дерева.
Если обратить внимание на дорожное покрытие то можно заметить, что оно уникально. Нет повторяющегося рисунка. Глаз воспринимает его как реальное. Этого можно достичь двумя способами. Несколькими слоями декалей, что более экономно, или Кармаковской мега-текстурой, когда уровень создается в редакторе и где художник просто работает кистью (c помощью кистей, в том числе и геометрических на манер пакетов скульптинга), а потом текстура запекается в одну, и разрезается на кратные фрагменты которые подгружаются по мере движения по уровню (очень высокий уровень эксклюзивности каждого места в игровой локации)
Тоже произойдет и с фото-текстурами. Они уже сейчас достигают немыслимых размеров. Но будущее не за фото-текстурами, а за фото-материалами (с примесью фотографий или без, не известно куда приведет нас безумный прогресс). Т.к. структурно именно материал первоисточник, а не его фотография. Не его реплика, отражающая лишь ракурс с одной позиции. Материал, где будет учитываться все. Многокомпонентная структура, части которой будут делать совершенно разные люди. Перечисленные выше компоненты материала похожи на снежный ком, который катиться с горы обрастая все новым и новым «мясом». И не далек тот момент когда количество перерастет в качество.
Уже сейчас в крупных конторах имеется дробление на узко-профильные специализации. Компании по производству игр – настоящие заводы. Но дальше, как и в случае с Фактурой – все будет только хуже. Вернее будет только Уже. Я имел в виду более Узко. С позиции детских штанишек, которые стали слишком узки для растущего ребенка.
Работник в нашей индустрии, условно, уже больше не делает башмак, штаны или майку. Он делает ткань или «шайбу» (металлические колечки, в которые вдевается шнуровка) и передает в следующий отдел тяжелую сетку доверху забитую блестящими бубликами. Там их приладят к ткани и передадут в следующий отдел.
Это прогресс. Его не остановить. Там где есть массовое производство, всегда есть фабрики и заводы. Всегда будет конвейер, который не предусматривает творчества, но предусматривает бублики в мировом масштабе. «Square Enix провела масштабную реструктуризацию своего российского филиала, уволены 14300 человек, которые занимались Q-бубликами». И смех, и грех, и фейк. За вычетом числа «болванок», числа сотрудников, конторы, региона и вымышленной ситуации – это практически реальность.
• Количество людей в игровых конторах не столь велико, но существенно
• Компании регулярно проводят реструктуризацию (как правило в свете убытков) и увольняют персонал
• Компании регулярно проводят реструктуризацию (при завершении проекта, и конкретных контрактных работ) и увольняют персонал
• Индустрия еще не изготовляет q-бублики, но уже давно идет деление на профильных сотрудников. Термин «универсал» многих пугает больше, чем радует. А зря. «На все руки мастер» — ценное свойство, чаще всего востребованное в небольших конторах не стремящихся делить людей на винты.
• Square Enix насколько мне известно не имеет представительств в России. Однако CryTek тоже начинался не здесь, но его офисы теперь раскиданы по всему миру, в том числе в Киеве, и Будапеште. До нас, как говориться рукой подать… правда незачем.
Еще несколько лет назад у меня были знакомые, вся деятельность которых сводилась к прописыванию текста в теле шейдеров. Старики-Шейдеровики. Теперь те же знакомые тягают ползунки в редакторах материалов. Они больше не моделируют, не рисуют концепт-арт, не предлагают идей, не проводят экспериментов. Они лишь маленькие элементы в гигантской и рычащей машине игровой индустрии. Их повседневная деятельность — рутинные операции узкого профиля.
Обойдусь без лозунгов – «но инди всех спасут!». Никто никого не спасет, и никогда не спасал. Рядом с гигантским заводом всегда может быть маленькая лавочка Чена, где вы привыкли покупать «его лапшу» и «его игрушки». Это ваш любимый продавец с его маленьким магазинчиком, а вы один из тысячи его любимых клиентов.
Вы всегда будете приходить к нему потому, что вам любо старое, либо — любо что-то определенного сорта (чего уже, увы… не выпускают).
Со временем вы состаритесь тоже. И когда-нибудь придет момент, когда Чен умрет. Вы придете к этой лавке, и увидите, что какая-нибудь грудастая блондинка меняет витринные вывески Чена на рекламу продукта увеличивающего рост волос на сосках (а продвинутый Hair-Turbo-Pluss: Somewhere Edition и вовсе позволит делать это где угодно).
Эдакий пучок волос, нужного вам цвета, который очень похож на акварельную кисточку. Его можно растить не только на сосках, но и вообще где хочешь. «Заяц с пупочкой» больше не будет мультфильмом, но будет брендом новой передовой технологии выращивания волос. «Хочешь пупочку где угодно?» или «Этот сгусток подчеркнет вашу индивидуальность там, где вы даже боялись ее взрастить» — станет слоганом новинки.
Недоуменно хлопая выцветшими глазами — вы обведете взглядом улицы и поймете, что вы безнадежно стары, а вокруг вырос новый мир. Так было. Так есть. И так будет.
Приложения
Текстура – (вики-формулировка) растровое изображение, которое наносится на геометрию в соответствии с UVW разверткой (текстурные координаты). Как правило кратно степени двойки. (8х8, 16х16, 32х32, 64х64, и т.д.) реже но также используются текстуры в виде прямоугольника (16х256, 512х128). Текстура может быть картой любого типа (diffuse, specular, colored specular, normal, bump & etc.)
Детальная текстура (detail texture) – Текстура имитирующая микро-рельеф (повторяемый тайл, к примеру, «пор цемента или бетона»), в отличие от карт нормалей и карт высот такой рельеф не чувствителен к динамическому освещению. Тем не менее не исключается возможность написания шейдера где этот микрорельеф будет сделан на основе карт нормалей.
Фактура (вики-определение) – тоже самое что на вашей руке. Персональный микро-рельеф каждого объекта делающий его неповторимым. Можно сказать что объект неповторимым делают его черты, но ваш отпечаток пальца это микро-рельеф, ваша персональная фактура, ваш ID и ваш пропуск в мир где вы, за редким исключением, действительно уникальны. Со всеми вытекающими.
Если продолжать аналогию с вашей рукой, то поры и другой микро-рельеф (бородавки, впадины, дефекты и шрамы) это фактура. Цвет кожи, пигментные пятна и родинки — это текстура. Часть микро-рельефа, чтобы сэкономить текстурное пространство и покрыть вас тайлом кожи, либо «процедурной кожей», плюс родинки и пигментные пятна могут быть нанесены декалями.
Декаль (Decal) — Изначально декали использовали для отрисовки дырок от пуль, пятен крови или грязи (сажи) от взрывов. Это был спрайт дырки в бетоне или металле (либо любого другого объекта) с альфа-каналом, который наносился поверх геометрии уровня (или объекта). Впоследствии декаль превратилась в элемент декорирования. С ее помощью начали наносить мох, граффити, грязевые потеки, плакаты и т.д.
В Half-Life 2 декали стали наносить в режиме наложения cходным с Overlay mode в Photoshop, что позволило «пережигать» поверхность снизу, приводя к хорошему визуальному эффекту дополнительной подсветки. В сочетании с фирменным светом HL2 до сих пор служит примером специалистам по свету. После выхода Dishonored стало ясно что «свет как в HL2» не заслуга движка, не концепция, а человек. Виктор Антонов. И все это прежде всего его заслуга как арт-директора, художника и главного идеолога стиля этой известной игры.
Еще позже появился термин «геометрическая декаль» где использовался принцип декали, но вместо нее могла оказаться целая группа объектов (мусор, группы мелких объектов).
Шейдер — (вики-формулировка) программа определяющая дополнительные параметры объекта на сцене или текстуры. Отвечает за поглощение и рассеяние света, наложение текстуры, отражение и преломление, затемнение, свечение, искажение текстурной информации в соответствии с описанным программистом (или стариком-шейдеровиком) алгоритмом.
Пост-фильтр. Фильтр на шейдерной основе, который может влиять либо на весь экран в целом, либо на отдельные его зоны отчеркнутые по «половому признаку» (усиление наиболее светлых участков экрана, размытие светлых участков экрана, искажение определенных цветов и т.д)
Движок Gamebryo. Разработчики как один, кто очень гласно, кто более тихо, но… практически единогласно считают Gamebryo забагованным и не очень удобным инструментарием. Из первых же приходящих в голову проблем можно выделить следующие:
• Неудобный скриптовый язык
• Отсутствие теней
• Проблемы с анимацией
• Глючно работающий физический движок
Но это не отрицает того, что на этом движке был сделан ряд знаковых игр. Вообще, хочу еще раз отметить (делаю это в каждой публикации). Важен не инструмент, а рука его держащая. И все. Точка. Все споры должны заканчиваться на этом положении. Потому, что хорошая рука и на плохом инструментарии сделает конфетку (что очень часто и происходит), а плохой руке разного рода придатки мешают. Ну… и произрастание. Еще один непреложный факт – руки должны произрастать из правильных мест.
Заметки задним числом
Первая: Я не поклонник консолей, но отдаю себе отчет в их значимости и не отрицаю наличия множества хороших проектов на них. Не приветствую «святых войн» между ПК’шниками и «консольщиками». Одинаково понимаю и тех и других. Исповедую принцип «живи и дай жить другим».
Вторая: Терминология в разных конторах разнится, поэтому я не настаиваю на истинности и единственно верности формулировок. По возможности привожу как свою трактовку, так и «вики». Свою как хулигански-общеобразовательную, а вики — как официальную.
Третья: Картинка потрясает меня точно также как и многих других игроков (за вычетом девелоперских придурей). И если кинект зародил мысли о покупке X-BoX или PS (как средство избежать гантелей в спортзале), то данная картинка похоже переломит спину верблюду. Я уже готов идти покупать ее – просто ради «побродить по миру».
Четвертая: Мне известно, что в играх на PlayStation разработчики очень «заморачиваются» с персонажами и что они выглядят зачастую лучше, чем во многих ПК играх, проявляя чудеса ловкости и находчивости обходя заложенные ограничения. Но также мне известно, что в силу упомянутых ограничений интерьеры в сравнении с ПК версиями страдают по части качества. Это факт. Технический. Все остальное зависит от мастерства разработчиков, а не от моей, якобы предвзятой позиции (см. первую заметку).
Пятая: Ничего не имею против блондинок.
Шестая: Скриншоты взяты с сайта Riot Pixels
Седьмая: Один аниматор (Олег Шедров) увидев мои UVW развертки и текстуры сказал, что я мог бы зарабатывать продажей футболок. И действительно часть текстур напоминала какой-то безумный сокобан, но тем не менее — забавный. Особенно если это была развертка скелета-мага с горящими глазами. Череп я ради шутки водружал в центр текстуры обращивая его костями, по возможности симметрично.
Сверх задняя заметка
Тут мне, по горячим следам, написал Денис Удалов (Denis Udalov) и увы, черт подери, я увидел эту почту существенно позже чем надо было. Так вот Денис любезно предложил мне взглянуть на сцену, которая была создана без использования диффузных текстур Андреем Максимовым. Там используются процедурные текстуры, карты нормалей для рельефа, карты высот и т.д. Как раз то о чем я говорил в моей маленькой публикации. Но лучше… просто взглянуть. (линк на предоставленный материал)
Сэмпл сцены:
Это лишь часть подхода который может быть использован в будущем. При наличии мощностей все скульптуры могли бы быть сделаны не с помощью карт нормалей, но геометрией. И так далее, и тому подобное. Согласитесь, что взять и запихнуть в движок скульптуру назначив ей процедурный материал на порядки легче, чем делать хай-поли модель, лоу-поли для нее, развертку для лоу-поли (или мид-поли) считать карту нормалей, делать дифузные текстуры, карты спекуляров и прочее. Разве нет?
Уверен, что в будущем прогресс дойдет и до этого. Правда это «обездушит» (оставит без души) многие элементы дизайне где только рука художника может вдохнуть в элемент жизнь, придав ему свой особенный шарм и стиль.