|
|
@@ -95,25 +95,27 @@ namespace detail
|
|
|
//////////////////////////////////////////////////////////////
|
|
|
// Constructors
|
|
|
|
|
|
- template <typename T, precision P>
|
|
|
- GLM_FUNC_QUALIFIER tmat4x4<T, P>::tmat4x4()
|
|
|
- {
|
|
|
-# ifndef GLM_FORCE_NO_CTOR_INIT
|
|
|
- this->value[0] = col_type(1, 0, 0, 0);
|
|
|
- this->value[1] = col_type(0, 1, 0, 0);
|
|
|
- this->value[2] = col_type(0, 0, 1, 0);
|
|
|
- this->value[3] = col_type(0, 0, 0, 1);
|
|
|
-# endif
|
|
|
- }
|
|
|
+# if !GLM_HAS_DEFAULTED_FUNCTIONS
|
|
|
+ template <typename T, precision P>
|
|
|
+ GLM_FUNC_QUALIFIER tmat4x4<T, P>::tmat4x4()
|
|
|
+ {
|
|
|
+# ifndef GLM_FORCE_NO_CTOR_INIT
|
|
|
+ this->value[0] = col_type(1, 0, 0, 0);
|
|
|
+ this->value[1] = col_type(0, 1, 0, 0);
|
|
|
+ this->value[2] = col_type(0, 0, 1, 0);
|
|
|
+ this->value[3] = col_type(0, 0, 0, 1);
|
|
|
+# endif
|
|
|
+ }
|
|
|
|
|
|
- template <typename T, precision P>
|
|
|
- GLM_FUNC_QUALIFIER tmat4x4<T, P>::tmat4x4(tmat4x4<T, P> const & m)
|
|
|
- {
|
|
|
- this->value[0] = m[0];
|
|
|
- this->value[1] = m[1];
|
|
|
- this->value[2] = m[2];
|
|
|
- this->value[3] = m[3];
|
|
|
- }
|
|
|
+ template <typename T, precision P>
|
|
|
+ GLM_FUNC_QUALIFIER tmat4x4<T, P>::tmat4x4(tmat4x4<T, P> const & m)
|
|
|
+ {
|
|
|
+ this->value[0] = m[0];
|
|
|
+ this->value[1] = m[1];
|
|
|
+ this->value[2] = m[2];
|
|
|
+ this->value[3] = m[3];
|
|
|
+ }
|
|
|
+# endif//!GLM_HAS_DEFAULTED_FUNCTIONS
|
|
|
|
|
|
template <typename T, precision P>
|
|
|
template <precision Q>
|
|
|
@@ -246,6 +248,7 @@ namespace detail
|
|
|
|
|
|
//////////////////////////////////////
|
|
|
// Matrix convertion constructors
|
|
|
+
|
|
|
template <typename T, precision P>
|
|
|
GLM_FUNC_QUALIFIER tmat4x4<T, P>::tmat4x4(tmat2x2<T, P> const & m)
|
|
|
{
|
|
|
@@ -366,17 +369,19 @@ namespace detail
|
|
|
//////////////////////////////////////////////////////////////
|
|
|
// Operators
|
|
|
|
|
|
- template <typename T, precision P>
|
|
|
- GLM_FUNC_QUALIFIER tmat4x4<T, P>& tmat4x4<T, P>::operator=(tmat4x4<T, P> const & m)
|
|
|
- {
|
|
|
- //memcpy could be faster
|
|
|
- //memcpy(&this->value, &m.value, 16 * sizeof(valType));
|
|
|
- this->value[0] = m[0];
|
|
|
- this->value[1] = m[1];
|
|
|
- this->value[2] = m[2];
|
|
|
- this->value[3] = m[3];
|
|
|
- return *this;
|
|
|
- }
|
|
|
+# if !GLM_HAS_DEFAULTED_FUNCTIONS
|
|
|
+ template <typename T, precision P>
|
|
|
+ GLM_FUNC_QUALIFIER tmat4x4<T, P>& tmat4x4<T, P>::operator=(tmat4x4<T, P> const & m)
|
|
|
+ {
|
|
|
+ //memcpy could be faster
|
|
|
+ //memcpy(&this->value, &m.value, 16 * sizeof(valType));
|
|
|
+ this->value[0] = m[0];
|
|
|
+ this->value[1] = m[1];
|
|
|
+ this->value[2] = m[2];
|
|
|
+ this->value[3] = m[3];
|
|
|
+ return *this;
|
|
|
+ }
|
|
|
+# endif//!GLM_HAS_DEFAULTED_FUNCTIONS
|
|
|
|
|
|
template <typename T, precision P>
|
|
|
template <typename U>
|