Jak spakować jedną 32-bitową int do 4, 8-bitowych int w glsl / webgl?

Chcę zrównoważyć skomplikowaną matematykę, a webgl wygląda jak doskonały sposób. Problem polega na tym, że z tekstur można odczytać tylko 8-bitowe liczby całkowite. Idealnie chciałbym uzyskać 32-bitowe liczby z tekstury. Miałem pomysł użycia 4 kanałów kolorów, aby uzyskać 32 bity na piksel, zamiast 4 razy 8 bitów.

Moim problemem jest to, że glsl nie ma operatora „%” ani żadnego operatora bitowego!

TLDR: Jak przekonwertować liczbę 32-bitową na 4 8-bitową za pomocą operatorów w glsl.

Dodatkowe informacje na temat techniki (przy użyciu operatorów bitowych):

Jak zapisać 64-bitową liczbę całkowitą w dwóch 32-bitowych liczbach całkowitych i przekonwertować ponownie

questionAnswers(3)

yourAnswerToTheQuestion