Мне интересно, если я (и все в Интернете и в компаниях, в которых я работал) неправильно преобразовывал цвета. Очевидно, что когда я хочу преобразовать цвет из диапазона 0–255 в диапазон 0–1, я просто делю значения на 255, верно? А когда я хочу пойти другим путем, я умножаю.
Но так ли это? Представьте, что мои цвета являются результатом какой-то математики (простой, как билинейная интерполяция, или настолько сложной, насколько вы могли бы пожелать (или осмелиться). Тогда это может быть не лучший способ. С определенной точки зрения, при преобразовании из числа с плавающей запятой 0–1 до целого числа 0–255, я хочу разбить интервал на 256 фрагментов одного размера, а затем выполнить «поиск». Если я просто умножу на 255 (значения rgb в масштабе от 0 до 1) и раунд, "куски" или "бункеры" для 0 и 255 будет в два раза меньше остальных, т. е. вероятностное распределение интенсивности цвета будет неверным.
Я не думаю, что это часто проблема на практике. Например. в high-end VFX всегда используются цвета с плавающей запятой (0-1 плюс суперчерные/супербелые) и преобразуются в 0-255 только в качестве самого последнего шага. Хотя меня это все еще беспокоит. Какой правильный ответ?