|
|
@@ -418,14 +418,6 @@ uint BitsBracket(uint bits, uint pos) {
|
|
|
}
|
|
|
|
|
|
uint BitsOp(uint bits, uint start, uint end) {
|
|
|
- if (start == end) {
|
|
|
- return BitsBracket(bits, start);
|
|
|
- } else if (start > end) {
|
|
|
- uint t = start;
|
|
|
- start = end;
|
|
|
- end = t;
|
|
|
- }
|
|
|
-
|
|
|
uint mask = (1 << (end - start + 1)) - 1;
|
|
|
return ((bits >> start) & mask);
|
|
|
}
|
|
|
@@ -665,10 +657,8 @@ ivec2 BitTransferSigned(int a, int b) {
|
|
|
}
|
|
|
|
|
|
uvec4 ClampByte(ivec4 color) {
|
|
|
- for (uint i = 0; i < 4; ++i) {
|
|
|
- color[i] = (color[i] < 0) ? 0 : ((color[i] > 255) ? 255 : color[i]);
|
|
|
- }
|
|
|
- return uvec4(color);
|
|
|
+ const uvec4 clamped = uvec4(clamp(color, 0, 255));
|
|
|
+ return clamped;
|
|
|
}
|
|
|
|
|
|
ivec4 BlueContract(int a, int r, int g, int b) {
|