diff --git a/.yamato/project.metafile b/.yamato/project.metafile
index 482ca6f26..5b28d3c62 100644
--- a/.yamato/project.metafile
+++ b/.yamato/project.metafile
@@ -47,6 +47,6 @@ projects:
- name: multiplayerusecases
path: Basic/MultiplayerUseCases
test_editors:
- - 6000.0.17
+ - 6000.0.23
run_editor_tests: !!bool true
run_playmode_tests: !!bool false
\ No newline at end of file
diff --git a/Basic/MultiplayerUseCases/Assets/Editor/Tutorials/ProximityChecks/30-InspectTheCube1.asset b/Basic/MultiplayerUseCases/Assets/Editor/Tutorials/ProximityChecks/30-InspectTheCube1.asset
index 0311d827f..d55d14c57 100644
--- a/Basic/MultiplayerUseCases/Assets/Editor/Tutorials/ProximityChecks/30-InspectTheCube1.asset
+++ b/Basic/MultiplayerUseCases/Assets/Editor/Tutorials/ProximityChecks/30-InspectTheCube1.asset
@@ -21,8 +21,11 @@ MonoBehaviour:
m_Untranslated:
Text:
m_Untranslated:
+ m_CodeSample:
+ m_PostInstructionImage: {fileID: 0}
m_Tutorial: {fileID: 0}
m_Image: {fileID: 0}
+ m_VideoUrl:
m_Video: {fileID: 0}
m_CriteriaCompletion: 0
m_Criteria:
@@ -33,6 +36,7 @@ MonoBehaviour:
- m_SelectorType: 1
m_ViewType:
m_TypeName:
+ m_FocusEditorWindow: 0
m_EditorWindowType:
m_TypeName: UnityEditor.InspectorWindow, UnityEditor.CoreModule, Version=0.0.0.0,
Culture=neutral, PublicKeyToken=null
@@ -47,6 +51,7 @@ MonoBehaviour:
m_Text: ColorManager
m_Image: {fileID: 0}
m_Tooltip:
+ m_TextWithWhitespace:
m_ControlName:
m_PropertyPath:
m_TargetType:
@@ -57,8 +62,9 @@ MonoBehaviour:
m_SceneGuid: 9fc0d4010bbf28b4594072e72b8655ab
m_GameObjectGuid: 23f5c3a2-0ce1-4e20-9406-5fff9bf3874d
m_SerializedComponentType:
- m_TypeName: Unity.Netcode.Samples.MultiplayerUseCases.ColorManager, com.unity.samples.multiplayer-use-cases.rpcvsnetvar,
- Version=0.0.0.0, Culture=neutral, PublicKeyToken=null
+ m_TypeName: Unity.Netcode.Samples.MultiplayerUseCases.ColorManager,
+ com.unity.samples.multiplayer-use-cases.rpcvsnetvar, Version=0.0.0.0,
+ Culture=neutral, PublicKeyToken=null
m_ComponentIndex: 0
m_AssetObject: {fileID: 0}
m_Prefab: {fileID: 0}
@@ -72,6 +78,7 @@ MonoBehaviour:
m_Text: ColorManager
m_Image: {fileID: 0}
m_Tooltip:
+ m_TextWithWhitespace:
m_ControlName:
m_PropertyPath:
m_TargetType:
@@ -82,8 +89,9 @@ MonoBehaviour:
m_SceneGuid: 9fc0d4010bbf28b4594072e72b8655ab
m_GameObjectGuid: 23f5c3a2-0ce1-4e20-9406-5fff9bf3874d
m_SerializedComponentType:
- m_TypeName: Unity.Netcode.Samples.MultiplayerUseCases.ColorManager, com.unity.samples.multiplayer-use-cases.rpcvsnetvar,
- Version=0.0.0.0, Culture=neutral, PublicKeyToken=null
+ m_TypeName: Unity.Netcode.Samples.MultiplayerUseCases.ColorManager,
+ com.unity.samples.multiplayer-use-cases.rpcvsnetvar, Version=0.0.0.0,
+ Culture=neutral, PublicKeyToken=null
m_ComponentIndex: 0
m_AssetObject: {fileID: 0}
m_Prefab: {fileID: 0}
@@ -94,6 +102,7 @@ MonoBehaviour:
- m_SelectorType: 1
m_ViewType:
m_TypeName:
+ m_FocusEditorWindow: 0
m_EditorWindowType:
m_TypeName: UnityEditor.ProjectBrowser, UnityEditor.CoreModule, Version=0.0.0.0,
Culture=neutral, PublicKeyToken=null
@@ -108,6 +117,7 @@ MonoBehaviour:
m_Text: ColorManager
m_Image: {fileID: 0}
m_Tooltip:
+ m_TextWithWhitespace:
m_ControlName:
m_PropertyPath:
m_TargetType:
@@ -132,6 +142,7 @@ MonoBehaviour:
m_Text: ColorManager
m_Image: {fileID: 0}
m_Tooltip:
+ m_TextWithWhitespace:
m_ControlName:
m_PropertyPath:
m_TargetType:
@@ -165,8 +176,11 @@ MonoBehaviour:
It makes the ColorManager ready to interact
with the player when it approaches the object.'
+ m_CodeSample:
+ m_PostInstructionImage: {fileID: 0}
m_Tutorial: {fileID: 0}
m_Image: {fileID: 0}
+ m_VideoUrl:
m_Video: {fileID: 0}
m_CriteriaCompletion: 0
m_Criteria:
@@ -184,8 +198,11 @@ MonoBehaviour:
m_Untranslated: Press Next to continue
Text:
m_Untranslated:
+ m_CodeSample:
+ m_PostInstructionImage: {fileID: 0}
m_Tutorial: {fileID: 0}
m_Image: {fileID: 0}
+ m_VideoUrl:
m_Video: {fileID: 0}
m_CriteriaCompletion: 0
m_Criteria:
@@ -238,7 +255,20 @@ MonoBehaviour:
m_CallState: 1
Shown:
m_PersistentCalls:
- m_Calls: []
+ m_Calls:
+ - m_Target: {fileID: 11400000, guid: 0bbd71a4713de434d8c94e72034b789c, type: 2}
+ m_TargetAssemblyTypeName: Unity.Tutorials.Core.Editor.CommonTutorialCallbacks,
+ Unity.Tutorials.Core.Editor
+ m_MethodName: SelectGameObject
+ m_Mode: 5
+ m_Arguments:
+ m_ObjectArgument: {fileID: 0}
+ m_ObjectArgumentAssemblyTypeName: UnityEngine.Object, UnityEngine
+ m_IntArgument: 0
+ m_FloatArgument: 0
+ m_StringArgument: CubeMesh
+ m_BoolArgument: 0
+ m_CallState: 1
Staying:
m_PersistentCalls:
m_Calls: []
diff --git a/Basic/MultiplayerUseCases/Assets/UseCaseSamples/ProximityChecks/ProximityChecks.unity b/Basic/MultiplayerUseCases/Assets/UseCaseSamples/ProximityChecks/ProximityChecks.unity
index 0b7aba52c..16bcfa8da 100644
--- a/Basic/MultiplayerUseCases/Assets/UseCaseSamples/ProximityChecks/ProximityChecks.unity
+++ b/Basic/MultiplayerUseCases/Assets/UseCaseSamples/ProximityChecks/ProximityChecks.unity
@@ -42,7 +42,8 @@ RenderSettings:
--- !u!157 &3
LightmapSettings:
m_ObjectHideFlags: 0
- serializedVersion: 12
+ serializedVersion: 13
+ m_BakeOnSceneLoad: 0
m_GISettings:
serializedVersion: 2
m_BounceScale: 1
@@ -821,6 +822,7 @@ MonoBehaviour:
m_DeselectOnBackgroundClick: 1
m_PointerBehavior: 0
m_CursorLockBehavior: 0
+ m_ScrollDeltaPerTick: 6
--- !u!1 &1017577773 stripped
GameObject:
m_CorrespondingSourceObject: {fileID: 7079470771712663481, guid: e0e46513231ac0d4192526820acd436d, type: 3}
@@ -885,6 +887,7 @@ MonoBehaviour:
m_Script: {fileID: 11500000, guid: 593a2fe42fa9d37498c96f9a383b6521, type: 3}
m_Name:
m_EditorClassIdentifier:
+ NetworkManagerExpanded: 0
NetworkConfig:
ProtocolVersion: 0
NetworkTransport: {fileID: 1242368264}
@@ -906,6 +909,11 @@ MonoBehaviour:
LoadSceneTimeOut: 120
SpawnTimeout: 1
EnableNetworkLogs: 1
+ NetworkTopology: 0
+ UseCMBService: 0
+ AutoSpawnPlayerPrefabClientSide: 1
+ NetworkMessageMetrics: 1
+ NetworkProfilingMetrics: 1
OldPrefabList:
- Override: 0
Prefab: {fileID: 4416926081852918481, guid: b4f4d10f529a9064487c55fc530813b2, type: 3}
@@ -1123,6 +1131,10 @@ PrefabInstance:
propertyPath: GlobalObjectIdHash
value: 1643459133
objectReference: {fileID: 0}
+ - target: {fileID: 7072414127250795839, guid: e0e46513231ac0d4192526820acd436d, type: 3}
+ propertyPath: InScenePlacedSourceGlobalObjectIdHash
+ value: 1755651710
+ objectReference: {fileID: 0}
- target: {fileID: 7079470771712663481, guid: e0e46513231ac0d4192526820acd436d, type: 3}
propertyPath: m_Name
value: ColoredCube
diff --git a/Basic/MultiplayerUseCases/Packages/manifest.json b/Basic/MultiplayerUseCases/Packages/manifest.json
index 6d8f4299c..80d7c2bf4 100644
--- a/Basic/MultiplayerUseCases/Packages/manifest.json
+++ b/Basic/MultiplayerUseCases/Packages/manifest.json
@@ -3,13 +3,14 @@
"com.unity.feature.development": "1.0.2",
"com.unity.ide.rider": "3.0.31",
"com.unity.ide.visualstudio": "2.0.22",
- "com.unity.inputsystem": "1.9.0",
- "com.unity.learn.iet-framework": "4.0.1",
+ "com.unity.inputsystem": "1.11.1",
+ "com.unity.learn.iet-framework": "4.0.2",
"com.unity.learn.iet-framework.authoring": "1.2.2",
- "com.unity.multiplayer.playmode": "1.3.0-pre.2",
+ "com.unity.multiplayer.center": "1.0.0",
+ "com.unity.multiplayer.playmode": "1.3.0",
"com.unity.multiplayer.samples.coop": "https://github.com/Unity-Technologies/com.unity.multiplayer.samples.coop.git?path=/Packages/com.unity.multiplayer.samples.coop#v2.4.0",
- "com.unity.multiplayer.tools": "2.2.0",
- "com.unity.netcode.gameobjects": "1.10.0",
+ "com.unity.multiplayer.tools": "2.2.1",
+ "com.unity.netcode.gameobjects": "2.0.0",
"com.unity.render-pipelines.universal": "17.0.3",
"com.unity.test-framework": "1.4.5",
"com.unity.toolchain.win-x86_64-linux-x86_64": "2.0.9",
diff --git a/Basic/MultiplayerUseCases/Packages/packages-lock.json b/Basic/MultiplayerUseCases/Packages/packages-lock.json
index 5dc814dd7..64b6c04bf 100644
--- a/Basic/MultiplayerUseCases/Packages/packages-lock.json
+++ b/Basic/MultiplayerUseCases/Packages/packages-lock.json
@@ -1,7 +1,7 @@
{
"dependencies": {
"com.unity.burst": {
- "version": "1.8.17",
+ "version": "1.8.18",
"depth": 1,
"source": "registry",
"dependencies": {
@@ -11,12 +11,12 @@
"url": "https://packages.unity.com"
},
"com.unity.collections": {
- "version": "2.4.3",
+ "version": "2.5.1",
"depth": 1,
"source": "registry",
"dependencies": {
- "com.unity.burst": "1.8.13",
- "com.unity.test-framework": "1.4.3",
+ "com.unity.burst": "1.8.17",
+ "com.unity.test-framework": "1.4.5",
"com.unity.nuget.mono-cecil": "1.11.4",
"com.unity.test-framework.performance": "3.0.3"
},
@@ -68,7 +68,7 @@
"url": "https://packages.unity.com"
},
"com.unity.inputsystem": {
- "version": "1.9.0",
+ "version": "1.11.1",
"depth": 0,
"source": "registry",
"dependencies": {
@@ -77,7 +77,7 @@
"url": "https://packages.unity.com"
},
"com.unity.learn.iet-framework": {
- "version": "4.0.1",
+ "version": "4.0.2",
"depth": 0,
"source": "registry",
"dependencies": {
@@ -102,8 +102,16 @@
"dependencies": {},
"url": "https://packages.unity.com"
},
+ "com.unity.multiplayer.center": {
+ "version": "1.0.0",
+ "depth": 0,
+ "source": "builtin",
+ "dependencies": {
+ "com.unity.modules.uielements": "1.0.0"
+ }
+ },
"com.unity.multiplayer.playmode": {
- "version": "1.3.0-pre.2",
+ "version": "1.3.0",
"depth": 0,
"source": "registry",
"dependencies": {
@@ -124,13 +132,13 @@
"hash": "e48babbbf2e903d65e08a114aac3f3eba824a94a"
},
"com.unity.multiplayer.tools": {
- "version": "2.2.0",
+ "version": "2.2.1",
"depth": 0,
"source": "registry",
"dependencies": {
- "com.unity.burst": "1.8.16",
- "com.unity.collections": "2.4.1",
- "com.unity.mathematics": "1.3.2",
+ "com.unity.burst": "1.8.17",
+ "com.unity.collections": "2.4.0",
+ "com.unity.mathematics": "1.3.1",
"com.unity.profiling.core": "1.0.2",
"com.unity.nuget.mono-cecil": "1.11.4",
"com.unity.modules.uielements": "1.0.0",
@@ -139,12 +147,12 @@
"url": "https://packages.unity.com"
},
"com.unity.netcode.gameobjects": {
- "version": "1.10.0",
+ "version": "2.0.0",
"depth": 0,
"source": "registry",
"dependencies": {
- "com.unity.transport": "1.4.0",
- "com.unity.nuget.mono-cecil": "1.10.1"
+ "com.unity.transport": "2.3.0",
+ "com.unity.nuget.mono-cecil": "1.11.4"
},
"url": "https://packages.unity.com"
},
@@ -184,7 +192,7 @@
"com.unity.burst": "1.8.14",
"com.unity.mathematics": "1.3.2",
"com.unity.ugui": "2.0.0",
- "com.unity.collections": "2.4.1",
+ "com.unity.collections": "2.4.3",
"com.unity.modules.physics": "1.0.0",
"com.unity.modules.terrain": "1.0.0",
"com.unity.modules.jsonserialize": "1.0.0",
diff --git a/Basic/MultiplayerUseCases/ProjectSettings/ProjectVersion.txt b/Basic/MultiplayerUseCases/ProjectSettings/ProjectVersion.txt
index 1ffb2b117..11b73a4be 100644
--- a/Basic/MultiplayerUseCases/ProjectSettings/ProjectVersion.txt
+++ b/Basic/MultiplayerUseCases/ProjectSettings/ProjectVersion.txt
@@ -1,2 +1,2 @@
-m_EditorVersion: 6000.0.17f1
-m_EditorVersionWithRevision: 6000.0.17f1 (95e1b8cf7a6b)
+m_EditorVersion: 6000.0.23f1
+m_EditorVersionWithRevision: 6000.0.23f1 (1c4764c07fb4)
diff --git a/Basic/MultiplayerUseCases/ProjectSettings/VirtualProjectsConfig.json b/Basic/MultiplayerUseCases/ProjectSettings/VirtualProjectsConfig.json
index 1c8f3ab38..3b07de8bd 100644
--- a/Basic/MultiplayerUseCases/ProjectSettings/VirtualProjectsConfig.json
+++ b/Basic/MultiplayerUseCases/ProjectSettings/VirtualProjectsConfig.json
@@ -1,4 +1,4 @@
{
"PlayerTags": [],
- "version": "1.3.0-pre.2"
+ "version": "1.3.0"
}
\ No newline at end of file
diff --git a/Basic/MultiplayerUseCases/README.md b/Basic/MultiplayerUseCases/README.md
index 97a0a821e..253ab891f 100644
--- a/Basic/MultiplayerUseCases/README.md
+++ b/Basic/MultiplayerUseCases/README.md
@@ -1,7 +1,7 @@
# Multiplayer Use Cases
-[](https://unity.com/releases/editor/whats-new/2022.3.27)
-[](https://github.com/Unity-Technologies/com.unity.netcode.gameobjects/releases/tag/ngo%2F1.8.1)
+[](https://unity.com/releases/editor/whats-new/6000.0.23)
+[](https://github.com/Unity-Technologies/com.unity.netcode.gameobjects/releases/tag/ngo%2F2.0.0)
This sample provides a series of scenes. Each scene explains a specific API or system commonly used in Netcode for GameObjects. In this sample you will learn more about client-server communication, state synchronization, and other typical mechanics of multiplayer games.
@@ -41,4 +41,4 @@ Check out our main [Bitesize Samples GitHub Readme](https://github.com/Unity-Tec
[](https://docs-multiplayer.unity3d.com/netcode/current/learn/bitesize/bitesize-introduction)
[](https://forum.unity.com/forums/multiplayer.26/)
-[](https://discord.gg/FM8SE9E)
\ No newline at end of file
+[](https://discord.gg/FM8SE9E)
diff --git a/CHANGELOG.md b/CHANGELOG.md
index d1245c4df..ef22fdb32 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -1,5 +1,24 @@
# Changelog
+## [1.8.0] 2024-10-17
+
+### Multiplayer Use Cases
+
+#### Added
+- The last page of the "Data/Event Synchronization" tutorial redirects to the "Proximity Checks" tutorial
+- Imported TextMeshPro essentials so you don't have to do it
+
+#### Changed
+- Updated project to Unity 6 (and packages to the latest stable versions)
+- All inputs are handled through the new Unity Input System
+- Replaced 3rd party ParrelSync package with Unity's Multiplayer Play Mode
+- Disabled compatibility mode for RenderGraph, as it's going to be deprecated and throws warnings
+- Removed runtime network stats monitor from the scene to improve readability
+- Removed deprecated visual studio code package
+
+#### Fixed
+- Fixed "Build Profile" window not being clickable during the last page of each tutorial
+
## [1.7.0] 2024-08-31
### Bitesize Samples Repository
@@ -373,7 +392,7 @@ A new sample was added named client driven. It focus on client driven movements,
#### Known Issues
-- Upon import a MissingReferenceException is triggered from within MLAPI: **"MissingReferenceException: The object of type ‘GameObject’ has been destroyed but you are still trying to access it.
+- Upon import a MissingReferenceException is triggered from within MLAPI: **"MissingReferenceException: The object of type ‘GameObject' has been destroyed but you are still trying to access it.
Your script should either check if it is null or you should not destroy the object."** in:
- UnityEngine.GameObject.GetComponent[T] () (at /Users/bokken/buildslave/unity/build/Runtime/Export/Scripting/GameObject.bindings.cs:28)