# Палитры: прозрачность, тени и окраска цивилизации

Источник: [OpenCiv3, PCXToGodot.cs](https://github.com/C7-Game/OpenCiv3/blob/c1370e2f63a6042a3c4206f0043543d7da0d5cc5/C7/Textures/PCXToGodot.cs). Прочитан целиком 26.10.2026. Далее — поведение этой реализации.

## Несколько способов преобразования

По умолчанию прозрачными считаются индексы 254 и 255; набор можно переопределять. Отдельный режим теней пересчитывает альфа-канал индексов 240–255. Следовательно, одно универсальное правило «убрать розовый цвет» недостаточно даже для данного конвертера.

Для интерфейса поддерживается пара цветного PCX и PCX-маски: пример в комментарии — `menuButtons.pcx` и `menuButtonsAlpha.pcx`. Для маски используется палитровая яркость. Режим чистой альфы, применяемый также к туману войны, использует обратную яркость и может исключать служебные индексы.

Кадры юнитов раскладываются на базовый и окрашиваемый слои. В данной реализации окрашиваемыми считаются индексы меньше 16 и чётные индексы меньше 64; обработка теней отдельная. Для сохранения оттенков одежды читается палитра `Art/Units/Palettes/ntp00.pcx`; без неё предусмотрен упрощённый белый слой.

## Что следует сохранить у нас

Режим декодирования должен задаваться назначением ресурса. Индекс пикселя и RGB — разные данные: одинаковый видимый цвет может иметь разный смысл. Нужны сравнительные эталоны для меню, тумана, городской графики и юнитов. Указанные диапазоны не объявляются универсальными для всех файлов Atlants.
