Explorar o código

Updated naming conventions

Christophe Riccio %!s(int64=15) %!d(string=hai) anos
pai
achega
572e379dd3
Modificáronse 4 ficheiros con 116 adicións e 50 borrados
  1. 5 5
      glm/gtx/simd_mat4.hpp
  2. 5 5
      glm/gtx/simd_mat4.inl
  3. 41 17
      glm/gtx/simd_vec4.hpp
  4. 65 23
      glm/gtx/simd_vec4.inl

+ 5 - 5
glm/gtx/simd_mat4.hpp

@@ -142,7 +142,7 @@ namespace glm
 		//! Multiply matrix x by matrix y component-wise, i.e.,
 		//! result[i][j] is the scalar product of x[i][j] and y[i][j].
 		//! (From GLM_GTX_simd_mat4 extension).
-		detail::fmat4x4SIMD simdMatrixCompMult(
+		detail::fmat4x4SIMD matrixCompMult(
 			detail::fmat4x4SIMD const & x,
 			detail::fmat4x4SIMD const & y);
 
@@ -150,23 +150,23 @@ namespace glm
 		//! and the second parameter r as a row vector
 		//! and does a linear algebraic matrix multiply c * r.
 		//! (From GLM_GTX_simd_mat4 extension).
-		detail::fmat4x4SIMD simdOuterProduct(
+		detail::fmat4x4SIMD outerProduct(
 			detail::fvec4SIMD const & c,
 			detail::fvec4SIMD const & r);
 
 		//! Returns the transposed matrix of x
 		//! (From GLM_GTX_simd_mat4 extension).
-		detail::fmat4x4SIMD simdTranspose(
+		detail::fmat4x4SIMD transpose(
 			detail::fmat4x4SIMD const & x);
 
 		//! Return the determinant of a mat4 matrix.
 		//! (From GLM_GTX_simd_mat4 extension).
-		float simdDeterminant(
+		float determinant(
 			detail::fmat4x4SIMD const & m);
 
 		//! Return the inverse of a mat4 matrix.
 		//! (From GLM_GTX_simd_mat4 extension).
-		detail::fmat4x4SIMD simdInverse(
+		detail::fmat4x4SIMD inverse(
 			detail::fmat4x4SIMD const & m);
 
 	}//namespace simd_mat4

+ 5 - 5
glm/gtx/simd_mat4.inl

@@ -250,7 +250,7 @@ namespace simd_mat4
 		return Result;
 	}
 
-	inline detail::fmat4x4SIMD simdMatrixCompMult
+	inline detail::fmat4x4SIMD matrixCompMult
 	(
 		detail::fmat4x4SIMD const & x,
 		detail::fmat4x4SIMD const & y
@@ -264,7 +264,7 @@ namespace simd_mat4
 		return result;
 	}
 
-	inline detail::fmat4x4SIMD simdOuterProduct
+	inline detail::fmat4x4SIMD outerProduct
 	(
 		detail::fvec4SIMD const & c,
 		detail::fvec4SIMD const & r
@@ -273,21 +273,21 @@ namespace simd_mat4
 
 	}
 
-	inline detail::fmat4x4SIMD simdTranspose(detail::fmat4x4SIMD const & m)
+	inline detail::fmat4x4SIMD transpose(detail::fmat4x4SIMD const & m)
 	{
 		detail::fmat4x4SIMD result;
 		detail::sse_transpose_ps(&m[0].Data, &result[0].Data);
 		return result;
 	}
 
-	inline float simdDeterminant(detail::fmat4x4SIMD const & m)
+	inline float determinant(detail::fmat4x4SIMD const & m)
 	{
 		float Result;
 		_mm_store_ss(&Result, detail::sse_det_ps(&m[0].Data));
 		return Result;
 	}
 
-	inline detail::fmat4x4SIMD simdInverse(detail::fmat4x4SIMD const & m)
+	inline detail::fmat4x4SIMD inverse(detail::fmat4x4SIMD const & m)
 	{
 		detail::fmat4x4SIMD result;
 		detail::sse_inverse_ps(&m[0].Data, &result[0].Data);

+ 41 - 17
glm/gtx/simd_vec4.hpp

@@ -336,23 +336,47 @@ namespace glm
 
 		//! Returns the length of x, i.e., sqrt(x * x).
 		//! (From GLM_GTX_simd_vec4 extension, geometry functions)
-		float simdLength(
+		float length(
 			detail::fvec4SIMD const & x);
 
 		//! Returns the length of x, i.e., sqrt(x * x).
+		//! Less accurate but much faster than simdLength.
 		//! (From GLM_GTX_simd_vec4 extension, geometry functions)
-		detail::fvec4SIMD simdLength4(
+		float fastLength(
+			detail::fvec4SIMD const & x);
+
+		//! Returns the length of x, i.e., sqrt(x * x).
+		//! Slightly more accurate but much slower than simdLength.
+		//! (From GLM_GTX_simd_vec4 extension, geometry functions)
+		float niceLength(
+			detail::fvec4SIMD const & x);
+
+		//! Returns the length of x, i.e., sqrt(x * x).
+		//! (From GLM_GTX_simd_vec4 extension, geometry functions)
+		detail::fvec4SIMD length4(
+			detail::fvec4SIMD const & x);
+
+		//! Returns the length of x, i.e., sqrt(x * x).
+		//! Less accurate but much faster than simdLength4.
+		//! (From GLM_GTX_simd_vec4 extension, geometry functions)
+		detail::fvec4SIMD fastLength4(
+			detail::fvec4SIMD const & x);
+
+		//! Returns the length of x, i.e., sqrt(x * x).
+		//! Slightly more accurate but much slower than simdLength4.
+		//! (From GLM_GTX_simd_vec4 extension, geometry functions)
+		detail::fvec4SIMD niceLength4(
 			detail::fvec4SIMD const & x);
 
 		//! Returns the distance betwwen p0 and p1, i.e., length(p0 - p1).
 		//! (From GLM_GTX_simd_vec4 extension, geometry functions)
-		float simdDistance(
+		float distance(
 			detail::fvec4SIMD const & p0,
 			detail::fvec4SIMD const & p1);
 
 		//! Returns the distance betwwen p0 and p1, i.e., length(p0 - p1).
 		//! (From GLM_GTX_simd_vec4 extension, geometry functions)
-		detail::fvec4SIMD simdDistance4(
+		detail::fvec4SIMD distance4(
 			detail::fvec4SIMD const & p0,
 			detail::fvec4SIMD const & p1);
 
@@ -364,25 +388,25 @@ namespace glm
 
 		//! Returns the dot product of x and y, i.e., result = x * y.
 		//! (From GLM_GTX_simd_vec4 extension, geometry functions)
-		detail::fvec4SIMD simdDot4(
+		detail::fvec4SIMD dot4(
 			detail::fvec4SIMD const & x,
 			detail::fvec4SIMD const & y);
 
 		//! Returns the cross product of x and y.
 		//! (From GLM_GTX_simd_vec4 extension, geometry functions)
-		detail::fvec4SIMD simdCross(
+		detail::fvec4SIMD cross(
 			detail::fvec4SIMD const & x,
 			detail::fvec4SIMD const & y);
 
 		//! Returns a vector in the same direction as x but with length of 1.
 		//! (From GLM_GTX_simd_vec4 extension, geometry functions)
-		detail::fvec4SIMD simdNormalize(
+		detail::fvec4SIMD normalize(
 			detail::fvec4SIMD const & x);
 
 		//! Returns a vector in the same direction as x but with length of 1.
 		//! Less accurate but much faster than simdNormalize.
 		//! (From GLM_GTX_simd_vec4 extension, geometry functions)
-		detail::fvec4SIMD simdFastNormalize(
+		detail::fvec4SIMD fastNormalize(
 			detail::fvec4SIMD const & x);
 
 		//! If dot(Nref, I) < 0.0, return N, otherwise, return -N.
@@ -395,7 +419,7 @@ namespace glm
 		//! For the incident vector I and surface orientation N,
 		//! returns the reflection direction : result = I - 2.0 * dot(N, I) * N.
 		//! (From GLM_GTX_simd_vec4 extension, geometry functions)
-		detail::fvec4SIMD simdReflect(
+		detail::fvec4SIMD reflect(
 			detail::fvec4SIMD const & I,
 			detail::fvec4SIMD const & N);
 
@@ -403,37 +427,37 @@ namespace glm
 		//! and the ratio of indices of refraction eta,
 		//! return the refraction vector.
 		//! (From GLM_GTX_simd_vec4 extension, geometry functions)
-		detail::fvec4SIMD simdRefract(
+		detail::fvec4SIMD refract(
 			detail::fvec4SIMD const & I,
 			detail::fvec4SIMD const & N,
 			float const & eta);
 
 		//! Returns the positive square root of x.
 		//! (From GLM_GTX_simd_vec4 extension, exponential function)
-		detail::fvec4SIMD simdSqrt(
+		detail::fvec4SIMD sqrt(
 			detail::fvec4SIMD const & x);
 
 		//! Returns the positive square root of x with the nicest quality but very slow.
 		//! Slightly more accurate but much slower than simdSqrt.
 		//! (From GLM_GTX_simd_vec4 extension, exponential function)
-		detail::fvec4SIMD simdNiceSqrt(
+		detail::fvec4SIMD niceSqrt(
 			detail::fvec4SIMD const & x);
 
 		//! Returns the positive square root of x
-		//! Less accurate but much faster than simdSqrt.
+		//! Less accurate but much faster than sqrt.
 		//! (From GLM_GTX_simd_vec4 extension, exponential function)
-		detail::fvec4SIMD simdFastSqrt(
+		detail::fvec4SIMD fastSqrt(
 			detail::fvec4SIMD const & x);
 
 		//! Returns the reciprocal of the positive square root of x.
 		//! (From GLM_GTX_simd_vec4 extension, exponential function)
-		detail::fvec4SIMD simdInversesqrt(
+		detail::fvec4SIMD inversesqrt(
 			detail::fvec4SIMD const & x);
 
 		//! Returns the reciprocal of the positive square root of x.
-		//! Faster than simdInversesqrt but less accurate.
+		//! Faster than inversesqrt but less accurate.
 		//! (From GLM_GTX_simd_vec4 extension, exponential function)
-		detail::fvec4SIMD simdFastInversesqrt(
+		detail::fvec4SIMD fastInversesqrt(
 			detail::fvec4SIMD const & x);
 
 	}//namespace simd_vec4

+ 65 - 23
glm/gtx/simd_vec4.inl

@@ -530,25 +530,67 @@ namespace glm
 			return _mm_add_ps(_mm_mul_ps(a.Data, b.Data), c.Data);
 		}
 
-		inline float simdLength
+		inline float length
 		(
 			detail::fvec4SIMD const & x
 		)
 		{
+			detail::fvec4SIMD dot0 = detail::sse_dot_ss(x.Data, x.Data);
+			detail::fvec4SIMD sqt0 = sqrt(dot0);
 			float Result = 0;
-			_mm_store_ss(&Result, detail::sse_len_ps(x.Data));
+			_mm_store_ss(&Result, sqt0.Data);
 			return Result;
 		}
 
-		inline detail::fvec4SIMD simdLength4
+		inline float fastLength
 		(
 			detail::fvec4SIMD const & x
 		)
 		{
-			return detail::sse_len_ps(x.Data);
+			detail::fvec4SIMD dot0 = detail::sse_dot_ss(x.Data, x.Data);
+			detail::fvec4SIMD sqt0 = fastSqrt(dot0);
+			float Result = 0;
+			_mm_store_ss(&Result, sqt0.Data);
+			return Result;
+		}
+
+		inline float niceLength
+		(
+			detail::fvec4SIMD const & x
+		)
+		{
+			detail::fvec4SIMD dot0 = detail::sse_dot_ss(x.Data, x.Data);
+			detail::fvec4SIMD sqt0 = niceSqrt(dot0);
+			float Result = 0;
+			_mm_store_ss(&Result, sqt0.Data);
+			return Result;
+		}
+
+		inline detail::fvec4SIMD length4
+		(
+			detail::fvec4SIMD const & x
+		)
+		{
+			return sqrt(dot4(x, x));
+		}
+
+		inline detail::fvec4SIMD fastLength4
+		(
+			detail::fvec4SIMD const & x
+		)
+		{
+			return fastSqrt(dot4(x, x));
+		}
+
+		inline detail::fvec4SIMD niceLength4
+		(
+			detail::fvec4SIMD const & x
+		)
+		{
+			return niceSqrt(dot4(x, x));
 		}
 
-		inline float simdDistance
+		inline float distance
 		(
 			detail::fvec4SIMD const & p0,
 			detail::fvec4SIMD const & p1
@@ -559,7 +601,7 @@ namespace glm
 			return Result;
 		}
 
-		inline detail::fvec4SIMD simdDistance4
+		inline detail::fvec4SIMD distance4
 		(
 			detail::fvec4SIMD const & p0,
 			detail::fvec4SIMD const & p1
@@ -568,7 +610,7 @@ namespace glm
 			return detail::sse_dst_ps(p0.Data, p1.Data);
 		}
 
-		inline float simdDot
+		inline float dot
 		(
 			detail::fvec4SIMD const & x,
 			detail::fvec4SIMD const & y
@@ -579,7 +621,7 @@ namespace glm
 			return Result;
 		}
 
-		inline detail::fvec4SIMD simdDot4
+		inline detail::fvec4SIMD dot4
 		(
 			detail::fvec4SIMD const & x,
 			detail::fvec4SIMD const & y
@@ -588,7 +630,7 @@ namespace glm
 			return detail::sse_dot_ps(x.Data, y.Data);
 		}
 
-		inline detail::fvec4SIMD simdCross
+		inline detail::fvec4SIMD cross
 		(
 			detail::fvec4SIMD const & x,
 			detail::fvec4SIMD const & y
@@ -597,29 +639,29 @@ namespace glm
 			return detail::sse_xpd_ps(x.Data, y.Data);
 		}
 
-		inline detail::fvec4SIMD simdNormalize
+		inline detail::fvec4SIMD normalize
 		(
 			detail::fvec4SIMD const & x
 		)
 		{
 			__m128 dot0 = detail::sse_dot_ps(x.Data, x.Data);
-			__m128 isr0 = simdInversesqrt(dot0).Data;
+			__m128 isr0 = inversesqrt(dot0).Data;
 			__m128 mul0 = _mm_mul_ps(x.Data, isr0);
 			return mul0;
 		}
 
-		inline detail::fvec4SIMD simdFastNormalize
+		inline detail::fvec4SIMD fastNormalize
 		(
 			detail::fvec4SIMD const & x
 		)
 		{
 			__m128 dot0 = detail::sse_dot_ps(x.Data, x.Data);
-			__m128 isr0 = simdFastInversesqrt(dot0).Data;
+			__m128 isr0 = fastInversesqrt(dot0).Data;
 			__m128 mul0 = _mm_mul_ps(x.Data, isr0);
 			return mul0;
 		}
 
-		inline detail::fvec4SIMD simdFaceforward
+		inline detail::fvec4SIMD faceforward
 		(
 			detail::fvec4SIMD const & N,
 			detail::fvec4SIMD const & I,
@@ -629,7 +671,7 @@ namespace glm
 			return detail::sse_ffd_ps(N.Data, I.Data, Nref.Data);
 		}
 
-		inline detail::fvec4SIMD simdReflect
+		inline detail::fvec4SIMD reflect
 		(
 			detail::fvec4SIMD const & I,
 			detail::fvec4SIMD const & N
@@ -638,7 +680,7 @@ namespace glm
 			return detail::sse_rfe_ps(I.Data, N.Data);
 		}
 
-		inline detail::fvec4SIMD simdRefract
+		inline detail::fvec4SIMD refract
 		(
 			detail::fvec4SIMD const & I,
 			detail::fvec4SIMD const & N,
@@ -648,24 +690,24 @@ namespace glm
 			return detail::sse_rfa_ps(I.Data, N.Data, _mm_set1_ps(eta));
 		}
 
-		inline detail::fvec4SIMD simdSqrt(detail::fvec4SIMD const & x)
+		inline detail::fvec4SIMD sqrt(detail::fvec4SIMD const & x)
 		{
-			return _mm_mul_ps(simdInversesqrt(x.Data).Data, x.Data);
+			return _mm_mul_ps(inversesqrt(x.Data).Data, x.Data);
 		}
 
-		inline detail::fvec4SIMD simdNiceSqrt(detail::fvec4SIMD const & x)
+		inline detail::fvec4SIMD niceSqrt(detail::fvec4SIMD const & x)
 		{
 			return _mm_sqrt_ps(x.Data);
 		}
 
-		inline detail::fvec4SIMD simdFastSqrt(detail::fvec4SIMD const & x)
+		inline detail::fvec4SIMD fastSqrt(detail::fvec4SIMD const & x)
 		{
-			return _mm_mul_ps(simdFastInversesqrt(x.Data).Data, x.Data);
+			return _mm_mul_ps(fastInversesqrt(x.Data).Data, x.Data);
 		}
 
 		// SSE scalar reciprocal sqrt using rsqrt op, plus one Newton-Rhaphson iteration
 		// By Elan Ruskin, http://assemblyrequired.crashworks.org/
-		inline detail::fvec4SIMD simdInversesqrt(detail::fvec4SIMD const & x)
+		inline detail::fvec4SIMD inversesqrt(detail::fvec4SIMD const & x)
 		{
 			GLM_ALIGN(4) static const __m128 three = {3, 3, 3, 3}; // aligned consts for fast load
 			GLM_ALIGN(4) static const __m128 half = {0.5,0.5,0.5,0.5};
@@ -676,7 +718,7 @@ namespace glm
 			return _mm_mul_ps(halfrecip, threeminus_xrr);
 		}
 
-		inline detail::fvec4SIMD simdFastInversesqrt(detail::fvec4SIMD const & x)
+		inline detail::fvec4SIMD fastInversesqrt(detail::fvec4SIMD const & x)
 		{
 			return _mm_rsqrt_ps(x.Data);
 		}