|
|
@@ -37,7 +37,7 @@ namespace glm{
|
|
|
namespace detail
|
|
|
{
|
|
|
template <typename T, precision P>
|
|
|
- struct tvec4
|
|
|
+ struct __declspec(align(16)) tvec4
|
|
|
{
|
|
|
enum ctor{_null};
|
|
|
|
|
|
@@ -54,22 +54,21 @@ namespace detail
|
|
|
# if(GLM_COMPONENT == GLM_COMPONENT_CXXMS)
|
|
|
union
|
|
|
{
|
|
|
-# if(defined(GLM_SWIZZLE))
|
|
|
- _GLM_SWIZZLE4_2_MEMBERS(T, P, tvec2, x, y, z, w)
|
|
|
- _GLM_SWIZZLE4_2_MEMBERS(T, P, tvec2, r, g, b, a)
|
|
|
- _GLM_SWIZZLE4_2_MEMBERS(T, P, tvec2, s, t, p, q)
|
|
|
- _GLM_SWIZZLE4_3_MEMBERS(T, P, tvec3, x, y, z, w)
|
|
|
- _GLM_SWIZZLE4_3_MEMBERS(T, P, tvec3, r, g, b, a)
|
|
|
- _GLM_SWIZZLE4_3_MEMBERS(T, P, tvec3, s, t, p, q)
|
|
|
- _GLM_SWIZZLE4_4_MEMBERS(T, P, tvec4, x, y, z, w)
|
|
|
- _GLM_SWIZZLE4_4_MEMBERS(T, P, tvec4, r, g, b, a)
|
|
|
- _GLM_SWIZZLE4_4_MEMBERS(T, P, tvec4, s, t, p, q)
|
|
|
-# endif//(defined(GLM_SWIZZLE))
|
|
|
+# if(defined(GLM_SWIZZLE))
|
|
|
+ _GLM_SWIZZLE4_2_MEMBERS(T, P, tvec2, x, y, z, w)
|
|
|
+ _GLM_SWIZZLE4_2_MEMBERS(T, P, tvec2, r, g, b, a)
|
|
|
+ _GLM_SWIZZLE4_2_MEMBERS(T, P, tvec2, s, t, p, q)
|
|
|
+ _GLM_SWIZZLE4_3_MEMBERS(T, P, tvec3, x, y, z, w)
|
|
|
+ _GLM_SWIZZLE4_3_MEMBERS(T, P, tvec3, r, g, b, a)
|
|
|
+ _GLM_SWIZZLE4_3_MEMBERS(T, P, tvec3, s, t, p, q)
|
|
|
+ _GLM_SWIZZLE4_4_MEMBERS(T, P, tvec4, x, y, z, w)
|
|
|
+ _GLM_SWIZZLE4_4_MEMBERS(T, P, tvec4, r, g, b, a)
|
|
|
+ _GLM_SWIZZLE4_4_MEMBERS(T, P, tvec4, s, t, p, q)
|
|
|
+# endif//(defined(GLM_SWIZZLE))
|
|
|
|
|
|
struct {value_type r, g, b, a;};
|
|
|
struct {value_type s, t, p, q;};
|
|
|
struct {value_type x, y, z, w;};
|
|
|
- __m128 data;
|
|
|
};
|
|
|
# elif(GLM_COMPONENT == GLM_COMPONENT_CXX98)
|
|
|
union {value_type x, r, s;};
|
|
|
@@ -116,8 +115,6 @@ namespace detail
|
|
|
value_type const & s1,
|
|
|
value_type const & s2,
|
|
|
value_type const & s3);
|
|
|
- GLM_FUNC_DECL explicit tvec4(
|
|
|
- __m128 const & v);
|
|
|
|
|
|
//////////////////////////////////////
|
|
|
// Convertion scalar constructors
|