Опитвам се да направя следното в GLSL 2 es:
Като се има предвид брой (например 4) нормализирани var4
променливи (RGBA), намалете тяхната битова дълбочина и опаковайте резултатите в един 0-1 фиксиран var4
. Това ще бъде съхранено като 8-битова (на канал) текстура и по-късно разопаковано. Осъзнавам, че това ще доведе до загуба на качество, но това е приемливо.
Така че в този пример:
RGBA 8 бита ->
намален до RGBA 2 бита ->
пакетиран с 3 други RGBA 2 бита var4s
->
запазен като единична 8-битова RGBA текстура ->
разопакован обратно в 4 x RGBA 2 битови променливи ->
намалени до версия с намалено качество на оригинала.
Осъзнавам, че не мога да правя преместване на битове в GLSL, така че ще трябва да направя някаква колекция от умножения, чиято магическа комбинация досега ми е убягвала! Други са говорили за опаковане на плувки в vec4s
, но моят проблем е малко по-различен.
Благодаря!
vec4
, когато пишетеvar4
? - person derhass   schedule 15.05.2015