Причина, по которой иногда значения RGB представлены в виде значений с плавающей точкой, а не от 0 до 255, заключается в том, что от 0 до 255 предполагает, что вы используете 8 битов для представления каждого цветового компонента, и, следовательно, для каждого цвета в буферах кадров необходимо использовать 24 бита. Это может быть не так, если вы используете дисплеи, которые поддерживают только 256 цветов или более 16 миллионов и т. Д.
В теории тогда может быть бесконечное количество оттенков красного, зеленого или синего. Количество бит, которое вы используете для их представления, зависит от того, насколько точно вам нужно представлять цвет, и сколько памяти у вас на видеокартах для представления изображений и т. Д.
Для многих случаев от 0 до 255 хорошо. Но есть другой мир, где это не очень хорошо, и для этих устройств / требований точного рендеринга числа с плавающей запятой обеспечивают столь необходимую альтернативу.