- PVSM.RU - https://www.pvsm.ru -
Эта статья является переводом сразу двух статей от Simon Schreibt. Обе статьи на одну тему и являются взаимодополняющими. Не пугайтесь того, что в начале все набрано большими буквами, это стилистика автора и я постарался максимально её сохранить.
Благодарю за прочтение.
Шучу, разумеется. Конечно же у меня есть что рассказать на эту тему. В нашей компании мы время от времени смотрим на арт из Homeworld [1] и преклоняемся мастерству его создателей. Теперь, после того, как мы обсудили как здорово выглядит фон и как интересен этот набросочный стиль (скетч), остаётся что-то… некоторые детали кажутся… специально для нас.
Я упомянул, что это выглядит немного как… градиентное раскрашивание по вершинам. Но они же не будут рисовать фон геометрией, верно? Я имею ввиду… что в этом случае это должна быть довольно сильно тесселированная сфера. Обсуждения были закончены, но я не был удовлетворен результатом и хотел, хотябы, увидеть текстуры. Поэтому я использовал некоторые утилиты [2] для извлечения из Homeworld 2 Demo данных, однако текстур там не было. Только некоторое количество .HOD файлов. Погуглив я нашел тему о том, как генерировать эти .HOD файлы из .TGA. Она гласила:
“…сканирует каждый пиксель изображения и затем на основе контраста
решает добавить или нет новую вершину и цвет…”
Может ли это действительно быть раскраской вершин? Благо можно посмотреть на .HOD файл с помощью CFHodEdit. Другая утилита может включить принудительный режим отображения сетки. Смотрите, что получается вытащить на свет:
И здесь вы можете заметить как это влияет на геометрию небесной сферы в игре. Видите как мало разрешение в неконтрастных областях? И какая гладкая сфера в местах, где имеется много деталей?
Никогда даже не думал, что таким образом можно получить такие хорошие результаты. Ой, и не забудьте, что такой подход решает две большие проблемы.
#1 Нет никаких проблем с артефактами от сжатия текстур DDS форматом.
#2 Более важно со стороны композиции: из-за того, что нельзя получить сильную детализацию (в обучении сказано, что исходная TGA не должна содержать множество четких деталей), фон остается где он и должен быть:
Очень часто я вижу игры, где фон содержит слишком много шума и деталей, которые правда очень трудно отличить от среднего и ближнего плана.
Последний раз я видел идеальную комбинацию технологии и композиции в Diablo 3. Я говорю о моей статье «Деревья в Diablo 3» [3].
Некоторые спрашивают в теме на Polycount [4] как эти сферы в Homeworld были сделаны. Давайте сделаем её вместе! Ну, мы-то будем использовать для этого утилиты для модов. И я не имею ни малейшего представления о том насколько это близко к оригинальному подходу Relic [5] в данном вопросе.
Download
Скачайте эту коллекцию утилит [2] для модов и используйте инструмент “HW2BGBuilder”. Здесь также есть “HW2 – Spookysoft – HOD Tool 1.5.0.1″ но для меня он не особо подошел.
HOD Viewer
Для просмотра .HOD файлов нужно использовать “CFHodEdit 3.1.5″ (откройте ваш .HOD файл, затем в нижней части программы найдите закладку “Miscellaneous” и нажмите “HOD Preview”).
Поехали!
Хорошо, сначала мы создадим тестовую .TGA чтобы увидеть чего нам ожидать. Думаю это должно неплохо сработать (1024×512, 24bit):
Создадим ярлык для HW2BGBuilder.exe и перетащим на него нашу текстуру. Дадим утилите рассчитать необходимое и потом нажмем “Space” (игра слов от автора. Подразумевается и кнопка пробел и космос одновременно. Прим. пер.) для старта процесса. Почувствуем себя хакером Матрицы пока числа будут бежать вниз по командной строке.
И вот как это выглядит в “CFHodEdit”. Вы можете очень четко видеть UV развертку сферы. Так, теперь мы знаем три вещи:
Чуть подробнее обо всем этом в паре предложений ниже.
Касательно последнего пункта: в Homeworld они рисуют только гладкие градиенты на полюсах сферы и избегают любой видимой деформации. Вершины также редки в этих областях, что приводит к гладким градиентам цветов вершин.
Посмотрите, как распределена геометрия вокруг полюса:
Я считаю это просто круто. Из-за ограничения на использования детализации только в горизонтальных областях вы достигаете еще и того (надеюсь), что игрок никогда не потеряет ориентацию в пространстве.
Теперь давайте перейдем к “реальной” текстуре. Но до этого давайте уменьшим уровень (яркости прим. пер.) с 255 до 128 (Photoshop > Image > Adjustments > Levels).
Уровень яркости: 255
Уровень яркости: 128
После генерации вы найдете “_ref.TGA” текстуру, которая представляет собой карту границ, используемую программой для создания сферы. Мне кажется она выглядит действительно интересно. Я думаю что квадраты это части, которые программа считает одну за другой.
Карта граней:
И вот как это выглядит в программе просмотра В некоторых местах, особенно на вершине большой горы можно увидеть “подтекание” цвета. Я не особо игрался с настройками “HW2BGBuilder”. Возможно здесь есть место для маневра и можно улучшить результат, но в целом результат очень хороший.
Надо заметить, разрешение исходной текстуры заметно ударило по количеству полигонов в результате.
Последние мысли будут немного техническими. Поправьте меня если я объясняю неверно. В том что я сказал “пока” числам и пошел путем графики есть смысл.
Это значит, что если исходная текстура содержит слишком много контраста и деталей повсюду, то данных будет больше чем при использовании текстуры. Но фоны в Homeworld состоят большей частью из цветов и градиентов, а также небольшого количества деталей. Так что для этих целей оптимизация клёвая.
Пока я писал эту статью, здесь были дискуссии о том, как добиться уменьшения количества полигонов в zBrush. Computron [6]разместил свои результаты тут [7]. Ой и poopinmymouth [8]дал отличную ссылку [9] где описывается утилита создания сфер со всеми её параметрами.
И вот теперь уже действительно благодарю за прочтение.
Автор: Darthman
Источник [10]
Сайт-источник PVSM.RU: https://www.pvsm.ru
Путь до страницы источника: https://www.pvsm.ru/igra/82715
Ссылки в тексте:
[1] Homeworld: http://en.wikipedia.org/wiki/Homeworld
[2] утилиты: http://www.moddb.com/games/homeworld-2/downloads/homeworld-universe-mod-tools
[3] «Деревья в Diablo 3»: http://habrahabr.ru/post/250261/
[4] теме на Polycount: http://www.polycount.com/forum/showthread.php?t=115889&page=7
[5] Relic: http://www.relic.com/
[6] Computron : http://www.polycount.com/forum/member.php?u=44049
[7] тут: http://www.polycount.com/forum/showpost.php?p=1798325&postcount=163
[8] poopinmymouth : http://www.polycount.com/forum/member.php?u=13622
[9] отличную ссылку: http://forums.relicnews.com/showthread.php?148734-Homeworld2-Background-Builder-v1-3
[10] Источник: http://habrahabr.ru/post/250467/
Нажмите здесь для печати.