Цветокоррекция
Цветокоррекция — это принцип изменения цветового баланса изображения для достижения желаемого эффекта. В первую очередь она используется для придания карте определённой цветовой атмосферы и передачи важной информации.
- Синими и серыми тонами достигается холодный эффект (зима, дождь, фильм Особое мнение).
- Более яркие, насыщенные цвета, как красный или желтый будут иметь противоположный эффект (лето, солнце, фильм Герой).
- С помощью коррекции можно имитировать эффекты иных сред (фильм Город грехов).
Цветокорреция в Source имеет полезную особенность изменяться прямо в процессе игры. Она может отражать состояние мира или игрока, может быть прикреплена к определённой местности или объекту.
Использование
Source содержит профили цветокоррекции в просмотровой таблице они представляют из себя бинарные файлы размером 96Kb с расширением .raw
. Для их создания используется набор инструментов в игре, они будут добавлены на карту вместе с color_correction (точечный) и color_correction_volume (брашевый).Коррекция проста и не занимает много ресурсов.
Внимание: Просмотровая таблица не хранит фильтры используемые для её создания, в ней содержится только результат настройки.
Использование коррекции:
- Добавте на карту хотябы один color_correction или color_correction_volume энтити цветокоррекции.
- Убедитесь что у вас включена Настройки Видео > Дополнительно > Коррекция гаммы (mat_colorcorrection 1).
- Если вы работаете в многопользовательском режиме установите квар sv_cheats 1.
- Введите в консоль
colorcorrectionui
.
В появившемя окне вы можете:
- С помощью кнопок внизу создавать и управлять положением слоёв.
- Включать или выключать их по нажатию на круглую иконку.
- Контролировать степень интенсивности наложения слоёв, перемещая ползунов Blend.
- Копировать слои Alt + Double-click.
Также существует окно 'Lookup View' с сеткой пикселей для предпросмотра эффекта.
Фильтры
Curves работает так же как кривая в любом графическом редакторе. Горизонтальная ось представляет значения цвета в исходном изображении, вертикальная ось — в финальном изображении.
Levels опять же, этот фильтр аналогичен инструменту "Уровни" в редакторе изображений. Оба слайдера контролируют цветовую гамму изображения: верхний слайдер устанавливает диапазон значений с помощью двух ползунков от черного (слева) до белого (справа), второй слайдер работает с данным диапазоном в своем масштабе — это позволяет более точно настроить цветовой баланс.
Selected HSV это самый сложный фильтр. В миниатюре реального времени текущей сцены выделенные цвета подсвечиваются красным. Это можно сделать выбрав цвет в миниатюре или нажав кнопку Select прямо из сцены (Esc выключить). Удерживайте Ctrl что бы выделить несколько цветов.
Tolerance (допуск) и Fuzziness (размытость) позволяют более точно настроить выделение; Hue (тон), Saturation (насыщенность) и Value (яркость) — эффекты которые могут быть применены.
Lookup позволяет загружать готовые профили. Balance настраивает яркость каналов.
Формат .RAW
Этот файл представляет из себя трехмерную матрицу размерности 32x32x32 хранящая значения RGB в которой одна запись равна 3 байт, первый байт соответствует значению красного. Значения RGB служат координатами выходного значения RGB. Каждое последующее значение R байта увеличивается на 4 (256 значений цвета, 32 позиции в матрице дают шаг 4). После достижения R 256, значение сбрасывается к 0, а байт G увеличивается на 4. То же самое происходит и с зеленым при достижении 256 значение сбрасывается, байт B увеличивается на 4. Индекс (EntryIndex) записи может быть вычислен там где R, G и B принимают целочисленные значения от 0 до 256.
//используется целочисленное деление, дробные части отбрасываются
int EntryIndex = (R / 4) + ((G / 4) + (B / 4) * 32) * 32
При использовани в игре значения из 32x32x32 интерполируются в 256x256x256 цветовое пространство. Статья взята с ValveDev.