|
|
|
@ -125,6 +125,60 @@ namespace glm |
|
|
|
|
detail::fvec4SIMD const & b); |
|
|
|
|
|
|
|
|
|
}//namespace simd_vec4
|
|
|
|
|
|
|
|
|
|
namespace simd_vec4 |
|
|
|
|
{ |
|
|
|
|
//! Returns the length of x, i.e., sqrt(x * x).
|
|
|
|
|
//! (From GLM_GTX_simd_vec4 extension, geometry functions)
|
|
|
|
|
float simdLength( |
|
|
|
|
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( |
|
|
|
|
detail::fvec4SIMD const & p0, |
|
|
|
|
detail::fvec4SIMD const & p1); |
|
|
|
|
|
|
|
|
|
//! Returns the dot product of x and y, i.e., result = x * y.
|
|
|
|
|
//! (From GLM_GTX_simd_vec4 extension, geometry functions)
|
|
|
|
|
float simdDot( |
|
|
|
|
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 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 const & x); |
|
|
|
|
|
|
|
|
|
//! If dot(Nref, I) < 0.0, return N, otherwise, return -N.
|
|
|
|
|
//! (From GLM_GTX_simd_vec4 extension, geometry functions)
|
|
|
|
|
detail::fvec4SIMD simdFaceforward( |
|
|
|
|
detail::fvec4SIMD const & N, |
|
|
|
|
detail::fvec4SIMD const & I, |
|
|
|
|
detail::fvec4SIMD const & Nref); |
|
|
|
|
|
|
|
|
|
//! 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 const & I, |
|
|
|
|
detail::fvec4SIMD const & N); |
|
|
|
|
|
|
|
|
|
//! For the incident vector I and surface normal N,
|
|
|
|
|
//! 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 const & I, |
|
|
|
|
detail::fvec4SIMD const & N, |
|
|
|
|
float const & eta); |
|
|
|
|
}//namespace simd_vec4
|
|
|
|
|
}//namespace gtx
|
|
|
|
|
}//namespace glm
|
|
|
|
|
|
|
|
|
|