Отделка — это трафарет в градациях серого и замена палитры, а не цветная текстура

Узор определяет форму, а материал — лишь восемь цветов, в которые он окрашен. Вот почему любой материал подходит к любому узору, а отделка никогда не меняет силуэт вашей брони.
Отделка брони кажется 198 отдельными текстурами. Но это не так. В игре используется одно изображение в градациях серого на узор для каждого слоя брони, и оно перекрашивается на лету с помощью 8-пиксельной палитры соответствующего материала. Понимание этого разделения отвечает практически на любые вопросы об отделке брони.
Два файла — две задачи
Для готовой отделки нужны ровно две вещи, и они никогда не пересекаются:
| Элемент | Что это | За что отвечает |
|---|---|---|
| Узор | PNG в градациях серого, по одному на слой брони | Форма и расположение |
| Материал | 8-пиксельная полоса палитры | Только цвет |
Текстура узора использует восемь оттенков серого. Каждый оттенок — это индекс. Во время рендеринга игра считывает индекс и ищет цвет на этой позиции в палитре материала. Уровень серого 0 становится цветом 0 из палитры, уровень серого 7 становится цветом 7.
Почему работает любая комбинация
Поскольку узор никогда не хранит цвет, конфликтов не возникает. Любой из 18 узоров сочетается с любым из 11 материалов, и игре не нужна отдельная текстура для каждой пары — ей нужно 18 узоров плюс 11 палитр, а не 198 изображений. Добавьте девятнадцатый узор, и он сразу же будет работать со всеми одиннадцатью материалами, без необходимости рисовать новые текстуры.
Именно поэтому отделка никогда не меняет форму элемента брони. Трафарет отрисовывается в границах самой текстуры брони; здесь нет геометрии, дополнительной модели или толщины. Незеритовый нагрудник с отделкой «Тишина» занимает ровно те же пиксели, что и без неё.
Правило тёмной брони
Одной палитры недостаточно. Золотая отделка на железной броне и та же золотая отделка на золотой броне слилась бы с металлом основы, поэтому каждый материал содержит вторую палитру, которая используется, когда материал отделки совпадает с материалом брони. Это те же восемь индексов, указывающие на более тёмный набор цветов, благодаря чему отделка золотом по золоту выглядит как гравированная линия, а не наложенная полоса.
Это прямая подстановка по таблице, а не наложение цветов. Здесь нет прозрачности, умножения или расчёта оттенков между ними — именно поэтому отделка остаётся чёткой при любом разрешении, а набор ресурсов может заменить палитру восемью произвольными цветами и получить аккуратный результат.
Что это значит при создании образа
- Сначала оцените сам узор с одним материалом. Форма — главное решение; цвет — это второй, независимый шаг. Перебирая всё одновременно, игроки и застревают в бесконечной прокрутке.
- Проверяйте на той броне, которую действительно будете носить. Из-за правила тёмной брони сочетание, которое понравилось на алмазной броне, на незерите может выглядеть совершенно иначе.
- Оценивайте все четыре элемента вместе. Узоры распределены по слоям; элемент, доминирующий на нагруднике, на ботинках может оказаться простой полоской.
3D-просмотрщик создан именно для этого: он применяет настоящую замену палитры на реальной модели игрока, так что вы видите в точности то, как это рендерит игра, а не приближённый плоский предпросмотр.