Получить точность наполовину более 1/256 - PullRequest
0 голосов
/ 29 апреля 2018

Я делаю шейдер изображения Unity, и у меня следующая проблема:

Я вычисляю значения цвета до половины3 с (1 * половина для каждого канала), а на некоторых устройствах с глубоким градиентом канала 256 (8 бит) недостаточно плавный.

One channel of a gradient:

Пожалуйста, проверьте мою картину проблемы.

Чтобы сделать это гладким, я хочу получить точность канала более 1/256 до другой половины значения между 0 и 1. (После этого я хочу вычислить случайное значение шума (0 или 1), зависящее от дополнительной точности. ) * +1010 *

Я пробовал это:

float greenPrecision = (backColor.g * 256) % 1;

Но это не достаточно точно. (Границы изменения цвета не подходят идеально.)

greenPrecision value looks like this.

...