playcanvas
Version:
PlayCanvas WebGL game engine
23 lines (21 loc) • 570 B
JavaScript
var BitPacking = {
set (storage, value, shift, mask) {
if (mask === void 0) mask = 1;
var data = storage & ~(mask << shift);
return data | value << shift;
},
get (storage, shift, mask) {
if (mask === void 0) mask = 1;
return storage >> shift & mask;
},
all (storage, shift, mask) {
if (mask === void 0) mask = 1;
var shifted = mask << shift;
return (storage & shifted) === shifted;
},
any (storage, shift, mask) {
if (mask === void 0) mask = 1;
return (storage & mask << shift) !== 0;
}
};
export { BitPacking };