mirror of
https://github.com/DCFApixels/Unity-DebugX.git
synced 2025-09-18 01:54:37 +08:00
27 lines
867 B
C#
27 lines
867 B
C#
using UnityEngine;
|
|
|
|
namespace DCFApixels.DebugXCore
|
|
{
|
|
public static class ValidationUtils
|
|
{
|
|
public static Quaternion CheckQuaternionOrDefault(this Quaternion quaternion)
|
|
{
|
|
float sqrMagnitude = quaternion.x * quaternion.x + quaternion.y * quaternion.y + quaternion.z * quaternion.z + quaternion.w * quaternion.w;
|
|
if (float.IsNaN(sqrMagnitude) || (sqrMagnitude < float.Epsilon))
|
|
{
|
|
return Quaternion.identity;
|
|
}
|
|
return quaternion;
|
|
}
|
|
|
|
public static Vector3 CheckNormalOrDefault(this Vector3 normal)
|
|
{
|
|
float sqrMagnitude = normal.sqrMagnitude;
|
|
if (float.IsNaN(sqrMagnitude) || (sqrMagnitude < float.Epsilon))
|
|
{
|
|
return Vector3.forward;
|
|
}
|
|
return normal;
|
|
}
|
|
}
|
|
} |