Маска через ограниченный диапазон значений?
Добавлено: 04 дек 2014, 18:11
Всем доброго времени суток! Как выдрать из канала только необходимый диапазон значений? К примеру: Есть монохромная одно канальная текстура(канал от ргб/ргба текстуры). На ней нарисовано несколько пятен(одним цветом без градиента): Белое - значение 1.0(по юнькиным меркам, а по фотошоповским 255); Серо-белое 0.75; серое 0.5 и тд до черного(0). Как получить на выход только определенный диапазон цвета(например только 0.75)?
Пытался сделать так:
Пытался сделать так:
Синтаксис:
Используется csharp
// вырезка из фрагментного шейдера
// nm- основная карата нормалей
// nmAd- дополнительная карта нормалей
// addh- нерабочий алгоритм вырезания цвета из альфаканала карты- m
fixed addh = clamp(m.a, m.a - 0.24, m.a - 0.26) * _height;
fixed3 addH = fixed3(nmAd.x * addh, nmAd.y * addh, nmAd.z);
fixed3 normals = nm + addH;
// nm- основная карата нормалей
// nmAd- дополнительная карта нормалей
// addh- нерабочий алгоритм вырезания цвета из альфаканала карты- m
fixed addh = clamp(m.a, m.a - 0.24, m.a - 0.26) * _height;
fixed3 addH = fixed3(nmAd.x * addh, nmAd.y * addh, nmAd.z);
fixed3 normals = nm + addH;