| 1234567891011121314151617181920212223242526272829303132333435 | 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;        }    }}
 |