#if FISHNET_THREADED_COLLIDER_ROLLBACK using Unity.Mathematics; using UnityEngine; using UnityEngine.Jobs; namespace FishNet.Component.ColliderRollback { /// /// Used to store where colliders are during the snapshot. /// public struct ColliderSnapshot { public ColliderSnapshot(Transform t) { t.GetPositionAndRotation(out Vector3 pos, out Quaternion rot); WorldPosition = pos; WorldRotation = rot; } public ColliderSnapshot(TransformAccess ta) { ta.GetPositionAndRotation(out Vector3 pos, out Quaternion rot); WorldPosition = pos; WorldRotation = rot; } public void SetValues(Transform t) { t.GetPositionAndRotation(out Vector3 pos, out Quaternion rot); WorldPosition = pos; WorldRotation = rot; } public void SetValues(TransformAccess ta) { ta.GetPositionAndRotation(out Vector3 pos, out Quaternion rot); WorldPosition = pos; WorldRotation = rot; } /// /// WorldPosition of transform during snapshot. /// public float3 WorldPosition; /// /// WorldRotation of transform during snapshot. /// public quaternion WorldRotation; } } #endif