Fix Reflection calculation error.

This commit is contained in:
scorpioblood 2024-06-10 22:07:53 +02:00
parent e894b55748
commit 668a01491a
3 changed files with 7 additions and 7 deletions

View File

@ -684,7 +684,7 @@ namespace Phanes::Core::Math {
template<RealType T>
TVector2<T, false> ReflectV(TVector2<T, false>& v1, const TVector2<T, false>& normal)
{
Set(v1, v1 - (2 * (v1 * normal) * normal));
Set(v1, v1 - (2 * DotP(v1, normal) * normal));
return v1;
}
@ -871,7 +871,7 @@ namespace Phanes::Core::Math {
template<RealType T>
TVector2<T, false> Reflect(const TVector2<T, false>& v1, const TVector2<T, false>& normal)
{
return TVector2<T, false>(v1 - (2 * (v1 * normal) * normal));
return TVector2<T, false>(v1 - (2 * DotP(v1, normal) * normal));
}
/**

View File

@ -375,7 +375,7 @@ namespace Phanes::Core::Math {
template<RealType T>
TVector3<T, false> ReflectV(TVector3<T, false>& v1, const TVector3<T, false>& normal)
{
Set(v1, v1 - (2 * (v1 * normal) * normal));
Set(v1, v1 - (2 * DotP(v1, normal) * normal));
return v1;
}
@ -962,7 +962,7 @@ namespace Phanes::Core::Math {
template<RealType T>
TVector3<T, false> Reflect(const TVector3<T, false>& v1, const TVector3<T, false>& normal)
{
return v1 - (2 * (v1 * normal) * normal);
return v1 - (2 * DotP(v1, normal) * normal);
}

View File

@ -745,7 +745,7 @@ namespace Phanes::Core::Math
template<RealType T>
TVector4<T, false> Reflect(const TVector4<T, false>& v1, const TVector4<T, false> normal)
{
return v1 - (2 * (v1 * normal) * normal);
return v1 - (2 * DotP(v1, normal) * normal);
}
/// <summary>
@ -759,7 +759,7 @@ namespace Phanes::Core::Math
template<RealType T>
TVector4<T, false> ReflectV(TVector4<T, false>& v1, const TVector4<T, false> normal)
{
Set(v1, v1 - (2 * (v1 * normal) * normal));
Set(v1, v1 - (2 * DotP(v1, normal) * normal));
return v1;
}