Главная/Документация/Модификации/Форматы цветов

Форматы цветов

Форматы цветов

Опасность

Хотя обычно используется цветовое пространство sRGB, цветовые пространства DayZ и конкретных приложений могут отличаться. Поэтому цвет, выбранный в графическом редакторе или другом приложении, может отображаться в DayZ немного иначе.

RGB / RGBA

Информация

Краткое описание:

Цвет может быть указан напрямую через значения его цветовых каналов в формате [R,G,B] или [R,G,B,A].

Каждый канал задаётся целым числом:

  • R — красный;
  • G — зелёный;
  • B — синий;
  • A — прозрачность (альфа-канал).

Значение каждого канала находится в диапазоне от 0 до 255.

Например:

[255,0,0]

Красный цвет.

[0,255,0]

Зелёный цвет.

[0,0,255]

Синий цвет.

Также можно указать альфа-канал:

[255,0,0,128]

В данном случае первые три значения отвечают за цвет, а четвёртое — за прозрачность.

Внимание

Не изменяйте порядок каналов. Поддерживаются именно форматы [R,G,B] и [R,G,B,A].

Пример произвольного цвета:

[27,27,106]

или с указанием альфа-канала:

[27,27,106,117]

Использование RGB/RGBA-представления позволяет задавать цвет напрямую, без предварительного преобразования в шестнадцатеричный или целочисленный формат.


Целочисленное представление

Информация

Краткое описание:

Данный формат является 32-битным целочисленным представлением цвета в формате ARGB со знаком. Каждый канал занимает 1 байт (8 бит).

Данный формат используется для представления цвета в виде одного числа, что позволяет сделать его ввод компактным.

Чтобы получить цвет в этом формате, необходимо взять шестнадцатеричное представление ARGB-цвета. Для этого можно воспользоваться любым инструментом для выбора цветов, например https://csscolor.ru/.

Цвет в таком представлении выглядит следующим образом:

751b1b6a

В формате ARGB каналы располагаются в следующем порядке:

AA RR GG BB

где:

  • AA — альфа-канал;
  • RR — красный;
  • GG — зелёный;
  • BB — синий.

Внимание

Существует также формат RGBA, который внешне выглядит аналогично, однако порядок каналов в нём отличается. Важно не перепутать эти форматы.

Внимание

Цвет в формате ARGB в шестнадцатеричном представлении состоит из 8 символов.

Если цвет состоит из 6 символов, скорее всего, перед вами RGB. Чтобы преобразовать его в ARGB без прозрачности, добавьте ff в начало цвета.

Например:

1b1b6a → ff1b1b6a

Далее необходимо преобразовать полученное 32-битное шестнадцатеричное значение в десятичное число со знаком.

Для этого можно воспользоваться конвертером https://www.rapidtables.com/convert/number/hex-to-decimal.html.

Внимание

Необходимо получить именно 32-битное значение со знаком. Если старший бит установлен, итоговое десятичное число будет отрицательным.

Вводим шестнадцатеричное значение в первое поле и берём результат из третьего поля.

Полученное десятичное число и является цветом в целочисленном представлении.