#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