zombie_mp/Assets/HQ FPS Weapons/Scripts/Utility/Vector3Utils.cs
Sewmina Dilshan 68183e5317 initial
2021-08-23 13:28:33 +05:30

35 lines
1.0 KiB
C#

using UnityEngine;
namespace HQFPSWeapons
{
public static class Vector3Utils
{
public static Vector3 LocalToWorld(Vector3 vector, Transform transform)
{
return transform.rotation * vector;
}
public static Vector3 WorldToLocal(Vector3 vector, Transform transform)
{
return Quaternion.Inverse(transform.rotation) * vector;
}
public static Vector3 Convert(Vector3 vector, Transform fromSpace, Transform toSpace)
{
Vector3 localToWorld = LocalToWorld(vector, fromSpace);
return WorldToLocal(localToWorld, toSpace);
}
public static Vector3 JitterVector(Vector3 vector, float xJit = 0, float yJit = 0, float zJit = 0)
{
vector = new Vector3(
vector.x + (vector.x * Random.Range(-xJit, xJit)),
vector.y + (vector.y * Random.Range(-yJit, yJit)),
vector.z + (vector.z * Random.Range(-zJit, zJit))
);
return vector;
}
}
}