diff options
| author | sotech117 <michael_foiani@brown.edu> | 2023-12-07 16:23:20 -0500 |
|---|---|---|
| committer | sotech117 <michael_foiani@brown.edu> | 2023-12-07 16:23:20 -0500 |
| commit | caa765bff49d54217b75aaf0e7acf4e5392a11e4 (patch) | |
| tree | 9b92914dfb88b99599e8e60e4512e9e9ea9a25db /glm/gtx/normalize_dot.inl | |
| parent | a9274459443f1d560d7580a162deb581549980cb (diff) | |
upload base code
Diffstat (limited to 'glm/gtx/normalize_dot.inl')
| -rw-r--r-- | glm/gtx/normalize_dot.inl | 16 |
1 files changed, 16 insertions, 0 deletions
diff --git a/glm/gtx/normalize_dot.inl b/glm/gtx/normalize_dot.inl new file mode 100644 index 0000000..7bcd9a5 --- /dev/null +++ b/glm/gtx/normalize_dot.inl @@ -0,0 +1,16 @@ +/// @ref gtx_normalize_dot + +namespace glm +{ + template<length_t L, typename T, qualifier Q> + GLM_FUNC_QUALIFIER T normalizeDot(vec<L, T, Q> const& x, vec<L, T, Q> const& y) + { + return glm::dot(x, y) * glm::inversesqrt(glm::dot(x, x) * glm::dot(y, y)); + } + + template<length_t L, typename T, qualifier Q> + GLM_FUNC_QUALIFIER T fastNormalizeDot(vec<L, T, Q> const& x, vec<L, T, Q> const& y) + { + return glm::dot(x, y) * glm::fastInverseSqrt(glm::dot(x, x) * glm::dot(y, y)); + } +}//namespace glm |
