From 635dcb6dab96ef37b419a270222cabd972eae71b Mon Sep 17 00:00:00 2001 From: Bastien Humeau Date: Thu, 2 May 2024 17:45:22 -0400 Subject: [PATCH 1/4] Optimize NetworkTransform so they do not interpolate and do not sync unecessary transform data The server is not interpolating the ennemies position and given the game doesn't have any animation, not interpolating anything allows for the same movement feeling between clients and host. --- Basic/Invaders/Assets/Prefabs/bullet.prefab | 90 +++++++++++++------ Basic/Invaders/Assets/Prefabs/enemy1.prefab | 88 ++++++++++++------ Basic/Invaders/Assets/Prefabs/enemy2.prefab | 90 +++++++++++++------ Basic/Invaders/Assets/Prefabs/enemy3.prefab | 90 +++++++++++++------ .../Assets/Prefabs/enemyBullet.prefab | 90 +++++++++++++------ Basic/Invaders/Assets/Prefabs/player.prefab | 71 +++++++++++---- Basic/Invaders/Assets/Prefabs/shield.prefab | 62 ++++++++++--- .../Invaders/Assets/Prefabs/superEnemy.prefab | 90 +++++++++++++------ 8 files changed, 477 insertions(+), 194 deletions(-) diff --git a/Basic/Invaders/Assets/Prefabs/bullet.prefab b/Basic/Invaders/Assets/Prefabs/bullet.prefab index a15a2ae05..864950853 100644 --- a/Basic/Invaders/Assets/Prefabs/bullet.prefab +++ b/Basic/Invaders/Assets/Prefabs/bullet.prefab @@ -10,10 +10,10 @@ GameObject: m_Component: - component: {fileID: 400000} - component: {fileID: 21200000} + - component: {fileID: 2859882261451710602} - component: {fileID: 11400000} - component: {fileID: 6100000} - component: {fileID: 5000000} - - component: {fileID: 2859882261451710602} - component: {fileID: -3163295562554932181} m_Layer: 0 m_Name: bullet @@ -29,12 +29,13 @@ Transform: m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 100000} + serializedVersion: 2 m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: -2.9616375, y: 0.72005486, z: 8.037054} m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 m_Children: [] m_Father: {fileID: 0} - m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!212 &21200000 SpriteRenderer: @@ -47,6 +48,7 @@ SpriteRenderer: m_CastShadows: 0 m_ReceiveShadows: 0 m_DynamicOccludee: 1 + m_StaticShadowCaster: 0 m_MotionVectors: 1 m_LightProbeUsage: 0 m_ReflectionProbeUsage: 0 @@ -87,6 +89,27 @@ SpriteRenderer: m_WasSpriteAssigned: 1 m_MaskInteraction: 0 m_SpriteSortPoint: 0 +--- !u!114 &2859882261451710602 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 100000} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: d5a57f767e5e46a458fc5d3c628d0cbb, type: 3} + m_Name: + m_EditorClassIdentifier: + GlobalObjectIdHash: 3008223376 + InScenePlacedSourceGlobalObjectIdHash: 0 + AlwaysReplicateAsRoot: 0 + SynchronizeTransform: 1 + ActiveSceneSynchronization: 0 + SceneMigrationSynchronization: 1 + SpawnWithObservers: 1 + DontDestroyWithOwner: 0 + AutoObjectParentSync: 1 --- !u!114 &11400000 MonoBehaviour: m_ObjectHideFlags: 0 @@ -113,6 +136,25 @@ BoxCollider2D: m_Enabled: 1 m_Density: 1 m_Material: {fileID: 0} + m_IncludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_ExcludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_LayerOverridePriority: 0 + m_ForceSendLayers: + serializedVersion: 2 + m_Bits: 4294967295 + m_ForceReceiveLayers: + serializedVersion: 2 + m_Bits: 4294967295 + m_ContactCaptureLayers: + serializedVersion: 2 + m_Bits: 4294967295 + m_CallbackLayers: + serializedVersion: 2 + m_Bits: 4294967295 m_IsTrigger: 1 m_UsedByEffector: 0 m_UsedByComposite: 0 @@ -146,26 +188,16 @@ Rigidbody2D: m_AngularDrag: 0.05 m_GravityScale: 0 m_Material: {fileID: 0} + m_IncludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_ExcludeLayers: + serializedVersion: 2 + m_Bits: 0 m_Interpolate: 0 m_SleepingMode: 1 m_CollisionDetection: 0 m_Constraints: 0 ---- !u!114 &2859882261451710602 -MonoBehaviour: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 100000} - m_Enabled: 1 - m_EditorHideFlags: 0 - m_Script: {fileID: 11500000, guid: d5a57f767e5e46a458fc5d3c628d0cbb, type: 3} - m_Name: - m_EditorClassIdentifier: - GlobalObjectIdHash: 951099334 - AlwaysReplicateAsRoot: 0 - DontDestroyWithOwner: 0 - AutoObjectParentSync: 1 --- !u!114 &-3163295562554932181 MonoBehaviour: m_ObjectHideFlags: 0 @@ -178,18 +210,22 @@ MonoBehaviour: m_Script: {fileID: 11500000, guid: e96cb6065543e43c4a752faaa1468eb1, type: 3} m_Name: m_EditorClassIdentifier: + UseUnreliableDeltas: 0 SyncPositionX: 1 SyncPositionY: 1 - SyncPositionZ: 1 - SyncRotAngleX: 1 - SyncRotAngleY: 1 - SyncRotAngleZ: 1 - SyncScaleX: 1 - SyncScaleY: 1 - SyncScaleZ: 1 + SyncPositionZ: 0 + SyncRotAngleX: 0 + SyncRotAngleY: 0 + SyncRotAngleZ: 0 + SyncScaleX: 0 + SyncScaleY: 0 + SyncScaleZ: 0 PositionThreshold: 0.001 RotAngleThreshold: 0.01 ScaleThreshold: 0.01 + UseQuaternionSynchronization: 0 + UseQuaternionCompression: 0 + UseHalfFloatPrecision: 0 InLocalSpace: 0 - Interpolate: 1 - CanCommitToTransform: 0 + Interpolate: 0 + SlerpPosition: 0 diff --git a/Basic/Invaders/Assets/Prefabs/enemy1.prefab b/Basic/Invaders/Assets/Prefabs/enemy1.prefab index b4bb95d9e..476070241 100644 --- a/Basic/Invaders/Assets/Prefabs/enemy1.prefab +++ b/Basic/Invaders/Assets/Prefabs/enemy1.prefab @@ -10,11 +10,11 @@ GameObject: m_Component: - component: {fileID: 400000} - component: {fileID: 21200000} + - component: {fileID: 2037077820506562951} - component: {fileID: 11400000} - component: {fileID: 6100000} - component: {fileID: 5000000} - component: {fileID: 4223722966607089368} - - component: {fileID: 2037077820506562951} m_Layer: 0 m_Name: enemy1 m_TagString: Untagged @@ -29,13 +29,13 @@ Transform: m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 100000} + serializedVersion: 2 m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: -2.521718, y: 0.97297525, z: 2.9156828} m_LocalScale: {x: 1, y: 1, z: 1} m_ConstrainProportionsScale: 0 m_Children: [] m_Father: {fileID: 0} - m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!212 &21200000 SpriteRenderer: @@ -89,6 +89,27 @@ SpriteRenderer: m_WasSpriteAssigned: 1 m_MaskInteraction: 0 m_SpriteSortPoint: 0 +--- !u!114 &2037077820506562951 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 100000} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: d5a57f767e5e46a458fc5d3c628d0cbb, type: 3} + m_Name: + m_EditorClassIdentifier: + GlobalObjectIdHash: 416377817 + InScenePlacedSourceGlobalObjectIdHash: 0 + AlwaysReplicateAsRoot: 0 + SynchronizeTransform: 1 + ActiveSceneSynchronization: 0 + SceneMigrationSynchronization: 1 + SpawnWithObservers: 1 + DontDestroyWithOwner: 0 + AutoObjectParentSync: 1 --- !u!114 &11400000 MonoBehaviour: m_ObjectHideFlags: 0 @@ -114,6 +135,25 @@ BoxCollider2D: m_Enabled: 1 m_Density: 1 m_Material: {fileID: 0} + m_IncludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_ExcludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_LayerOverridePriority: 0 + m_ForceSendLayers: + serializedVersion: 2 + m_Bits: 4294967295 + m_ForceReceiveLayers: + serializedVersion: 2 + m_Bits: 4294967295 + m_ContactCaptureLayers: + serializedVersion: 2 + m_Bits: 4294967295 + m_CallbackLayers: + serializedVersion: 2 + m_Bits: 4294967295 m_IsTrigger: 0 m_UsedByEffector: 0 m_UsedByComposite: 0 @@ -147,6 +187,12 @@ Rigidbody2D: m_AngularDrag: 0.05 m_GravityScale: 0 m_Material: {fileID: 0} + m_IncludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_ExcludeLayers: + serializedVersion: 2 + m_Bits: 0 m_Interpolate: 0 m_SleepingMode: 1 m_CollisionDetection: 0 @@ -163,34 +209,22 @@ MonoBehaviour: m_Script: {fileID: 11500000, guid: e96cb6065543e43c4a752faaa1468eb1, type: 3} m_Name: m_EditorClassIdentifier: + UseUnreliableDeltas: 0 SyncPositionX: 1 SyncPositionY: 1 - SyncPositionZ: 1 - SyncRotAngleX: 1 - SyncRotAngleY: 1 - SyncRotAngleZ: 1 - SyncScaleX: 1 - SyncScaleY: 1 - SyncScaleZ: 1 + SyncPositionZ: 0 + SyncRotAngleX: 0 + SyncRotAngleY: 0 + SyncRotAngleZ: 0 + SyncScaleX: 0 + SyncScaleY: 0 + SyncScaleZ: 0 PositionThreshold: 0 RotAngleThreshold: 0 ScaleThreshold: 0 + UseQuaternionSynchronization: 0 + UseQuaternionCompression: 0 + UseHalfFloatPrecision: 0 InLocalSpace: 0 - Interpolate: 1 - CanCommitToTransform: 0 ---- !u!114 &2037077820506562951 -MonoBehaviour: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 100000} - m_Enabled: 1 - m_EditorHideFlags: 0 - m_Script: {fileID: 11500000, guid: d5a57f767e5e46a458fc5d3c628d0cbb, type: 3} - m_Name: - m_EditorClassIdentifier: - GlobalObjectIdHash: 951099334 - AlwaysReplicateAsRoot: 0 - DontDestroyWithOwner: 0 - AutoObjectParentSync: 1 + Interpolate: 0 + SlerpPosition: 0 diff --git a/Basic/Invaders/Assets/Prefabs/enemy2.prefab b/Basic/Invaders/Assets/Prefabs/enemy2.prefab index e86bcfee4..0c4058589 100644 --- a/Basic/Invaders/Assets/Prefabs/enemy2.prefab +++ b/Basic/Invaders/Assets/Prefabs/enemy2.prefab @@ -10,11 +10,11 @@ GameObject: m_Component: - component: {fileID: 400000} - component: {fileID: 21200000} + - component: {fileID: 1361474663871475650} - component: {fileID: 11400000} - component: {fileID: 6100000} - component: {fileID: 5000000} - component: {fileID: 8401436849663568366} - - component: {fileID: 1361474663871475650} m_Layer: 0 m_Name: enemy2 m_TagString: Untagged @@ -29,12 +29,13 @@ Transform: m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 100000} + serializedVersion: 2 m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: -3.3369913, y: 1.6158211, z: 5.338147} m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 m_Children: [] m_Father: {fileID: 0} - m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!212 &21200000 SpriteRenderer: @@ -47,6 +48,7 @@ SpriteRenderer: m_CastShadows: 0 m_ReceiveShadows: 0 m_DynamicOccludee: 1 + m_StaticShadowCaster: 0 m_MotionVectors: 1 m_LightProbeUsage: 0 m_ReflectionProbeUsage: 0 @@ -87,6 +89,27 @@ SpriteRenderer: m_WasSpriteAssigned: 1 m_MaskInteraction: 0 m_SpriteSortPoint: 0 +--- !u!114 &1361474663871475650 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 100000} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: d5a57f767e5e46a458fc5d3c628d0cbb, type: 3} + m_Name: + m_EditorClassIdentifier: + GlobalObjectIdHash: 3854485402 + InScenePlacedSourceGlobalObjectIdHash: 0 + AlwaysReplicateAsRoot: 0 + SynchronizeTransform: 1 + ActiveSceneSynchronization: 0 + SceneMigrationSynchronization: 1 + SpawnWithObservers: 1 + DontDestroyWithOwner: 0 + AutoObjectParentSync: 1 --- !u!114 &11400000 MonoBehaviour: m_ObjectHideFlags: 0 @@ -112,6 +135,25 @@ BoxCollider2D: m_Enabled: 1 m_Density: 1 m_Material: {fileID: 0} + m_IncludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_ExcludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_LayerOverridePriority: 0 + m_ForceSendLayers: + serializedVersion: 2 + m_Bits: 4294967295 + m_ForceReceiveLayers: + serializedVersion: 2 + m_Bits: 4294967295 + m_ContactCaptureLayers: + serializedVersion: 2 + m_Bits: 4294967295 + m_CallbackLayers: + serializedVersion: 2 + m_Bits: 4294967295 m_IsTrigger: 0 m_UsedByEffector: 0 m_UsedByComposite: 0 @@ -145,6 +187,12 @@ Rigidbody2D: m_AngularDrag: 0.05 m_GravityScale: 0 m_Material: {fileID: 0} + m_IncludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_ExcludeLayers: + serializedVersion: 2 + m_Bits: 0 m_Interpolate: 0 m_SleepingMode: 1 m_CollisionDetection: 0 @@ -161,34 +209,22 @@ MonoBehaviour: m_Script: {fileID: 11500000, guid: e96cb6065543e43c4a752faaa1468eb1, type: 3} m_Name: m_EditorClassIdentifier: + UseUnreliableDeltas: 0 SyncPositionX: 1 SyncPositionY: 1 - SyncPositionZ: 1 - SyncRotAngleX: 1 - SyncRotAngleY: 1 - SyncRotAngleZ: 1 - SyncScaleX: 1 - SyncScaleY: 1 - SyncScaleZ: 1 + SyncPositionZ: 0 + SyncRotAngleX: 0 + SyncRotAngleY: 0 + SyncRotAngleZ: 0 + SyncScaleX: 0 + SyncScaleY: 0 + SyncScaleZ: 0 PositionThreshold: 0 RotAngleThreshold: 0 ScaleThreshold: 0 + UseQuaternionSynchronization: 0 + UseQuaternionCompression: 0 + UseHalfFloatPrecision: 0 InLocalSpace: 0 - Interpolate: 1 - CanCommitToTransform: 0 ---- !u!114 &1361474663871475650 -MonoBehaviour: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 100000} - m_Enabled: 1 - m_EditorHideFlags: 0 - m_Script: {fileID: 11500000, guid: d5a57f767e5e46a458fc5d3c628d0cbb, type: 3} - m_Name: - m_EditorClassIdentifier: - GlobalObjectIdHash: 951099334 - AlwaysReplicateAsRoot: 0 - DontDestroyWithOwner: 0 - AutoObjectParentSync: 1 + Interpolate: 0 + SlerpPosition: 0 diff --git a/Basic/Invaders/Assets/Prefabs/enemy3.prefab b/Basic/Invaders/Assets/Prefabs/enemy3.prefab index f34820bb4..d313ec527 100644 --- a/Basic/Invaders/Assets/Prefabs/enemy3.prefab +++ b/Basic/Invaders/Assets/Prefabs/enemy3.prefab @@ -10,11 +10,11 @@ GameObject: m_Component: - component: {fileID: 400000} - component: {fileID: 21200000} + - component: {fileID: 7651551376209856180} - component: {fileID: 11400000} - component: {fileID: 6100000} - component: {fileID: 5000000} - component: {fileID: 8349640660830732066} - - component: {fileID: 7651551376209856180} m_Layer: 0 m_Name: enemy3 m_TagString: Untagged @@ -29,12 +29,13 @@ Transform: m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 100000} + serializedVersion: 2 m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: -2.877448, y: 1.0368326, z: 3.9234695} m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 m_Children: [] m_Father: {fileID: 0} - m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!212 &21200000 SpriteRenderer: @@ -47,6 +48,7 @@ SpriteRenderer: m_CastShadows: 0 m_ReceiveShadows: 0 m_DynamicOccludee: 1 + m_StaticShadowCaster: 0 m_MotionVectors: 1 m_LightProbeUsage: 0 m_ReflectionProbeUsage: 0 @@ -87,6 +89,27 @@ SpriteRenderer: m_WasSpriteAssigned: 1 m_MaskInteraction: 0 m_SpriteSortPoint: 0 +--- !u!114 &7651551376209856180 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 100000} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: d5a57f767e5e46a458fc5d3c628d0cbb, type: 3} + m_Name: + m_EditorClassIdentifier: + GlobalObjectIdHash: 3432298371 + InScenePlacedSourceGlobalObjectIdHash: 0 + AlwaysReplicateAsRoot: 0 + SynchronizeTransform: 1 + ActiveSceneSynchronization: 0 + SceneMigrationSynchronization: 1 + SpawnWithObservers: 1 + DontDestroyWithOwner: 0 + AutoObjectParentSync: 1 --- !u!114 &11400000 MonoBehaviour: m_ObjectHideFlags: 0 @@ -112,6 +135,25 @@ BoxCollider2D: m_Enabled: 1 m_Density: 1 m_Material: {fileID: 0} + m_IncludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_ExcludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_LayerOverridePriority: 0 + m_ForceSendLayers: + serializedVersion: 2 + m_Bits: 4294967295 + m_ForceReceiveLayers: + serializedVersion: 2 + m_Bits: 4294967295 + m_ContactCaptureLayers: + serializedVersion: 2 + m_Bits: 4294967295 + m_CallbackLayers: + serializedVersion: 2 + m_Bits: 4294967295 m_IsTrigger: 0 m_UsedByEffector: 0 m_UsedByComposite: 0 @@ -145,6 +187,12 @@ Rigidbody2D: m_AngularDrag: 0.05 m_GravityScale: 0 m_Material: {fileID: 0} + m_IncludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_ExcludeLayers: + serializedVersion: 2 + m_Bits: 0 m_Interpolate: 0 m_SleepingMode: 1 m_CollisionDetection: 0 @@ -161,34 +209,22 @@ MonoBehaviour: m_Script: {fileID: 11500000, guid: e96cb6065543e43c4a752faaa1468eb1, type: 3} m_Name: m_EditorClassIdentifier: + UseUnreliableDeltas: 0 SyncPositionX: 1 SyncPositionY: 1 - SyncPositionZ: 1 - SyncRotAngleX: 1 - SyncRotAngleY: 1 - SyncRotAngleZ: 1 - SyncScaleX: 1 - SyncScaleY: 1 - SyncScaleZ: 1 + SyncPositionZ: 0 + SyncRotAngleX: 0 + SyncRotAngleY: 0 + SyncRotAngleZ: 0 + SyncScaleX: 0 + SyncScaleY: 0 + SyncScaleZ: 0 PositionThreshold: 0.001 RotAngleThreshold: 0.01 ScaleThreshold: 0.01 + UseQuaternionSynchronization: 0 + UseQuaternionCompression: 0 + UseHalfFloatPrecision: 0 InLocalSpace: 0 - Interpolate: 1 - CanCommitToTransform: 0 ---- !u!114 &7651551376209856180 -MonoBehaviour: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 100000} - m_Enabled: 1 - m_EditorHideFlags: 0 - m_Script: {fileID: 11500000, guid: d5a57f767e5e46a458fc5d3c628d0cbb, type: 3} - m_Name: - m_EditorClassIdentifier: - GlobalObjectIdHash: 951099334 - AlwaysReplicateAsRoot: 0 - DontDestroyWithOwner: 0 - AutoObjectParentSync: 1 + Interpolate: 0 + SlerpPosition: 0 diff --git a/Basic/Invaders/Assets/Prefabs/enemyBullet.prefab b/Basic/Invaders/Assets/Prefabs/enemyBullet.prefab index 1940b04fc..ac0908f49 100644 --- a/Basic/Invaders/Assets/Prefabs/enemyBullet.prefab +++ b/Basic/Invaders/Assets/Prefabs/enemyBullet.prefab @@ -11,9 +11,9 @@ GameObject: - component: {fileID: 400000} - component: {fileID: 21200000} - component: {fileID: 6100000} + - component: {fileID: 2336033219118315817} - component: {fileID: 11400000} - component: {fileID: 5000000} - - component: {fileID: 2336033219118315817} - component: {fileID: 5836440591138289839} m_Layer: 0 m_Name: enemyBullet @@ -29,12 +29,13 @@ Transform: m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 100000} + serializedVersion: 2 m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: -3.3057652, y: 1.3140826, z: 6.5037885} m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 m_Children: [] m_Father: {fileID: 0} - m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!212 &21200000 SpriteRenderer: @@ -47,6 +48,7 @@ SpriteRenderer: m_CastShadows: 0 m_ReceiveShadows: 0 m_DynamicOccludee: 1 + m_StaticShadowCaster: 0 m_MotionVectors: 1 m_LightProbeUsage: 0 m_ReflectionProbeUsage: 0 @@ -97,6 +99,25 @@ BoxCollider2D: m_Enabled: 1 m_Density: 1 m_Material: {fileID: 0} + m_IncludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_ExcludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_LayerOverridePriority: 0 + m_ForceSendLayers: + serializedVersion: 2 + m_Bits: 4294967295 + m_ForceReceiveLayers: + serializedVersion: 2 + m_Bits: 4294967295 + m_ContactCaptureLayers: + serializedVersion: 2 + m_Bits: 4294967295 + m_CallbackLayers: + serializedVersion: 2 + m_Bits: 4294967295 m_IsTrigger: 1 m_UsedByEffector: 0 m_UsedByComposite: 0 @@ -113,6 +134,27 @@ BoxCollider2D: serializedVersion: 2 m_Size: {x: 0.64, y: 0.64} m_EdgeRadius: 0 +--- !u!114 &2336033219118315817 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 100000} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: d5a57f767e5e46a458fc5d3c628d0cbb, type: 3} + m_Name: + m_EditorClassIdentifier: + GlobalObjectIdHash: 3981087544 + InScenePlacedSourceGlobalObjectIdHash: 0 + AlwaysReplicateAsRoot: 0 + SynchronizeTransform: 1 + ActiveSceneSynchronization: 0 + SceneMigrationSynchronization: 1 + SpawnWithObservers: 1 + DontDestroyWithOwner: 0 + AutoObjectParentSync: 1 --- !u!114 &11400000 MonoBehaviour: m_ObjectHideFlags: 0 @@ -145,26 +187,16 @@ Rigidbody2D: m_AngularDrag: 0.05 m_GravityScale: 0 m_Material: {fileID: 0} + m_IncludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_ExcludeLayers: + serializedVersion: 2 + m_Bits: 0 m_Interpolate: 0 m_SleepingMode: 1 m_CollisionDetection: 0 m_Constraints: 0 ---- !u!114 &2336033219118315817 -MonoBehaviour: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 100000} - m_Enabled: 1 - m_EditorHideFlags: 0 - m_Script: {fileID: 11500000, guid: d5a57f767e5e46a458fc5d3c628d0cbb, type: 3} - m_Name: - m_EditorClassIdentifier: - GlobalObjectIdHash: 951099334 - AlwaysReplicateAsRoot: 0 - DontDestroyWithOwner: 0 - AutoObjectParentSync: 1 --- !u!114 &5836440591138289839 MonoBehaviour: m_ObjectHideFlags: 0 @@ -177,18 +209,22 @@ MonoBehaviour: m_Script: {fileID: 11500000, guid: e96cb6065543e43c4a752faaa1468eb1, type: 3} m_Name: m_EditorClassIdentifier: + UseUnreliableDeltas: 0 SyncPositionX: 1 SyncPositionY: 1 - SyncPositionZ: 1 - SyncRotAngleX: 1 - SyncRotAngleY: 1 - SyncRotAngleZ: 1 - SyncScaleX: 1 - SyncScaleY: 1 - SyncScaleZ: 1 + SyncPositionZ: 0 + SyncRotAngleX: 0 + SyncRotAngleY: 0 + SyncRotAngleZ: 0 + SyncScaleX: 0 + SyncScaleY: 0 + SyncScaleZ: 0 PositionThreshold: 0.001 RotAngleThreshold: 0.01 ScaleThreshold: 0.01 + UseQuaternionSynchronization: 0 + UseQuaternionCompression: 0 + UseHalfFloatPrecision: 0 InLocalSpace: 0 - Interpolate: 1 - CanCommitToTransform: 0 + Interpolate: 0 + SlerpPosition: 0 diff --git a/Basic/Invaders/Assets/Prefabs/player.prefab b/Basic/Invaders/Assets/Prefabs/player.prefab index 9aa0d647d..7eec7f0c4 100644 --- a/Basic/Invaders/Assets/Prefabs/player.prefab +++ b/Basic/Invaders/Assets/Prefabs/player.prefab @@ -10,10 +10,10 @@ GameObject: m_Component: - component: {fileID: 400000} - component: {fileID: 21200000} + - component: {fileID: 5053919295125167455} - component: {fileID: 11400000} - component: {fileID: 6100000} - component: {fileID: 5000000} - - component: {fileID: 5053919295125167455} - component: {fileID: 2800302518702725854} m_Layer: 0 m_Name: player @@ -29,13 +29,13 @@ Transform: m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 100000} + serializedVersion: 2 m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: -3.2296677, y: 1.0967851, z: 6.24889} m_LocalScale: {x: 1, y: 1, z: 1} m_ConstrainProportionsScale: 0 m_Children: [] m_Father: {fileID: 0} - m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!212 &21200000 SpriteRenderer: @@ -89,6 +89,26 @@ SpriteRenderer: m_WasSpriteAssigned: 1 m_MaskInteraction: 0 m_SpriteSortPoint: 0 +--- !u!114 &5053919295125167455 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 100000} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: d5a57f767e5e46a458fc5d3c628d0cbb, type: 3} + m_Name: + m_EditorClassIdentifier: + GlobalObjectIdHash: 915374853 + AlwaysReplicateAsRoot: 0 + SynchronizeTransform: 1 + ActiveSceneSynchronization: 0 + SceneMigrationSynchronization: 1 + SpawnWithObservers: 1 + DontDestroyWithOwner: 0 + AutoObjectParentSync: 1 --- !u!114 &11400000 MonoBehaviour: m_ObjectHideFlags: 0 @@ -121,6 +141,25 @@ BoxCollider2D: m_Enabled: 1 m_Density: 1 m_Material: {fileID: 0} + m_IncludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_ExcludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_LayerOverridePriority: 0 + m_ForceSendLayers: + serializedVersion: 2 + m_Bits: 4294967295 + m_ForceReceiveLayers: + serializedVersion: 2 + m_Bits: 4294967295 + m_ContactCaptureLayers: + serializedVersion: 2 + m_Bits: 4294967295 + m_CallbackLayers: + serializedVersion: 2 + m_Bits: 4294967295 m_IsTrigger: 1 m_UsedByEffector: 0 m_UsedByComposite: 0 @@ -154,26 +193,16 @@ Rigidbody2D: m_AngularDrag: 0.05 m_GravityScale: 0 m_Material: {fileID: 0} + m_IncludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_ExcludeLayers: + serializedVersion: 2 + m_Bits: 0 m_Interpolate: 0 m_SleepingMode: 1 m_CollisionDetection: 0 m_Constraints: 0 ---- !u!114 &5053919295125167455 -MonoBehaviour: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 100000} - m_Enabled: 1 - m_EditorHideFlags: 0 - m_Script: {fileID: 11500000, guid: d5a57f767e5e46a458fc5d3c628d0cbb, type: 3} - m_Name: - m_EditorClassIdentifier: - GlobalObjectIdHash: 951099334 - AlwaysReplicateAsRoot: 0 - DontDestroyWithOwner: 0 - AutoObjectParentSync: 1 --- !u!114 &2800302518702725854 MonoBehaviour: m_ObjectHideFlags: 0 @@ -198,5 +227,9 @@ MonoBehaviour: PositionThreshold: 0.001 RotAngleThreshold: 0.01 ScaleThreshold: 0.01 + UseQuaternionSynchronization: 0 + UseQuaternionCompression: 0 + UseHalfFloatPrecision: 0 InLocalSpace: 0 - Interpolate: 1 + Interpolate: 0 + SlerpPosition: 0 diff --git a/Basic/Invaders/Assets/Prefabs/shield.prefab b/Basic/Invaders/Assets/Prefabs/shield.prefab index 9864a41a9..54567f76a 100644 --- a/Basic/Invaders/Assets/Prefabs/shield.prefab +++ b/Basic/Invaders/Assets/Prefabs/shield.prefab @@ -29,12 +29,13 @@ Transform: m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 100000} + serializedVersion: 2 m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: -2.8967056, y: 0.35681152, z: 7.338209} m_LocalScale: {x: 0.42991, y: 0.42991, z: 0.42991} + m_ConstrainProportionsScale: 0 m_Children: [] m_Father: {fileID: 0} - m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!212 &21200000 SpriteRenderer: @@ -47,6 +48,7 @@ SpriteRenderer: m_CastShadows: 0 m_ReceiveShadows: 0 m_DynamicOccludee: 1 + m_StaticShadowCaster: 0 m_MotionVectors: 1 m_LightProbeUsage: 0 m_ReflectionProbeUsage: 0 @@ -104,6 +106,12 @@ Rigidbody2D: m_AngularDrag: 0.05 m_GravityScale: 0 m_Material: {fileID: 0} + m_IncludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_ExcludeLayers: + serializedVersion: 2 + m_Bits: 0 m_Interpolate: 0 m_SleepingMode: 1 m_CollisionDetection: 0 @@ -118,6 +126,25 @@ BoxCollider2D: m_Enabled: 1 m_Density: 1 m_Material: {fileID: 0} + m_IncludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_ExcludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_LayerOverridePriority: 0 + m_ForceSendLayers: + serializedVersion: 2 + m_Bits: 4294967295 + m_ForceReceiveLayers: + serializedVersion: 2 + m_Bits: 4294967295 + m_ContactCaptureLayers: + serializedVersion: 2 + m_Bits: 4294967295 + m_CallbackLayers: + serializedVersion: 2 + m_Bits: 4294967295 m_IsTrigger: 1 m_UsedByEffector: 0 m_UsedByComposite: 0 @@ -158,8 +185,13 @@ MonoBehaviour: m_Script: {fileID: 11500000, guid: d5a57f767e5e46a458fc5d3c628d0cbb, type: 3} m_Name: m_EditorClassIdentifier: - GlobalObjectIdHash: 951099334 + GlobalObjectIdHash: 3914002580 + InScenePlacedSourceGlobalObjectIdHash: 0 AlwaysReplicateAsRoot: 0 + SynchronizeTransform: 1 + ActiveSceneSynchronization: 0 + SceneMigrationSynchronization: 1 + SpawnWithObservers: 1 DontDestroyWithOwner: 0 AutoObjectParentSync: 1 --- !u!114 &8844355272195160781 @@ -174,18 +206,22 @@ MonoBehaviour: m_Script: {fileID: 11500000, guid: e96cb6065543e43c4a752faaa1468eb1, type: 3} m_Name: m_EditorClassIdentifier: - SyncPositionX: 1 - SyncPositionY: 1 - SyncPositionZ: 1 - SyncRotAngleX: 1 - SyncRotAngleY: 1 - SyncRotAngleZ: 1 - SyncScaleX: 1 - SyncScaleY: 1 - SyncScaleZ: 1 + UseUnreliableDeltas: 0 + SyncPositionX: 0 + SyncPositionY: 0 + SyncPositionZ: 0 + SyncRotAngleX: 0 + SyncRotAngleY: 0 + SyncRotAngleZ: 0 + SyncScaleX: 0 + SyncScaleY: 0 + SyncScaleZ: 0 PositionThreshold: 0.001 RotAngleThreshold: 0.01 ScaleThreshold: 0.01 + UseQuaternionSynchronization: 0 + UseQuaternionCompression: 0 + UseHalfFloatPrecision: 0 InLocalSpace: 0 - Interpolate: 1 - CanCommitToTransform: 0 + Interpolate: 0 + SlerpPosition: 0 diff --git a/Basic/Invaders/Assets/Prefabs/superEnemy.prefab b/Basic/Invaders/Assets/Prefabs/superEnemy.prefab index 8988a409b..0447590eb 100644 --- a/Basic/Invaders/Assets/Prefabs/superEnemy.prefab +++ b/Basic/Invaders/Assets/Prefabs/superEnemy.prefab @@ -11,11 +11,11 @@ GameObject: - component: {fileID: 400000} - component: {fileID: 21200000} - component: {fileID: 5000000} + - component: {fileID: 3955316467729786863} - component: {fileID: 11400006} - component: {fileID: 11400004} - component: {fileID: 6100000} - component: {fileID: 8984612552865464625} - - component: {fileID: 3955316467729786863} m_Layer: 0 m_Name: superEnemy m_TagString: Untagged @@ -30,12 +30,13 @@ Transform: m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 100000} + serializedVersion: 2 m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 1.2698746, y: 0.8354411, z: -1.6262951} m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 m_Children: [] m_Father: {fileID: 0} - m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!212 &21200000 SpriteRenderer: @@ -48,6 +49,7 @@ SpriteRenderer: m_CastShadows: 0 m_ReceiveShadows: 0 m_DynamicOccludee: 1 + m_StaticShadowCaster: 0 m_MotionVectors: 1 m_LightProbeUsage: 0 m_ReflectionProbeUsage: 0 @@ -105,10 +107,37 @@ Rigidbody2D: m_AngularDrag: 0.05 m_GravityScale: 0 m_Material: {fileID: 0} + m_IncludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_ExcludeLayers: + serializedVersion: 2 + m_Bits: 0 m_Interpolate: 0 m_SleepingMode: 1 m_CollisionDetection: 0 m_Constraints: 0 +--- !u!114 &3955316467729786863 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 100000} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: d5a57f767e5e46a458fc5d3c628d0cbb, type: 3} + m_Name: + m_EditorClassIdentifier: + GlobalObjectIdHash: 1887726101 + InScenePlacedSourceGlobalObjectIdHash: 0 + AlwaysReplicateAsRoot: 0 + SynchronizeTransform: 1 + ActiveSceneSynchronization: 0 + SceneMigrationSynchronization: 1 + SpawnWithObservers: 1 + DontDestroyWithOwner: 0 + AutoObjectParentSync: 1 --- !u!114 &11400006 MonoBehaviour: m_ObjectHideFlags: 0 @@ -147,6 +176,25 @@ BoxCollider2D: m_Enabled: 1 m_Density: 1 m_Material: {fileID: 0} + m_IncludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_ExcludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_LayerOverridePriority: 0 + m_ForceSendLayers: + serializedVersion: 2 + m_Bits: 4294967295 + m_ForceReceiveLayers: + serializedVersion: 2 + m_Bits: 4294967295 + m_ContactCaptureLayers: + serializedVersion: 2 + m_Bits: 4294967295 + m_CallbackLayers: + serializedVersion: 2 + m_Bits: 4294967295 m_IsTrigger: 0 m_UsedByEffector: 0 m_UsedByComposite: 0 @@ -175,34 +223,22 @@ MonoBehaviour: m_Script: {fileID: 11500000, guid: e96cb6065543e43c4a752faaa1468eb1, type: 3} m_Name: m_EditorClassIdentifier: + UseUnreliableDeltas: 0 SyncPositionX: 1 - SyncPositionY: 1 - SyncPositionZ: 1 - SyncRotAngleX: 1 - SyncRotAngleY: 1 - SyncRotAngleZ: 1 - SyncScaleX: 1 - SyncScaleY: 1 - SyncScaleZ: 1 + SyncPositionY: 0 + SyncPositionZ: 0 + SyncRotAngleX: 0 + SyncRotAngleY: 0 + SyncRotAngleZ: 0 + SyncScaleX: 0 + SyncScaleY: 0 + SyncScaleZ: 0 PositionThreshold: 0.001 RotAngleThreshold: 0.01 ScaleThreshold: 0.01 + UseQuaternionSynchronization: 0 + UseQuaternionCompression: 0 + UseHalfFloatPrecision: 0 InLocalSpace: 0 Interpolate: 1 - CanCommitToTransform: 0 ---- !u!114 &3955316467729786863 -MonoBehaviour: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 100000} - m_Enabled: 1 - m_EditorHideFlags: 0 - m_Script: {fileID: 11500000, guid: d5a57f767e5e46a458fc5d3c628d0cbb, type: 3} - m_Name: - m_EditorClassIdentifier: - GlobalObjectIdHash: 951099334 - AlwaysReplicateAsRoot: 0 - DontDestroyWithOwner: 0 - AutoObjectParentSync: 1 + SlerpPosition: 0 From 432feee1806ceaf7f839b5767af37f4968d646af Mon Sep 17 00:00:00 2001 From: Bastien Humeau Date: Fri, 3 May 2024 14:28:27 -0400 Subject: [PATCH 2/4] Further refine network transform optimizations. --- .../Prefabs/Invaders Game Manager.prefab | 40 ++++++++++--------- .../Prefabs/SceneTransitionHandler.prefab | 27 ++++++++----- Basic/Invaders/Assets/Prefabs/bullet.prefab | 4 +- .../Assets/Prefabs/enemyBullet.prefab | 4 +- Basic/Invaders/Assets/Prefabs/shield.prefab | 33 --------------- .../Invaders/Assets/Prefabs/superEnemy.prefab | 4 +- 6 files changed, 41 insertions(+), 71 deletions(-) diff --git a/Basic/Invaders/Assets/Prefabs/Invaders Game Manager.prefab b/Basic/Invaders/Assets/Prefabs/Invaders Game Manager.prefab index 3b9b380f5..4c84cc439 100644 --- a/Basic/Invaders/Assets/Prefabs/Invaders Game Manager.prefab +++ b/Basic/Invaders/Assets/Prefabs/Invaders Game Manager.prefab @@ -9,8 +9,8 @@ GameObject: serializedVersion: 6 m_Component: - component: {fileID: 4266113290039088506} - - component: {fileID: 4266113290039088507} - component: {fileID: 2756959678467573149} + - component: {fileID: 4266113290039088507} m_Layer: 0 m_Name: Invaders Game Manager m_TagString: Untagged @@ -25,14 +25,34 @@ Transform: m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 4266113290039088508} + serializedVersion: 2 m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_ConstrainProportionsScale: 0 m_Children: [] m_Father: {fileID: 0} - m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!114 &2756959678467573149 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 4266113290039088508} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: d5a57f767e5e46a458fc5d3c628d0cbb, type: 3} + m_Name: + m_EditorClassIdentifier: + GlobalObjectIdHash: 2783302607 + AlwaysReplicateAsRoot: 0 + SynchronizeTransform: 1 + ActiveSceneSynchronization: 0 + SceneMigrationSynchronization: 1 + SpawnWithObservers: 1 + DontDestroyWithOwner: 0 + AutoObjectParentSync: 1 --- !u!114 &4266113290039088507 MonoBehaviour: m_ObjectHideFlags: 0 @@ -61,19 +81,3 @@ MonoBehaviour: m_EnemyMovingDirection: m_InternalValue: 0.3 m_RandomThresholdForSaucerCreation: 0.92 ---- !u!114 &2756959678467573149 -MonoBehaviour: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 4266113290039088508} - m_Enabled: 1 - m_EditorHideFlags: 0 - m_Script: {fileID: 11500000, guid: d5a57f767e5e46a458fc5d3c628d0cbb, type: 3} - m_Name: - m_EditorClassIdentifier: - GlobalObjectIdHash: 951099334 - AlwaysReplicateAsRoot: 0 - DontDestroyWithOwner: 0 - AutoObjectParentSync: 1 diff --git a/Basic/Invaders/Assets/Prefabs/SceneTransitionHandler.prefab b/Basic/Invaders/Assets/Prefabs/SceneTransitionHandler.prefab index 8978380e8..706e2c0d5 100644 --- a/Basic/Invaders/Assets/Prefabs/SceneTransitionHandler.prefab +++ b/Basic/Invaders/Assets/Prefabs/SceneTransitionHandler.prefab @@ -9,8 +9,8 @@ GameObject: serializedVersion: 6 m_Component: - component: {fileID: 7334280962834855337} - - component: {fileID: 7334280962834855336} - component: {fileID: 7334280962834855351} + - component: {fileID: 7334280962834855336} m_Layer: 0 m_Name: SceneTransitionHandler m_TagString: Untagged @@ -25,14 +25,15 @@ Transform: m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 7334280962834855350} + serializedVersion: 2 m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 m_Children: [] m_Father: {fileID: 0} - m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} ---- !u!114 &7334280962834855336 +--- !u!114 &7334280962834855351 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} @@ -41,11 +42,18 @@ MonoBehaviour: m_GameObject: {fileID: 7334280962834855350} m_Enabled: 1 m_EditorHideFlags: 0 - m_Script: {fileID: 11500000, guid: 5ea5becd79dc277409330648bf627a3e, type: 3} + m_Script: {fileID: 11500000, guid: d5a57f767e5e46a458fc5d3c628d0cbb, type: 3} m_Name: m_EditorClassIdentifier: - DefaultMainMenu: StartMenu ---- !u!114 &7334280962834855351 + GlobalObjectIdHash: 2497611861 + AlwaysReplicateAsRoot: 0 + SynchronizeTransform: 1 + ActiveSceneSynchronization: 0 + SceneMigrationSynchronization: 1 + SpawnWithObservers: 1 + DontDestroyWithOwner: 0 + AutoObjectParentSync: 1 +--- !u!114 &7334280962834855336 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} @@ -54,10 +62,7 @@ MonoBehaviour: m_GameObject: {fileID: 7334280962834855350} m_Enabled: 1 m_EditorHideFlags: 0 - m_Script: {fileID: 11500000, guid: d5a57f767e5e46a458fc5d3c628d0cbb, type: 3} + m_Script: {fileID: 11500000, guid: 5ea5becd79dc277409330648bf627a3e, type: 3} m_Name: m_EditorClassIdentifier: - GlobalObjectIdHash: 951099334 - AlwaysReplicateAsRoot: 0 - DontDestroyWithOwner: 0 - AutoObjectParentSync: 1 + DefaultMainMenu: StartMenu diff --git a/Basic/Invaders/Assets/Prefabs/bullet.prefab b/Basic/Invaders/Assets/Prefabs/bullet.prefab index 864950853..633874aec 100644 --- a/Basic/Invaders/Assets/Prefabs/bullet.prefab +++ b/Basic/Invaders/Assets/Prefabs/bullet.prefab @@ -102,7 +102,6 @@ MonoBehaviour: m_Name: m_EditorClassIdentifier: GlobalObjectIdHash: 3008223376 - InScenePlacedSourceGlobalObjectIdHash: 0 AlwaysReplicateAsRoot: 0 SynchronizeTransform: 1 ActiveSceneSynchronization: 0 @@ -210,8 +209,7 @@ MonoBehaviour: m_Script: {fileID: 11500000, guid: e96cb6065543e43c4a752faaa1468eb1, type: 3} m_Name: m_EditorClassIdentifier: - UseUnreliableDeltas: 0 - SyncPositionX: 1 + SyncPositionX: 0 SyncPositionY: 1 SyncPositionZ: 0 SyncRotAngleX: 0 diff --git a/Basic/Invaders/Assets/Prefabs/enemyBullet.prefab b/Basic/Invaders/Assets/Prefabs/enemyBullet.prefab index ac0908f49..115f17fe0 100644 --- a/Basic/Invaders/Assets/Prefabs/enemyBullet.prefab +++ b/Basic/Invaders/Assets/Prefabs/enemyBullet.prefab @@ -147,7 +147,6 @@ MonoBehaviour: m_Name: m_EditorClassIdentifier: GlobalObjectIdHash: 3981087544 - InScenePlacedSourceGlobalObjectIdHash: 0 AlwaysReplicateAsRoot: 0 SynchronizeTransform: 1 ActiveSceneSynchronization: 0 @@ -209,8 +208,7 @@ MonoBehaviour: m_Script: {fileID: 11500000, guid: e96cb6065543e43c4a752faaa1468eb1, type: 3} m_Name: m_EditorClassIdentifier: - UseUnreliableDeltas: 0 - SyncPositionX: 1 + SyncPositionX: 0 SyncPositionY: 1 SyncPositionZ: 0 SyncRotAngleX: 0 diff --git a/Basic/Invaders/Assets/Prefabs/shield.prefab b/Basic/Invaders/Assets/Prefabs/shield.prefab index 54567f76a..b39366914 100644 --- a/Basic/Invaders/Assets/Prefabs/shield.prefab +++ b/Basic/Invaders/Assets/Prefabs/shield.prefab @@ -14,7 +14,6 @@ GameObject: - component: {fileID: 6100000} - component: {fileID: 11400000} - component: {fileID: 6564576217164106930} - - component: {fileID: 8844355272195160781} m_Layer: 0 m_Name: shield m_TagString: Untagged @@ -186,7 +185,6 @@ MonoBehaviour: m_Name: m_EditorClassIdentifier: GlobalObjectIdHash: 3914002580 - InScenePlacedSourceGlobalObjectIdHash: 0 AlwaysReplicateAsRoot: 0 SynchronizeTransform: 1 ActiveSceneSynchronization: 0 @@ -194,34 +192,3 @@ MonoBehaviour: SpawnWithObservers: 1 DontDestroyWithOwner: 0 AutoObjectParentSync: 1 ---- !u!114 &8844355272195160781 -MonoBehaviour: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 100000} - m_Enabled: 1 - m_EditorHideFlags: 0 - m_Script: {fileID: 11500000, guid: e96cb6065543e43c4a752faaa1468eb1, type: 3} - m_Name: - m_EditorClassIdentifier: - UseUnreliableDeltas: 0 - SyncPositionX: 0 - SyncPositionY: 0 - SyncPositionZ: 0 - SyncRotAngleX: 0 - SyncRotAngleY: 0 - SyncRotAngleZ: 0 - SyncScaleX: 0 - SyncScaleY: 0 - SyncScaleZ: 0 - PositionThreshold: 0.001 - RotAngleThreshold: 0.01 - ScaleThreshold: 0.01 - UseQuaternionSynchronization: 0 - UseQuaternionCompression: 0 - UseHalfFloatPrecision: 0 - InLocalSpace: 0 - Interpolate: 0 - SlerpPosition: 0 diff --git a/Basic/Invaders/Assets/Prefabs/superEnemy.prefab b/Basic/Invaders/Assets/Prefabs/superEnemy.prefab index 0447590eb..ac87fa81a 100644 --- a/Basic/Invaders/Assets/Prefabs/superEnemy.prefab +++ b/Basic/Invaders/Assets/Prefabs/superEnemy.prefab @@ -130,7 +130,6 @@ MonoBehaviour: m_Name: m_EditorClassIdentifier: GlobalObjectIdHash: 1887726101 - InScenePlacedSourceGlobalObjectIdHash: 0 AlwaysReplicateAsRoot: 0 SynchronizeTransform: 1 ActiveSceneSynchronization: 0 @@ -223,7 +222,6 @@ MonoBehaviour: m_Script: {fileID: 11500000, guid: e96cb6065543e43c4a752faaa1468eb1, type: 3} m_Name: m_EditorClassIdentifier: - UseUnreliableDeltas: 0 SyncPositionX: 1 SyncPositionY: 0 SyncPositionZ: 0 @@ -240,5 +238,5 @@ MonoBehaviour: UseQuaternionCompression: 0 UseHalfFloatPrecision: 0 InLocalSpace: 0 - Interpolate: 1 + Interpolate: 0 SlerpPosition: 0 From 8ff930028350db14e06145148f747e27a1d41d2f Mon Sep 17 00:00:00 2001 From: Bastien Humeau Date: Fri, 3 May 2024 14:47:11 -0400 Subject: [PATCH 3/4] Updated changelog --- CHANGELOG.md | 3 +++ 1 file changed, 3 insertions(+) diff --git a/CHANGELOG.md b/CHANGELOG.md index aa6e7e971..8375cb1e4 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -39,6 +39,9 @@ #### Changed - Upgraded to IDE Rider v3.0.28 (#166) +#### Fixed +- Optimized NetworkTransform on all networked prefabs so the Clients objects movements are closer to the Host ones (#168) + ## [1.5.0] 2023-12-15 ### Bitesize Samples Repository From 58580c2877cb7dbe5356362bdab86995a5148978 Mon Sep 17 00:00:00 2001 From: Bastien Humeau Date: Mon, 13 May 2024 16:09:33 -0400 Subject: [PATCH 4/4] Reverting two manager prefabs that were changed inadvertently --- .../Prefabs/Invaders Game Manager.prefab | 40 +++++++++---------- .../Prefabs/SceneTransitionHandler.prefab | 27 +++++-------- 2 files changed, 29 insertions(+), 38 deletions(-) diff --git a/Basic/Invaders/Assets/Prefabs/Invaders Game Manager.prefab b/Basic/Invaders/Assets/Prefabs/Invaders Game Manager.prefab index 4c84cc439..3b9b380f5 100644 --- a/Basic/Invaders/Assets/Prefabs/Invaders Game Manager.prefab +++ b/Basic/Invaders/Assets/Prefabs/Invaders Game Manager.prefab @@ -9,8 +9,8 @@ GameObject: serializedVersion: 6 m_Component: - component: {fileID: 4266113290039088506} - - component: {fileID: 2756959678467573149} - component: {fileID: 4266113290039088507} + - component: {fileID: 2756959678467573149} m_Layer: 0 m_Name: Invaders Game Manager m_TagString: Untagged @@ -25,34 +25,14 @@ Transform: m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 4266113290039088508} - serializedVersion: 2 m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_ConstrainProportionsScale: 0 m_Children: [] m_Father: {fileID: 0} + m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} ---- !u!114 &2756959678467573149 -MonoBehaviour: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 4266113290039088508} - m_Enabled: 1 - m_EditorHideFlags: 0 - m_Script: {fileID: 11500000, guid: d5a57f767e5e46a458fc5d3c628d0cbb, type: 3} - m_Name: - m_EditorClassIdentifier: - GlobalObjectIdHash: 2783302607 - AlwaysReplicateAsRoot: 0 - SynchronizeTransform: 1 - ActiveSceneSynchronization: 0 - SceneMigrationSynchronization: 1 - SpawnWithObservers: 1 - DontDestroyWithOwner: 0 - AutoObjectParentSync: 1 --- !u!114 &4266113290039088507 MonoBehaviour: m_ObjectHideFlags: 0 @@ -81,3 +61,19 @@ MonoBehaviour: m_EnemyMovingDirection: m_InternalValue: 0.3 m_RandomThresholdForSaucerCreation: 0.92 +--- !u!114 &2756959678467573149 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 4266113290039088508} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: d5a57f767e5e46a458fc5d3c628d0cbb, type: 3} + m_Name: + m_EditorClassIdentifier: + GlobalObjectIdHash: 951099334 + AlwaysReplicateAsRoot: 0 + DontDestroyWithOwner: 0 + AutoObjectParentSync: 1 diff --git a/Basic/Invaders/Assets/Prefabs/SceneTransitionHandler.prefab b/Basic/Invaders/Assets/Prefabs/SceneTransitionHandler.prefab index 706e2c0d5..8978380e8 100644 --- a/Basic/Invaders/Assets/Prefabs/SceneTransitionHandler.prefab +++ b/Basic/Invaders/Assets/Prefabs/SceneTransitionHandler.prefab @@ -9,8 +9,8 @@ GameObject: serializedVersion: 6 m_Component: - component: {fileID: 7334280962834855337} - - component: {fileID: 7334280962834855351} - component: {fileID: 7334280962834855336} + - component: {fileID: 7334280962834855351} m_Layer: 0 m_Name: SceneTransitionHandler m_TagString: Untagged @@ -25,15 +25,14 @@ Transform: m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 7334280962834855350} - serializedVersion: 2 m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} - m_ConstrainProportionsScale: 0 m_Children: [] m_Father: {fileID: 0} + m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} ---- !u!114 &7334280962834855351 +--- !u!114 &7334280962834855336 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} @@ -42,18 +41,11 @@ MonoBehaviour: m_GameObject: {fileID: 7334280962834855350} m_Enabled: 1 m_EditorHideFlags: 0 - m_Script: {fileID: 11500000, guid: d5a57f767e5e46a458fc5d3c628d0cbb, type: 3} + m_Script: {fileID: 11500000, guid: 5ea5becd79dc277409330648bf627a3e, type: 3} m_Name: m_EditorClassIdentifier: - GlobalObjectIdHash: 2497611861 - AlwaysReplicateAsRoot: 0 - SynchronizeTransform: 1 - ActiveSceneSynchronization: 0 - SceneMigrationSynchronization: 1 - SpawnWithObservers: 1 - DontDestroyWithOwner: 0 - AutoObjectParentSync: 1 ---- !u!114 &7334280962834855336 + DefaultMainMenu: StartMenu +--- !u!114 &7334280962834855351 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} @@ -62,7 +54,10 @@ MonoBehaviour: m_GameObject: {fileID: 7334280962834855350} m_Enabled: 1 m_EditorHideFlags: 0 - m_Script: {fileID: 11500000, guid: 5ea5becd79dc277409330648bf627a3e, type: 3} + m_Script: {fileID: 11500000, guid: d5a57f767e5e46a458fc5d3c628d0cbb, type: 3} m_Name: m_EditorClassIdentifier: - DefaultMainMenu: StartMenu + GlobalObjectIdHash: 951099334 + AlwaysReplicateAsRoot: 0 + DontDestroyWithOwner: 0 + AutoObjectParentSync: 1