mirror of
https://github.com/g-truc/glm.git
synced 2024-11-10 04:31:47 +00:00
Fixed singularity check for quatLookAt #770
This commit is contained in:
parent
8aa60bbeff
commit
b4c5bb6c1a
@ -175,7 +175,8 @@ namespace glm
|
|||||||
mat<3, 3, T, Q> Result;
|
mat<3, 3, T, Q> Result;
|
||||||
|
|
||||||
Result[2] = -direction;
|
Result[2] = -direction;
|
||||||
Result[0] = normalize(cross(up, Result[2]));
|
vec<3, T, Q> const& Right = cross(up, Result[2]);
|
||||||
|
Result[0] = Right * inversesqrt(max(static_cast<T>(0.00001), dot(Right, Right)));
|
||||||
Result[1] = cross(Result[2], Result[0]);
|
Result[1] = cross(Result[2], Result[0]);
|
||||||
|
|
||||||
return quat_cast(Result);
|
return quat_cast(Result);
|
||||||
@ -187,7 +188,8 @@ namespace glm
|
|||||||
mat<3, 3, T, Q> Result;
|
mat<3, 3, T, Q> Result;
|
||||||
|
|
||||||
Result[2] = direction;
|
Result[2] = direction;
|
||||||
Result[0] = normalize(cross(up, Result[2]));
|
vec<3, T, Q> const& Right = cross(up, Result[2]);
|
||||||
|
Result[0] = Right * inversesqrt(max(static_cast<T>(0.00001), dot(Right, Right)));
|
||||||
Result[1] = cross(Result[2], Result[0]);
|
Result[1] = cross(Result[2], Result[0]);
|
||||||
|
|
||||||
return quat_cast(Result);
|
return quat_cast(Result);
|
||||||
|
@ -65,6 +65,7 @@ glm::mat4 camera(float Translate, glm::vec2 const& Rotate)
|
|||||||
- Fixed unnecessary warnings from matrix_projection.inl #995
|
- Fixed unnecessary warnings from matrix_projection.inl #995
|
||||||
- Fixed quaternion slerp overload which interpolates with extra spins #996
|
- Fixed quaternion slerp overload which interpolates with extra spins #996
|
||||||
- Fixed for glm::length using arch64 #992
|
- Fixed for glm::length using arch64 #992
|
||||||
|
- Fixed singularity check for quatLookAt #770
|
||||||
|
|
||||||
### [GLM 0.9.9.7](https://github.com/g-truc/glm/releases/tag/0.9.9.7) - 2020-01-05
|
### [GLM 0.9.9.7](https://github.com/g-truc/glm/releases/tag/0.9.9.7) - 2020-01-05
|
||||||
#### Improvements:
|
#### Improvements:
|
||||||
|
Loading…
Reference in New Issue
Block a user