From 7f683780c4eac24c6ee789e84e812dcab1ca5841 Mon Sep 17 00:00:00 2001 From: Jeffrey Rainy Date: Wed, 8 Sep 2021 13:29:15 -0400 Subject: [PATCH] chore: remove unused SyncTransform.cs --- testproject/Assets/Scripts/SyncTransform.cs | 135 ------------------ .../Assets/Scripts/SyncTransform.cs.meta | 11 -- 2 files changed, 146 deletions(-) delete mode 100644 testproject/Assets/Scripts/SyncTransform.cs delete mode 100644 testproject/Assets/Scripts/SyncTransform.cs.meta diff --git a/testproject/Assets/Scripts/SyncTransform.cs b/testproject/Assets/Scripts/SyncTransform.cs deleted file mode 100644 index e8fc76cf98..0000000000 --- a/testproject/Assets/Scripts/SyncTransform.cs +++ /dev/null @@ -1,135 +0,0 @@ -using UnityEngine; - -namespace Unity.Netcode -{ - /// - /// A component for syncing variables - /// Initial goal: allow an FPS-style snapshot - /// with variables updating at specific place in the frame - /// - [AddComponentMenu("Netcode/" + nameof(SyncTransform))] - // todo: check inheriting from NetworkBehaviour. Currently needed for IsOwner, to synchronize position - public class SyncTransform : NetworkBehaviour - { - private NetworkVariable m_VarPos = new NetworkVariable(); - private NetworkVariable m_VarRot = new NetworkVariable(); - private const float k_Epsilon = 0.001f; - - private bool m_Interpolate = true; - - // data structures for interpolation - private Vector3[] m_PosStore = new Vector3[2]; - private Quaternion[] m_RotStore = new Quaternion[2]; - private float[] m_PosTimes = new float[2]; - private float[] m_RotTimes = new float[2]; - private float m_LastSent = 0.0f; - - public SyncTransform() - { - m_PosTimes[0] = -1.0f; - m_PosTimes[1] = -1.0f; - m_RotTimes[0] = -1.0f; - m_RotTimes[1] = -1.0f; - - m_VarPos.OnValueChanged = SyncPosChanged; - m_VarRot.OnValueChanged = SyncRotChanged; - } - - private void SyncPosChanged(Vector3 before, Vector3 after) - { - if (!IsOwner) - { - m_PosTimes[0] = m_PosTimes[1]; - m_PosTimes[1] = Time.time; - m_PosStore[0] = m_PosStore[1]; - m_PosStore[1] = after; - - if (!m_Interpolate) - { - gameObject.transform.position = after; - } - } - } - - private void SyncRotChanged(Quaternion before, Quaternion after) - { - // todo: this is problematic. Why couldn't this filtering be done server-side? - if (!IsOwner) - { - m_RotTimes[0] = m_RotTimes[1]; - m_RotTimes[1] = Time.time; - m_RotStore[0] = m_RotStore[1]; - m_RotStore[1] = after; - - if (!m_Interpolate) - { - gameObject.transform.rotation = after; - } - } - } - - private void FixedUpdate() - { - float now = Time.time; - if (m_LastSent == 0.0f) - { - m_LastSent = now; - } - - // if this.gameObject is local let's send its position - if (IsOwner) - { - m_VarPos.Value = gameObject.transform.position; - m_VarRot.Value = gameObject.transform.rotation; - } - else - { - if (!m_Interpolate) - { - return; - } - - // let's m_Interpolate the last received transform - if (m_PosTimes[0] >= 0.0 && m_PosTimes[1] >= 0.0) - { - var before = gameObject.transform.position; - - if (m_PosTimes[1] - m_PosTimes[0] > k_Epsilon) - { - if ((now - m_PosTimes[0]) / (m_PosTimes[1] - m_PosTimes[0]) < 2.0) - { - gameObject.transform.position = Vector3.LerpUnclamped( - m_PosStore[0], - m_PosStore[1], - (now - m_PosTimes[0]) / (m_PosTimes[1] - m_PosTimes[0])); - } - } - else - { - gameObject.transform.position = m_PosStore[1]; - } - } - - if (m_RotTimes[0] >= 0.0 && m_RotTimes[1] >= 0.0) - { - var before = gameObject.transform.rotation; - - if (m_RotTimes[1] - m_RotTimes[0] > k_Epsilon) - { - if ((now - m_RotTimes[0]) / (m_RotTimes[1] - m_RotTimes[0]) < 2.0) - { - gameObject.transform.rotation = Quaternion.SlerpUnclamped( - m_RotStore[0], - m_RotStore[1], - (now - m_RotTimes[0]) / (m_RotTimes[1] - m_RotTimes[0])); - } - } - else - { - gameObject.transform.rotation = m_RotStore[1]; - } - } - } - } - } -} diff --git a/testproject/Assets/Scripts/SyncTransform.cs.meta b/testproject/Assets/Scripts/SyncTransform.cs.meta deleted file mode 100644 index f696037c22..0000000000 --- a/testproject/Assets/Scripts/SyncTransform.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 9548116c10df1486ea12b7329b77c5cf -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: