Fix bitfieldInsert according to GLSL spec

"bitfieldInsert inserts the bits least significant bits of insert into base at offset offset..."
This commit is contained in:
Florian Penzkofer
2018-10-04 17:23:44 -05:00
parent 77ce9b5b29
commit d0ae3f966e
2 changed files with 4 additions and 4 deletions

View File

@@ -269,7 +269,7 @@ namespace detail
GLM_STATIC_ASSERT(std::numeric_limits<T>::is_integer, "'bitfieldInsert' only accept integer values");
T const Mask = static_cast<T>(detail::mask(Bits) << Offset);
return (Base & ~Mask) | (Insert & Mask);
return (Base & ~Mask) | ((Insert << static_cast<T>(Offset)) & Mask);
}
// bitfieldReverse