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