From e8f63085803f00e382a976cc87bfcf39dd8d7aa3 Mon Sep 17 00:00:00 2001 From: BobSong <605277374@qq.com> Date: Tue, 4 Nov 2025 23:11:56 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BF=AE=E6=94=B9mesh?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../ThirdParty}/Rope.meta | 0 .../ThirdParty}/Rope/Core.meta | 0 .../Rope/Core/DisableInPlayModeAttribute.cs | 2 +- .../Core/DisableInPlayModeAttribute.cs.meta | 0 .../ThirdParty}/Rope/Core/Editor.meta | 0 .../Editor/DisableInPlayModePropertyDrawer.cs | 2 +- .../DisableInPlayModePropertyDrawer.cs.meta | 0 .../Rope/Core/Editor/RopeEditor.cs | 2 +- .../Rope/Core/Editor/RopeEditor.cs.meta | 0 .../ThirdParty}/Rope/Core/PointsExtensions.cs | 2 +- .../Rope/Core/PointsExtensions.cs.meta | 0 .../Rope/Core/RigidbodyExtensions.cs | 2 +- .../Rope/Core/RigidbodyExtensions.cs.meta | 0 .../ThirdParty}/Rope/Examples.meta | 0 .../ThirdParty}/Rope/Examples/00_Main.meta | 0 .../Rope/Examples/00_Main/ApplyTorqueOnKey.cs | 2 +- .../Examples/00_Main/ApplyTorqueOnKey.cs.meta | 0 .../Rope/Examples/00_Main/Environment.meta | 0 .../00_Main/Environment/Environment.asset | 0 .../Environment/Environment.asset.meta | 0 .../00_Main/Environment/Environment.prefab | 0 .../Environment/Environment.prefab.meta | 0 .../Rope/Examples/00_Main/Main.unity | 1390 ++++++++++++++--- .../Rope/Examples/00_Main/Main.unity.meta | 0 .../Rope/Examples/00_Main/Materials.meta | 0 .../Rope/Examples/00_Main/Materials/Chain.mat | 0 .../Examples/00_Main/Materials/Chain.mat.meta | 0 .../Examples/00_Main/Materials/Checker.png | Bin .../00_Main/Materials/Checker.png.meta | 0 .../00_Main/Materials/Environment.mat | 0 .../00_Main/Materials/Environment.mat.meta | 0 .../00_Main/Materials/PickedIndicator.mat | 0 .../Materials/PickedIndicator.mat.meta | 0 .../Rope/Examples/00_Main/Materials/Plank.mat | 0 .../Examples/00_Main/Materials/Plank.mat.meta | 0 .../Examples/00_Main/Materials/Rigidbody.mat | 0 .../00_Main/Materials/Rigidbody.mat.meta | 0 .../Rope/Examples/00_Main/Materials/Rope.mat | 0 .../Examples/00_Main/Materials/Rope.mat.meta | 0 .../Rope/Examples/00_Main/Materials/Sky.mat | 0 .../Examples/00_Main/Materials/Sky.mat.meta | 0 .../00_Main/Materials/TargetIndicator.mat | 0 .../Materials/TargetIndicator.mat.meta | 0 .../Rope/Examples/00_Main/Models.meta | 0 .../Rope/Examples/00_Main/Models/Chain.fbx | Bin .../Examples/00_Main/Models/Chain.fbx.meta | 0 .../Rope/Examples/00_Main/RopeBridgePlank.cs | 2 +- .../Examples/00_Main/RopeBridgePlank.cs.meta | 0 .../Rope/Examples/00_Main/RopeScene.meta | 0 .../00_Main/RopeScene/LightingData.asset | Bin .../00_Main/RopeScene/LightingData.asset.meta | 0 .../00_Main/RopeScene/ReflectionProbe-0.exr | Bin .../RopeScene/ReflectionProbe-0.exr.meta | 0 .../Rope/Examples/01_DynamicAttach.meta | 0 .../01_DynamicAttach/BackAndForthMovement.cs | 2 +- .../BackAndForthMovement.cs.meta | 0 .../01_DynamicAttach/DynamicAttach.cs | 2 +- .../01_DynamicAttach/DynamicAttach.cs.meta | 0 .../01_DynamicAttach/DynamicAttach.meta | 0 .../01_DynamicAttach/DynamicAttach.unity | 194 ++- .../01_DynamicAttach/DynamicAttach.unity.meta | 0 .../DynamicAttach/LightingData.asset | Bin 17681 -> 17681 bytes .../DynamicAttach/LightingData.asset.meta | 0 .../Rope/Examples/02_BoxingRing.meta | 0 .../Rope/Examples/02_BoxingRing/Ball.mat | 0 .../Rope/Examples/02_BoxingRing/Ball.mat.meta | 0 .../Examples/02_BoxingRing/BoxingRing.meta | 0 .../Examples/02_BoxingRing/BoxingRing.unity | 0 .../02_BoxingRing/BoxingRing.unity.meta | 0 .../BoxingRing/LightingData.asset | Bin .../BoxingRing/LightingData.asset.meta | 0 .../Rope/Examples/02_BoxingRing/Ground.mat | 0 .../Examples/02_BoxingRing/Ground.mat.meta | 0 .../Rope/Examples/02_BoxingRing/Spawner.cs | 0 .../Examples/02_BoxingRing/Spawner.cs.meta | 0 .../ThirdParty}/Rope/Helpers.meta | 0 .../ThirdParty}/Rope/Helpers/Editor.meta | 0 .../Editor/SimpleRopeInteractionEditor.cs | 2 +- .../SimpleRopeInteractionEditor.cs.meta | 0 .../Rope/Helpers/SimpleRopeInteraction.cs | 2 +- .../Helpers/SimpleRopeInteraction.cs.meta | 0 .../Rope/Helpers/SimpleRopeInteractionGUI.cs | 2 +- .../Helpers/SimpleRopeInteractionGUI.cs.meta | 0 .../ThirdParty}/Rope/README-HTML.md.html | 0 .../ThirdParty}/Rope/README-HTML.md.html.meta | 0 .../ThirdParty}/Rope/README-PDF.pdf | Bin .../ThirdParty}/Rope/README-PDF.pdf.meta | 0 .../ThirdParty}/Rope/Rope.cs | 452 +++--- .../ThirdParty}/Rope/Rope.cs.meta | 0 .../ThirdParty}/Rope/RopeConnection.cs | 2 +- .../ThirdParty}/Rope/RopeConnection.cs.meta | 0 Assets/Toolkits.meta | 8 - UserSettings/EditorUserSettings.asset | 8 +- 93 files changed, 1587 insertions(+), 491 deletions(-) rename Assets/{Toolkits => Scripts/ThirdParty}/Rope.meta (100%) rename Assets/{Toolkits => Scripts/ThirdParty}/Rope/Core.meta (100%) rename Assets/{Toolkits => Scripts/ThirdParty}/Rope/Core/DisableInPlayModeAttribute.cs (87%) rename Assets/{Toolkits => Scripts/ThirdParty}/Rope/Core/DisableInPlayModeAttribute.cs.meta (100%) rename Assets/{Toolkits => Scripts/ThirdParty}/Rope/Core/Editor.meta (100%) rename Assets/{Toolkits => Scripts/ThirdParty}/Rope/Core/Editor/DisableInPlayModePropertyDrawer.cs (98%) rename Assets/{Toolkits => Scripts/ThirdParty}/Rope/Core/Editor/DisableInPlayModePropertyDrawer.cs.meta (100%) rename Assets/{Toolkits => Scripts/ThirdParty}/Rope/Core/Editor/RopeEditor.cs (99%) rename Assets/{Toolkits => Scripts/ThirdParty}/Rope/Core/Editor/RopeEditor.cs.meta (100%) rename Assets/{Toolkits => Scripts/ThirdParty}/Rope/Core/PointsExtensions.cs (99%) rename Assets/{Toolkits => Scripts/ThirdParty}/Rope/Core/PointsExtensions.cs.meta (100%) rename Assets/{Toolkits => Scripts/ThirdParty}/Rope/Core/RigidbodyExtensions.cs (99%) rename Assets/{Toolkits => Scripts/ThirdParty}/Rope/Core/RigidbodyExtensions.cs.meta (100%) rename Assets/{Toolkits => Scripts/ThirdParty}/Rope/Examples.meta (100%) rename Assets/{Toolkits => Scripts/ThirdParty}/Rope/Examples/00_Main.meta (100%) rename Assets/{Toolkits => Scripts/ThirdParty}/Rope/Examples/00_Main/ApplyTorqueOnKey.cs (96%) rename Assets/{Toolkits => Scripts/ThirdParty}/Rope/Examples/00_Main/ApplyTorqueOnKey.cs.meta (100%) rename Assets/{Toolkits => Scripts/ThirdParty}/Rope/Examples/00_Main/Environment.meta (100%) rename Assets/{Toolkits => Scripts/ThirdParty}/Rope/Examples/00_Main/Environment/Environment.asset (100%) rename Assets/{Toolkits => Scripts/ThirdParty}/Rope/Examples/00_Main/Environment/Environment.asset.meta (100%) rename Assets/{Toolkits => Scripts/ThirdParty}/Rope/Examples/00_Main/Environment/Environment.prefab (100%) rename Assets/{Toolkits => Scripts/ThirdParty}/Rope/Examples/00_Main/Environment/Environment.prefab.meta (100%) rename Assets/{Toolkits => Scripts/ThirdParty}/Rope/Examples/00_Main/Main.unity (82%) rename Assets/{Toolkits => Scripts/ThirdParty}/Rope/Examples/00_Main/Main.unity.meta (100%) rename Assets/{Toolkits => Scripts/ThirdParty}/Rope/Examples/00_Main/Materials.meta (100%) rename Assets/{Toolkits => Scripts/ThirdParty}/Rope/Examples/00_Main/Materials/Chain.mat (100%) rename Assets/{Toolkits => Scripts/ThirdParty}/Rope/Examples/00_Main/Materials/Chain.mat.meta (100%) rename Assets/{Toolkits => Scripts/ThirdParty}/Rope/Examples/00_Main/Materials/Checker.png (100%) rename Assets/{Toolkits => Scripts/ThirdParty}/Rope/Examples/00_Main/Materials/Checker.png.meta (100%) rename Assets/{Toolkits => Scripts/ThirdParty}/Rope/Examples/00_Main/Materials/Environment.mat (100%) rename Assets/{Toolkits => Scripts/ThirdParty}/Rope/Examples/00_Main/Materials/Environment.mat.meta (100%) rename Assets/{Toolkits => Scripts/ThirdParty}/Rope/Examples/00_Main/Materials/PickedIndicator.mat (100%) rename Assets/{Toolkits => Scripts/ThirdParty}/Rope/Examples/00_Main/Materials/PickedIndicator.mat.meta (100%) rename Assets/{Toolkits => Scripts/ThirdParty}/Rope/Examples/00_Main/Materials/Plank.mat (100%) rename Assets/{Toolkits => Scripts/ThirdParty}/Rope/Examples/00_Main/Materials/Plank.mat.meta (100%) rename Assets/{Toolkits => Scripts/ThirdParty}/Rope/Examples/00_Main/Materials/Rigidbody.mat (100%) rename Assets/{Toolkits => Scripts/ThirdParty}/Rope/Examples/00_Main/Materials/Rigidbody.mat.meta (100%) rename Assets/{Toolkits => Scripts/ThirdParty}/Rope/Examples/00_Main/Materials/Rope.mat (100%) rename Assets/{Toolkits => Scripts/ThirdParty}/Rope/Examples/00_Main/Materials/Rope.mat.meta (100%) rename Assets/{Toolkits => Scripts/ThirdParty}/Rope/Examples/00_Main/Materials/Sky.mat (100%) rename Assets/{Toolkits => Scripts/ThirdParty}/Rope/Examples/00_Main/Materials/Sky.mat.meta (100%) rename Assets/{Toolkits => Scripts/ThirdParty}/Rope/Examples/00_Main/Materials/TargetIndicator.mat (100%) rename Assets/{Toolkits => Scripts/ThirdParty}/Rope/Examples/00_Main/Materials/TargetIndicator.mat.meta (100%) rename Assets/{Toolkits => Scripts/ThirdParty}/Rope/Examples/00_Main/Models.meta (100%) rename Assets/{Toolkits => Scripts/ThirdParty}/Rope/Examples/00_Main/Models/Chain.fbx (100%) rename Assets/{Toolkits => Scripts/ThirdParty}/Rope/Examples/00_Main/Models/Chain.fbx.meta (100%) rename Assets/{Toolkits => Scripts/ThirdParty}/Rope/Examples/00_Main/RopeBridgePlank.cs (99%) rename Assets/{Toolkits => Scripts/ThirdParty}/Rope/Examples/00_Main/RopeBridgePlank.cs.meta (100%) rename Assets/{Toolkits => Scripts/ThirdParty}/Rope/Examples/00_Main/RopeScene.meta (100%) rename Assets/{Toolkits => Scripts/ThirdParty}/Rope/Examples/00_Main/RopeScene/LightingData.asset (100%) rename Assets/{Toolkits => Scripts/ThirdParty}/Rope/Examples/00_Main/RopeScene/LightingData.asset.meta (100%) rename Assets/{Toolkits => Scripts/ThirdParty}/Rope/Examples/00_Main/RopeScene/ReflectionProbe-0.exr (100%) rename Assets/{Toolkits => Scripts/ThirdParty}/Rope/Examples/00_Main/RopeScene/ReflectionProbe-0.exr.meta (100%) rename Assets/{Toolkits => Scripts/ThirdParty}/Rope/Examples/01_DynamicAttach.meta (100%) rename Assets/{Toolkits => Scripts/ThirdParty}/Rope/Examples/01_DynamicAttach/BackAndForthMovement.cs (93%) rename Assets/{Toolkits => Scripts/ThirdParty}/Rope/Examples/01_DynamicAttach/BackAndForthMovement.cs.meta (100%) rename Assets/{Toolkits => Scripts/ThirdParty}/Rope/Examples/01_DynamicAttach/DynamicAttach.cs (98%) rename Assets/{Toolkits => Scripts/ThirdParty}/Rope/Examples/01_DynamicAttach/DynamicAttach.cs.meta (100%) rename Assets/{Toolkits => Scripts/ThirdParty}/Rope/Examples/01_DynamicAttach/DynamicAttach.meta (100%) rename Assets/{Toolkits => Scripts/ThirdParty}/Rope/Examples/01_DynamicAttach/DynamicAttach.unity (75%) rename Assets/{Toolkits => Scripts/ThirdParty}/Rope/Examples/01_DynamicAttach/DynamicAttach.unity.meta (100%) rename Assets/{Toolkits => Scripts/ThirdParty}/Rope/Examples/01_DynamicAttach/DynamicAttach/LightingData.asset (99%) rename Assets/{Toolkits => Scripts/ThirdParty}/Rope/Examples/01_DynamicAttach/DynamicAttach/LightingData.asset.meta (100%) rename Assets/{Toolkits => Scripts/ThirdParty}/Rope/Examples/02_BoxingRing.meta (100%) rename Assets/{Toolkits => Scripts/ThirdParty}/Rope/Examples/02_BoxingRing/Ball.mat (100%) rename Assets/{Toolkits => Scripts/ThirdParty}/Rope/Examples/02_BoxingRing/Ball.mat.meta (100%) rename Assets/{Toolkits => Scripts/ThirdParty}/Rope/Examples/02_BoxingRing/BoxingRing.meta (100%) rename Assets/{Toolkits => Scripts/ThirdParty}/Rope/Examples/02_BoxingRing/BoxingRing.unity (100%) rename Assets/{Toolkits => Scripts/ThirdParty}/Rope/Examples/02_BoxingRing/BoxingRing.unity.meta (100%) rename Assets/{Toolkits => Scripts/ThirdParty}/Rope/Examples/02_BoxingRing/BoxingRing/LightingData.asset (100%) rename Assets/{Toolkits => Scripts/ThirdParty}/Rope/Examples/02_BoxingRing/BoxingRing/LightingData.asset.meta (100%) rename Assets/{Toolkits => Scripts/ThirdParty}/Rope/Examples/02_BoxingRing/Ground.mat (100%) rename Assets/{Toolkits => Scripts/ThirdParty}/Rope/Examples/02_BoxingRing/Ground.mat.meta (100%) rename Assets/{Toolkits => Scripts/ThirdParty}/Rope/Examples/02_BoxingRing/Spawner.cs (100%) rename Assets/{Toolkits => Scripts/ThirdParty}/Rope/Examples/02_BoxingRing/Spawner.cs.meta (100%) rename Assets/{Toolkits => Scripts/ThirdParty}/Rope/Helpers.meta (100%) rename Assets/{Toolkits => Scripts/ThirdParty}/Rope/Helpers/Editor.meta (100%) rename Assets/{Toolkits => Scripts/ThirdParty}/Rope/Helpers/Editor/SimpleRopeInteractionEditor.cs (96%) rename Assets/{Toolkits => Scripts/ThirdParty}/Rope/Helpers/Editor/SimpleRopeInteractionEditor.cs.meta (100%) rename Assets/{Toolkits => Scripts/ThirdParty}/Rope/Helpers/SimpleRopeInteraction.cs (99%) rename Assets/{Toolkits => Scripts/ThirdParty}/Rope/Helpers/SimpleRopeInteraction.cs.meta (100%) rename Assets/{Toolkits => Scripts/ThirdParty}/Rope/Helpers/SimpleRopeInteractionGUI.cs (98%) rename Assets/{Toolkits => Scripts/ThirdParty}/Rope/Helpers/SimpleRopeInteractionGUI.cs.meta (100%) rename Assets/{Toolkits => Scripts/ThirdParty}/Rope/README-HTML.md.html (100%) rename Assets/{Toolkits => Scripts/ThirdParty}/Rope/README-HTML.md.html.meta (100%) rename Assets/{Toolkits => Scripts/ThirdParty}/Rope/README-PDF.pdf (100%) rename Assets/{Toolkits => Scripts/ThirdParty}/Rope/README-PDF.pdf.meta (100%) rename Assets/{Toolkits => Scripts/ThirdParty}/Rope/Rope.cs (73%) rename Assets/{Toolkits => Scripts/ThirdParty}/Rope/Rope.cs.meta (100%) rename Assets/{Toolkits => Scripts/ThirdParty}/Rope/RopeConnection.cs (99%) rename Assets/{Toolkits => Scripts/ThirdParty}/Rope/RopeConnection.cs.meta (100%) delete mode 100644 Assets/Toolkits.meta diff --git a/Assets/Toolkits/Rope.meta b/Assets/Scripts/ThirdParty/Rope.meta similarity index 100% rename from Assets/Toolkits/Rope.meta rename to Assets/Scripts/ThirdParty/Rope.meta diff --git a/Assets/Toolkits/Rope/Core.meta b/Assets/Scripts/ThirdParty/Rope/Core.meta similarity index 100% rename from Assets/Toolkits/Rope/Core.meta rename to Assets/Scripts/ThirdParty/Rope/Core.meta diff --git a/Assets/Toolkits/Rope/Core/DisableInPlayModeAttribute.cs b/Assets/Scripts/ThirdParty/Rope/Core/DisableInPlayModeAttribute.cs similarity index 87% rename from Assets/Toolkits/Rope/Core/DisableInPlayModeAttribute.cs rename to Assets/Scripts/ThirdParty/Rope/Core/DisableInPlayModeAttribute.cs index 25e7fcbe3..e55ebdc68 100644 --- a/Assets/Toolkits/Rope/Core/DisableInPlayModeAttribute.cs +++ b/Assets/Scripts/ThirdParty/Rope/Core/DisableInPlayModeAttribute.cs @@ -1,6 +1,6 @@ using UnityEngine; -namespace RopeToolkit +namespace NBF { public class DisableInPlayModeAttribute : PropertyAttribute { diff --git a/Assets/Toolkits/Rope/Core/DisableInPlayModeAttribute.cs.meta b/Assets/Scripts/ThirdParty/Rope/Core/DisableInPlayModeAttribute.cs.meta similarity index 100% rename from Assets/Toolkits/Rope/Core/DisableInPlayModeAttribute.cs.meta rename to Assets/Scripts/ThirdParty/Rope/Core/DisableInPlayModeAttribute.cs.meta diff --git a/Assets/Toolkits/Rope/Core/Editor.meta b/Assets/Scripts/ThirdParty/Rope/Core/Editor.meta similarity index 100% rename from Assets/Toolkits/Rope/Core/Editor.meta rename to Assets/Scripts/ThirdParty/Rope/Core/Editor.meta diff --git a/Assets/Toolkits/Rope/Core/Editor/DisableInPlayModePropertyDrawer.cs b/Assets/Scripts/ThirdParty/Rope/Core/Editor/DisableInPlayModePropertyDrawer.cs similarity index 98% rename from Assets/Toolkits/Rope/Core/Editor/DisableInPlayModePropertyDrawer.cs rename to Assets/Scripts/ThirdParty/Rope/Core/Editor/DisableInPlayModePropertyDrawer.cs index ad3d7ad4c..51063ebf7 100644 --- a/Assets/Toolkits/Rope/Core/Editor/DisableInPlayModePropertyDrawer.cs +++ b/Assets/Scripts/ThirdParty/Rope/Core/Editor/DisableInPlayModePropertyDrawer.cs @@ -2,7 +2,7 @@ using UnityEditor; using UnityEngine.UIElements; -namespace RopeToolkit +namespace NBF { [CustomPropertyDrawer(typeof(DisableInPlayModeAttribute))] public class BeginLockInPlayModeDecoratorDrawer : PropertyDrawer diff --git a/Assets/Toolkits/Rope/Core/Editor/DisableInPlayModePropertyDrawer.cs.meta b/Assets/Scripts/ThirdParty/Rope/Core/Editor/DisableInPlayModePropertyDrawer.cs.meta similarity index 100% rename from Assets/Toolkits/Rope/Core/Editor/DisableInPlayModePropertyDrawer.cs.meta rename to Assets/Scripts/ThirdParty/Rope/Core/Editor/DisableInPlayModePropertyDrawer.cs.meta diff --git a/Assets/Toolkits/Rope/Core/Editor/RopeEditor.cs b/Assets/Scripts/ThirdParty/Rope/Core/Editor/RopeEditor.cs similarity index 99% rename from Assets/Toolkits/Rope/Core/Editor/RopeEditor.cs rename to Assets/Scripts/ThirdParty/Rope/Core/Editor/RopeEditor.cs index 7e550d1de..f3d56dc09 100644 --- a/Assets/Toolkits/Rope/Core/Editor/RopeEditor.cs +++ b/Assets/Scripts/ThirdParty/Rope/Core/Editor/RopeEditor.cs @@ -4,7 +4,7 @@ using System.Collections.Generic; using Unity.Collections; using Unity.Mathematics; -namespace RopeToolkit +namespace NBF { [CustomEditor(typeof(Rope)), CanEditMultipleObjects] public class RopeEditor : Editor diff --git a/Assets/Toolkits/Rope/Core/Editor/RopeEditor.cs.meta b/Assets/Scripts/ThirdParty/Rope/Core/Editor/RopeEditor.cs.meta similarity index 100% rename from Assets/Toolkits/Rope/Core/Editor/RopeEditor.cs.meta rename to Assets/Scripts/ThirdParty/Rope/Core/Editor/RopeEditor.cs.meta diff --git a/Assets/Toolkits/Rope/Core/PointsExtensions.cs b/Assets/Scripts/ThirdParty/Rope/Core/PointsExtensions.cs similarity index 99% rename from Assets/Toolkits/Rope/Core/PointsExtensions.cs rename to Assets/Scripts/ThirdParty/Rope/Core/PointsExtensions.cs index 1def8c9eb..dedc400d7 100644 --- a/Assets/Toolkits/Rope/Core/PointsExtensions.cs +++ b/Assets/Scripts/ThirdParty/Rope/Core/PointsExtensions.cs @@ -4,7 +4,7 @@ using Unity.Collections; using System.Collections.Generic; using System.Linq; -namespace RopeToolkit +namespace NBF { public static class PointsExtensions { diff --git a/Assets/Toolkits/Rope/Core/PointsExtensions.cs.meta b/Assets/Scripts/ThirdParty/Rope/Core/PointsExtensions.cs.meta similarity index 100% rename from Assets/Toolkits/Rope/Core/PointsExtensions.cs.meta rename to Assets/Scripts/ThirdParty/Rope/Core/PointsExtensions.cs.meta diff --git a/Assets/Toolkits/Rope/Core/RigidbodyExtensions.cs b/Assets/Scripts/ThirdParty/Rope/Core/RigidbodyExtensions.cs similarity index 99% rename from Assets/Toolkits/Rope/Core/RigidbodyExtensions.cs rename to Assets/Scripts/ThirdParty/Rope/Core/RigidbodyExtensions.cs index f572a858f..85e5d7336 100644 --- a/Assets/Toolkits/Rope/Core/RigidbodyExtensions.cs +++ b/Assets/Scripts/ThirdParty/Rope/Core/RigidbodyExtensions.cs @@ -4,7 +4,7 @@ using Unity.Collections; using System.Collections.Generic; using System.Linq; -namespace RopeToolkit +namespace NBF { public static class RigidbodyExtensions { diff --git a/Assets/Toolkits/Rope/Core/RigidbodyExtensions.cs.meta b/Assets/Scripts/ThirdParty/Rope/Core/RigidbodyExtensions.cs.meta similarity index 100% rename from Assets/Toolkits/Rope/Core/RigidbodyExtensions.cs.meta rename to Assets/Scripts/ThirdParty/Rope/Core/RigidbodyExtensions.cs.meta diff --git a/Assets/Toolkits/Rope/Examples.meta b/Assets/Scripts/ThirdParty/Rope/Examples.meta similarity index 100% rename from Assets/Toolkits/Rope/Examples.meta rename to Assets/Scripts/ThirdParty/Rope/Examples.meta diff --git a/Assets/Toolkits/Rope/Examples/00_Main.meta b/Assets/Scripts/ThirdParty/Rope/Examples/00_Main.meta similarity index 100% rename from Assets/Toolkits/Rope/Examples/00_Main.meta rename to Assets/Scripts/ThirdParty/Rope/Examples/00_Main.meta diff --git a/Assets/Toolkits/Rope/Examples/00_Main/ApplyTorqueOnKey.cs b/Assets/Scripts/ThirdParty/Rope/Examples/00_Main/ApplyTorqueOnKey.cs similarity index 96% rename from Assets/Toolkits/Rope/Examples/00_Main/ApplyTorqueOnKey.cs rename to Assets/Scripts/ThirdParty/Rope/Examples/00_Main/ApplyTorqueOnKey.cs index 9ffa9721f..f71165c93 100644 --- a/Assets/Toolkits/Rope/Examples/00_Main/ApplyTorqueOnKey.cs +++ b/Assets/Scripts/ThirdParty/Rope/Examples/00_Main/ApplyTorqueOnKey.cs @@ -1,6 +1,6 @@ using UnityEngine; -namespace RopeToolkit.Example +namespace NBF.Example { public class ApplyTorqueOnKey : MonoBehaviour { diff --git a/Assets/Toolkits/Rope/Examples/00_Main/ApplyTorqueOnKey.cs.meta b/Assets/Scripts/ThirdParty/Rope/Examples/00_Main/ApplyTorqueOnKey.cs.meta similarity index 100% rename from Assets/Toolkits/Rope/Examples/00_Main/ApplyTorqueOnKey.cs.meta rename to Assets/Scripts/ThirdParty/Rope/Examples/00_Main/ApplyTorqueOnKey.cs.meta diff --git a/Assets/Toolkits/Rope/Examples/00_Main/Environment.meta b/Assets/Scripts/ThirdParty/Rope/Examples/00_Main/Environment.meta similarity index 100% rename from Assets/Toolkits/Rope/Examples/00_Main/Environment.meta rename to Assets/Scripts/ThirdParty/Rope/Examples/00_Main/Environment.meta diff --git a/Assets/Toolkits/Rope/Examples/00_Main/Environment/Environment.asset b/Assets/Scripts/ThirdParty/Rope/Examples/00_Main/Environment/Environment.asset similarity index 100% rename from Assets/Toolkits/Rope/Examples/00_Main/Environment/Environment.asset rename to Assets/Scripts/ThirdParty/Rope/Examples/00_Main/Environment/Environment.asset diff --git a/Assets/Toolkits/Rope/Examples/00_Main/Environment/Environment.asset.meta b/Assets/Scripts/ThirdParty/Rope/Examples/00_Main/Environment/Environment.asset.meta similarity index 100% rename from Assets/Toolkits/Rope/Examples/00_Main/Environment/Environment.asset.meta rename to Assets/Scripts/ThirdParty/Rope/Examples/00_Main/Environment/Environment.asset.meta diff --git a/Assets/Toolkits/Rope/Examples/00_Main/Environment/Environment.prefab b/Assets/Scripts/ThirdParty/Rope/Examples/00_Main/Environment/Environment.prefab similarity index 100% rename from Assets/Toolkits/Rope/Examples/00_Main/Environment/Environment.prefab rename to Assets/Scripts/ThirdParty/Rope/Examples/00_Main/Environment/Environment.prefab diff --git a/Assets/Toolkits/Rope/Examples/00_Main/Environment/Environment.prefab.meta b/Assets/Scripts/ThirdParty/Rope/Examples/00_Main/Environment/Environment.prefab.meta similarity index 100% rename from Assets/Toolkits/Rope/Examples/00_Main/Environment/Environment.prefab.meta rename to Assets/Scripts/ThirdParty/Rope/Examples/00_Main/Environment/Environment.prefab.meta diff --git a/Assets/Toolkits/Rope/Examples/00_Main/Main.unity b/Assets/Scripts/ThirdParty/Rope/Examples/00_Main/Main.unity similarity index 82% rename from Assets/Toolkits/Rope/Examples/00_Main/Main.unity rename to Assets/Scripts/ThirdParty/Rope/Examples/00_Main/Main.unity index 43b6a9462..bbdc84149 100644 --- a/Assets/Toolkits/Rope/Examples/00_Main/Main.unity +++ b/Assets/Scripts/ThirdParty/Rope/Examples/00_Main/Main.unity @@ -13,7 +13,7 @@ OcclusionCullingSettings: --- !u!104 &2 RenderSettings: m_ObjectHideFlags: 0 - serializedVersion: 9 + serializedVersion: 10 m_Fog: 0 m_FogColor: {r: 0.5, g: 0.5, b: 0.5, a: 1} m_FogMode: 3 @@ -38,13 +38,12 @@ RenderSettings: m_ReflectionIntensity: 1 m_CustomReflection: {fileID: 0} m_Sun: {fileID: 705507994} - m_IndirectSpecularColor: {r: 0, g: 0, b: 0, a: 1} m_UseRadianceAmbientProbe: 0 --- !u!157 &3 LightmapSettings: m_ObjectHideFlags: 0 - serializedVersion: 11 - m_GIWorkflowMode: 1 + serializedVersion: 13 + m_BakeOnSceneLoad: 0 m_GISettings: serializedVersion: 2 m_BounceScale: 1 @@ -67,9 +66,6 @@ LightmapSettings: m_LightmapParameters: {fileID: 0} m_LightmapsBakeMode: 1 m_TextureCompression: 1 - m_FinalGather: 0 - m_FinalGatherFiltering: 1 - m_FinalGatherRayCount: 256 m_ReflectionCompression: 2 m_MixedBakeMode: 0 m_BakeBackend: 2 @@ -97,15 +93,14 @@ LightmapSettings: m_ExportTrainingData: 0 m_TrainingDataDestination: TrainingData m_LightProbeSampleCountMultiplier: 4 - m_LightingDataAsset: {fileID: 112000000, guid: 3feeca0c11fd0d84aa1834e0e22da648, - type: 2} - m_UseShadowmask: 0 + m_LightingDataAsset: {fileID: 112000000, guid: 3feeca0c11fd0d84aa1834e0e22da648, type: 2} + m_LightingSettings: {fileID: 2073191939} --- !u!196 &4 NavMeshSettings: serializedVersion: 2 m_ObjectHideFlags: 0 m_BuildSettings: - serializedVersion: 2 + serializedVersion: 3 agentTypeID: 0 agentRadius: 0.5 agentHeight: 2 @@ -118,7 +113,9 @@ NavMeshSettings: cellSize: 0.16666667 manualTileSize: 0 tileSize: 256 - accuratePlacement: 0 + buildHeightMesh: 0 + maxJobWorkers: 0 + preserveTilesOutsideBounds: 0 debug: m_Flags: 0 m_NavMeshData: {fileID: 0} @@ -169,10 +166,21 @@ Rigidbody: m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 47437486} - serializedVersion: 2 + serializedVersion: 5 m_Mass: 1 - m_Drag: 0 - m_AngularDrag: 0.05 + m_LinearDamping: 0 + m_AngularDamping: 0.05 + m_CenterOfMass: {x: 0, y: 0, z: 0} + m_InertiaTensor: {x: 1, y: 1, z: 1} + m_InertiaRotation: {x: 0, y: 0, z: 0, w: 1} + m_IncludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_ExcludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_ImplicitCom: 1 + m_ImplicitTensor: 1 m_UseGravity: 1 m_IsKinematic: 1 m_Interpolate: 0 @@ -186,9 +194,17 @@ BoxCollider: m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 47437486} m_Material: {fileID: 0} + m_IncludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_ExcludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_LayerOverridePriority: 0 m_IsTrigger: 0 + m_ProvidesContacts: 0 m_Enabled: 1 - serializedVersion: 2 + serializedVersion: 3 m_Size: {x: 1, y: 1, z: 1} m_Center: {x: 0, y: 0, z: 0} --- !u!23 &47437490 @@ -202,10 +218,17 @@ MeshRenderer: m_CastShadows: 1 m_ReceiveShadows: 1 m_DynamicOccludee: 1 + m_StaticShadowCaster: 0 m_MotionVectors: 1 m_LightProbeUsage: 1 m_ReflectionProbeUsage: 1 m_RayTracingMode: 2 + m_RayTraceProcedural: 0 + m_RayTracingAccelStructBuildFlagsOverride: 0 + m_RayTracingAccelStructBuildFlags: 1 + m_SmallMeshCulling: 1 + m_ForceMeshLod: -1 + m_MeshLodSelectionBias: 0 m_RenderingLayerMask: 1 m_RendererPriority: 0 m_Materials: @@ -227,9 +250,11 @@ MeshRenderer: m_AutoUVMaxDistance: 0.5 m_AutoUVMaxAngle: 89 m_LightmapParameters: {fileID: 0} + m_GlobalIlluminationMeshLod: 0 m_SortingLayerID: 0 m_SortingLayer: 0 m_SortingOrder: 0 + m_AdditionalVertexStreams: {fileID: 0} --- !u!33 &47437491 MeshFilter: m_ObjectHideFlags: 0 @@ -245,12 +270,13 @@ Transform: m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 47437486} + serializedVersion: 2 m_LocalRotation: {x: -0, y: 0.7071065, z: -0, w: 0.7071071} m_LocalPosition: {x: 1.1999998, y: 1, z: 0} m_LocalScale: {x: 3, y: 0.1, z: 0.4} + m_ConstrainProportionsScale: 0 m_Children: [] m_Father: {fileID: 1524251173} - m_RootOrder: 10 m_LocalEulerAnglesHint: {x: 0, y: 90.00001, z: 0} --- !u!1 &136519267 GameObject: @@ -279,10 +305,21 @@ Rigidbody: m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 136519267} - serializedVersion: 2 + serializedVersion: 5 m_Mass: 2 - m_Drag: 0 - m_AngularDrag: 0.05 + m_LinearDamping: 0 + m_AngularDamping: 0.05 + m_CenterOfMass: {x: 0, y: 0, z: 0} + m_InertiaTensor: {x: 1, y: 1, z: 1} + m_InertiaRotation: {x: 0, y: 0, z: 0, w: 1} + m_IncludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_ExcludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_ImplicitCom: 1 + m_ImplicitTensor: 1 m_UseGravity: 1 m_IsKinematic: 0 m_Interpolate: 0 @@ -296,9 +333,17 @@ BoxCollider: m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 136519267} m_Material: {fileID: 0} + m_IncludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_ExcludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_LayerOverridePriority: 0 m_IsTrigger: 0 + m_ProvidesContacts: 0 m_Enabled: 1 - serializedVersion: 2 + serializedVersion: 3 m_Size: {x: 1, y: 1, z: 1} m_Center: {x: 0, y: 0, z: 0} --- !u!23 &136519270 @@ -312,10 +357,17 @@ MeshRenderer: m_CastShadows: 1 m_ReceiveShadows: 1 m_DynamicOccludee: 1 + m_StaticShadowCaster: 0 m_MotionVectors: 1 m_LightProbeUsage: 1 m_ReflectionProbeUsage: 1 m_RayTracingMode: 2 + m_RayTraceProcedural: 0 + m_RayTracingAccelStructBuildFlagsOverride: 0 + m_RayTracingAccelStructBuildFlags: 1 + m_SmallMeshCulling: 1 + m_ForceMeshLod: -1 + m_MeshLodSelectionBias: 0 m_RenderingLayerMask: 1 m_RendererPriority: 0 m_Materials: @@ -337,9 +389,11 @@ MeshRenderer: m_AutoUVMaxDistance: 0.5 m_AutoUVMaxAngle: 89 m_LightmapParameters: {fileID: 0} + m_GlobalIlluminationMeshLod: 0 m_SortingLayerID: 0 m_SortingLayer: 0 m_SortingOrder: 0 + m_AdditionalVertexStreams: {fileID: 0} --- !u!33 &136519271 MeshFilter: m_ObjectHideFlags: 0 @@ -355,12 +409,13 @@ Transform: m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 136519267} + serializedVersion: 2 m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: -2.4, y: 4, z: -5.389} m_LocalScale: {x: 0.5, y: 0.5, z: 0.5} + m_ConstrainProportionsScale: 0 m_Children: [] m_Father: {fileID: 0} - m_RootOrder: 7 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!1 &184459933 GameObject: @@ -388,12 +443,13 @@ Transform: m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 184459933} + serializedVersion: 2 m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: -1.35, z: 0} m_LocalScale: {x: 0.1, y: 0.7, z: 0.5} + m_ConstrainProportionsScale: 0 m_Children: [] m_Father: {fileID: 784505044} - m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!65 &184459935 BoxCollider: @@ -403,9 +459,17 @@ BoxCollider: m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 184459933} m_Material: {fileID: 0} + m_IncludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_ExcludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_LayerOverridePriority: 0 m_IsTrigger: 0 + m_ProvidesContacts: 0 m_Enabled: 1 - serializedVersion: 2 + serializedVersion: 3 m_Size: {x: 1, y: 1, z: 1} m_Center: {x: 0, y: 0, z: 0} --- !u!23 &184459936 @@ -419,10 +483,17 @@ MeshRenderer: m_CastShadows: 1 m_ReceiveShadows: 1 m_DynamicOccludee: 1 + m_StaticShadowCaster: 0 m_MotionVectors: 1 m_LightProbeUsage: 1 m_ReflectionProbeUsage: 1 m_RayTracingMode: 2 + m_RayTraceProcedural: 0 + m_RayTracingAccelStructBuildFlagsOverride: 0 + m_RayTracingAccelStructBuildFlags: 1 + m_SmallMeshCulling: 1 + m_ForceMeshLod: -1 + m_MeshLodSelectionBias: 0 m_RenderingLayerMask: 1 m_RendererPriority: 0 m_Materials: @@ -444,9 +515,11 @@ MeshRenderer: m_AutoUVMaxDistance: 0.5 m_AutoUVMaxAngle: 89 m_LightmapParameters: {fileID: 0} + m_GlobalIlluminationMeshLod: 0 m_SortingLayerID: 0 m_SortingLayer: 0 m_SortingOrder: 0 + m_AdditionalVertexStreams: {fileID: 0} --- !u!33 &184459937 MeshFilter: m_ObjectHideFlags: 0 @@ -482,10 +555,21 @@ Rigidbody: m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 286835133} - serializedVersion: 2 + serializedVersion: 5 m_Mass: 0.5 - m_Drag: 0 - m_AngularDrag: 0.1 + m_LinearDamping: 0 + m_AngularDamping: 0.1 + m_CenterOfMass: {x: 0, y: 0, z: 0} + m_InertiaTensor: {x: 1, y: 1, z: 1} + m_InertiaRotation: {x: 0, y: 0, z: 0, w: 1} + m_IncludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_ExcludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_ImplicitCom: 1 + m_ImplicitTensor: 1 m_UseGravity: 1 m_IsKinematic: 0 m_Interpolate: 0 @@ -499,9 +583,17 @@ BoxCollider: m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 286835133} m_Material: {fileID: 0} + m_IncludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_ExcludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_LayerOverridePriority: 0 m_IsTrigger: 0 + m_ProvidesContacts: 0 m_Enabled: 1 - serializedVersion: 2 + serializedVersion: 3 m_Size: {x: 1, y: 1, z: 1} m_Center: {x: 0, y: 0, z: 0} --- !u!23 &286835136 @@ -515,10 +607,17 @@ MeshRenderer: m_CastShadows: 1 m_ReceiveShadows: 1 m_DynamicOccludee: 1 + m_StaticShadowCaster: 0 m_MotionVectors: 1 m_LightProbeUsage: 1 m_ReflectionProbeUsage: 1 m_RayTracingMode: 2 + m_RayTraceProcedural: 0 + m_RayTracingAccelStructBuildFlagsOverride: 0 + m_RayTracingAccelStructBuildFlags: 1 + m_SmallMeshCulling: 1 + m_ForceMeshLod: -1 + m_MeshLodSelectionBias: 0 m_RenderingLayerMask: 1 m_RendererPriority: 0 m_Materials: @@ -540,9 +639,11 @@ MeshRenderer: m_AutoUVMaxDistance: 0.5 m_AutoUVMaxAngle: 89 m_LightmapParameters: {fileID: 0} + m_GlobalIlluminationMeshLod: 0 m_SortingLayerID: 0 m_SortingLayer: 0 m_SortingOrder: 0 + m_AdditionalVertexStreams: {fileID: 0} --- !u!33 &286835137 MeshFilter: m_ObjectHideFlags: 0 @@ -558,12 +659,13 @@ Transform: m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 286835133} + serializedVersion: 2 m_LocalRotation: {x: 0.6532807, y: 0.6532823, z: -0.2705977, w: 0.27059844} - m_LocalPosition: {x: -0.369, y: 0.79, z: -0.356} + m_LocalPosition: {x: -0.118, y: 0.79, z: -0.356} m_LocalScale: {x: 0.5, y: 1, z: 0.5} + m_ConstrainProportionsScale: 0 m_Children: [] m_Father: {fileID: 0} - m_RootOrder: 5 m_LocalEulerAnglesHint: {x: 45.000004, y: 180.00002, z: 90.00001} --- !u!1 &359954495 GameObject: @@ -612,10 +714,21 @@ Rigidbody: m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 359954495} - serializedVersion: 2 + serializedVersion: 5 m_Mass: 1 - m_Drag: 0 - m_AngularDrag: 0.05 + m_LinearDamping: 0 + m_AngularDamping: 0.05 + m_CenterOfMass: {x: 0, y: 0, z: 0} + m_InertiaTensor: {x: 1, y: 1, z: 1} + m_InertiaRotation: {x: 0, y: 0, z: 0, w: 1} + m_IncludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_ExcludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_ImplicitCom: 1 + m_ImplicitTensor: 1 m_UseGravity: 1 m_IsKinematic: 1 m_Interpolate: 0 @@ -629,9 +742,17 @@ BoxCollider: m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 359954495} m_Material: {fileID: 0} + m_IncludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_ExcludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_LayerOverridePriority: 0 m_IsTrigger: 0 + m_ProvidesContacts: 0 m_Enabled: 1 - serializedVersion: 2 + serializedVersion: 3 m_Size: {x: 1, y: 1, z: 1} m_Center: {x: 0, y: 0, z: 0} --- !u!23 &359954499 @@ -645,10 +766,17 @@ MeshRenderer: m_CastShadows: 1 m_ReceiveShadows: 1 m_DynamicOccludee: 1 + m_StaticShadowCaster: 0 m_MotionVectors: 1 m_LightProbeUsage: 1 m_ReflectionProbeUsage: 1 m_RayTracingMode: 2 + m_RayTraceProcedural: 0 + m_RayTracingAccelStructBuildFlagsOverride: 0 + m_RayTracingAccelStructBuildFlags: 1 + m_SmallMeshCulling: 1 + m_ForceMeshLod: -1 + m_MeshLodSelectionBias: 0 m_RenderingLayerMask: 1 m_RendererPriority: 0 m_Materials: @@ -670,9 +798,11 @@ MeshRenderer: m_AutoUVMaxDistance: 0.5 m_AutoUVMaxAngle: 89 m_LightmapParameters: {fileID: 0} + m_GlobalIlluminationMeshLod: 0 m_SortingLayerID: 0 m_SortingLayer: 0 m_SortingOrder: 0 + m_AdditionalVertexStreams: {fileID: 0} --- !u!33 &359954500 MeshFilter: m_ObjectHideFlags: 0 @@ -688,12 +818,13 @@ Transform: m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 359954495} + serializedVersion: 2 m_LocalRotation: {x: -0, y: 0.7071065, z: -0, w: 0.7071071} m_LocalPosition: {x: 3, y: 1, z: 0} m_LocalScale: {x: 3, y: 0.1, z: 0.4} + m_ConstrainProportionsScale: 0 m_Children: [] m_Father: {fileID: 1524251173} - m_RootOrder: 13 m_LocalEulerAnglesHint: {x: 0, y: 90.00001, z: 0} --- !u!1 &367715950 GameObject: @@ -721,14 +852,15 @@ Transform: m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 367715950} + serializedVersion: 2 m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: -1, z: 0} m_LocalScale: {x: 1.5, y: 0.2, z: 1.5} + m_ConstrainProportionsScale: 0 m_Children: - {fileID: 1440208402} - {fileID: 1985356213} m_Father: {fileID: 978669424} - m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!65 &367715952 BoxCollider: @@ -738,9 +870,17 @@ BoxCollider: m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 367715950} m_Material: {fileID: 0} + m_IncludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_ExcludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_LayerOverridePriority: 0 m_IsTrigger: 0 + m_ProvidesContacts: 0 m_Enabled: 1 - serializedVersion: 2 + serializedVersion: 3 m_Size: {x: 1.0000001, y: 2, z: 1.0000002} m_Center: {x: 0.000000059604645, y: 0, z: -0.00000008940697} --- !u!23 &367715953 @@ -754,10 +894,17 @@ MeshRenderer: m_CastShadows: 1 m_ReceiveShadows: 1 m_DynamicOccludee: 1 + m_StaticShadowCaster: 0 m_MotionVectors: 1 m_LightProbeUsage: 1 m_ReflectionProbeUsage: 1 m_RayTracingMode: 2 + m_RayTraceProcedural: 0 + m_RayTracingAccelStructBuildFlagsOverride: 0 + m_RayTracingAccelStructBuildFlags: 1 + m_SmallMeshCulling: 1 + m_ForceMeshLod: -1 + m_MeshLodSelectionBias: 0 m_RenderingLayerMask: 1 m_RendererPriority: 0 m_Materials: @@ -779,9 +926,11 @@ MeshRenderer: m_AutoUVMaxDistance: 0.5 m_AutoUVMaxAngle: 89 m_LightmapParameters: {fileID: 0} + m_GlobalIlluminationMeshLod: 0 m_SortingLayerID: 0 m_SortingLayer: 0 m_SortingOrder: 0 + m_AdditionalVertexStreams: {fileID: 0} --- !u!33 &367715954 MeshFilter: m_ObjectHideFlags: 0 @@ -837,10 +986,21 @@ Rigidbody: m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 373481825} - serializedVersion: 2 + serializedVersion: 5 m_Mass: 1 - m_Drag: 0 - m_AngularDrag: 0.05 + m_LinearDamping: 0 + m_AngularDamping: 0.05 + m_CenterOfMass: {x: 0, y: 0, z: 0} + m_InertiaTensor: {x: 1, y: 1, z: 1} + m_InertiaRotation: {x: 0, y: 0, z: 0, w: 1} + m_IncludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_ExcludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_ImplicitCom: 1 + m_ImplicitTensor: 1 m_UseGravity: 1 m_IsKinematic: 1 m_Interpolate: 0 @@ -854,9 +1014,17 @@ BoxCollider: m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 373481825} m_Material: {fileID: 0} + m_IncludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_ExcludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_LayerOverridePriority: 0 m_IsTrigger: 0 + m_ProvidesContacts: 0 m_Enabled: 1 - serializedVersion: 2 + serializedVersion: 3 m_Size: {x: 1, y: 1, z: 1} m_Center: {x: 0, y: 0, z: 0} --- !u!23 &373481829 @@ -870,10 +1038,17 @@ MeshRenderer: m_CastShadows: 1 m_ReceiveShadows: 1 m_DynamicOccludee: 1 + m_StaticShadowCaster: 0 m_MotionVectors: 1 m_LightProbeUsage: 1 m_ReflectionProbeUsage: 1 m_RayTracingMode: 2 + m_RayTraceProcedural: 0 + m_RayTracingAccelStructBuildFlagsOverride: 0 + m_RayTracingAccelStructBuildFlags: 1 + m_SmallMeshCulling: 1 + m_ForceMeshLod: -1 + m_MeshLodSelectionBias: 0 m_RenderingLayerMask: 1 m_RendererPriority: 0 m_Materials: @@ -895,9 +1070,11 @@ MeshRenderer: m_AutoUVMaxDistance: 0.5 m_AutoUVMaxAngle: 89 m_LightmapParameters: {fileID: 0} + m_GlobalIlluminationMeshLod: 0 m_SortingLayerID: 0 m_SortingLayer: 0 m_SortingOrder: 0 + m_AdditionalVertexStreams: {fileID: 0} --- !u!33 &373481830 MeshFilter: m_ObjectHideFlags: 0 @@ -913,12 +1090,13 @@ Transform: m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 373481825} + serializedVersion: 2 m_LocalRotation: {x: -0, y: 0.7071065, z: -0, w: 0.7071071} m_LocalPosition: {x: 2.4, y: 1, z: 0} m_LocalScale: {x: 3, y: 0.1, z: 0.4} + m_ConstrainProportionsScale: 0 m_Children: [] m_Father: {fileID: 1524251173} - m_RootOrder: 12 m_LocalEulerAnglesHint: {x: 0, y: 90.00001, z: 0} --- !u!1 &400203997 GameObject: @@ -1050,12 +1228,13 @@ Transform: m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 400203997} + serializedVersion: 2 m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} m_LocalPosition: {x: 0, y: 1, z: -1.5} m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 m_Children: [] m_Father: {fileID: 1524251173} - m_RootOrder: 1 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!1 &445011554 GameObject: @@ -1084,10 +1263,21 @@ Rigidbody: m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 445011554} - serializedVersion: 2 + serializedVersion: 5 m_Mass: 2 - m_Drag: 0 - m_AngularDrag: 0.05 + m_LinearDamping: 0 + m_AngularDamping: 0.05 + m_CenterOfMass: {x: 0, y: 0, z: 0} + m_InertiaTensor: {x: 1, y: 1, z: 1} + m_InertiaRotation: {x: 0, y: 0, z: 0, w: 1} + m_IncludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_ExcludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_ImplicitCom: 1 + m_ImplicitTensor: 1 m_UseGravity: 1 m_IsKinematic: 0 m_Interpolate: 0 @@ -1101,9 +1291,17 @@ BoxCollider: m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 445011554} m_Material: {fileID: 0} + m_IncludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_ExcludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_LayerOverridePriority: 0 m_IsTrigger: 0 + m_ProvidesContacts: 0 m_Enabled: 1 - serializedVersion: 2 + serializedVersion: 3 m_Size: {x: 1, y: 1, z: 1} m_Center: {x: 0, y: 0, z: 0} --- !u!23 &445011557 @@ -1117,10 +1315,17 @@ MeshRenderer: m_CastShadows: 1 m_ReceiveShadows: 1 m_DynamicOccludee: 1 + m_StaticShadowCaster: 0 m_MotionVectors: 1 m_LightProbeUsage: 1 m_ReflectionProbeUsage: 1 m_RayTracingMode: 2 + m_RayTraceProcedural: 0 + m_RayTracingAccelStructBuildFlagsOverride: 0 + m_RayTracingAccelStructBuildFlags: 1 + m_SmallMeshCulling: 1 + m_ForceMeshLod: -1 + m_MeshLodSelectionBias: 0 m_RenderingLayerMask: 1 m_RendererPriority: 0 m_Materials: @@ -1142,9 +1347,11 @@ MeshRenderer: m_AutoUVMaxDistance: 0.5 m_AutoUVMaxAngle: 89 m_LightmapParameters: {fileID: 0} + m_GlobalIlluminationMeshLod: 0 m_SortingLayerID: 0 m_SortingLayer: 0 m_SortingOrder: 0 + m_AdditionalVertexStreams: {fileID: 0} --- !u!33 &445011558 MeshFilter: m_ObjectHideFlags: 0 @@ -1160,12 +1367,13 @@ Transform: m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 445011554} + serializedVersion: 2 m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: -2.105, y: 4.588, z: -5.493} m_LocalScale: {x: 0.5, y: 0.5, z: 0.5} + m_ConstrainProportionsScale: 0 m_Children: [] m_Father: {fileID: 0} - m_RootOrder: 9 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!1 &469541382 GameObject: @@ -1214,10 +1422,21 @@ Rigidbody: m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 469541382} - serializedVersion: 2 + serializedVersion: 5 m_Mass: 1 - m_Drag: 0 - m_AngularDrag: 0.05 + m_LinearDamping: 0 + m_AngularDamping: 0.05 + m_CenterOfMass: {x: 0, y: 0, z: 0} + m_InertiaTensor: {x: 1, y: 1, z: 1} + m_InertiaRotation: {x: 0, y: 0, z: 0, w: 1} + m_IncludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_ExcludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_ImplicitCom: 1 + m_ImplicitTensor: 1 m_UseGravity: 1 m_IsKinematic: 1 m_Interpolate: 0 @@ -1231,9 +1450,17 @@ BoxCollider: m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 469541382} m_Material: {fileID: 0} + m_IncludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_ExcludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_LayerOverridePriority: 0 m_IsTrigger: 0 + m_ProvidesContacts: 0 m_Enabled: 1 - serializedVersion: 2 + serializedVersion: 3 m_Size: {x: 1, y: 1, z: 1} m_Center: {x: 0, y: 0, z: 0} --- !u!23 &469541386 @@ -1247,10 +1474,17 @@ MeshRenderer: m_CastShadows: 1 m_ReceiveShadows: 1 m_DynamicOccludee: 1 + m_StaticShadowCaster: 0 m_MotionVectors: 1 m_LightProbeUsage: 1 m_ReflectionProbeUsage: 1 m_RayTracingMode: 2 + m_RayTraceProcedural: 0 + m_RayTracingAccelStructBuildFlagsOverride: 0 + m_RayTracingAccelStructBuildFlags: 1 + m_SmallMeshCulling: 1 + m_ForceMeshLod: -1 + m_MeshLodSelectionBias: 0 m_RenderingLayerMask: 1 m_RendererPriority: 0 m_Materials: @@ -1272,9 +1506,11 @@ MeshRenderer: m_AutoUVMaxDistance: 0.5 m_AutoUVMaxAngle: 89 m_LightmapParameters: {fileID: 0} + m_GlobalIlluminationMeshLod: 0 m_SortingLayerID: 0 m_SortingLayer: 0 m_SortingOrder: 0 + m_AdditionalVertexStreams: {fileID: 0} --- !u!33 &469541387 MeshFilter: m_ObjectHideFlags: 0 @@ -1290,12 +1526,13 @@ Transform: m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 469541382} + serializedVersion: 2 m_LocalRotation: {x: -0, y: 0.7071065, z: -0, w: 0.7071071} m_LocalPosition: {x: -3.6, y: 1, z: 0} m_LocalScale: {x: 3, y: 0.1, z: 0.4} + m_ConstrainProportionsScale: 0 m_Children: [] m_Father: {fileID: 1524251173} - m_RootOrder: 2 m_LocalEulerAnglesHint: {x: 0, y: 90.00001, z: 0} --- !u!1 &562189915 GameObject: @@ -1324,10 +1561,21 @@ Rigidbody: m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 562189915} - serializedVersion: 2 + serializedVersion: 5 m_Mass: 1 - m_Drag: 0 - m_AngularDrag: 0.5 + m_LinearDamping: 0 + m_AngularDamping: 0.5 + m_CenterOfMass: {x: 0, y: 0, z: 0} + m_InertiaTensor: {x: 1, y: 1, z: 1} + m_InertiaRotation: {x: 0, y: 0, z: 0, w: 1} + m_IncludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_ExcludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_ImplicitCom: 1 + m_ImplicitTensor: 1 m_UseGravity: 1 m_IsKinematic: 0 m_Interpolate: 0 @@ -1341,9 +1589,17 @@ BoxCollider: m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 562189915} m_Material: {fileID: 0} + m_IncludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_ExcludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_LayerOverridePriority: 0 m_IsTrigger: 0 + m_ProvidesContacts: 0 m_Enabled: 1 - serializedVersion: 2 + serializedVersion: 3 m_Size: {x: 1, y: 1, z: 1} m_Center: {x: 0, y: 0, z: 0} --- !u!23 &562189920 @@ -1357,10 +1613,17 @@ MeshRenderer: m_CastShadows: 1 m_ReceiveShadows: 1 m_DynamicOccludee: 1 + m_StaticShadowCaster: 0 m_MotionVectors: 1 m_LightProbeUsage: 1 m_ReflectionProbeUsage: 1 m_RayTracingMode: 2 + m_RayTraceProcedural: 0 + m_RayTracingAccelStructBuildFlagsOverride: 0 + m_RayTracingAccelStructBuildFlags: 1 + m_SmallMeshCulling: 1 + m_ForceMeshLod: -1 + m_MeshLodSelectionBias: 0 m_RenderingLayerMask: 1 m_RendererPriority: 0 m_Materials: @@ -1382,9 +1645,11 @@ MeshRenderer: m_AutoUVMaxDistance: 0.5 m_AutoUVMaxAngle: 89 m_LightmapParameters: {fileID: 0} + m_GlobalIlluminationMeshLod: 0 m_SortingLayerID: 0 m_SortingLayer: 0 m_SortingOrder: 0 + m_AdditionalVertexStreams: {fileID: 0} --- !u!33 &562189921 MeshFilter: m_ObjectHideFlags: 0 @@ -1400,12 +1665,13 @@ Transform: m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 562189915} + serializedVersion: 2 m_LocalRotation: {x: -0, y: -0, z: -0.7071067, w: 0.70710695} m_LocalPosition: {x: -1.406, y: -0, z: 0.9375} m_LocalScale: {x: 1, y: 0.20000012, z: 1} + m_ConstrainProportionsScale: 0 m_Children: [] m_Father: {fileID: 906432239} - m_RootOrder: 4 m_LocalEulerAnglesHint: {x: 0, y: 0, z: -90.00001} --- !u!1 &705507993 GameObject: @@ -1417,6 +1683,7 @@ GameObject: m_Component: - component: {fileID: 705507995} - component: {fileID: 705507994} + - component: {fileID: 705507996} m_Layer: 0 m_Name: Light m_TagString: Untagged @@ -1432,9 +1699,8 @@ Light: m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 705507993} m_Enabled: 1 - serializedVersion: 10 + serializedVersion: 11 m_Type: 1 - m_Shape: 0 m_Color: {r: 1, g: 1, b: 1, a: 1} m_Intensity: 0.7 m_Range: 10 @@ -1483,8 +1749,13 @@ Light: m_UseColorTemperature: 0 m_BoundingSphereOverride: {x: 0, y: 0, z: 0, w: 0} m_UseBoundingSphereOverride: 0 + m_UseViewFrustumForShadowCasterCull: 1 + m_ForceVisible: 0 m_ShadowRadius: 0 m_ShadowAngle: 0 + m_LightUnit: 1 + m_LuxAtDistance: 1 + m_EnableSpotReflector: 1 --- !u!4 &705507995 Transform: m_ObjectHideFlags: 0 @@ -1492,13 +1763,43 @@ Transform: m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 705507993} + serializedVersion: 2 m_LocalRotation: {x: 0.085324295, y: -0.8876446, z: 0.41391522, w: 0.18297842} m_LocalPosition: {x: 0, y: 15, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 m_Children: [] m_Father: {fileID: 0} - m_RootOrder: 1 m_LocalEulerAnglesHint: {x: 50.000004, y: -156.70401, z: 0} +--- !u!114 &705507996 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 705507993} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 474bcb49853aa07438625e644c072ee6, type: 3} + m_Name: + m_EditorClassIdentifier: Unity.RenderPipelines.Universal.Runtime::UnityEngine.Rendering.Universal.UniversalAdditionalLightData + m_UsePipelineSettings: 1 + m_AdditionalLightsShadowResolutionTier: 2 + m_CustomShadowLayers: 0 + m_LightCookieSize: {x: 1, y: 1} + m_LightCookieOffset: {x: 0, y: 0} + m_SoftShadowQuality: 0 + m_RenderingLayersMask: + serializedVersion: 0 + m_Bits: 1 + m_ShadowRenderingLayersMask: + serializedVersion: 0 + m_Bits: 1 + m_Version: 4 + m_LightLayerMask: 1 + m_ShadowLayerMask: 1 + m_RenderingLayers: 1 + m_ShadowRenderingLayers: 1 --- !u!1 &737909187 GameObject: m_ObjectHideFlags: 0 @@ -1526,9 +1827,11 @@ Transform: m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 737909187} + serializedVersion: 2 m_LocalRotation: {x: -0, y: 0.9238796, z: -0, w: 0.38268346} m_LocalPosition: {x: 5.38, y: 0.25, z: 5.04} m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 m_Children: - {fileID: 1614800479} - {fileID: 1850142435} @@ -1536,7 +1839,6 @@ Transform: - {fileID: 1489539032} - {fileID: 2136856848} m_Father: {fileID: 0} - m_RootOrder: 3 m_LocalEulerAnglesHint: {x: 0, y: 135, z: 0} --- !u!54 &737909189 Rigidbody: @@ -1545,10 +1847,21 @@ Rigidbody: m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 737909187} - serializedVersion: 2 + serializedVersion: 5 m_Mass: 40 - m_Drag: 0 - m_AngularDrag: 2 + m_LinearDamping: 0 + m_AngularDamping: 2 + m_CenterOfMass: {x: 0, y: 0, z: 0} + m_InertiaTensor: {x: 1, y: 1, z: 1} + m_InertiaRotation: {x: 0, y: 0, z: 0, w: 1} + m_IncludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_ExcludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_ImplicitCom: 1 + m_ImplicitTensor: 1 m_UseGravity: 1 m_IsKinematic: 0 m_Interpolate: 0 @@ -1561,7 +1874,9 @@ HingeJoint: m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 737909187} + serializedVersion: 3 m_ConnectedBody: {fileID: 0} + m_ConnectedArticulationBody: {fileID: 0} m_Anchor: {x: 0, y: 0, z: 0} m_Axis: {x: 0, y: 1, z: 0} m_AutoConfigureConnectedAnchor: 1 @@ -1577,6 +1892,8 @@ HingeJoint: force: 0 freeSpin: 0 m_UseLimits: 0 + m_ExtendedLimits: 0 + m_UseAcceleration: 0 m_Limits: min: 0 max: 0 @@ -1666,10 +1983,21 @@ Rigidbody: m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 747792303} - serializedVersion: 2 + serializedVersion: 5 m_Mass: 1 - m_Drag: 0 - m_AngularDrag: 0.05 + m_LinearDamping: 0 + m_AngularDamping: 0.05 + m_CenterOfMass: {x: 0, y: 0, z: 0} + m_InertiaTensor: {x: 1, y: 1, z: 1} + m_InertiaRotation: {x: 0, y: 0, z: 0, w: 1} + m_IncludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_ExcludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_ImplicitCom: 1 + m_ImplicitTensor: 1 m_UseGravity: 1 m_IsKinematic: 1 m_Interpolate: 0 @@ -1683,9 +2011,17 @@ BoxCollider: m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 747792303} m_Material: {fileID: 0} + m_IncludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_ExcludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_LayerOverridePriority: 0 m_IsTrigger: 0 + m_ProvidesContacts: 0 m_Enabled: 1 - serializedVersion: 2 + serializedVersion: 3 m_Size: {x: 1, y: 1, z: 1} m_Center: {x: 0, y: 0, z: 0} --- !u!23 &747792307 @@ -1699,10 +2035,17 @@ MeshRenderer: m_CastShadows: 1 m_ReceiveShadows: 1 m_DynamicOccludee: 1 + m_StaticShadowCaster: 0 m_MotionVectors: 1 m_LightProbeUsage: 1 m_ReflectionProbeUsage: 1 m_RayTracingMode: 2 + m_RayTraceProcedural: 0 + m_RayTracingAccelStructBuildFlagsOverride: 0 + m_RayTracingAccelStructBuildFlags: 1 + m_SmallMeshCulling: 1 + m_ForceMeshLod: -1 + m_MeshLodSelectionBias: 0 m_RenderingLayerMask: 1 m_RendererPriority: 0 m_Materials: @@ -1724,9 +2067,11 @@ MeshRenderer: m_AutoUVMaxDistance: 0.5 m_AutoUVMaxAngle: 89 m_LightmapParameters: {fileID: 0} + m_GlobalIlluminationMeshLod: 0 m_SortingLayerID: 0 m_SortingLayer: 0 m_SortingOrder: 0 + m_AdditionalVertexStreams: {fileID: 0} --- !u!33 &747792308 MeshFilter: m_ObjectHideFlags: 0 @@ -1742,12 +2087,13 @@ Transform: m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 747792303} + serializedVersion: 2 m_LocalRotation: {x: -0, y: 0.7071065, z: -0, w: 0.7071071} m_LocalPosition: {x: -3, y: 1, z: 0} m_LocalScale: {x: 3, y: 0.1, z: 0.4} + m_ConstrainProportionsScale: 0 m_Children: [] m_Father: {fileID: 1524251173} - m_RootOrder: 3 m_LocalEulerAnglesHint: {x: 0, y: 90.00001, z: 0} --- !u!1 &758798860 GameObject: @@ -1796,10 +2142,21 @@ Rigidbody: m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 758798860} - serializedVersion: 2 + serializedVersion: 5 m_Mass: 1 - m_Drag: 0 - m_AngularDrag: 0.05 + m_LinearDamping: 0 + m_AngularDamping: 0.05 + m_CenterOfMass: {x: 0, y: 0, z: 0} + m_InertiaTensor: {x: 1, y: 1, z: 1} + m_InertiaRotation: {x: 0, y: 0, z: 0, w: 1} + m_IncludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_ExcludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_ImplicitCom: 1 + m_ImplicitTensor: 1 m_UseGravity: 1 m_IsKinematic: 1 m_Interpolate: 0 @@ -1813,9 +2170,17 @@ BoxCollider: m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 758798860} m_Material: {fileID: 0} + m_IncludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_ExcludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_LayerOverridePriority: 0 m_IsTrigger: 0 + m_ProvidesContacts: 0 m_Enabled: 1 - serializedVersion: 2 + serializedVersion: 3 m_Size: {x: 1, y: 1, z: 1} m_Center: {x: 0, y: 0, z: 0} --- !u!23 &758798864 @@ -1829,10 +2194,17 @@ MeshRenderer: m_CastShadows: 1 m_ReceiveShadows: 1 m_DynamicOccludee: 1 + m_StaticShadowCaster: 0 m_MotionVectors: 1 m_LightProbeUsage: 1 m_ReflectionProbeUsage: 1 m_RayTracingMode: 2 + m_RayTraceProcedural: 0 + m_RayTracingAccelStructBuildFlagsOverride: 0 + m_RayTracingAccelStructBuildFlags: 1 + m_SmallMeshCulling: 1 + m_ForceMeshLod: -1 + m_MeshLodSelectionBias: 0 m_RenderingLayerMask: 1 m_RendererPriority: 0 m_Materials: @@ -1854,9 +2226,11 @@ MeshRenderer: m_AutoUVMaxDistance: 0.5 m_AutoUVMaxAngle: 89 m_LightmapParameters: {fileID: 0} + m_GlobalIlluminationMeshLod: 0 m_SortingLayerID: 0 m_SortingLayer: 0 m_SortingOrder: 0 + m_AdditionalVertexStreams: {fileID: 0} --- !u!33 &758798865 MeshFilter: m_ObjectHideFlags: 0 @@ -1872,12 +2246,13 @@ Transform: m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 758798860} + serializedVersion: 2 m_LocalRotation: {x: -0, y: 0.7071065, z: -0, w: 0.7071071} m_LocalPosition: {x: 0.5999999, y: 1, z: 0} m_LocalScale: {x: 3, y: 0.1, z: 0.4} + m_ConstrainProportionsScale: 0 m_Children: [] m_Father: {fileID: 1524251173} - m_RootOrder: 9 m_LocalEulerAnglesHint: {x: 0, y: 90.00001, z: 0} --- !u!1 &784505043 GameObject: @@ -1905,14 +2280,15 @@ Transform: m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 784505043} + serializedVersion: 2 m_LocalRotation: {x: 1, y: 0, z: 0, w: 0} m_LocalPosition: {x: 0, y: 1, z: 0} m_LocalScale: {x: 1.5, y: 0.2, z: 1.5} + m_ConstrainProportionsScale: 0 m_Children: - {fileID: 184459934} - {fileID: 2112864122} m_Father: {fileID: 978669424} - m_RootOrder: 1 m_LocalEulerAnglesHint: {x: 180, y: 0, z: 0} --- !u!65 &784505045 BoxCollider: @@ -1922,9 +2298,17 @@ BoxCollider: m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 784505043} m_Material: {fileID: 0} + m_IncludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_ExcludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_LayerOverridePriority: 0 m_IsTrigger: 0 + m_ProvidesContacts: 0 m_Enabled: 1 - serializedVersion: 2 + serializedVersion: 3 m_Size: {x: 1.0000001, y: 2, z: 1.0000002} m_Center: {x: 0.000000059604645, y: 0, z: -0.00000008940697} --- !u!23 &784505046 @@ -1938,10 +2322,17 @@ MeshRenderer: m_CastShadows: 1 m_ReceiveShadows: 1 m_DynamicOccludee: 1 + m_StaticShadowCaster: 0 m_MotionVectors: 1 m_LightProbeUsage: 1 m_ReflectionProbeUsage: 1 m_RayTracingMode: 2 + m_RayTraceProcedural: 0 + m_RayTracingAccelStructBuildFlagsOverride: 0 + m_RayTracingAccelStructBuildFlags: 1 + m_SmallMeshCulling: 1 + m_ForceMeshLod: -1 + m_MeshLodSelectionBias: 0 m_RenderingLayerMask: 1 m_RendererPriority: 0 m_Materials: @@ -1963,9 +2354,11 @@ MeshRenderer: m_AutoUVMaxDistance: 0.5 m_AutoUVMaxAngle: 89 m_LightmapParameters: {fileID: 0} + m_GlobalIlluminationMeshLod: 0 m_SortingLayerID: 0 m_SortingLayer: 0 m_SortingOrder: 0 + m_AdditionalVertexStreams: {fileID: 0} --- !u!33 &784505047 MeshFilter: m_ObjectHideFlags: 0 @@ -1997,9 +2390,11 @@ Transform: m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 906432238} + serializedVersion: 2 m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} m_LocalPosition: {x: -6.09375, y: 4.5, z: 5.0625} m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 m_Children: - {fileID: 907597906} - {fileID: 918799148} @@ -2008,7 +2403,6 @@ Transform: - {fileID: 562189922} - {fileID: 1106616805} m_Father: {fileID: 0} - m_RootOrder: 10 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!1 &907597903 GameObject: @@ -2115,12 +2509,13 @@ Transform: m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 907597903} + serializedVersion: 2 m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} m_LocalPosition: {x: 1.34375, y: -0.1, z: -2.5625} m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 m_Children: [] m_Father: {fileID: 906432239} - m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!114 &907597907 MonoBehaviour: @@ -2227,12 +2622,13 @@ Transform: m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 918799146} + serializedVersion: 2 m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} m_LocalPosition: {x: 1.34375, y: -0.1, z: -0.5625} m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 m_Children: [] m_Father: {fileID: 906432239} - m_RootOrder: 1 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!114 &918799149 MonoBehaviour: @@ -2311,10 +2707,21 @@ Rigidbody: m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 949798694} - serializedVersion: 2 + serializedVersion: 5 m_Mass: 2 - m_Drag: 0 - m_AngularDrag: 0.05 + m_LinearDamping: 0 + m_AngularDamping: 0.05 + m_CenterOfMass: {x: 0, y: 0, z: 0} + m_InertiaTensor: {x: 1, y: 1, z: 1} + m_InertiaRotation: {x: 0, y: 0, z: 0, w: 1} + m_IncludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_ExcludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_ImplicitCom: 1 + m_ImplicitTensor: 1 m_UseGravity: 1 m_IsKinematic: 0 m_Interpolate: 0 @@ -2328,9 +2735,17 @@ BoxCollider: m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 949798694} m_Material: {fileID: 0} + m_IncludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_ExcludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_LayerOverridePriority: 0 m_IsTrigger: 0 + m_ProvidesContacts: 0 m_Enabled: 1 - serializedVersion: 2 + serializedVersion: 3 m_Size: {x: 1, y: 1, z: 1} m_Center: {x: 0, y: 0, z: 0} --- !u!23 &949798697 @@ -2344,10 +2759,17 @@ MeshRenderer: m_CastShadows: 1 m_ReceiveShadows: 1 m_DynamicOccludee: 1 + m_StaticShadowCaster: 0 m_MotionVectors: 1 m_LightProbeUsage: 1 m_ReflectionProbeUsage: 1 m_RayTracingMode: 2 + m_RayTraceProcedural: 0 + m_RayTracingAccelStructBuildFlagsOverride: 0 + m_RayTracingAccelStructBuildFlags: 1 + m_SmallMeshCulling: 1 + m_ForceMeshLod: -1 + m_MeshLodSelectionBias: 0 m_RenderingLayerMask: 1 m_RendererPriority: 0 m_Materials: @@ -2369,9 +2791,11 @@ MeshRenderer: m_AutoUVMaxDistance: 0.5 m_AutoUVMaxAngle: 89 m_LightmapParameters: {fileID: 0} + m_GlobalIlluminationMeshLod: 0 m_SortingLayerID: 0 m_SortingLayer: 0 m_SortingOrder: 0 + m_AdditionalVertexStreams: {fileID: 0} --- !u!33 &949798698 MeshFilter: m_ObjectHideFlags: 0 @@ -2387,12 +2811,13 @@ Transform: m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 949798694} + serializedVersion: 2 m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: -1.8330001, y: 4, z: -5.735} m_LocalScale: {x: 0.5, y: 0.5, z: 0.5} + m_ConstrainProportionsScale: 0 m_Children: [] m_Father: {fileID: 0} - m_RootOrder: 8 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!1 &963194225 GameObject: @@ -2439,9 +2864,17 @@ Camera: m_projectionMatrixMode: 1 m_GateFitMode: 2 m_FOVAxisMode: 0 + m_Iso: 200 + m_ShutterSpeed: 0.005 + m_Aperture: 16 + m_FocusDistance: 10 + m_FocalLength: 50 + m_BladeCount: 5 + m_Curvature: {x: 2, y: 11} + m_BarrelClipping: 0.25 + m_Anamorphism: 0 m_SensorSize: {x: 36, y: 24} m_LensShift: {x: 0, y: 0} - m_FocalLength: 50 m_NormalizedViewPortRect: serializedVersion: 2 x: 0 @@ -2475,12 +2908,13 @@ Transform: m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 963194225} + serializedVersion: 2 m_LocalRotation: {x: 0.0013921931, y: 0.9848068, z: -0.17364798, w: 0.00024548118} m_LocalPosition: {x: 0, y: 6, z: 14} m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 m_Children: [] m_Father: {fileID: 0} - m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 20, y: 180, z: 0.162} --- !u!114 &963194229 MonoBehaviour: @@ -2501,9 +2935,7 @@ MonoBehaviour: maxPickDistance: 2 maxImpulseStrength: 3 leverage: 10 - pickRopeOnMouseButton: 0 splitPickedRopeOnKey: 32 - tweakPickDistanceOnScroll: 1 ropes: - {fileID: 400204000} - {fileID: 907597904} @@ -2542,10 +2974,21 @@ Rigidbody: m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 978669419} - serializedVersion: 2 + serializedVersion: 5 m_Mass: 8 - m_Drag: 0 - m_AngularDrag: 0.05 + m_LinearDamping: 0 + m_AngularDamping: 0.05 + m_CenterOfMass: {x: 0, y: 0, z: 0} + m_InertiaTensor: {x: 1, y: 1, z: 1} + m_InertiaRotation: {x: 0, y: 0, z: 0, w: 1} + m_IncludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_ExcludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_ImplicitCom: 1 + m_ImplicitTensor: 1 m_UseGravity: 1 m_IsKinematic: 0 m_Interpolate: 0 @@ -2559,8 +3002,17 @@ CapsuleCollider: m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 978669419} m_Material: {fileID: 0} + m_IncludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_ExcludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_LayerOverridePriority: 0 m_IsTrigger: 0 + m_ProvidesContacts: 0 m_Enabled: 1 + serializedVersion: 2 m_Radius: 0.5 m_Height: 3 m_Direction: 1 @@ -2576,10 +3028,17 @@ MeshRenderer: m_CastShadows: 1 m_ReceiveShadows: 1 m_DynamicOccludee: 1 + m_StaticShadowCaster: 0 m_MotionVectors: 1 m_LightProbeUsage: 1 m_ReflectionProbeUsage: 1 m_RayTracingMode: 2 + m_RayTraceProcedural: 0 + m_RayTracingAccelStructBuildFlagsOverride: 0 + m_RayTracingAccelStructBuildFlags: 1 + m_SmallMeshCulling: 1 + m_ForceMeshLod: -1 + m_MeshLodSelectionBias: 0 m_RenderingLayerMask: 1 m_RendererPriority: 0 m_Materials: @@ -2601,9 +3060,11 @@ MeshRenderer: m_AutoUVMaxDistance: 0.5 m_AutoUVMaxAngle: 89 m_LightmapParameters: {fileID: 0} + m_GlobalIlluminationMeshLod: 0 m_SortingLayerID: 0 m_SortingLayer: 0 m_SortingOrder: 0 + m_AdditionalVertexStreams: {fileID: 0} --- !u!33 &978669423 MeshFilter: m_ObjectHideFlags: 0 @@ -2619,14 +3080,15 @@ Transform: m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 978669419} + serializedVersion: 2 m_LocalRotation: {x: -0.2705976, y: 0.6532825, z: 0.65328044, w: 0.2705986} m_LocalPosition: {x: 5.733555, y: 1.25, z: 5.3935537} m_LocalScale: {x: 0.5, y: 0.5, z: 0.5} + m_ConstrainProportionsScale: 0 m_Children: - {fileID: 367715951} - {fileID: 784505044} m_Father: {fileID: 0} - m_RootOrder: 2 m_LocalEulerAnglesHint: {x: -90.00001, y: 0, z: 135} --- !u!114 &978669425 MonoBehaviour: @@ -2665,7 +3127,9 @@ HingeJoint: m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 978669419} + serializedVersion: 3 m_ConnectedBody: {fileID: 737909189} + m_ConnectedArticulationBody: {fileID: 0} m_Anchor: {x: 0, y: 0, z: 0} m_Axis: {x: 0, y: 1, z: 0} m_AutoConfigureConnectedAnchor: 1 @@ -2681,6 +3145,8 @@ HingeJoint: force: 0 freeSpin: 0 m_UseLimits: 0 + m_ExtendedLimits: 0 + m_UseAcceleration: 0 m_Limits: min: 0 max: 0 @@ -2720,10 +3186,21 @@ Rigidbody: m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1047506052} - serializedVersion: 2 + serializedVersion: 5 m_Mass: 1 - m_Drag: 0 - m_AngularDrag: 0.5 + m_LinearDamping: 0 + m_AngularDamping: 0.5 + m_CenterOfMass: {x: 0, y: 0, z: 0} + m_InertiaTensor: {x: 1, y: 1, z: 1} + m_InertiaRotation: {x: 0, y: 0, z: 0, w: 1} + m_IncludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_ExcludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_ImplicitCom: 1 + m_ImplicitTensor: 1 m_UseGravity: 1 m_IsKinematic: 0 m_Interpolate: 0 @@ -2737,9 +3214,17 @@ BoxCollider: m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1047506052} m_Material: {fileID: 0} + m_IncludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_ExcludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_LayerOverridePriority: 0 m_IsTrigger: 0 + m_ProvidesContacts: 0 m_Enabled: 1 - serializedVersion: 2 + serializedVersion: 3 m_Size: {x: 1, y: 1, z: 1} m_Center: {x: 0, y: 0, z: 0} --- !u!23 &1047506056 @@ -2753,10 +3238,17 @@ MeshRenderer: m_CastShadows: 1 m_ReceiveShadows: 1 m_DynamicOccludee: 1 + m_StaticShadowCaster: 0 m_MotionVectors: 1 m_LightProbeUsage: 1 m_ReflectionProbeUsage: 1 m_RayTracingMode: 2 + m_RayTraceProcedural: 0 + m_RayTracingAccelStructBuildFlagsOverride: 0 + m_RayTracingAccelStructBuildFlags: 1 + m_SmallMeshCulling: 1 + m_ForceMeshLod: -1 + m_MeshLodSelectionBias: 0 m_RenderingLayerMask: 1 m_RendererPriority: 0 m_Materials: @@ -2778,9 +3270,11 @@ MeshRenderer: m_AutoUVMaxDistance: 0.5 m_AutoUVMaxAngle: 89 m_LightmapParameters: {fileID: 0} + m_GlobalIlluminationMeshLod: 0 m_SortingLayerID: 0 m_SortingLayer: 0 m_SortingOrder: 0 + m_AdditionalVertexStreams: {fileID: 0} --- !u!33 &1047506057 MeshFilter: m_ObjectHideFlags: 0 @@ -2796,12 +3290,13 @@ Transform: m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1047506052} + serializedVersion: 2 m_LocalRotation: {x: -0, y: -0, z: -0.7071067, w: 0.70710695} m_LocalPosition: {x: -1.90625, y: 0, z: -1.5625} m_LocalScale: {x: 0.50000024, y: 0.20000012, z: 2} + m_ConstrainProportionsScale: 0 m_Children: [] m_Father: {fileID: 906432239} - m_RootOrder: 2 m_LocalEulerAnglesHint: {x: 0, y: 0, z: -90.00001} --- !u!1 &1075857040 GameObject: @@ -2854,9 +3349,9 @@ MonoBehaviour: - x: 2.740606 y: 1.3110733 z: -0.08603875 - - x: 7.158119 - y: -1.170293 - z: 0.14805987 + - x: 8.048811 + y: -0.7385043 + z: -0.26173973 interpolation: 0 simulation: enabled: 1 @@ -2889,12 +3384,13 @@ Transform: m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1075857040} + serializedVersion: 2 m_LocalRotation: {x: -0, y: 0.9238796, z: -0, w: 0.38268346} m_LocalPosition: {x: 5.38, y: 2.25, z: 5.04} m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 m_Children: [] m_Father: {fileID: 0} - m_RootOrder: 4 m_LocalEulerAnglesHint: {x: 0, y: 135, z: 0} --- !u!114 &1075857043 MonoBehaviour: @@ -2970,12 +3466,13 @@ Transform: m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1106616804} + serializedVersion: 2 m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} m_LocalPosition: {x: 1.34375, y: -1, z: -0.063} m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 m_Children: [] m_Father: {fileID: 906432239} - m_RootOrder: 5 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!114 &1106616806 MonoBehaviour: @@ -3063,12 +3560,13 @@ Transform: m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1131199966} + serializedVersion: 2 m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: -1, z: 0} m_LocalScale: {x: 2, y: 0.2, z: 2} + m_ConstrainProportionsScale: 0 m_Children: [] m_Father: {fileID: 2136856848} - m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!65 &1131199968 BoxCollider: @@ -3078,9 +3576,17 @@ BoxCollider: m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1131199966} m_Material: {fileID: 0} + m_IncludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_ExcludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_LayerOverridePriority: 0 m_IsTrigger: 0 + m_ProvidesContacts: 0 m_Enabled: 1 - serializedVersion: 2 + serializedVersion: 3 m_Size: {x: 1.0000001, y: 2, z: 1.0000002} m_Center: {x: 0.000000059604645, y: 0, z: -0.00000008940697} --- !u!23 &1131199969 @@ -3094,10 +3600,17 @@ MeshRenderer: m_CastShadows: 1 m_ReceiveShadows: 1 m_DynamicOccludee: 1 + m_StaticShadowCaster: 0 m_MotionVectors: 1 m_LightProbeUsage: 1 m_ReflectionProbeUsage: 1 m_RayTracingMode: 2 + m_RayTraceProcedural: 0 + m_RayTracingAccelStructBuildFlagsOverride: 0 + m_RayTracingAccelStructBuildFlags: 1 + m_SmallMeshCulling: 1 + m_ForceMeshLod: -1 + m_MeshLodSelectionBias: 0 m_RenderingLayerMask: 1 m_RendererPriority: 0 m_Materials: @@ -3119,9 +3632,11 @@ MeshRenderer: m_AutoUVMaxDistance: 0.5 m_AutoUVMaxAngle: 89 m_LightmapParameters: {fileID: 0} + m_GlobalIlluminationMeshLod: 0 m_SortingLayerID: 0 m_SortingLayer: 0 m_SortingOrder: 0 + m_AdditionalVertexStreams: {fileID: 0} --- !u!33 &1131199970 MeshFilter: m_ObjectHideFlags: 0 @@ -3156,12 +3671,13 @@ Transform: m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1189631371} + serializedVersion: 2 m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 1, z: 0} m_LocalScale: {x: 2, y: 0.2, z: 2} + m_ConstrainProportionsScale: 0 m_Children: [] m_Father: {fileID: 1489539032} - m_RootOrder: 1 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!65 &1189631373 BoxCollider: @@ -3171,9 +3687,17 @@ BoxCollider: m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1189631371} m_Material: {fileID: 0} + m_IncludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_ExcludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_LayerOverridePriority: 0 m_IsTrigger: 0 + m_ProvidesContacts: 0 m_Enabled: 1 - serializedVersion: 2 + serializedVersion: 3 m_Size: {x: 1.0000001, y: 2, z: 1.0000002} m_Center: {x: 0.000000059604645, y: 0, z: -0.00000008940697} --- !u!23 &1189631374 @@ -3187,10 +3711,17 @@ MeshRenderer: m_CastShadows: 1 m_ReceiveShadows: 1 m_DynamicOccludee: 1 + m_StaticShadowCaster: 0 m_MotionVectors: 1 m_LightProbeUsage: 1 m_ReflectionProbeUsage: 1 m_RayTracingMode: 2 + m_RayTraceProcedural: 0 + m_RayTracingAccelStructBuildFlagsOverride: 0 + m_RayTracingAccelStructBuildFlags: 1 + m_SmallMeshCulling: 1 + m_ForceMeshLod: -1 + m_MeshLodSelectionBias: 0 m_RenderingLayerMask: 1 m_RendererPriority: 0 m_Materials: @@ -3212,9 +3743,11 @@ MeshRenderer: m_AutoUVMaxDistance: 0.5 m_AutoUVMaxAngle: 89 m_LightmapParameters: {fileID: 0} + m_GlobalIlluminationMeshLod: 0 m_SortingLayerID: 0 m_SortingLayer: 0 m_SortingOrder: 0 + m_AdditionalVertexStreams: {fileID: 0} --- !u!33 &1189631375 MeshFilter: m_ObjectHideFlags: 0 @@ -3268,13 +3801,16 @@ MonoBehaviour: - x: 0 y: 0 z: 0 - - x: -2.5 - y: 0 - z: 0.00000017881393 + - x: -2.4452248 + y: 0.06797419 + z: 0.039803684 + - x: -4.45739 + y: 0.10728941 + z: 0.036379516 interpolation: 0 simulation: enabled: 1 - resolution: 7 + resolution: 5 massPerMeter: 2 stiffness: 1 energyLoss: 0.005 @@ -3328,12 +3864,13 @@ Transform: m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1197291657} + serializedVersion: 2 m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} m_LocalPosition: {x: 1.34375, y: -0.1, z: 0.938} m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 m_Children: [] m_Father: {fileID: 906432239} - m_RootOrder: 3 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!114 &1197291661 MonoBehaviour: @@ -3407,10 +3944,21 @@ Rigidbody: m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1249080564} - serializedVersion: 2 + serializedVersion: 5 m_Mass: 1 - m_Drag: 0 - m_AngularDrag: 0.05 + m_LinearDamping: 0 + m_AngularDamping: 0.05 + m_CenterOfMass: {x: 0, y: 0, z: 0} + m_InertiaTensor: {x: 1, y: 1, z: 1} + m_InertiaRotation: {x: 0, y: 0, z: 0, w: 1} + m_IncludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_ExcludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_ImplicitCom: 1 + m_ImplicitTensor: 1 m_UseGravity: 1 m_IsKinematic: 1 m_Interpolate: 0 @@ -3424,9 +3972,17 @@ BoxCollider: m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1249080564} m_Material: {fileID: 0} + m_IncludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_ExcludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_LayerOverridePriority: 0 m_IsTrigger: 0 + m_ProvidesContacts: 0 m_Enabled: 1 - serializedVersion: 2 + serializedVersion: 3 m_Size: {x: 1, y: 1, z: 1} m_Center: {x: 0, y: 0, z: 0} --- !u!23 &1249080568 @@ -3440,10 +3996,17 @@ MeshRenderer: m_CastShadows: 1 m_ReceiveShadows: 1 m_DynamicOccludee: 1 + m_StaticShadowCaster: 0 m_MotionVectors: 1 m_LightProbeUsage: 1 m_ReflectionProbeUsage: 1 m_RayTracingMode: 2 + m_RayTraceProcedural: 0 + m_RayTracingAccelStructBuildFlagsOverride: 0 + m_RayTracingAccelStructBuildFlags: 1 + m_SmallMeshCulling: 1 + m_ForceMeshLod: -1 + m_MeshLodSelectionBias: 0 m_RenderingLayerMask: 1 m_RendererPriority: 0 m_Materials: @@ -3465,9 +4028,11 @@ MeshRenderer: m_AutoUVMaxDistance: 0.5 m_AutoUVMaxAngle: 89 m_LightmapParameters: {fileID: 0} + m_GlobalIlluminationMeshLod: 0 m_SortingLayerID: 0 m_SortingLayer: 0 m_SortingOrder: 0 + m_AdditionalVertexStreams: {fileID: 0} --- !u!33 &1249080569 MeshFilter: m_ObjectHideFlags: 0 @@ -3483,12 +4048,13 @@ Transform: m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1249080564} + serializedVersion: 2 m_LocalRotation: {x: -0, y: 0.7071065, z: -0, w: 0.7071071} m_LocalPosition: {x: -1.2, y: 1, z: 0} m_LocalScale: {x: 3, y: 0.1, z: 0.4} + m_ConstrainProportionsScale: 0 m_Children: [] m_Father: {fileID: 1524251173} - m_RootOrder: 6 m_LocalEulerAnglesHint: {x: 0, y: 90.00001, z: 0} --- !u!1 &1284136070 GameObject: @@ -3516,12 +4082,13 @@ Transform: m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1284136070} + serializedVersion: 2 m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 1, z: 0} m_LocalScale: {x: 2, y: 0.2, z: 2} + m_ConstrainProportionsScale: 0 m_Children: [] m_Father: {fileID: 2136856848} - m_RootOrder: 1 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!65 &1284136072 BoxCollider: @@ -3531,9 +4098,17 @@ BoxCollider: m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1284136070} m_Material: {fileID: 0} + m_IncludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_ExcludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_LayerOverridePriority: 0 m_IsTrigger: 0 + m_ProvidesContacts: 0 m_Enabled: 1 - serializedVersion: 2 + serializedVersion: 3 m_Size: {x: 1.0000001, y: 2, z: 1.0000002} m_Center: {x: 0.000000059604645, y: 0, z: -0.00000008940697} --- !u!23 &1284136073 @@ -3547,10 +4122,17 @@ MeshRenderer: m_CastShadows: 1 m_ReceiveShadows: 1 m_DynamicOccludee: 1 + m_StaticShadowCaster: 0 m_MotionVectors: 1 m_LightProbeUsage: 1 m_ReflectionProbeUsage: 1 m_RayTracingMode: 2 + m_RayTraceProcedural: 0 + m_RayTracingAccelStructBuildFlagsOverride: 0 + m_RayTracingAccelStructBuildFlags: 1 + m_SmallMeshCulling: 1 + m_ForceMeshLod: -1 + m_MeshLodSelectionBias: 0 m_RenderingLayerMask: 1 m_RendererPriority: 0 m_Materials: @@ -3572,9 +4154,11 @@ MeshRenderer: m_AutoUVMaxDistance: 0.5 m_AutoUVMaxAngle: 89 m_LightmapParameters: {fileID: 0} + m_GlobalIlluminationMeshLod: 0 m_SortingLayerID: 0 m_SortingLayer: 0 m_SortingOrder: 0 + m_AdditionalVertexStreams: {fileID: 0} --- !u!33 &1284136074 MeshFilter: m_ObjectHideFlags: 0 @@ -3630,10 +4214,21 @@ Rigidbody: m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1414773576} - serializedVersion: 2 + serializedVersion: 5 m_Mass: 1 - m_Drag: 0 - m_AngularDrag: 0.05 + m_LinearDamping: 0 + m_AngularDamping: 0.05 + m_CenterOfMass: {x: 0, y: 0, z: 0} + m_InertiaTensor: {x: 1, y: 1, z: 1} + m_InertiaRotation: {x: 0, y: 0, z: 0, w: 1} + m_IncludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_ExcludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_ImplicitCom: 1 + m_ImplicitTensor: 1 m_UseGravity: 1 m_IsKinematic: 1 m_Interpolate: 0 @@ -3647,9 +4242,17 @@ BoxCollider: m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1414773576} m_Material: {fileID: 0} + m_IncludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_ExcludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_LayerOverridePriority: 0 m_IsTrigger: 0 + m_ProvidesContacts: 0 m_Enabled: 1 - serializedVersion: 2 + serializedVersion: 3 m_Size: {x: 1, y: 1, z: 1} m_Center: {x: 0, y: 0, z: 0} --- !u!23 &1414773580 @@ -3663,10 +4266,17 @@ MeshRenderer: m_CastShadows: 1 m_ReceiveShadows: 1 m_DynamicOccludee: 1 + m_StaticShadowCaster: 0 m_MotionVectors: 1 m_LightProbeUsage: 1 m_ReflectionProbeUsage: 1 m_RayTracingMode: 2 + m_RayTraceProcedural: 0 + m_RayTracingAccelStructBuildFlagsOverride: 0 + m_RayTracingAccelStructBuildFlags: 1 + m_SmallMeshCulling: 1 + m_ForceMeshLod: -1 + m_MeshLodSelectionBias: 0 m_RenderingLayerMask: 1 m_RendererPriority: 0 m_Materials: @@ -3688,9 +4298,11 @@ MeshRenderer: m_AutoUVMaxDistance: 0.5 m_AutoUVMaxAngle: 89 m_LightmapParameters: {fileID: 0} + m_GlobalIlluminationMeshLod: 0 m_SortingLayerID: 0 m_SortingLayer: 0 m_SortingOrder: 0 + m_AdditionalVertexStreams: {fileID: 0} --- !u!33 &1414773581 MeshFilter: m_ObjectHideFlags: 0 @@ -3706,12 +4318,13 @@ Transform: m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1414773576} + serializedVersion: 2 m_LocalRotation: {x: -0, y: 0.7071065, z: -0, w: 0.7071071} m_LocalPosition: {x: -2.4, y: 1, z: 0} m_LocalScale: {x: 3, y: 0.1, z: 0.4} + m_ConstrainProportionsScale: 0 m_Children: [] m_Father: {fileID: 1524251173} - m_RootOrder: 4 m_LocalEulerAnglesHint: {x: 0, y: 90.00001, z: 0} --- !u!1 &1433579690 GameObject: @@ -3760,10 +4373,21 @@ Rigidbody: m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1433579690} - serializedVersion: 2 + serializedVersion: 5 m_Mass: 1 - m_Drag: 0 - m_AngularDrag: 0.05 + m_LinearDamping: 0 + m_AngularDamping: 0.05 + m_CenterOfMass: {x: 0, y: 0, z: 0} + m_InertiaTensor: {x: 1, y: 1, z: 1} + m_InertiaRotation: {x: 0, y: 0, z: 0, w: 1} + m_IncludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_ExcludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_ImplicitCom: 1 + m_ImplicitTensor: 1 m_UseGravity: 1 m_IsKinematic: 1 m_Interpolate: 0 @@ -3777,9 +4401,17 @@ BoxCollider: m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1433579690} m_Material: {fileID: 0} + m_IncludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_ExcludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_LayerOverridePriority: 0 m_IsTrigger: 0 + m_ProvidesContacts: 0 m_Enabled: 1 - serializedVersion: 2 + serializedVersion: 3 m_Size: {x: 1, y: 1, z: 1} m_Center: {x: 0, y: 0, z: 0} --- !u!23 &1433579694 @@ -3793,10 +4425,17 @@ MeshRenderer: m_CastShadows: 1 m_ReceiveShadows: 1 m_DynamicOccludee: 1 + m_StaticShadowCaster: 0 m_MotionVectors: 1 m_LightProbeUsage: 1 m_ReflectionProbeUsage: 1 m_RayTracingMode: 2 + m_RayTraceProcedural: 0 + m_RayTracingAccelStructBuildFlagsOverride: 0 + m_RayTracingAccelStructBuildFlags: 1 + m_SmallMeshCulling: 1 + m_ForceMeshLod: -1 + m_MeshLodSelectionBias: 0 m_RenderingLayerMask: 1 m_RendererPriority: 0 m_Materials: @@ -3818,9 +4457,11 @@ MeshRenderer: m_AutoUVMaxDistance: 0.5 m_AutoUVMaxAngle: 89 m_LightmapParameters: {fileID: 0} + m_GlobalIlluminationMeshLod: 0 m_SortingLayerID: 0 m_SortingLayer: 0 m_SortingOrder: 0 + m_AdditionalVertexStreams: {fileID: 0} --- !u!33 &1433579695 MeshFilter: m_ObjectHideFlags: 0 @@ -3836,12 +4477,13 @@ Transform: m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1433579690} + serializedVersion: 2 m_LocalRotation: {x: -0, y: 0.7071065, z: -0, w: 0.7071071} m_LocalPosition: {x: -0.5999999, y: 1, z: 0} m_LocalScale: {x: 3, y: 0.1, z: 0.4} + m_ConstrainProportionsScale: 0 m_Children: [] m_Father: {fileID: 1524251173} - m_RootOrder: 7 m_LocalEulerAnglesHint: {x: 0, y: 90.00001, z: 0} --- !u!1 &1440208401 GameObject: @@ -3869,12 +4511,13 @@ Transform: m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1440208401} + serializedVersion: 2 m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: -1.35, z: 0} m_LocalScale: {x: 0.1, y: 0.7, z: 0.5} + m_ConstrainProportionsScale: 0 m_Children: [] m_Father: {fileID: 367715951} - m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!65 &1440208403 BoxCollider: @@ -3884,9 +4527,17 @@ BoxCollider: m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1440208401} m_Material: {fileID: 0} + m_IncludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_ExcludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_LayerOverridePriority: 0 m_IsTrigger: 0 + m_ProvidesContacts: 0 m_Enabled: 1 - serializedVersion: 2 + serializedVersion: 3 m_Size: {x: 1, y: 1, z: 1} m_Center: {x: 0, y: 0, z: 0} --- !u!23 &1440208404 @@ -3900,10 +4551,17 @@ MeshRenderer: m_CastShadows: 1 m_ReceiveShadows: 1 m_DynamicOccludee: 1 + m_StaticShadowCaster: 0 m_MotionVectors: 1 m_LightProbeUsage: 1 m_ReflectionProbeUsage: 1 m_RayTracingMode: 2 + m_RayTraceProcedural: 0 + m_RayTracingAccelStructBuildFlagsOverride: 0 + m_RayTracingAccelStructBuildFlags: 1 + m_SmallMeshCulling: 1 + m_ForceMeshLod: -1 + m_MeshLodSelectionBias: 0 m_RenderingLayerMask: 1 m_RendererPriority: 0 m_Materials: @@ -3925,9 +4583,11 @@ MeshRenderer: m_AutoUVMaxDistance: 0.5 m_AutoUVMaxAngle: 89 m_LightmapParameters: {fileID: 0} + m_GlobalIlluminationMeshLod: 0 m_SortingLayerID: 0 m_SortingLayer: 0 m_SortingOrder: 0 + m_AdditionalVertexStreams: {fileID: 0} --- !u!33 &1440208405 MeshFilter: m_ObjectHideFlags: 0 @@ -3962,14 +4622,15 @@ Transform: m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1489539031} + serializedVersion: 2 m_LocalRotation: {x: -0.70710576, y: -0, z: -0, w: 0.70710784} m_LocalPosition: {x: 0.5, y: 3, z: 0} m_LocalScale: {x: 0.25, y: 0.25, z: 0.25} + m_ConstrainProportionsScale: 0 m_Children: - {fileID: 1492165842} - {fileID: 1189631372} m_Father: {fileID: 737909188} - m_RootOrder: 3 m_LocalEulerAnglesHint: {x: -90.00001, y: 0, z: 0} --- !u!136 &1489539033 CapsuleCollider: @@ -3979,8 +4640,17 @@ CapsuleCollider: m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1489539031} m_Material: {fileID: 0} + m_IncludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_ExcludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_LayerOverridePriority: 0 m_IsTrigger: 0 + m_ProvidesContacts: 0 m_Enabled: 1 + serializedVersion: 2 m_Radius: 0.5 m_Height: 3 m_Direction: 1 @@ -3996,10 +4666,17 @@ MeshRenderer: m_CastShadows: 1 m_ReceiveShadows: 1 m_DynamicOccludee: 1 + m_StaticShadowCaster: 0 m_MotionVectors: 1 m_LightProbeUsage: 1 m_ReflectionProbeUsage: 1 m_RayTracingMode: 2 + m_RayTraceProcedural: 0 + m_RayTracingAccelStructBuildFlagsOverride: 0 + m_RayTracingAccelStructBuildFlags: 1 + m_SmallMeshCulling: 1 + m_ForceMeshLod: -1 + m_MeshLodSelectionBias: 0 m_RenderingLayerMask: 1 m_RendererPriority: 0 m_Materials: @@ -4021,9 +4698,11 @@ MeshRenderer: m_AutoUVMaxDistance: 0.5 m_AutoUVMaxAngle: 89 m_LightmapParameters: {fileID: 0} + m_GlobalIlluminationMeshLod: 0 m_SortingLayerID: 0 m_SortingLayer: 0 m_SortingOrder: 0 + m_AdditionalVertexStreams: {fileID: 0} --- !u!33 &1489539035 MeshFilter: m_ObjectHideFlags: 0 @@ -4058,12 +4737,13 @@ Transform: m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1492165841} + serializedVersion: 2 m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: -1, z: 0} m_LocalScale: {x: 2, y: 0.2, z: 2} + m_ConstrainProportionsScale: 0 m_Children: [] m_Father: {fileID: 1489539032} - m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!65 &1492165843 BoxCollider: @@ -4073,9 +4753,17 @@ BoxCollider: m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1492165841} m_Material: {fileID: 0} + m_IncludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_ExcludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_LayerOverridePriority: 0 m_IsTrigger: 0 + m_ProvidesContacts: 0 m_Enabled: 1 - serializedVersion: 2 + serializedVersion: 3 m_Size: {x: 1.0000001, y: 2, z: 1.0000002} m_Center: {x: 0.000000059604645, y: 0, z: -0.00000008940697} --- !u!23 &1492165844 @@ -4089,10 +4777,17 @@ MeshRenderer: m_CastShadows: 1 m_ReceiveShadows: 1 m_DynamicOccludee: 1 + m_StaticShadowCaster: 0 m_MotionVectors: 1 m_LightProbeUsage: 1 m_ReflectionProbeUsage: 1 m_RayTracingMode: 2 + m_RayTraceProcedural: 0 + m_RayTracingAccelStructBuildFlagsOverride: 0 + m_RayTracingAccelStructBuildFlags: 1 + m_SmallMeshCulling: 1 + m_ForceMeshLod: -1 + m_MeshLodSelectionBias: 0 m_RenderingLayerMask: 1 m_RendererPriority: 0 m_Materials: @@ -4114,9 +4809,11 @@ MeshRenderer: m_AutoUVMaxDistance: 0.5 m_AutoUVMaxAngle: 89 m_LightmapParameters: {fileID: 0} + m_GlobalIlluminationMeshLod: 0 m_SortingLayerID: 0 m_SortingLayer: 0 m_SortingOrder: 0 + m_AdditionalVertexStreams: {fileID: 0} --- !u!33 &1492165845 MeshFilter: m_ObjectHideFlags: 0 @@ -4148,9 +4845,11 @@ Transform: m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1524251172} + serializedVersion: 2 m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 2, z: -5.5} m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 m_Children: - {fileID: 1750375685} - {fileID: 400204001} @@ -4168,7 +4867,6 @@ Transform: - {fileID: 359954501} - {fileID: 1798096258} m_Father: {fileID: 0} - m_RootOrder: 6 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!1 &1577910157 GameObject: @@ -4217,10 +4915,21 @@ Rigidbody: m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1577910157} - serializedVersion: 2 + serializedVersion: 5 m_Mass: 1 - m_Drag: 0 - m_AngularDrag: 0.05 + m_LinearDamping: 0 + m_AngularDamping: 0.05 + m_CenterOfMass: {x: 0, y: 0, z: 0} + m_InertiaTensor: {x: 1, y: 1, z: 1} + m_InertiaRotation: {x: 0, y: 0, z: 0, w: 1} + m_IncludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_ExcludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_ImplicitCom: 1 + m_ImplicitTensor: 1 m_UseGravity: 1 m_IsKinematic: 1 m_Interpolate: 0 @@ -4234,9 +4943,17 @@ BoxCollider: m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1577910157} m_Material: {fileID: 0} + m_IncludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_ExcludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_LayerOverridePriority: 0 m_IsTrigger: 0 + m_ProvidesContacts: 0 m_Enabled: 1 - serializedVersion: 2 + serializedVersion: 3 m_Size: {x: 1, y: 1, z: 1} m_Center: {x: 0, y: 0, z: 0} --- !u!23 &1577910161 @@ -4250,10 +4967,17 @@ MeshRenderer: m_CastShadows: 1 m_ReceiveShadows: 1 m_DynamicOccludee: 1 + m_StaticShadowCaster: 0 m_MotionVectors: 1 m_LightProbeUsage: 1 m_ReflectionProbeUsage: 1 m_RayTracingMode: 2 + m_RayTraceProcedural: 0 + m_RayTracingAccelStructBuildFlagsOverride: 0 + m_RayTracingAccelStructBuildFlags: 1 + m_SmallMeshCulling: 1 + m_ForceMeshLod: -1 + m_MeshLodSelectionBias: 0 m_RenderingLayerMask: 1 m_RendererPriority: 0 m_Materials: @@ -4275,9 +4999,11 @@ MeshRenderer: m_AutoUVMaxDistance: 0.5 m_AutoUVMaxAngle: 89 m_LightmapParameters: {fileID: 0} + m_GlobalIlluminationMeshLod: 0 m_SortingLayerID: 0 m_SortingLayer: 0 m_SortingOrder: 0 + m_AdditionalVertexStreams: {fileID: 0} --- !u!33 &1577910162 MeshFilter: m_ObjectHideFlags: 0 @@ -4293,12 +5019,13 @@ Transform: m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1577910157} + serializedVersion: 2 m_LocalRotation: {x: -0, y: 0.7071065, z: -0, w: 0.7071071} m_LocalPosition: {x: 1.8000002, y: 1, z: 0} m_LocalScale: {x: 3, y: 0.1, z: 0.4} + m_ConstrainProportionsScale: 0 m_Children: [] m_Father: {fileID: 1524251173} - m_RootOrder: 11 m_LocalEulerAnglesHint: {x: 0, y: 90.00001, z: 0} --- !u!1 &1614800478 GameObject: @@ -4326,12 +5053,13 @@ Transform: m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1614800478} + serializedVersion: 2 m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 2, y: 0.1, z: 2} + m_ConstrainProportionsScale: 0 m_Children: [] m_Father: {fileID: 737909188} - m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!65 &1614800481 BoxCollider: @@ -4341,9 +5069,17 @@ BoxCollider: m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1614800478} m_Material: {fileID: 0} + m_IncludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_ExcludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_LayerOverridePriority: 0 m_IsTrigger: 0 + m_ProvidesContacts: 0 m_Enabled: 1 - serializedVersion: 2 + serializedVersion: 3 m_Size: {x: 1.0000007, y: 2, z: 1.0000008} m_Center: {x: 0.00000005960468, y: 0, z: -0.000000089407024} --- !u!23 &1614800482 @@ -4357,10 +5093,17 @@ MeshRenderer: m_CastShadows: 1 m_ReceiveShadows: 1 m_DynamicOccludee: 1 + m_StaticShadowCaster: 0 m_MotionVectors: 1 m_LightProbeUsage: 1 m_ReflectionProbeUsage: 1 m_RayTracingMode: 2 + m_RayTraceProcedural: 0 + m_RayTracingAccelStructBuildFlagsOverride: 0 + m_RayTracingAccelStructBuildFlags: 1 + m_SmallMeshCulling: 1 + m_ForceMeshLod: -1 + m_MeshLodSelectionBias: 0 m_RenderingLayerMask: 1 m_RendererPriority: 0 m_Materials: @@ -4382,9 +5125,11 @@ MeshRenderer: m_AutoUVMaxDistance: 0.5 m_AutoUVMaxAngle: 89 m_LightmapParameters: {fileID: 0} + m_GlobalIlluminationMeshLod: 0 m_SortingLayerID: 0 m_SortingLayer: 0 m_SortingOrder: 0 + m_AdditionalVertexStreams: {fileID: 0} --- !u!33 &1614800483 MeshFilter: m_ObjectHideFlags: 0 @@ -4488,9 +5233,15 @@ MonoBehaviour: - x: 4 y: 0 z: 0 - - x: -4 - y: 0 - z: 0 + - x: 0.447762 + y: 0.106898785 + z: 0.35062575 + - x: -1.690372 + y: 0.070661545 + z: 0.26399446 + - x: -3.93894 + y: 0.0021345615 + z: 0.111726046 interpolation: 0 simulation: enabled: 1 @@ -4523,12 +5274,13 @@ Transform: m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1750375679} + serializedVersion: 2 m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} m_LocalPosition: {x: 0, y: 1, z: 1.5} m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 m_Children: [] m_Father: {fileID: 1524251173} - m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!1 &1754318784 GameObject: @@ -4556,12 +5308,13 @@ Transform: m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1754318784} + serializedVersion: 2 m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} m_LocalPosition: {x: 1.5, y: 3, z: 0} m_LocalScale: {x: 2, y: 0.25, z: 0.25} + m_ConstrainProportionsScale: 0 m_Children: [] m_Father: {fileID: 737909188} - m_RootOrder: 2 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!65 &1754318786 BoxCollider: @@ -4571,9 +5324,17 @@ BoxCollider: m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1754318784} m_Material: {fileID: 0} + m_IncludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_ExcludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_LayerOverridePriority: 0 m_IsTrigger: 0 + m_ProvidesContacts: 0 m_Enabled: 1 - serializedVersion: 2 + serializedVersion: 3 m_Size: {x: 1, y: 1, z: 1} m_Center: {x: 0, y: 0, z: 0} --- !u!23 &1754318787 @@ -4587,10 +5348,17 @@ MeshRenderer: m_CastShadows: 1 m_ReceiveShadows: 1 m_DynamicOccludee: 1 + m_StaticShadowCaster: 0 m_MotionVectors: 1 m_LightProbeUsage: 1 m_ReflectionProbeUsage: 1 m_RayTracingMode: 2 + m_RayTraceProcedural: 0 + m_RayTracingAccelStructBuildFlagsOverride: 0 + m_RayTracingAccelStructBuildFlags: 1 + m_SmallMeshCulling: 1 + m_ForceMeshLod: -1 + m_MeshLodSelectionBias: 0 m_RenderingLayerMask: 1 m_RendererPriority: 0 m_Materials: @@ -4612,9 +5380,11 @@ MeshRenderer: m_AutoUVMaxDistance: 0.5 m_AutoUVMaxAngle: 89 m_LightmapParameters: {fileID: 0} + m_GlobalIlluminationMeshLod: 0 m_SortingLayerID: 0 m_SortingLayer: 0 m_SortingOrder: 0 + m_AdditionalVertexStreams: {fileID: 0} --- !u!33 &1754318788 MeshFilter: m_ObjectHideFlags: 0 @@ -4670,10 +5440,21 @@ Rigidbody: m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1780939414} - serializedVersion: 2 + serializedVersion: 5 m_Mass: 1 - m_Drag: 0 - m_AngularDrag: 0.05 + m_LinearDamping: 0 + m_AngularDamping: 0.05 + m_CenterOfMass: {x: 0, y: 0, z: 0} + m_InertiaTensor: {x: 1, y: 1, z: 1} + m_InertiaRotation: {x: 0, y: 0, z: 0, w: 1} + m_IncludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_ExcludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_ImplicitCom: 1 + m_ImplicitTensor: 1 m_UseGravity: 1 m_IsKinematic: 1 m_Interpolate: 0 @@ -4687,9 +5468,17 @@ BoxCollider: m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1780939414} m_Material: {fileID: 0} + m_IncludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_ExcludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_LayerOverridePriority: 0 m_IsTrigger: 0 + m_ProvidesContacts: 0 m_Enabled: 1 - serializedVersion: 2 + serializedVersion: 3 m_Size: {x: 1, y: 1, z: 1} m_Center: {x: 0, y: 0, z: 0} --- !u!23 &1780939418 @@ -4703,10 +5492,17 @@ MeshRenderer: m_CastShadows: 1 m_ReceiveShadows: 1 m_DynamicOccludee: 1 + m_StaticShadowCaster: 0 m_MotionVectors: 1 m_LightProbeUsage: 1 m_ReflectionProbeUsage: 1 m_RayTracingMode: 2 + m_RayTraceProcedural: 0 + m_RayTracingAccelStructBuildFlagsOverride: 0 + m_RayTracingAccelStructBuildFlags: 1 + m_SmallMeshCulling: 1 + m_ForceMeshLod: -1 + m_MeshLodSelectionBias: 0 m_RenderingLayerMask: 1 m_RendererPriority: 0 m_Materials: @@ -4728,9 +5524,11 @@ MeshRenderer: m_AutoUVMaxDistance: 0.5 m_AutoUVMaxAngle: 89 m_LightmapParameters: {fileID: 0} + m_GlobalIlluminationMeshLod: 0 m_SortingLayerID: 0 m_SortingLayer: 0 m_SortingOrder: 0 + m_AdditionalVertexStreams: {fileID: 0} --- !u!33 &1780939419 MeshFilter: m_ObjectHideFlags: 0 @@ -4746,12 +5544,13 @@ Transform: m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1780939414} + serializedVersion: 2 m_LocalRotation: {x: -0, y: 0.7071065, z: -0, w: 0.7071071} m_LocalPosition: {x: 0, y: 1, z: 0} m_LocalScale: {x: 3, y: 0.1, z: 0.4} + m_ConstrainProportionsScale: 0 m_Children: [] m_Father: {fileID: 1524251173} - m_RootOrder: 8 m_LocalEulerAnglesHint: {x: 0, y: 90.00001, z: 0} --- !u!1 &1798096252 GameObject: @@ -4800,10 +5599,21 @@ Rigidbody: m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1798096252} - serializedVersion: 2 + serializedVersion: 5 m_Mass: 1 - m_Drag: 0 - m_AngularDrag: 0.05 + m_LinearDamping: 0 + m_AngularDamping: 0.05 + m_CenterOfMass: {x: 0, y: 0, z: 0} + m_InertiaTensor: {x: 1, y: 1, z: 1} + m_InertiaRotation: {x: 0, y: 0, z: 0, w: 1} + m_IncludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_ExcludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_ImplicitCom: 1 + m_ImplicitTensor: 1 m_UseGravity: 1 m_IsKinematic: 1 m_Interpolate: 0 @@ -4817,9 +5627,17 @@ BoxCollider: m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1798096252} m_Material: {fileID: 0} + m_IncludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_ExcludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_LayerOverridePriority: 0 m_IsTrigger: 0 + m_ProvidesContacts: 0 m_Enabled: 1 - serializedVersion: 2 + serializedVersion: 3 m_Size: {x: 1, y: 1, z: 1} m_Center: {x: 0, y: 0, z: 0} --- !u!23 &1798096256 @@ -4833,10 +5651,17 @@ MeshRenderer: m_CastShadows: 1 m_ReceiveShadows: 1 m_DynamicOccludee: 1 + m_StaticShadowCaster: 0 m_MotionVectors: 1 m_LightProbeUsage: 1 m_ReflectionProbeUsage: 1 m_RayTracingMode: 2 + m_RayTraceProcedural: 0 + m_RayTracingAccelStructBuildFlagsOverride: 0 + m_RayTracingAccelStructBuildFlags: 1 + m_SmallMeshCulling: 1 + m_ForceMeshLod: -1 + m_MeshLodSelectionBias: 0 m_RenderingLayerMask: 1 m_RendererPriority: 0 m_Materials: @@ -4858,9 +5683,11 @@ MeshRenderer: m_AutoUVMaxDistance: 0.5 m_AutoUVMaxAngle: 89 m_LightmapParameters: {fileID: 0} + m_GlobalIlluminationMeshLod: 0 m_SortingLayerID: 0 m_SortingLayer: 0 m_SortingOrder: 0 + m_AdditionalVertexStreams: {fileID: 0} --- !u!33 &1798096257 MeshFilter: m_ObjectHideFlags: 0 @@ -4876,12 +5703,13 @@ Transform: m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1798096252} + serializedVersion: 2 m_LocalRotation: {x: -0, y: 0.7071065, z: -0, w: 0.7071071} m_LocalPosition: {x: 3.6, y: 1, z: 0} m_LocalScale: {x: 3, y: 0.1, z: 0.4} + m_ConstrainProportionsScale: 0 m_Children: [] m_Father: {fileID: 1524251173} - m_RootOrder: 14 m_LocalEulerAnglesHint: {x: 0, y: 90.00001, z: 0} --- !u!1 &1850142434 GameObject: @@ -4909,12 +5737,13 @@ Transform: m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1850142434} + serializedVersion: 2 m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} m_LocalPosition: {x: 0.5, y: 1.5, z: 0} m_LocalScale: {x: 0.25, y: 3, z: 0.25} + m_ConstrainProportionsScale: 0 m_Children: [] m_Father: {fileID: 737909188} - m_RootOrder: 1 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!65 &1850142436 BoxCollider: @@ -4924,9 +5753,17 @@ BoxCollider: m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1850142434} m_Material: {fileID: 0} + m_IncludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_ExcludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_LayerOverridePriority: 0 m_IsTrigger: 0 + m_ProvidesContacts: 0 m_Enabled: 1 - serializedVersion: 2 + serializedVersion: 3 m_Size: {x: 1, y: 1, z: 1} m_Center: {x: 0, y: 0, z: 0} --- !u!23 &1850142437 @@ -4940,10 +5777,17 @@ MeshRenderer: m_CastShadows: 1 m_ReceiveShadows: 1 m_DynamicOccludee: 1 + m_StaticShadowCaster: 0 m_MotionVectors: 1 m_LightProbeUsage: 1 m_ReflectionProbeUsage: 1 m_RayTracingMode: 2 + m_RayTraceProcedural: 0 + m_RayTracingAccelStructBuildFlagsOverride: 0 + m_RayTracingAccelStructBuildFlags: 1 + m_SmallMeshCulling: 1 + m_ForceMeshLod: -1 + m_MeshLodSelectionBias: 0 m_RenderingLayerMask: 1 m_RendererPriority: 0 m_Materials: @@ -4965,9 +5809,11 @@ MeshRenderer: m_AutoUVMaxDistance: 0.5 m_AutoUVMaxAngle: 89 m_LightmapParameters: {fileID: 0} + m_GlobalIlluminationMeshLod: 0 m_SortingLayerID: 0 m_SortingLayer: 0 m_SortingOrder: 0 + m_AdditionalVertexStreams: {fileID: 0} --- !u!33 &1850142438 MeshFilter: m_ObjectHideFlags: 0 @@ -5023,10 +5869,21 @@ Rigidbody: m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1947032006} - serializedVersion: 2 + serializedVersion: 5 m_Mass: 1 - m_Drag: 0 - m_AngularDrag: 0.05 + m_LinearDamping: 0 + m_AngularDamping: 0.05 + m_CenterOfMass: {x: 0, y: 0, z: 0} + m_InertiaTensor: {x: 1, y: 1, z: 1} + m_InertiaRotation: {x: 0, y: 0, z: 0, w: 1} + m_IncludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_ExcludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_ImplicitCom: 1 + m_ImplicitTensor: 1 m_UseGravity: 1 m_IsKinematic: 1 m_Interpolate: 0 @@ -5040,9 +5897,17 @@ BoxCollider: m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1947032006} m_Material: {fileID: 0} + m_IncludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_ExcludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_LayerOverridePriority: 0 m_IsTrigger: 0 + m_ProvidesContacts: 0 m_Enabled: 1 - serializedVersion: 2 + serializedVersion: 3 m_Size: {x: 1, y: 1, z: 1} m_Center: {x: 0, y: 0, z: 0} --- !u!23 &1947032010 @@ -5056,10 +5921,17 @@ MeshRenderer: m_CastShadows: 1 m_ReceiveShadows: 1 m_DynamicOccludee: 1 + m_StaticShadowCaster: 0 m_MotionVectors: 1 m_LightProbeUsage: 1 m_ReflectionProbeUsage: 1 m_RayTracingMode: 2 + m_RayTraceProcedural: 0 + m_RayTracingAccelStructBuildFlagsOverride: 0 + m_RayTracingAccelStructBuildFlags: 1 + m_SmallMeshCulling: 1 + m_ForceMeshLod: -1 + m_MeshLodSelectionBias: 0 m_RenderingLayerMask: 1 m_RendererPriority: 0 m_Materials: @@ -5081,9 +5953,11 @@ MeshRenderer: m_AutoUVMaxDistance: 0.5 m_AutoUVMaxAngle: 89 m_LightmapParameters: {fileID: 0} + m_GlobalIlluminationMeshLod: 0 m_SortingLayerID: 0 m_SortingLayer: 0 m_SortingOrder: 0 + m_AdditionalVertexStreams: {fileID: 0} --- !u!33 &1947032011 MeshFilter: m_ObjectHideFlags: 0 @@ -5099,12 +5973,13 @@ Transform: m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1947032006} + serializedVersion: 2 m_LocalRotation: {x: -0, y: 0.7071065, z: -0, w: 0.7071071} m_LocalPosition: {x: -1.8, y: 1, z: 0} m_LocalScale: {x: 3, y: 0.1, z: 0.4} + m_ConstrainProportionsScale: 0 m_Children: [] m_Father: {fileID: 1524251173} - m_RootOrder: 5 m_LocalEulerAnglesHint: {x: 0, y: 90.00001, z: 0} --- !u!1 &1985356212 GameObject: @@ -5132,12 +6007,13 @@ Transform: m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1985356212} + serializedVersion: 2 m_LocalRotation: {x: 0, y: 0.7071068, z: 0, w: 0.7071068} m_LocalPosition: {x: 0, y: -1.35, z: 0} m_LocalScale: {x: 0.1, y: 0.7, z: 0.5} + m_ConstrainProportionsScale: 0 m_Children: [] m_Father: {fileID: 367715951} - m_RootOrder: 1 m_LocalEulerAnglesHint: {x: 0, y: 90, z: 0} --- !u!65 &1985356214 BoxCollider: @@ -5147,9 +6023,17 @@ BoxCollider: m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1985356212} m_Material: {fileID: 0} + m_IncludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_ExcludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_LayerOverridePriority: 0 m_IsTrigger: 0 + m_ProvidesContacts: 0 m_Enabled: 1 - serializedVersion: 2 + serializedVersion: 3 m_Size: {x: 1, y: 1, z: 1} m_Center: {x: 0, y: 0, z: 0} --- !u!23 &1985356215 @@ -5163,10 +6047,17 @@ MeshRenderer: m_CastShadows: 1 m_ReceiveShadows: 1 m_DynamicOccludee: 1 + m_StaticShadowCaster: 0 m_MotionVectors: 1 m_LightProbeUsage: 1 m_ReflectionProbeUsage: 1 m_RayTracingMode: 2 + m_RayTraceProcedural: 0 + m_RayTracingAccelStructBuildFlagsOverride: 0 + m_RayTracingAccelStructBuildFlags: 1 + m_SmallMeshCulling: 1 + m_ForceMeshLod: -1 + m_MeshLodSelectionBias: 0 m_RenderingLayerMask: 1 m_RendererPriority: 0 m_Materials: @@ -5188,9 +6079,11 @@ MeshRenderer: m_AutoUVMaxDistance: 0.5 m_AutoUVMaxAngle: 89 m_LightmapParameters: {fileID: 0} + m_GlobalIlluminationMeshLod: 0 m_SortingLayerID: 0 m_SortingLayer: 0 m_SortingOrder: 0 + m_AdditionalVertexStreams: {fileID: 0} --- !u!33 &1985356216 MeshFilter: m_ObjectHideFlags: 0 @@ -5199,6 +6092,67 @@ MeshFilter: m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1985356212} m_Mesh: {fileID: 10202, guid: 0000000000000000e000000000000000, type: 0} +--- !u!850595691 &2073191939 +LightingSettings: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_Name: Settings.lighting + serializedVersion: 9 + m_EnableBakedLightmaps: 1 + m_EnableRealtimeLightmaps: 1 + m_RealtimeEnvironmentLighting: 1 + m_BounceScale: 1 + m_AlbedoBoost: 1 + m_IndirectOutputScale: 1 + m_UsingShadowmask: 0 + m_BakeBackend: 2 + m_LightmapMaxSize: 1024 + m_LightmapSizeFixed: 0 + m_UseMipmapLimits: 1 + m_BakeResolution: 40 + m_Padding: 2 + m_LightmapCompression: 3 + m_AO: 1 + m_AOMaxDistance: 1 + m_CompAOExponent: 1 + m_CompAOExponentDirect: 0 + m_ExtractAO: 0 + m_MixedBakeMode: 0 + m_LightmapsBakeMode: 1 + m_FilterMode: 1 + m_LightmapParameters: {fileID: 15204, guid: 0000000000000000f000000000000000, type: 0} + m_ExportTrainingData: 0 + m_EnableWorkerProcessBaking: 1 + m_TrainingDataDestination: TrainingData + m_RealtimeResolution: 2 + m_ForceWhiteAlbedo: 0 + m_ForceUpdates: 0 + m_PVRCulling: 1 + m_PVRSampling: 1 + m_PVRDirectSampleCount: 32 + m_PVRSampleCount: 512 + m_PVREnvironmentSampleCount: 512 + m_PVREnvironmentReferencePointCount: 2048 + m_LightProbeSampleCountMultiplier: 4 + m_PVRBounces: 2 + m_PVRMinBounces: 2 + m_PVREnvironmentImportanceSampling: 1 + m_PVRFilteringMode: 2 + m_PVRDenoiserTypeDirect: 0 + m_PVRDenoiserTypeIndirect: 0 + m_PVRDenoiserTypeAO: 0 + m_PVRFilterTypeDirect: 0 + m_PVRFilterTypeIndirect: 0 + m_PVRFilterTypeAO: 0 + m_PVRFilteringGaussRadiusDirect: 1 + m_PVRFilteringGaussRadiusIndirect: 5 + m_PVRFilteringGaussRadiusAO: 2 + m_PVRFilteringAtrousPositionSigmaDirect: 0.5 + m_PVRFilteringAtrousPositionSigmaIndirect: 2 + m_PVRFilteringAtrousPositionSigmaAO: 1 + m_RespectSceneVisibilityWhenBakingGI: 0 --- !u!1 &2112864121 GameObject: m_ObjectHideFlags: 0 @@ -5225,12 +6179,13 @@ Transform: m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 2112864121} + serializedVersion: 2 m_LocalRotation: {x: 0, y: 0.7071068, z: 0, w: 0.7071068} m_LocalPosition: {x: 0, y: -1.35, z: 0} m_LocalScale: {x: 0.1, y: 0.7, z: 0.5} + m_ConstrainProportionsScale: 0 m_Children: [] m_Father: {fileID: 784505044} - m_RootOrder: 1 m_LocalEulerAnglesHint: {x: 0, y: 90, z: 0} --- !u!65 &2112864123 BoxCollider: @@ -5240,9 +6195,17 @@ BoxCollider: m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 2112864121} m_Material: {fileID: 0} + m_IncludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_ExcludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_LayerOverridePriority: 0 m_IsTrigger: 0 + m_ProvidesContacts: 0 m_Enabled: 1 - serializedVersion: 2 + serializedVersion: 3 m_Size: {x: 1, y: 1, z: 1} m_Center: {x: 0, y: 0, z: 0} --- !u!23 &2112864124 @@ -5256,10 +6219,17 @@ MeshRenderer: m_CastShadows: 1 m_ReceiveShadows: 1 m_DynamicOccludee: 1 + m_StaticShadowCaster: 0 m_MotionVectors: 1 m_LightProbeUsage: 1 m_ReflectionProbeUsage: 1 m_RayTracingMode: 2 + m_RayTraceProcedural: 0 + m_RayTracingAccelStructBuildFlagsOverride: 0 + m_RayTracingAccelStructBuildFlags: 1 + m_SmallMeshCulling: 1 + m_ForceMeshLod: -1 + m_MeshLodSelectionBias: 0 m_RenderingLayerMask: 1 m_RendererPriority: 0 m_Materials: @@ -5281,9 +6251,11 @@ MeshRenderer: m_AutoUVMaxDistance: 0.5 m_AutoUVMaxAngle: 89 m_LightmapParameters: {fileID: 0} + m_GlobalIlluminationMeshLod: 0 m_SortingLayerID: 0 m_SortingLayer: 0 m_SortingOrder: 0 + m_AdditionalVertexStreams: {fileID: 0} --- !u!33 &2112864125 MeshFilter: m_ObjectHideFlags: 0 @@ -5318,14 +6290,15 @@ Transform: m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 2136856847} + serializedVersion: 2 m_LocalRotation: {x: -0.70710576, y: -0, z: -0, w: 0.70710784} m_LocalPosition: {x: 2.5, y: 3, z: 0} m_LocalScale: {x: 0.25, y: 0.25, z: 0.25} + m_ConstrainProportionsScale: 0 m_Children: - {fileID: 1131199967} - {fileID: 1284136071} m_Father: {fileID: 737909188} - m_RootOrder: 4 m_LocalEulerAnglesHint: {x: -90.00001, y: 0, z: 0} --- !u!136 &2136856849 CapsuleCollider: @@ -5335,8 +6308,17 @@ CapsuleCollider: m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 2136856847} m_Material: {fileID: 0} + m_IncludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_ExcludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_LayerOverridePriority: 0 m_IsTrigger: 0 + m_ProvidesContacts: 0 m_Enabled: 1 + serializedVersion: 2 m_Radius: 0.5 m_Height: 3 m_Direction: 1 @@ -5352,10 +6334,17 @@ MeshRenderer: m_CastShadows: 1 m_ReceiveShadows: 1 m_DynamicOccludee: 1 + m_StaticShadowCaster: 0 m_MotionVectors: 1 m_LightProbeUsage: 1 m_ReflectionProbeUsage: 1 m_RayTracingMode: 2 + m_RayTraceProcedural: 0 + m_RayTracingAccelStructBuildFlagsOverride: 0 + m_RayTracingAccelStructBuildFlags: 1 + m_SmallMeshCulling: 1 + m_ForceMeshLod: -1 + m_MeshLodSelectionBias: 0 m_RenderingLayerMask: 1 m_RendererPriority: 0 m_Materials: @@ -5377,9 +6366,11 @@ MeshRenderer: m_AutoUVMaxDistance: 0.5 m_AutoUVMaxAngle: 89 m_LightmapParameters: {fileID: 0} + m_GlobalIlluminationMeshLod: 0 m_SortingLayerID: 0 m_SortingLayer: 0 m_SortingOrder: 0 + m_AdditionalVertexStreams: {fileID: 0} --- !u!33 &2136856851 MeshFilter: m_ObjectHideFlags: 0 @@ -5393,73 +6384,80 @@ PrefabInstance: m_ObjectHideFlags: 0 serializedVersion: 2 m_Modification: + serializedVersion: 3 m_TransformParent: {fileID: 0} m_Modifications: - - target: {fileID: 1807824197224447177, guid: fc3b5a3644d842a44a1bc8eb5e72a975, - type: 3} + - target: {fileID: 1807824197224447177, guid: fc3b5a3644d842a44a1bc8eb5e72a975, type: 3} propertyPath: m_Name value: Environment objectReference: {fileID: 0} - - target: {fileID: 6355862402819174107, guid: fc3b5a3644d842a44a1bc8eb5e72a975, - type: 3} + - target: {fileID: 6355862402819174107, guid: fc3b5a3644d842a44a1bc8eb5e72a975, type: 3} propertyPath: m_RootOrder value: 11 objectReference: {fileID: 0} - - target: {fileID: 6355862402819174107, guid: fc3b5a3644d842a44a1bc8eb5e72a975, - type: 3} + - target: {fileID: 6355862402819174107, guid: fc3b5a3644d842a44a1bc8eb5e72a975, type: 3} propertyPath: m_LocalPosition.x value: 0 objectReference: {fileID: 0} - - target: {fileID: 6355862402819174107, guid: fc3b5a3644d842a44a1bc8eb5e72a975, - type: 3} + - target: {fileID: 6355862402819174107, guid: fc3b5a3644d842a44a1bc8eb5e72a975, type: 3} propertyPath: m_LocalPosition.y value: 2 objectReference: {fileID: 0} - - target: {fileID: 6355862402819174107, guid: fc3b5a3644d842a44a1bc8eb5e72a975, - type: 3} + - target: {fileID: 6355862402819174107, guid: fc3b5a3644d842a44a1bc8eb5e72a975, type: 3} propertyPath: m_LocalPosition.z value: 0 objectReference: {fileID: 0} - - target: {fileID: 6355862402819174107, guid: fc3b5a3644d842a44a1bc8eb5e72a975, - type: 3} + - target: {fileID: 6355862402819174107, guid: fc3b5a3644d842a44a1bc8eb5e72a975, type: 3} propertyPath: m_LocalRotation.w value: 1 objectReference: {fileID: 0} - - target: {fileID: 6355862402819174107, guid: fc3b5a3644d842a44a1bc8eb5e72a975, - type: 3} + - target: {fileID: 6355862402819174107, guid: fc3b5a3644d842a44a1bc8eb5e72a975, type: 3} propertyPath: m_LocalRotation.x value: 0 objectReference: {fileID: 0} - - target: {fileID: 6355862402819174107, guid: fc3b5a3644d842a44a1bc8eb5e72a975, - type: 3} + - target: {fileID: 6355862402819174107, guid: fc3b5a3644d842a44a1bc8eb5e72a975, type: 3} propertyPath: m_LocalRotation.y value: 0 objectReference: {fileID: 0} - - target: {fileID: 6355862402819174107, guid: fc3b5a3644d842a44a1bc8eb5e72a975, - type: 3} + - target: {fileID: 6355862402819174107, guid: fc3b5a3644d842a44a1bc8eb5e72a975, type: 3} propertyPath: m_LocalRotation.z value: 0 objectReference: {fileID: 0} - - target: {fileID: 6355862402819174107, guid: fc3b5a3644d842a44a1bc8eb5e72a975, - type: 3} + - target: {fileID: 6355862402819174107, guid: fc3b5a3644d842a44a1bc8eb5e72a975, type: 3} propertyPath: m_LocalEulerAnglesHint.x value: 0 objectReference: {fileID: 0} - - target: {fileID: 6355862402819174107, guid: fc3b5a3644d842a44a1bc8eb5e72a975, - type: 3} + - target: {fileID: 6355862402819174107, guid: fc3b5a3644d842a44a1bc8eb5e72a975, type: 3} propertyPath: m_LocalEulerAnglesHint.y value: 0 objectReference: {fileID: 0} - - target: {fileID: 6355862402819174107, guid: fc3b5a3644d842a44a1bc8eb5e72a975, - type: 3} + - target: {fileID: 6355862402819174107, guid: fc3b5a3644d842a44a1bc8eb5e72a975, type: 3} propertyPath: m_LocalEulerAnglesHint.z value: 0 objectReference: {fileID: 0} m_RemovedComponents: [] + m_RemovedGameObjects: [] + m_AddedGameObjects: [] + m_AddedComponents: [] m_SourcePrefab: {fileID: 100100000, guid: fc3b5a3644d842a44a1bc8eb5e72a975, type: 3} --- !u!4 &7215318252446853075 stripped Transform: - m_CorrespondingSourceObject: {fileID: 6355862402819174107, guid: fc3b5a3644d842a44a1bc8eb5e72a975, - type: 3} + m_CorrespondingSourceObject: {fileID: 6355862402819174107, guid: fc3b5a3644d842a44a1bc8eb5e72a975, type: 3} m_PrefabInstance: {fileID: 7215318252446853065} m_PrefabAsset: {fileID: 0} +--- !u!1660057539 &9223372036854775807 +SceneRoots: + m_ObjectHideFlags: 0 + m_Roots: + - {fileID: 963194228} + - {fileID: 705507995} + - {fileID: 978669424} + - {fileID: 737909188} + - {fileID: 1075857042} + - {fileID: 286835138} + - {fileID: 1524251173} + - {fileID: 136519272} + - {fileID: 949798699} + - {fileID: 445011559} + - {fileID: 906432239} + - {fileID: 7215318252446853065} diff --git a/Assets/Toolkits/Rope/Examples/00_Main/Main.unity.meta b/Assets/Scripts/ThirdParty/Rope/Examples/00_Main/Main.unity.meta similarity index 100% rename from Assets/Toolkits/Rope/Examples/00_Main/Main.unity.meta rename to Assets/Scripts/ThirdParty/Rope/Examples/00_Main/Main.unity.meta diff --git a/Assets/Toolkits/Rope/Examples/00_Main/Materials.meta b/Assets/Scripts/ThirdParty/Rope/Examples/00_Main/Materials.meta similarity index 100% rename from Assets/Toolkits/Rope/Examples/00_Main/Materials.meta rename to Assets/Scripts/ThirdParty/Rope/Examples/00_Main/Materials.meta diff --git a/Assets/Toolkits/Rope/Examples/00_Main/Materials/Chain.mat b/Assets/Scripts/ThirdParty/Rope/Examples/00_Main/Materials/Chain.mat similarity index 100% rename from Assets/Toolkits/Rope/Examples/00_Main/Materials/Chain.mat rename to Assets/Scripts/ThirdParty/Rope/Examples/00_Main/Materials/Chain.mat diff --git a/Assets/Toolkits/Rope/Examples/00_Main/Materials/Chain.mat.meta b/Assets/Scripts/ThirdParty/Rope/Examples/00_Main/Materials/Chain.mat.meta similarity index 100% rename from Assets/Toolkits/Rope/Examples/00_Main/Materials/Chain.mat.meta rename to Assets/Scripts/ThirdParty/Rope/Examples/00_Main/Materials/Chain.mat.meta diff --git a/Assets/Toolkits/Rope/Examples/00_Main/Materials/Checker.png b/Assets/Scripts/ThirdParty/Rope/Examples/00_Main/Materials/Checker.png similarity index 100% rename from Assets/Toolkits/Rope/Examples/00_Main/Materials/Checker.png rename to Assets/Scripts/ThirdParty/Rope/Examples/00_Main/Materials/Checker.png diff --git a/Assets/Toolkits/Rope/Examples/00_Main/Materials/Checker.png.meta b/Assets/Scripts/ThirdParty/Rope/Examples/00_Main/Materials/Checker.png.meta similarity index 100% rename from Assets/Toolkits/Rope/Examples/00_Main/Materials/Checker.png.meta rename to Assets/Scripts/ThirdParty/Rope/Examples/00_Main/Materials/Checker.png.meta diff --git a/Assets/Toolkits/Rope/Examples/00_Main/Materials/Environment.mat b/Assets/Scripts/ThirdParty/Rope/Examples/00_Main/Materials/Environment.mat similarity index 100% rename from Assets/Toolkits/Rope/Examples/00_Main/Materials/Environment.mat rename to Assets/Scripts/ThirdParty/Rope/Examples/00_Main/Materials/Environment.mat diff --git a/Assets/Toolkits/Rope/Examples/00_Main/Materials/Environment.mat.meta b/Assets/Scripts/ThirdParty/Rope/Examples/00_Main/Materials/Environment.mat.meta similarity index 100% rename from Assets/Toolkits/Rope/Examples/00_Main/Materials/Environment.mat.meta rename to Assets/Scripts/ThirdParty/Rope/Examples/00_Main/Materials/Environment.mat.meta diff --git a/Assets/Toolkits/Rope/Examples/00_Main/Materials/PickedIndicator.mat b/Assets/Scripts/ThirdParty/Rope/Examples/00_Main/Materials/PickedIndicator.mat similarity index 100% rename from Assets/Toolkits/Rope/Examples/00_Main/Materials/PickedIndicator.mat rename to Assets/Scripts/ThirdParty/Rope/Examples/00_Main/Materials/PickedIndicator.mat diff --git a/Assets/Toolkits/Rope/Examples/00_Main/Materials/PickedIndicator.mat.meta b/Assets/Scripts/ThirdParty/Rope/Examples/00_Main/Materials/PickedIndicator.mat.meta similarity index 100% rename from Assets/Toolkits/Rope/Examples/00_Main/Materials/PickedIndicator.mat.meta rename to Assets/Scripts/ThirdParty/Rope/Examples/00_Main/Materials/PickedIndicator.mat.meta diff --git a/Assets/Toolkits/Rope/Examples/00_Main/Materials/Plank.mat b/Assets/Scripts/ThirdParty/Rope/Examples/00_Main/Materials/Plank.mat similarity index 100% rename from Assets/Toolkits/Rope/Examples/00_Main/Materials/Plank.mat rename to Assets/Scripts/ThirdParty/Rope/Examples/00_Main/Materials/Plank.mat diff --git a/Assets/Toolkits/Rope/Examples/00_Main/Materials/Plank.mat.meta b/Assets/Scripts/ThirdParty/Rope/Examples/00_Main/Materials/Plank.mat.meta similarity index 100% rename from Assets/Toolkits/Rope/Examples/00_Main/Materials/Plank.mat.meta rename to Assets/Scripts/ThirdParty/Rope/Examples/00_Main/Materials/Plank.mat.meta diff --git a/Assets/Toolkits/Rope/Examples/00_Main/Materials/Rigidbody.mat b/Assets/Scripts/ThirdParty/Rope/Examples/00_Main/Materials/Rigidbody.mat similarity index 100% rename from Assets/Toolkits/Rope/Examples/00_Main/Materials/Rigidbody.mat rename to Assets/Scripts/ThirdParty/Rope/Examples/00_Main/Materials/Rigidbody.mat diff --git a/Assets/Toolkits/Rope/Examples/00_Main/Materials/Rigidbody.mat.meta b/Assets/Scripts/ThirdParty/Rope/Examples/00_Main/Materials/Rigidbody.mat.meta similarity index 100% rename from Assets/Toolkits/Rope/Examples/00_Main/Materials/Rigidbody.mat.meta rename to Assets/Scripts/ThirdParty/Rope/Examples/00_Main/Materials/Rigidbody.mat.meta diff --git a/Assets/Toolkits/Rope/Examples/00_Main/Materials/Rope.mat b/Assets/Scripts/ThirdParty/Rope/Examples/00_Main/Materials/Rope.mat similarity index 100% rename from Assets/Toolkits/Rope/Examples/00_Main/Materials/Rope.mat rename to Assets/Scripts/ThirdParty/Rope/Examples/00_Main/Materials/Rope.mat diff --git a/Assets/Toolkits/Rope/Examples/00_Main/Materials/Rope.mat.meta b/Assets/Scripts/ThirdParty/Rope/Examples/00_Main/Materials/Rope.mat.meta similarity index 100% rename from Assets/Toolkits/Rope/Examples/00_Main/Materials/Rope.mat.meta rename to Assets/Scripts/ThirdParty/Rope/Examples/00_Main/Materials/Rope.mat.meta diff --git a/Assets/Toolkits/Rope/Examples/00_Main/Materials/Sky.mat b/Assets/Scripts/ThirdParty/Rope/Examples/00_Main/Materials/Sky.mat similarity index 100% rename from Assets/Toolkits/Rope/Examples/00_Main/Materials/Sky.mat rename to Assets/Scripts/ThirdParty/Rope/Examples/00_Main/Materials/Sky.mat diff --git a/Assets/Toolkits/Rope/Examples/00_Main/Materials/Sky.mat.meta b/Assets/Scripts/ThirdParty/Rope/Examples/00_Main/Materials/Sky.mat.meta similarity index 100% rename from Assets/Toolkits/Rope/Examples/00_Main/Materials/Sky.mat.meta rename to Assets/Scripts/ThirdParty/Rope/Examples/00_Main/Materials/Sky.mat.meta diff --git a/Assets/Toolkits/Rope/Examples/00_Main/Materials/TargetIndicator.mat b/Assets/Scripts/ThirdParty/Rope/Examples/00_Main/Materials/TargetIndicator.mat similarity index 100% rename from Assets/Toolkits/Rope/Examples/00_Main/Materials/TargetIndicator.mat rename to Assets/Scripts/ThirdParty/Rope/Examples/00_Main/Materials/TargetIndicator.mat diff --git a/Assets/Toolkits/Rope/Examples/00_Main/Materials/TargetIndicator.mat.meta b/Assets/Scripts/ThirdParty/Rope/Examples/00_Main/Materials/TargetIndicator.mat.meta similarity index 100% rename from Assets/Toolkits/Rope/Examples/00_Main/Materials/TargetIndicator.mat.meta rename to Assets/Scripts/ThirdParty/Rope/Examples/00_Main/Materials/TargetIndicator.mat.meta diff --git a/Assets/Toolkits/Rope/Examples/00_Main/Models.meta b/Assets/Scripts/ThirdParty/Rope/Examples/00_Main/Models.meta similarity index 100% rename from Assets/Toolkits/Rope/Examples/00_Main/Models.meta rename to Assets/Scripts/ThirdParty/Rope/Examples/00_Main/Models.meta diff --git a/Assets/Toolkits/Rope/Examples/00_Main/Models/Chain.fbx b/Assets/Scripts/ThirdParty/Rope/Examples/00_Main/Models/Chain.fbx similarity index 100% rename from Assets/Toolkits/Rope/Examples/00_Main/Models/Chain.fbx rename to Assets/Scripts/ThirdParty/Rope/Examples/00_Main/Models/Chain.fbx diff --git a/Assets/Toolkits/Rope/Examples/00_Main/Models/Chain.fbx.meta b/Assets/Scripts/ThirdParty/Rope/Examples/00_Main/Models/Chain.fbx.meta similarity index 100% rename from Assets/Toolkits/Rope/Examples/00_Main/Models/Chain.fbx.meta rename to Assets/Scripts/ThirdParty/Rope/Examples/00_Main/Models/Chain.fbx.meta diff --git a/Assets/Toolkits/Rope/Examples/00_Main/RopeBridgePlank.cs b/Assets/Scripts/ThirdParty/Rope/Examples/00_Main/RopeBridgePlank.cs similarity index 99% rename from Assets/Toolkits/Rope/Examples/00_Main/RopeBridgePlank.cs rename to Assets/Scripts/ThirdParty/Rope/Examples/00_Main/RopeBridgePlank.cs index 71fd3d2c1..c2987906b 100644 --- a/Assets/Toolkits/Rope/Examples/00_Main/RopeBridgePlank.cs +++ b/Assets/Scripts/ThirdParty/Rope/Examples/00_Main/RopeBridgePlank.cs @@ -1,7 +1,7 @@ using UnityEngine; using Unity.Mathematics; -namespace RopeToolkit.Example +namespace NBF.Example { [RequireComponent(typeof(Rigidbody))] public class RopeBridgePlank : MonoBehaviour diff --git a/Assets/Toolkits/Rope/Examples/00_Main/RopeBridgePlank.cs.meta b/Assets/Scripts/ThirdParty/Rope/Examples/00_Main/RopeBridgePlank.cs.meta similarity index 100% rename from Assets/Toolkits/Rope/Examples/00_Main/RopeBridgePlank.cs.meta rename to Assets/Scripts/ThirdParty/Rope/Examples/00_Main/RopeBridgePlank.cs.meta diff --git a/Assets/Toolkits/Rope/Examples/00_Main/RopeScene.meta b/Assets/Scripts/ThirdParty/Rope/Examples/00_Main/RopeScene.meta similarity index 100% rename from Assets/Toolkits/Rope/Examples/00_Main/RopeScene.meta rename to Assets/Scripts/ThirdParty/Rope/Examples/00_Main/RopeScene.meta diff --git a/Assets/Toolkits/Rope/Examples/00_Main/RopeScene/LightingData.asset b/Assets/Scripts/ThirdParty/Rope/Examples/00_Main/RopeScene/LightingData.asset similarity index 100% rename from Assets/Toolkits/Rope/Examples/00_Main/RopeScene/LightingData.asset rename to Assets/Scripts/ThirdParty/Rope/Examples/00_Main/RopeScene/LightingData.asset diff --git a/Assets/Toolkits/Rope/Examples/00_Main/RopeScene/LightingData.asset.meta b/Assets/Scripts/ThirdParty/Rope/Examples/00_Main/RopeScene/LightingData.asset.meta similarity index 100% rename from Assets/Toolkits/Rope/Examples/00_Main/RopeScene/LightingData.asset.meta rename to Assets/Scripts/ThirdParty/Rope/Examples/00_Main/RopeScene/LightingData.asset.meta diff --git a/Assets/Toolkits/Rope/Examples/00_Main/RopeScene/ReflectionProbe-0.exr b/Assets/Scripts/ThirdParty/Rope/Examples/00_Main/RopeScene/ReflectionProbe-0.exr similarity index 100% rename from Assets/Toolkits/Rope/Examples/00_Main/RopeScene/ReflectionProbe-0.exr rename to Assets/Scripts/ThirdParty/Rope/Examples/00_Main/RopeScene/ReflectionProbe-0.exr diff --git a/Assets/Toolkits/Rope/Examples/00_Main/RopeScene/ReflectionProbe-0.exr.meta b/Assets/Scripts/ThirdParty/Rope/Examples/00_Main/RopeScene/ReflectionProbe-0.exr.meta similarity index 100% rename from Assets/Toolkits/Rope/Examples/00_Main/RopeScene/ReflectionProbe-0.exr.meta rename to Assets/Scripts/ThirdParty/Rope/Examples/00_Main/RopeScene/ReflectionProbe-0.exr.meta diff --git a/Assets/Toolkits/Rope/Examples/01_DynamicAttach.meta b/Assets/Scripts/ThirdParty/Rope/Examples/01_DynamicAttach.meta similarity index 100% rename from Assets/Toolkits/Rope/Examples/01_DynamicAttach.meta rename to Assets/Scripts/ThirdParty/Rope/Examples/01_DynamicAttach.meta diff --git a/Assets/Toolkits/Rope/Examples/01_DynamicAttach/BackAndForthMovement.cs b/Assets/Scripts/ThirdParty/Rope/Examples/01_DynamicAttach/BackAndForthMovement.cs similarity index 93% rename from Assets/Toolkits/Rope/Examples/01_DynamicAttach/BackAndForthMovement.cs rename to Assets/Scripts/ThirdParty/Rope/Examples/01_DynamicAttach/BackAndForthMovement.cs index 9aae74acb..5d3180f83 100644 --- a/Assets/Toolkits/Rope/Examples/01_DynamicAttach/BackAndForthMovement.cs +++ b/Assets/Scripts/ThirdParty/Rope/Examples/01_DynamicAttach/BackAndForthMovement.cs @@ -2,7 +2,7 @@ using System.Collections.Generic; using UnityEngine; -namespace RopeToolkit.Example +namespace NBF.Example { public class BackAndForthMovement : MonoBehaviour { diff --git a/Assets/Toolkits/Rope/Examples/01_DynamicAttach/BackAndForthMovement.cs.meta b/Assets/Scripts/ThirdParty/Rope/Examples/01_DynamicAttach/BackAndForthMovement.cs.meta similarity index 100% rename from Assets/Toolkits/Rope/Examples/01_DynamicAttach/BackAndForthMovement.cs.meta rename to Assets/Scripts/ThirdParty/Rope/Examples/01_DynamicAttach/BackAndForthMovement.cs.meta diff --git a/Assets/Toolkits/Rope/Examples/01_DynamicAttach/DynamicAttach.cs b/Assets/Scripts/ThirdParty/Rope/Examples/01_DynamicAttach/DynamicAttach.cs similarity index 98% rename from Assets/Toolkits/Rope/Examples/01_DynamicAttach/DynamicAttach.cs rename to Assets/Scripts/ThirdParty/Rope/Examples/01_DynamicAttach/DynamicAttach.cs index 775cccb11..a1fae629d 100644 --- a/Assets/Toolkits/Rope/Examples/01_DynamicAttach/DynamicAttach.cs +++ b/Assets/Scripts/ThirdParty/Rope/Examples/01_DynamicAttach/DynamicAttach.cs @@ -2,7 +2,7 @@ using System.Collections.Generic; using UnityEngine; -namespace RopeToolkit.Example +namespace NBF.Example { public class DynamicAttach : MonoBehaviour { diff --git a/Assets/Toolkits/Rope/Examples/01_DynamicAttach/DynamicAttach.cs.meta b/Assets/Scripts/ThirdParty/Rope/Examples/01_DynamicAttach/DynamicAttach.cs.meta similarity index 100% rename from Assets/Toolkits/Rope/Examples/01_DynamicAttach/DynamicAttach.cs.meta rename to Assets/Scripts/ThirdParty/Rope/Examples/01_DynamicAttach/DynamicAttach.cs.meta diff --git a/Assets/Toolkits/Rope/Examples/01_DynamicAttach/DynamicAttach.meta b/Assets/Scripts/ThirdParty/Rope/Examples/01_DynamicAttach/DynamicAttach.meta similarity index 100% rename from Assets/Toolkits/Rope/Examples/01_DynamicAttach/DynamicAttach.meta rename to Assets/Scripts/ThirdParty/Rope/Examples/01_DynamicAttach/DynamicAttach.meta diff --git a/Assets/Toolkits/Rope/Examples/01_DynamicAttach/DynamicAttach.unity b/Assets/Scripts/ThirdParty/Rope/Examples/01_DynamicAttach/DynamicAttach.unity similarity index 75% rename from Assets/Toolkits/Rope/Examples/01_DynamicAttach/DynamicAttach.unity rename to Assets/Scripts/ThirdParty/Rope/Examples/01_DynamicAttach/DynamicAttach.unity index 2719ab970..57d5fba30 100644 --- a/Assets/Toolkits/Rope/Examples/01_DynamicAttach/DynamicAttach.unity +++ b/Assets/Scripts/ThirdParty/Rope/Examples/01_DynamicAttach/DynamicAttach.unity @@ -13,7 +13,7 @@ OcclusionCullingSettings: --- !u!104 &2 RenderSettings: m_ObjectHideFlags: 0 - serializedVersion: 9 + serializedVersion: 10 m_Fog: 0 m_FogColor: {r: 0.5, g: 0.5, b: 0.5, a: 1} m_FogMode: 3 @@ -38,13 +38,12 @@ RenderSettings: m_ReflectionIntensity: 1 m_CustomReflection: {fileID: 0} m_Sun: {fileID: 0} - m_IndirectSpecularColor: {r: 0, g: 0, b: 0, a: 1} m_UseRadianceAmbientProbe: 0 --- !u!157 &3 LightmapSettings: m_ObjectHideFlags: 0 - serializedVersion: 11 - m_GIWorkflowMode: 0 + serializedVersion: 13 + m_BakeOnSceneLoad: 1 m_GISettings: serializedVersion: 2 m_BounceScale: 1 @@ -67,9 +66,6 @@ LightmapSettings: m_LightmapParameters: {fileID: 0} m_LightmapsBakeMode: 1 m_TextureCompression: 1 - m_FinalGather: 0 - m_FinalGatherFiltering: 1 - m_FinalGatherRayCount: 256 m_ReflectionCompression: 2 m_MixedBakeMode: 2 m_BakeBackend: 1 @@ -97,15 +93,14 @@ LightmapSettings: m_ExportTrainingData: 0 m_TrainingDataDestination: TrainingData m_LightProbeSampleCountMultiplier: 4 - m_LightingDataAsset: {fileID: 112000000, guid: f37ea473eb9ef4c999d93d6854305b60, - type: 2} - m_UseShadowmask: 1 + m_LightingDataAsset: {fileID: 112000000, guid: 6845e77b07ddf4e48936c563b2cb9c9a, type: 2} + m_LightingSettings: {fileID: 1476623454} --- !u!196 &4 NavMeshSettings: serializedVersion: 2 m_ObjectHideFlags: 0 m_BuildSettings: - serializedVersion: 2 + serializedVersion: 3 agentTypeID: 0 agentRadius: 0.5 agentHeight: 2 @@ -118,7 +113,9 @@ NavMeshSettings: cellSize: 0.16666667 manualTileSize: 0 tileSize: 256 - accuratePlacement: 0 + buildHeightMesh: 0 + maxJobWorkers: 0 + preserveTilesOutsideBounds: 0 debug: m_Flags: 0 m_NavMeshData: {fileID: 0} @@ -163,9 +160,17 @@ SphereCollider: m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 609470541} m_Material: {fileID: 0} + m_IncludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_ExcludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_LayerOverridePriority: 0 m_IsTrigger: 0 + m_ProvidesContacts: 0 m_Enabled: 1 - serializedVersion: 2 + serializedVersion: 3 m_Radius: 0.5 m_Center: {x: 0, y: 0, z: 0} --- !u!23 &609470544 @@ -179,14 +184,21 @@ MeshRenderer: m_CastShadows: 1 m_ReceiveShadows: 1 m_DynamicOccludee: 1 + m_StaticShadowCaster: 0 m_MotionVectors: 1 m_LightProbeUsage: 1 m_ReflectionProbeUsage: 1 m_RayTracingMode: 2 + m_RayTraceProcedural: 0 + m_RayTracingAccelStructBuildFlagsOverride: 0 + m_RayTracingAccelStructBuildFlags: 1 + m_SmallMeshCulling: 1 + m_ForceMeshLod: -1 + m_MeshLodSelectionBias: 0 m_RenderingLayerMask: 1 m_RendererPriority: 0 m_Materials: - - {fileID: 10303, guid: 0000000000000000f000000000000000, type: 0} + - {fileID: 2100000, guid: 96e3708e6a4c8cd41adfeab52a6c8498, type: 3} m_StaticBatchInfo: firstSubMesh: 0 subMeshCount: 0 @@ -204,9 +216,11 @@ MeshRenderer: m_AutoUVMaxDistance: 0.5 m_AutoUVMaxAngle: 89 m_LightmapParameters: {fileID: 0} + m_GlobalIlluminationMeshLod: 0 m_SortingLayerID: 0 m_SortingLayer: 0 m_SortingOrder: 0 + m_AdditionalVertexStreams: {fileID: 0} --- !u!33 &609470545 MeshFilter: m_ObjectHideFlags: 0 @@ -222,12 +236,13 @@ Transform: m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 609470541} + serializedVersion: 2 m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 0.5, y: 0.5, z: 0.5} + m_ConstrainProportionsScale: 0 m_Children: [] m_Father: {fileID: 0} - m_RootOrder: 3 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!1 &823804522 GameObject: @@ -274,9 +289,17 @@ Camera: m_projectionMatrixMode: 1 m_GateFitMode: 2 m_FOVAxisMode: 0 + m_Iso: 200 + m_ShutterSpeed: 0.005 + m_Aperture: 16 + m_FocusDistance: 10 + m_FocalLength: 50 + m_BladeCount: 5 + m_Curvature: {x: 2, y: 11} + m_BarrelClipping: 0.25 + m_Anamorphism: 0 m_SensorSize: {x: 36, y: 24} m_LensShift: {x: 0, y: 0} - m_FocalLength: 50 m_NormalizedViewPortRect: serializedVersion: 2 x: 0 @@ -310,12 +333,13 @@ Transform: m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 823804522} + serializedVersion: 2 m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 1, z: -10} 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 &823804526 MonoBehaviour: @@ -336,9 +360,7 @@ MonoBehaviour: maxPickDistance: 2 maxImpulseStrength: 3 leverage: 10 - pickRopeOnMouseButton: 0 splitPickedRopeOnKey: 32 - tweakPickDistanceOnScroll: 1 ropes: [] --- !u!1 &858275400 GameObject: @@ -368,9 +390,17 @@ BoxCollider: m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 858275400} m_Material: {fileID: 0} + m_IncludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_ExcludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_LayerOverridePriority: 0 m_IsTrigger: 0 + m_ProvidesContacts: 0 m_Enabled: 1 - serializedVersion: 2 + serializedVersion: 3 m_Size: {x: 1, y: 1, z: 1} m_Center: {x: 0, y: 0, z: 0} --- !u!23 &858275402 @@ -384,14 +414,21 @@ MeshRenderer: m_CastShadows: 1 m_ReceiveShadows: 1 m_DynamicOccludee: 1 + m_StaticShadowCaster: 0 m_MotionVectors: 1 m_LightProbeUsage: 1 m_ReflectionProbeUsage: 1 m_RayTracingMode: 2 + m_RayTraceProcedural: 0 + m_RayTracingAccelStructBuildFlagsOverride: 0 + m_RayTracingAccelStructBuildFlags: 1 + m_SmallMeshCulling: 1 + m_ForceMeshLod: -1 + m_MeshLodSelectionBias: 0 m_RenderingLayerMask: 1 m_RendererPriority: 0 m_Materials: - - {fileID: 10303, guid: 0000000000000000f000000000000000, type: 0} + - {fileID: 2100000, guid: 96e3708e6a4c8cd41adfeab52a6c8498, type: 3} m_StaticBatchInfo: firstSubMesh: 0 subMeshCount: 0 @@ -409,9 +446,11 @@ MeshRenderer: m_AutoUVMaxDistance: 0.5 m_AutoUVMaxAngle: 89 m_LightmapParameters: {fileID: 0} + m_GlobalIlluminationMeshLod: 0 m_SortingLayerID: 0 m_SortingLayer: 0 m_SortingOrder: 0 + m_AdditionalVertexStreams: {fileID: 0} --- !u!33 &858275403 MeshFilter: m_ObjectHideFlags: 0 @@ -427,12 +466,13 @@ Transform: m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 858275400} + serializedVersion: 2 m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 2, z: 0} m_LocalScale: {x: 2, y: 0.5, z: 0.5} + m_ConstrainProportionsScale: 0 m_Children: [] m_Father: {fileID: 0} - m_RootOrder: 2 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!114 &858275405 MonoBehaviour: @@ -451,6 +491,67 @@ MonoBehaviour: target: {fileID: 609470546} targetAttachPoint: {x: 0, y: 0.5, z: 0} ropeInteraction: {fileID: 823804526} +--- !u!850595691 &1476623454 +LightingSettings: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_Name: Settings.lighting + serializedVersion: 9 + m_EnableBakedLightmaps: 1 + m_EnableRealtimeLightmaps: 0 + m_RealtimeEnvironmentLighting: 1 + m_BounceScale: 1 + m_AlbedoBoost: 1 + m_IndirectOutputScale: 1 + m_UsingShadowmask: 1 + m_BakeBackend: 1 + m_LightmapMaxSize: 1024 + m_LightmapSizeFixed: 0 + m_UseMipmapLimits: 1 + m_BakeResolution: 40 + m_Padding: 2 + m_LightmapCompression: 3 + m_AO: 0 + m_AOMaxDistance: 1 + m_CompAOExponent: 1 + m_CompAOExponentDirect: 0 + m_ExtractAO: 0 + m_MixedBakeMode: 2 + m_LightmapsBakeMode: 1 + m_FilterMode: 1 + m_LightmapParameters: {fileID: 15204, guid: 0000000000000000f000000000000000, type: 0} + m_ExportTrainingData: 0 + m_EnableWorkerProcessBaking: 1 + m_TrainingDataDestination: TrainingData + m_RealtimeResolution: 2 + m_ForceWhiteAlbedo: 0 + m_ForceUpdates: 0 + m_PVRCulling: 1 + m_PVRSampling: 1 + m_PVRDirectSampleCount: 32 + m_PVRSampleCount: 512 + m_PVREnvironmentSampleCount: 256 + m_PVREnvironmentReferencePointCount: 2048 + m_LightProbeSampleCountMultiplier: 4 + m_PVRBounces: 2 + m_PVRMinBounces: 2 + m_PVREnvironmentImportanceSampling: 1 + m_PVRFilteringMode: 1 + m_PVRDenoiserTypeDirect: 1 + m_PVRDenoiserTypeIndirect: 1 + m_PVRDenoiserTypeAO: 1 + m_PVRFilterTypeDirect: 0 + m_PVRFilterTypeIndirect: 0 + m_PVRFilterTypeAO: 0 + m_PVRFilteringGaussRadiusDirect: 1 + m_PVRFilteringGaussRadiusIndirect: 5 + m_PVRFilteringGaussRadiusAO: 2 + m_PVRFilteringAtrousPositionSigmaDirect: 0.5 + m_PVRFilteringAtrousPositionSigmaIndirect: 2 + m_PVRFilteringAtrousPositionSigmaAO: 1 + m_RespectSceneVisibilityWhenBakingGI: 0 --- !u!1 &1579321095 GameObject: m_ObjectHideFlags: 0 @@ -461,6 +562,7 @@ GameObject: m_Component: - component: {fileID: 1579321097} - component: {fileID: 1579321096} + - component: {fileID: 1579321098} m_Layer: 0 m_Name: Light m_TagString: Untagged @@ -476,9 +578,8 @@ Light: m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1579321095} m_Enabled: 1 - serializedVersion: 10 + serializedVersion: 11 m_Type: 1 - m_Shape: 0 m_Color: {r: 1, g: 0.95686275, b: 0.8392157, a: 1} m_Intensity: 1 m_Range: 10 @@ -527,8 +628,13 @@ Light: m_UseColorTemperature: 0 m_BoundingSphereOverride: {x: 0, y: 0, z: 0, w: 0} m_UseBoundingSphereOverride: 0 + m_UseViewFrustumForShadowCasterCull: 1 + m_ForceVisible: 0 m_ShadowRadius: 0 m_ShadowAngle: 0 + m_LightUnit: 1 + m_LuxAtDistance: 1 + m_EnableSpotReflector: 1 --- !u!4 &1579321097 Transform: m_ObjectHideFlags: 0 @@ -536,10 +642,48 @@ Transform: m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1579321095} + serializedVersion: 2 m_LocalRotation: {x: 0.40821788, y: -0.23456968, z: 0.10938163, w: 0.8754261} m_LocalPosition: {x: 0, y: 3, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 m_Children: [] m_Father: {fileID: 0} - m_RootOrder: 1 m_LocalEulerAnglesHint: {x: 50, y: -30, z: 0} +--- !u!114 &1579321098 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1579321095} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 474bcb49853aa07438625e644c072ee6, type: 3} + m_Name: + m_EditorClassIdentifier: Unity.RenderPipelines.Universal.Runtime::UnityEngine.Rendering.Universal.UniversalAdditionalLightData + m_UsePipelineSettings: 1 + m_AdditionalLightsShadowResolutionTier: 2 + m_CustomShadowLayers: 0 + m_LightCookieSize: {x: 1, y: 1} + m_LightCookieOffset: {x: 0, y: 0} + m_SoftShadowQuality: 0 + m_RenderingLayersMask: + serializedVersion: 0 + m_Bits: 1 + m_ShadowRenderingLayersMask: + serializedVersion: 0 + m_Bits: 1 + m_Version: 4 + m_LightLayerMask: 1 + m_ShadowLayerMask: 1 + m_RenderingLayers: 1 + m_ShadowRenderingLayers: 1 +--- !u!1660057539 &9223372036854775807 +SceneRoots: + m_ObjectHideFlags: 0 + m_Roots: + - {fileID: 823804525} + - {fileID: 1579321097} + - {fileID: 858275404} + - {fileID: 609470546} diff --git a/Assets/Toolkits/Rope/Examples/01_DynamicAttach/DynamicAttach.unity.meta b/Assets/Scripts/ThirdParty/Rope/Examples/01_DynamicAttach/DynamicAttach.unity.meta similarity index 100% rename from Assets/Toolkits/Rope/Examples/01_DynamicAttach/DynamicAttach.unity.meta rename to Assets/Scripts/ThirdParty/Rope/Examples/01_DynamicAttach/DynamicAttach.unity.meta diff --git a/Assets/Toolkits/Rope/Examples/01_DynamicAttach/DynamicAttach/LightingData.asset b/Assets/Scripts/ThirdParty/Rope/Examples/01_DynamicAttach/DynamicAttach/LightingData.asset similarity index 99% rename from Assets/Toolkits/Rope/Examples/01_DynamicAttach/DynamicAttach/LightingData.asset rename to Assets/Scripts/ThirdParty/Rope/Examples/01_DynamicAttach/DynamicAttach/LightingData.asset index ac4ff8332dc025b90667d9457dbc2c03b3c746a2..84687d49c1d468d405979616269d0f3a77804e2e 100644 GIT binary patch delta 29 lcmbQ(#W=Bxal>2}e%HM!GsVCAtSQbowru@`fXQoIQUSeK4O{>K delta 29 kcmbQ(#W=Bxal>2}{{R2~GXTN%BzHdVxz_QM*SMqt0JRJYt^fc4 diff --git a/Assets/Toolkits/Rope/Examples/01_DynamicAttach/DynamicAttach/LightingData.asset.meta b/Assets/Scripts/ThirdParty/Rope/Examples/01_DynamicAttach/DynamicAttach/LightingData.asset.meta similarity index 100% rename from Assets/Toolkits/Rope/Examples/01_DynamicAttach/DynamicAttach/LightingData.asset.meta rename to Assets/Scripts/ThirdParty/Rope/Examples/01_DynamicAttach/DynamicAttach/LightingData.asset.meta diff --git a/Assets/Toolkits/Rope/Examples/02_BoxingRing.meta b/Assets/Scripts/ThirdParty/Rope/Examples/02_BoxingRing.meta similarity index 100% rename from Assets/Toolkits/Rope/Examples/02_BoxingRing.meta rename to Assets/Scripts/ThirdParty/Rope/Examples/02_BoxingRing.meta diff --git a/Assets/Toolkits/Rope/Examples/02_BoxingRing/Ball.mat b/Assets/Scripts/ThirdParty/Rope/Examples/02_BoxingRing/Ball.mat similarity index 100% rename from Assets/Toolkits/Rope/Examples/02_BoxingRing/Ball.mat rename to Assets/Scripts/ThirdParty/Rope/Examples/02_BoxingRing/Ball.mat diff --git a/Assets/Toolkits/Rope/Examples/02_BoxingRing/Ball.mat.meta b/Assets/Scripts/ThirdParty/Rope/Examples/02_BoxingRing/Ball.mat.meta similarity index 100% rename from Assets/Toolkits/Rope/Examples/02_BoxingRing/Ball.mat.meta rename to Assets/Scripts/ThirdParty/Rope/Examples/02_BoxingRing/Ball.mat.meta diff --git a/Assets/Toolkits/Rope/Examples/02_BoxingRing/BoxingRing.meta b/Assets/Scripts/ThirdParty/Rope/Examples/02_BoxingRing/BoxingRing.meta similarity index 100% rename from Assets/Toolkits/Rope/Examples/02_BoxingRing/BoxingRing.meta rename to Assets/Scripts/ThirdParty/Rope/Examples/02_BoxingRing/BoxingRing.meta diff --git a/Assets/Toolkits/Rope/Examples/02_BoxingRing/BoxingRing.unity b/Assets/Scripts/ThirdParty/Rope/Examples/02_BoxingRing/BoxingRing.unity similarity index 100% rename from Assets/Toolkits/Rope/Examples/02_BoxingRing/BoxingRing.unity rename to Assets/Scripts/ThirdParty/Rope/Examples/02_BoxingRing/BoxingRing.unity diff --git a/Assets/Toolkits/Rope/Examples/02_BoxingRing/BoxingRing.unity.meta b/Assets/Scripts/ThirdParty/Rope/Examples/02_BoxingRing/BoxingRing.unity.meta similarity index 100% rename from Assets/Toolkits/Rope/Examples/02_BoxingRing/BoxingRing.unity.meta rename to Assets/Scripts/ThirdParty/Rope/Examples/02_BoxingRing/BoxingRing.unity.meta diff --git a/Assets/Toolkits/Rope/Examples/02_BoxingRing/BoxingRing/LightingData.asset b/Assets/Scripts/ThirdParty/Rope/Examples/02_BoxingRing/BoxingRing/LightingData.asset similarity index 100% rename from Assets/Toolkits/Rope/Examples/02_BoxingRing/BoxingRing/LightingData.asset rename to Assets/Scripts/ThirdParty/Rope/Examples/02_BoxingRing/BoxingRing/LightingData.asset diff --git a/Assets/Toolkits/Rope/Examples/02_BoxingRing/BoxingRing/LightingData.asset.meta b/Assets/Scripts/ThirdParty/Rope/Examples/02_BoxingRing/BoxingRing/LightingData.asset.meta similarity index 100% rename from Assets/Toolkits/Rope/Examples/02_BoxingRing/BoxingRing/LightingData.asset.meta rename to Assets/Scripts/ThirdParty/Rope/Examples/02_BoxingRing/BoxingRing/LightingData.asset.meta diff --git a/Assets/Toolkits/Rope/Examples/02_BoxingRing/Ground.mat b/Assets/Scripts/ThirdParty/Rope/Examples/02_BoxingRing/Ground.mat similarity index 100% rename from Assets/Toolkits/Rope/Examples/02_BoxingRing/Ground.mat rename to Assets/Scripts/ThirdParty/Rope/Examples/02_BoxingRing/Ground.mat diff --git a/Assets/Toolkits/Rope/Examples/02_BoxingRing/Ground.mat.meta b/Assets/Scripts/ThirdParty/Rope/Examples/02_BoxingRing/Ground.mat.meta similarity index 100% rename from Assets/Toolkits/Rope/Examples/02_BoxingRing/Ground.mat.meta rename to Assets/Scripts/ThirdParty/Rope/Examples/02_BoxingRing/Ground.mat.meta diff --git a/Assets/Toolkits/Rope/Examples/02_BoxingRing/Spawner.cs b/Assets/Scripts/ThirdParty/Rope/Examples/02_BoxingRing/Spawner.cs similarity index 100% rename from Assets/Toolkits/Rope/Examples/02_BoxingRing/Spawner.cs rename to Assets/Scripts/ThirdParty/Rope/Examples/02_BoxingRing/Spawner.cs diff --git a/Assets/Toolkits/Rope/Examples/02_BoxingRing/Spawner.cs.meta b/Assets/Scripts/ThirdParty/Rope/Examples/02_BoxingRing/Spawner.cs.meta similarity index 100% rename from Assets/Toolkits/Rope/Examples/02_BoxingRing/Spawner.cs.meta rename to Assets/Scripts/ThirdParty/Rope/Examples/02_BoxingRing/Spawner.cs.meta diff --git a/Assets/Toolkits/Rope/Helpers.meta b/Assets/Scripts/ThirdParty/Rope/Helpers.meta similarity index 100% rename from Assets/Toolkits/Rope/Helpers.meta rename to Assets/Scripts/ThirdParty/Rope/Helpers.meta diff --git a/Assets/Toolkits/Rope/Helpers/Editor.meta b/Assets/Scripts/ThirdParty/Rope/Helpers/Editor.meta similarity index 100% rename from Assets/Toolkits/Rope/Helpers/Editor.meta rename to Assets/Scripts/ThirdParty/Rope/Helpers/Editor.meta diff --git a/Assets/Toolkits/Rope/Helpers/Editor/SimpleRopeInteractionEditor.cs b/Assets/Scripts/ThirdParty/Rope/Helpers/Editor/SimpleRopeInteractionEditor.cs similarity index 96% rename from Assets/Toolkits/Rope/Helpers/Editor/SimpleRopeInteractionEditor.cs rename to Assets/Scripts/ThirdParty/Rope/Helpers/Editor/SimpleRopeInteractionEditor.cs index b578ad000..187e376fd 100644 --- a/Assets/Toolkits/Rope/Helpers/Editor/SimpleRopeInteractionEditor.cs +++ b/Assets/Scripts/ThirdParty/Rope/Helpers/Editor/SimpleRopeInteractionEditor.cs @@ -3,7 +3,7 @@ using UnityEditor; using UnityEditor.SceneManagement; using System.Linq; -namespace RopeToolkit +namespace NBF { [CustomEditor(typeof(SimpleRopeInteraction))] public class SimpleRopeInteractionEditor : Editor diff --git a/Assets/Toolkits/Rope/Helpers/Editor/SimpleRopeInteractionEditor.cs.meta b/Assets/Scripts/ThirdParty/Rope/Helpers/Editor/SimpleRopeInteractionEditor.cs.meta similarity index 100% rename from Assets/Toolkits/Rope/Helpers/Editor/SimpleRopeInteractionEditor.cs.meta rename to Assets/Scripts/ThirdParty/Rope/Helpers/Editor/SimpleRopeInteractionEditor.cs.meta diff --git a/Assets/Toolkits/Rope/Helpers/SimpleRopeInteraction.cs b/Assets/Scripts/ThirdParty/Rope/Helpers/SimpleRopeInteraction.cs similarity index 99% rename from Assets/Toolkits/Rope/Helpers/SimpleRopeInteraction.cs rename to Assets/Scripts/ThirdParty/Rope/Helpers/SimpleRopeInteraction.cs index fc929fdf7..4ff3f8385 100644 --- a/Assets/Toolkits/Rope/Helpers/SimpleRopeInteraction.cs +++ b/Assets/Scripts/ThirdParty/Rope/Helpers/SimpleRopeInteraction.cs @@ -2,7 +2,7 @@ using Unity.Mathematics; using System.Collections.Generic; -namespace RopeToolkit +namespace NBF { public class SimpleRopeInteraction : MonoBehaviour { diff --git a/Assets/Toolkits/Rope/Helpers/SimpleRopeInteraction.cs.meta b/Assets/Scripts/ThirdParty/Rope/Helpers/SimpleRopeInteraction.cs.meta similarity index 100% rename from Assets/Toolkits/Rope/Helpers/SimpleRopeInteraction.cs.meta rename to Assets/Scripts/ThirdParty/Rope/Helpers/SimpleRopeInteraction.cs.meta diff --git a/Assets/Toolkits/Rope/Helpers/SimpleRopeInteractionGUI.cs b/Assets/Scripts/ThirdParty/Rope/Helpers/SimpleRopeInteractionGUI.cs similarity index 98% rename from Assets/Toolkits/Rope/Helpers/SimpleRopeInteractionGUI.cs rename to Assets/Scripts/ThirdParty/Rope/Helpers/SimpleRopeInteractionGUI.cs index cfdace9be..82e42b88c 100644 --- a/Assets/Toolkits/Rope/Helpers/SimpleRopeInteractionGUI.cs +++ b/Assets/Scripts/ThirdParty/Rope/Helpers/SimpleRopeInteractionGUI.cs @@ -2,7 +2,7 @@ using System.Collections.Generic; using UnityEngine; -namespace RopeToolkit.Example +namespace NBF.Example { [RequireComponent(typeof(SimpleRopeInteraction))] public class SimpleRopeInteractionGUI : MonoBehaviour diff --git a/Assets/Toolkits/Rope/Helpers/SimpleRopeInteractionGUI.cs.meta b/Assets/Scripts/ThirdParty/Rope/Helpers/SimpleRopeInteractionGUI.cs.meta similarity index 100% rename from Assets/Toolkits/Rope/Helpers/SimpleRopeInteractionGUI.cs.meta rename to Assets/Scripts/ThirdParty/Rope/Helpers/SimpleRopeInteractionGUI.cs.meta diff --git a/Assets/Toolkits/Rope/README-HTML.md.html b/Assets/Scripts/ThirdParty/Rope/README-HTML.md.html similarity index 100% rename from Assets/Toolkits/Rope/README-HTML.md.html rename to Assets/Scripts/ThirdParty/Rope/README-HTML.md.html diff --git a/Assets/Toolkits/Rope/README-HTML.md.html.meta b/Assets/Scripts/ThirdParty/Rope/README-HTML.md.html.meta similarity index 100% rename from Assets/Toolkits/Rope/README-HTML.md.html.meta rename to Assets/Scripts/ThirdParty/Rope/README-HTML.md.html.meta diff --git a/Assets/Toolkits/Rope/README-PDF.pdf b/Assets/Scripts/ThirdParty/Rope/README-PDF.pdf similarity index 100% rename from Assets/Toolkits/Rope/README-PDF.pdf rename to Assets/Scripts/ThirdParty/Rope/README-PDF.pdf diff --git a/Assets/Toolkits/Rope/README-PDF.pdf.meta b/Assets/Scripts/ThirdParty/Rope/README-PDF.pdf.meta similarity index 100% rename from Assets/Toolkits/Rope/README-PDF.pdf.meta rename to Assets/Scripts/ThirdParty/Rope/README-PDF.pdf.meta diff --git a/Assets/Toolkits/Rope/Rope.cs b/Assets/Scripts/ThirdParty/Rope/Rope.cs similarity index 73% rename from Assets/Toolkits/Rope/Rope.cs rename to Assets/Scripts/ThirdParty/Rope/Rope.cs index a0e236002..fbc46c6aa 100644 --- a/Assets/Toolkits/Rope/Rope.cs +++ b/Assets/Scripts/ThirdParty/Rope/Rope.cs @@ -1,4 +1,4 @@ -using System.Collections.Generic; +using System.Collections.Generic; using Unity.Burst; using Unity.Collections; using Unity.Jobs; @@ -7,7 +7,7 @@ using UnityEngine; using UnityEngine.Profiling; using UnityEngine.Rendering; -namespace RopeToolkit +namespace NBF { public enum RopeInterpolation { @@ -59,111 +59,75 @@ namespace RopeToolkit spawnPointHandle = new Color(0.1f, 0.5f, 0.8f), }; - [Tooltip("The radius of the rope. This value is used both for constructing the visual mesh and handling collisions.")] - [Range(0.001f, 1.0f)] + [Tooltip("绳子的半径。该值既用于构建视觉网格,也用于处理碰撞。")] [Range(0.001f, 1.0f)] public float radius = 0.05f; - [Tooltip("The number of vertices to use for each segment of the rope's visual mesh. More vertices results in a rounder looking rope but increases the overall vertex and triangle count of the visual mesh. This value does not influence the simulation of the rope at all.")] + [Tooltip("绳子的视觉网格中每个段使用的顶点数。更多的顶点会使绳子看起来更圆,但会增加视觉网格的总体顶点和三角形数量。该值不会影响绳子的模拟。")] [DisableInPlayMode] [Range(3, 32)] public int radialVertices = 6; - [Tooltip("Whether or not the rope is a circular loop. If enabled, the last spawn point of the rope will be connected to the first spawn point.")] - [DisableInPlayMode] + [Tooltip("绳子是否为圆形环。如果启用,绳子的最后一个生成点将连接到第一个生成点。")] [DisableInPlayMode] public bool isLoop = false; - [Tooltip("The material used to render the rope. This can be any material that uses vertex positions and optionally normals.")] + [Tooltip("用于渲染绳子的材质。这可以是任何使用顶点位置和可选法线的材质。")] public Material material; - [Tooltip("The shadow casting mode to use for the rope")] - public ShadowCastingMode shadowMode = ShadowCastingMode.On; + [Tooltip("绳子使用的阴影投射模式")] public ShadowCastingMode shadowMode = ShadowCastingMode.On; - [System.Serializable] - public struct CustomMeshSettings - { - [Tooltip("If specified, this mesh is rendered instead of the default rope cylinder at each simulation particle. The z-axis of the mesh will align with the rope tangent and the mesh will be scaled so that z=0 is the current simulation particle and z=1 is the next simulation particle. The material specified for the rope must support instancing.")] - public Mesh mesh; - [Tooltip("When using a custom mesh, this property specifies how much to rotate the mesh around the z-axis for every link in the chain of simulation particles.")] - [Range(0.0f, 360.0f)] - public float rotation; + // public CustomMeshSettings customMesh = new CustomMeshSettings() + // { + // mesh = null, + // rotation = 90.0f, + // scale = Vector3.one, + // stretch = false, + // }; - [Tooltip("When using a custom mesh, this property can be used to tweak the scale")] - public Vector3 scale; - - [Tooltip("When using a custom mesh, this property specifies whether or not the mesh should be stretched lengthwise along with the rope.")] - public bool stretch; - } - - public CustomMeshSettings customMesh = new CustomMeshSettings() - { - mesh = null, - rotation = 90.0f, - scale = Vector3.one, - stretch = false, - }; - - [Tooltip("The spawn points used to initially place the rope in the world. Currently, pairs of consequtive spawn points are considered linear line segments.")] - [DisableInPlayMode] + [Tooltip("用于初始放置绳子在世界中的生成点。目前,连续的生成点对被视为线性线段。")] [DisableInPlayMode] public List spawnPoints = new List(); - [Tooltip("The interpolation mode to use in between calls to FixedUpdate(). Only meaningful if the fixed update rate is low. See documentation for Rigidbody.interpolation for more information.")] - [DisableInPlayMode] + [Tooltip("在FixedUpdate()调用之间使用的插值模式。只有在固定更新率较低时才有意义。有关更多信息,请参见Rigidbody.interpolation的文档。")] [DisableInPlayMode] public RopeInterpolation interpolation = RopeInterpolation.None; [System.Serializable] public struct SimulationSettings { - [Tooltip("Turns on or off the simulation independently of the rendering of the rope. A use case could be to programmatically disable ropes that are too far away from the camera or ropes that are not visible.")] + [Tooltip("独立于绳子渲染打开或关闭模拟。用例可能是程序化地禁用距离相机太远或不可见的绳子。")] public bool enabled; - [Header("Base characteristics")] - - [Tooltip("The number of simulation particles per meter. A higher resolution results in a smoother looking rope but requires more compute.")] - [DisableInPlayMode] + [Header("基本特性")] [Tooltip("每米的模拟粒子数。更高的分辨率会使绳子看起来更平滑,但需要更多计算。")] [DisableInPlayMode] public float resolution; - [Tooltip("The mass per meter of the rope. This value is used when interacting with rigidbodies via RopeRigidbodyConnection components.")] - [Delayed] + [Tooltip("绳子每米的质量。该值用于通过RopeRigidbodyConnection组件与刚体交互。")] [Delayed] public float massPerMeter; - [Tooltip("A measure of the stiffness of the rope. Note that the actual stiffness is heavily dependent on the number of solver iterations and the size of the physics time step used, if you change one value you problably need to re-tweak the other(s). This particular value does not influence performance.")] - [Range(0.01f, 1.0f)] + [Tooltip("绳子刚度的度量。请注意,实际刚度在很大程度上取决于求解器迭代次数和使用的物理时间步长,如果更改一个值,可能需要重新调整其他值。这个特定值不影响性能。")] [Range(0.01f, 1.0f)] public float stiffness; - [Tooltip("The percentage of energy to remove from the simulation each fixed update. Useful to model air resistance. Does not influence performance.")] - [Range(0.0f, 1.0f)] + [Tooltip("每次固定更新时从模拟中移除的能量百分比。用于模拟空气阻力。不影响性能。")] [Range(0.0f, 1.0f)] public float energyLoss; - [Header("Modifiers")] - - [Tooltip("A value that dynamically shortens or lengthens the rope by a multiplicative factor. This can be used to create a retractable grappling hook for example.")] - [Range(0.0f, 2.0f)] + [Header("修改器")] [Tooltip("一个动态缩短或延长绳子的乘法因子。例如,这可以用于创建可伸缩的抓钩。")] [Range(0.0f, 2.0f)] public float lengthMultiplier; - [Tooltip("The percentage of the gravity force to apply to the rope. A low gravity multiplier might be useful to straighten out ropes that otherwise sack but should be considered a 'hack' as the rope will behave as if it is in space.")] - [Range(0.0f, 1.0f)] + [Tooltip("应用于绳子的重力百分比。较低的重力倍增器可能有助于拉直否则会下垂的绳子,但应被视为'hack',因为绳子会表现得像在太空中一样。")] [Range(0.0f, 1.0f)] public float gravityMultiplier; - [Tooltip("Whether to use a custom gravity value from this component or the global physics gravity")] - public bool useCustomGravity; + [Tooltip("是否使用此组件的自定义重力值或全局物理重力")] public bool useCustomGravity; - [Tooltip("The gravity force to use for this particular rope when not using global gravity")] - public float3 customGravity; - - [Header("Advanced (changing these will require tweaking base characteristics)")] + [Tooltip("不使用全局重力时,此特定绳子使用的重力")] public float3 customGravity; + [Header("高级(更改这些将需要调整基本特性)")] [Range(1, 10)] - [Tooltip("The number of substeps that each fixed update should be divided into. A high substep count results in stiffer simulations since small deflections due to gravity can be countered early. The exception is if the rope is fixed between 2 rigidbodies, then the fixed update rate of the project determines stiffness.")] + [Tooltip("每个固定更新应分割成的子步数。高子步数会产生更硬的模拟,因为重力引起的微小偏转可以及早被抵消。例外情况是如果绳子在两个刚体之间固定,则项目的固定更新率决定刚度。")] public int substeps; - [Tooltip("The number of solver iterations to run for this rope. High resolution ropes need more iterations to become stiff. More iterations requires more compute.")] - [Range(1, 32)] + [Tooltip("为此绳子运行的求解器迭代次数。高分辨率绳子需要更多迭代才能变硬。更多迭代需要更多计算。")] [Range(1, 32)] public int solverIterations; } - [Space] - public SimulationSettings simulation = new SimulationSettings() + [Space] public SimulationSettings simulation = new SimulationSettings() { enabled = true, resolution = 10.0f, @@ -181,32 +145,26 @@ namespace RopeToolkit [System.Serializable] public struct CollisionSettings { - [Tooltip("Enables collision handling for the rope so that it reacts to colliders other than the ones it is connected to via RopeConnection components. Performance intensive on the main thread.")] + [Tooltip("启用绳子的碰撞处理,使其对通过RopeConnection组件连接的碰撞器以外的碰撞器做出反应。对主线程性能要求很高。")] public bool enabled; - [Tooltip("Whether or not the rope should influence rigidbodies when it collides with them.")] - public bool influenceRigidbodies; + [Tooltip("绳子碰撞时是否应影响刚体。")] public bool influenceRigidbodies; [Tooltip( - "Check and respond to collisions on every n:th simulation particle. A value of one will make every simulated particle react to collisions, a value " + - "of two will make every other particle react to collisions and so on. As one sphere-overlap test is performed per particle, a low value is very " + - "performance intensive. Collision particles are visualized by yellow spheres when the rope is selected.")] + "检查并响应每个第n个模拟粒子的碰撞。值为1将使每个模拟粒子都对碰撞做出反应,值为2将使每隔一个粒子对碰撞做出反应,以此类推。由于每个粒子执行一次球体重叠测试,低值非常消耗性能。当绳子被选中时,碰撞粒子由黄色球体可视化。")] [Range(1, 20)] public int stride; - [Tooltip("The dynamic friction coefficient of the rope. Used to slow the rope down if it is dragged along the ground for example.")] - [Range(0.0f, 20.0f)] + [Tooltip("绳子的动态摩擦系数。用于在绳子被拖拽时减慢绳子的速度。")] [Range(0.0f, 20.0f)] public float friction; - [Tooltip("An extra distance (added ontop of the rope radius) that prevents small radius ropes from falling through geometry easily")] - [Range(0.0f, 1.0f)] + [Tooltip("防止小半径绳子容易穿过几何体的额外距离(添加到绳子半径之上)")] [Range(0.0f, 1.0f)] public float collisionMargin; public LayerMask ignoreLayers; } - [Space] - public CollisionSettings collisions = new CollisionSettings() + [Space] public CollisionSettings collisions = new CollisionSettings() { enabled = false, influenceRigidbodies = true, @@ -275,7 +233,7 @@ namespace RopeToolkit protected Measurements _measurements; /// - /// Returns the measurements of the rope. The measurements remain constant after the rope is first initialized. + /// 返回绳子的测量值。测量值在绳子首次初始化后保持不变。 /// public Measurements measurements { @@ -285,12 +243,13 @@ namespace RopeToolkit { return new Measurements(); } + return _measurements; } } /// - /// The current world-space bounds of the visual mesh + /// 视觉网格的当前世界空间边界 /// public Bounds currentBounds { @@ -300,6 +259,7 @@ namespace RopeToolkit { return new Bounds(); } + return mesh.bounds; } } @@ -311,7 +271,7 @@ namespace RopeToolkit } /// - /// Adds a new spawn point to the rope. May be called from edit-mode. + /// 向绳子添加新的生成点。可以从编辑模式调用。 /// public void PushSpawnPoint() { @@ -320,13 +280,14 @@ namespace RopeToolkit spawnPoints.Add(Vector3.right); return; } + var prev = spawnPoints.Count >= 2 ? spawnPoints[spawnPoints.Count - 2] : float3.zero; var current = spawnPoints[spawnPoints.Count - 1]; spawnPoints.Add(current + math.normalizesafe(current - prev)); } /// - /// Removes the last spawn point of the rope. May be called from edit-mode. + /// 移除绳子的最后一个生成点。可以从编辑模式调用。 /// public void PopSpawnPoint() { @@ -334,51 +295,54 @@ namespace RopeToolkit { return; } + spawnPoints.RemoveAt(spawnPoints.Count - 1); } /// - /// Returns the index of the simulation particle at a particular distance along the curve of the rope + /// 返回沿绳子曲线特定距离处的模拟粒子索引 /// - /// The distance along the curve of the rope - /// The particle index + /// 沿绳子曲线的距离 + /// 粒子索引 public int GetParticleIndexAt(float distance) { if (!Initialize() || _measurements.particleSpacing == 0.0f) { return 0; } + return _measurements.GetParticleIndexAt(distance); } /// - /// Returns the scalar distance along the curve of the rope that a particular simulation particle is located at. The scalar distance is - /// a value between 0 and 1. The lengthMultiplier is not taken into account. To get the distance along the rope in world space, multiply - /// the scalar distance by the realCurveLength measurement. + /// 返回特定模拟粒子所在位置沿绳子曲线的标量距离。标量距离是0到1之间的值。 + /// lengthMultiplier不考虑在内。要获得世界空间中沿绳子的距离,请将标量距离乘以realCurveLength测量值。 /// - /// The index of the simulation particle - /// The scalar distance + /// 模拟粒子的索引 + /// 标量距离 public float GetScalarDistanceAt(int particleIndex) { if (!Initialize() || particleIndex < 0 || particleIndex >= positions.Length) { return 0.0f; } + return math.clamp((float)particleIndex / (measurements.particleCount - 1), 0.0f, 1.0f); } /// - /// Returns the current position of a particular simulation particle + /// 返回特定模拟粒子的当前位置 /// - /// The index of the simulation particle - /// Whether or not the returned position should respect the interpolation setting of the rope. - /// The current position in world-space + /// 模拟粒子的索引 + /// 返回的位置是否应遵循绳子的插值设置。 + /// 世界空间中的当前位置 public float3 GetPositionAt(int particleIndex, bool respectInterpolation = false) { if (!Initialize() || particleIndex < 0 || particleIndex >= positions.Length) { return float3.zero; } + CompletePreviousSimulationFrame(); if (respectInterpolation && interpolation != RopeInterpolation.None) { @@ -391,40 +355,40 @@ namespace RopeToolkit } /// - /// Sets the position of a particular simulation particle. Because of the integration scheme used for particles - /// this also updates the velocity. If the velocity of the particle should stay the same, also set the velocity - /// to what it was prior to the call to SetPositionAt(). The reason it works like this is because this integration - /// scheme makes it easy to update positions while respecting multiple constraints at the same time. + /// 设置特定模拟粒子的位置。由于粒子使用的积分方案,这也会更新速度。 + /// 如果粒子的速度应保持不变,也在调用SetPositionAt()之前设置速度到调用时的值。 + /// 这样工作的原因是这种积分方案使得在遵守多个约束的同时更新位置变得容易。 /// - /// The index of the simulation particle - /// The desired position in world-space - /// The max allowable impulse strength to use. If zero, no limit is applied. + /// 模拟粒子的索引 + /// 世界空间中的期望位置 + /// 可使用的最大允许冲量强度。如果为零,则不应用限制。 public void SetPositionAt(int particleIndex, float3 position) { if (!Initialize() || particleIndex < 0 || particleIndex >= positions.Length) { return; } + CompletePreviousSimulationFrame(); positions[particleIndex] = position; } /// - /// Sets the position of a particular simulation particle. Because of the integration scheme used for particles - /// this also updates the velocity. If the velocity of the particle should stay the same, also set the velocity - /// to what it was prior to the call to SetPositionAt(). The reason it works like this is because this integration - /// scheme makes it easy to update positions while respecting multiple constraints at the same time. + /// 设置特定模拟粒子的位置。由于粒子使用的积分方案,这也会更新速度。 + /// 如果粒子的速度应保持不变,也在调用SetPositionAt()之前设置速度到调用时的值。 + /// 这样工作的原因是这种积分方案使得在遵守多个约束的同时更新位置变得容易。 /// - /// The index of the simulation particle - /// The desired position in world-space - /// The max allowable impulse strength to use. If zero, no limit is applied. + /// 模拟粒子的索引 + /// 世界空间中的期望位置 + /// 可使用的最大允许冲量强度。如果为零,则不应用限制。 public void SetPositionAt(int particleIndex, float3 position, float maxImpulseStrength) { if (!Initialize() || particleIndex < 0 || particleIndex >= positions.Length || maxImpulseStrength < 0.0f) { return; } + CompletePreviousSimulationFrame(); if (maxImpulseStrength == 0.0f) @@ -433,7 +397,8 @@ namespace RopeToolkit } else { - var particleMass = massMultipliers[particleIndex] * simulation.massPerMeter * _measurements.realCurveLength / _measurements.particleCount; + var particleMass = massMultipliers[particleIndex] * simulation.massPerMeter * + _measurements.realCurveLength / _measurements.particleCount; if (particleMass <= 0.0f) { return; @@ -454,75 +419,77 @@ namespace RopeToolkit } /// - /// Returns the current velocity of a particular simulation particle + /// 返回特定模拟粒子的当前速度 /// - /// The index of the simulation particle - /// The velocity in world-space + /// 模拟粒子的索引 + /// 世界空间中的速度 public float3 GetVelocityAt(int particleIndex) { if (!Initialize() || particleIndex < 0 || particleIndex >= positions.Length) { return float3.zero; } + CompletePreviousSimulationFrame(); return (positions[particleIndex] - prevPositions[particleIndex]) / Time.fixedDeltaTime; } /// - /// Sets the velocity of a particular simulation particle + /// 设置特定模拟粒子的速度 /// - /// The index of the simulation particle - /// The desired velocity in world-space + /// 模拟粒子的索引 + /// 世界空间中的期望速度 public void SetVelocityAt(int particleIndex, float3 velocity) { if (!Initialize() || particleIndex < 0 || particleIndex >= positions.Length) { return; } + CompletePreviousSimulationFrame(); prevPositions[particleIndex] = positions[particleIndex] - velocity * Time.fixedDeltaTime; } /// - /// Returns the mass multiplier of a particular simulation particle. This value can be used to increase or decrease - /// the weight of a section of the rope. A value of 0 will make the particle immovable. A value of 2 will make the - /// particle twice as heavy as its neighbors. The default value is 1. + /// 返回特定模拟粒子的质量倍增器。该值可用于增加或减少绳子部分的重量。 + /// 值为0将使粒子不可移动。值为2将使粒子比其邻居重两倍。默认值为1。 /// - /// The index of the simulation particle - /// The mass multiplier + /// 模拟粒子的索引 + /// 质量倍增器 public float GetMassMultiplierAt(int particleIndex) { if (!Initialize() || particleIndex < 0 || particleIndex >= positions.Length) { return 0.0f; } + CompletePreviousSimulationFrame(); return massMultipliers[particleIndex]; } /// - /// Sets the mass multiplier of a particular simulation particle. This value can be used to increase or decrease - /// the weight of a section of the rope. A value of 0 will make the particle immovable. A value of 2 will make the - /// particle twice as heavy as its neighbors. The default value is 1. + /// 设置特定模拟粒子的质量倍增器。该值可用于增加或减少绳子部分的重量。 + /// 值为0将使粒子不可移动。值为2将使粒子比其邻居重两倍。默认值为1。 /// - /// The index of the simulation particle - /// The desired mass multiplier + /// 模拟粒子的索引 + /// 期望的质量倍增器 public void SetMassMultiplierAt(int particleIndex, float value) { if (!Initialize() || particleIndex < 0 || particleIndex >= positions.Length) { return; } + CompletePreviousSimulationFrame(); massMultipliers[particleIndex] = value; } /// - /// Finds the simulation particle closest to a particular point + /// 查找距离特定点最近的模拟粒子 /// - /// The point in world-space - /// The index of the closest simulation particle - /// The distance along the rope of the closest simulation particle in world-space + /// 世界空间中的点 + /// 最近的模拟粒子的索引 + /// 世界空间中最近的模拟粒子沿绳子的距离 public void GetClosestParticle(float3 point, out int particleIndex, out float distance) { if (!Initialize()) @@ -531,17 +498,18 @@ namespace RopeToolkit distance = 0.0f; return; } + CompletePreviousSimulationFrame(); positions.GetClosestPoint(point, out particleIndex, out distance); } /// - /// Finds the simulation particle closest to a particular ray + /// 查找距离特定射线最近的模拟粒子 /// - /// The ray in world-space - /// The index of the closest simulation particle - /// The distance along the rope of the closest simulation particle in world-space - /// The distance along the ray to the point on the ray that is closest to the simulation particle + /// 世界空间中的射线 + /// 最近的模拟粒子的索引 + /// 世界空间中最近的模拟粒子沿绳子的距离 + /// 沿射线到距离模拟粒子最近的点的距离 public void GetClosestParticle(Ray ray, out int particleIndex, out float distance, out float distanceAlongRay) { if (!Initialize()) @@ -551,26 +519,29 @@ namespace RopeToolkit distanceAlongRay = 0.0f; return; } + CompletePreviousSimulationFrame(); positions.GetClosestPoint(ray, out particleIndex, out distance, out distanceAlongRay); } /// - /// Registers a rigidbody connection for the next simulation frame. A rigidbody connection is a two-way coupling of a simulation particle - /// to a traditional rigidbody. Make sure to call this method from FixedUpdate(). Any simulation particle involved in a rigidbody connection - /// will get its mass multiplier reset to 1 at the end of the simulation frame. + /// 为下一个模拟帧注册刚体连接。刚体连接是模拟粒子到传统刚体的双向耦合。 + /// 确保从FixedUpdate()调用此方法。任何涉及刚体连接的模拟粒子将在模拟帧结束时将其质量倍增器重置为1。 /// - /// The index of the simulation particle to connect - /// The rigidbody to connect - /// The amount of damping to apply to the rigidbody in the range [0, 1] - /// The world-space point on the rigidbody to connect - /// The stiffness of the connection in the range [0, 1] - public void RegisterRigidbodyConnection(int particleIndex, Rigidbody rigidbody, float rigidbodyDamping, float3 pointOnBody, float stiffness) + /// 要连接的模拟粒子的索引 + /// 要连接的刚体 + /// 应用于刚体的阻尼量,范围[0, 1] + /// 刚体上要连接的世界空间点 + /// 连接的刚度,范围[0, 1] + public void RegisterRigidbodyConnection(int particleIndex, Rigidbody rigidbody, float rigidbodyDamping, + float3 pointOnBody, float stiffness) { - if (!Initialize() || particleIndex < 0 || particleIndex >= positions.Length || !enabled || !simulation.enabled) + if (!Initialize() || particleIndex < 0 || particleIndex >= positions.Length || !enabled || + !simulation.enabled) { return; } + queuedRigidbodyConnections.Add(new RigidbodyConnection() { rigidbody = rigidbody, @@ -585,8 +556,7 @@ namespace RopeToolkit } /// - /// Resets the rope to its original shape relative to the current transform. Useful when activating a pooled game object that is - /// deactivated and re-activated instead of destroyed and instantiated. + /// 将绳子重置为其相对于当前变换的原始形状。在激活被停用和重新激活而不是销毁和实例化的池化游戏对象时很有用。 /// public void ResetToSpawnCurve() { @@ -604,8 +574,7 @@ namespace RopeToolkit } /// - /// Computes the current length of the rope. In contrast to the measurements.realCurveLength field, this value includes the stretching - /// of the rope due to stress. + /// 计算绳子的当前长度。与measurements.realCurveLength字段相比,该值包括由于应力引起的绳子拉伸。 /// public float GetCurrentLength() { @@ -627,7 +596,7 @@ namespace RopeToolkit return null; } - // Create two spawn points that are roughly placed where the new rope will be (this will create nice bitangents) + // 创建两个大致放置在新绳子位置的生成点(这将创建漂亮的双切线) var targetLength = _measurements.realCurveLength * ((float)count / _measurements.particleCount); var point0 = positions[minIdx]; var point1 = positions[maxIdx]; @@ -646,7 +615,7 @@ namespace RopeToolkit if (rope.Initialize()) { - // Now update the simulation particles to exactly match those of the original rope + // 现在更新模拟粒子以完全匹配原始绳子 for (int i = 0; i < rope.positions.Length; i++) { var sourceIdx = minIdx + i; @@ -654,11 +623,12 @@ namespace RopeToolkit { break; } + rope.positions[i] = positions[sourceIdx]; rope.prevPositions[i] = prevPositions[sourceIdx]; } - // Make new rope the same size as old rope + // 使新绳子与旧绳子大小相同 rope._measurements.realCurveLength = rope.GetCurrentLength(); rope._measurements.particleSpacing = _measurements.particleSpacing; @@ -676,17 +646,18 @@ namespace RopeToolkit } /// - /// Splits the rope at a specific simulation particle and returns the rope components of the newly instantiated game objects. Make sure - /// that the supplied array has exactly 2 slots. A Unity message 'OnRopeSplit(Rope.OnSplitParams)' will be sent to each newly created rope. + /// 在特定模拟粒子处分割绳子并返回新实例化游戏对象的绳子组件。确保 + /// 提供的数组正好有2个槽位。将向每个新创建的绳子发送Unity消息'OnRopeSplit(Rope.OnSplitParams)'。 /// - /// The index of the simulation particle at which point to split - /// If not null, an array with exactly 2 elements where the new rope game objects will be returned + /// 分割点的模拟粒子索引 + /// 如果不为null,一个正好有2个元素的数组,其中将返回新的绳子游戏对象 public void SplitAt(int particleIndex, Rope[] outNewRopes = null) { if (!Initialize() || (outNewRopes != null && outNewRopes.Length != 2) || wasSplit) { return; } + wasSplit = true; var fst = InstantiateSplitRope(0, particleIndex, name + "_split0"); @@ -701,7 +672,8 @@ namespace RopeToolkit } } - protected void ComputeRealCurve(Allocator allocator, out Measurements measurements, out NativeArray points) + protected void ComputeRealCurve(Allocator allocator, out Measurements measurements, + out NativeArray points) { var localToWorld = (float4x4)transform.localToWorldMatrix; @@ -760,26 +732,27 @@ namespace RopeToolkit CompletePreviousSimulationFrame(); - // State + // 状态 positions.Dispose(); prevPositions.Dispose(); if (interpolatedPositions.IsCreated) { interpolatedPositions.Dispose(); } + bitangents.Dispose(); massMultipliers.Dispose(); - // Collision handling + // 碰撞处理 collisionPlanesActive.Dispose(); collisionPlanes.Dispose(); collisionRigidbodies = null; - // Rigidbody connections + // 刚体连接 particleTargets.Dispose(); particleTargetFeedbacks.Dispose(); - // Rendering + // 渲染 vertices.Dispose(); normals.Dispose(); cosLookup.Dispose(); @@ -794,13 +767,14 @@ namespace RopeToolkit { return true; } + if (!Application.isPlaying || spawnPoints.Count < 2) { - // Not designed for edit-mode execution + // 不适用于编辑模式执行 return false; } - // State + // 状态 ComputeRealCurve(Allocator.Persistent, out _measurements, out positions); prevPositions = new NativeArray(_measurements.particleCount, Allocator.Persistent); @@ -824,6 +798,7 @@ namespace RopeToolkit { bitangent = math.normalizesafe(math.cross(up + new float3(0.0f, 0.0f, -1.0f), tangent)); } + bitangents[i] = bitangent; up = math.cross(tangent, bitangent); @@ -841,18 +816,20 @@ namespace RopeToolkit massMultipliers[i] = 1.0f; } - // Collision handling + // 碰撞处理 collisionPlanesActive = new NativeArray(_measurements.particleCount, Allocator.Persistent); - collisionPlanes = new NativeArray(_measurements.particleCount * MaxCollisionPlanesPerParticle, Allocator.Persistent); + collisionPlanes = + new NativeArray(_measurements.particleCount * MaxCollisionPlanesPerParticle, + Allocator.Persistent); collisionRigidbodies = new Rigidbody[collisionPlanes.Length]; - // Rigidbody connections + // 刚体连接 queuedRigidbodyConnections = new List(); liveRigidbodyConnections = new List(); particleTargets = new NativeArray(InitialParticleTargets, Allocator.Persistent); particleTargetFeedbacks = new NativeArray(InitialParticleTargets, Allocator.Persistent); - // Rendering + // 渲染 vertices = new NativeArray(_measurements.particleCount * radialVertices, Allocator.Persistent); normals = new NativeArray(vertices.Length, Allocator.Persistent); cosLookup = new NativeArray(radialVertices, Allocator.Persistent); @@ -865,7 +842,7 @@ namespace RopeToolkit sinLookup[i] = Mathf.Sin(angle); } - // Note that triangles and uvs are unchanged after mesh creation + // 注意,网格创建后三角形和uv保持不变 var triangleParticleMax = isLoop ? _measurements.particleCount : _measurements.particleCount - 1; var radialTriangleCount = triangleParticleMax * (radialVertices - 1) * 2 * 3; var capTriangleCount = isLoop ? 0 : 2 * (radialVertices - 3) * 3; @@ -893,6 +870,7 @@ namespace RopeToolkit triangles[idx++] = v3; } } + if (!isLoop) { for (int i = 1; i < radialVertices - 2; i++) @@ -901,6 +879,7 @@ namespace RopeToolkit triangles[idx++] = i + 1; triangles[idx++] = i; } + int vertexOffset = triangleParticleMax * radialVertices; for (int i = 1; i < radialVertices - 2; i++) { @@ -966,20 +945,23 @@ namespace RopeToolkit { collisionRigidbodies[i * MaxCollisionPlanesPerParticle + j] = null; } + continue; } var planeCount = 0; - // Use projected positions for the next frame + // 使用下一帧的投影位置 var pos = positions[i]; var prevPos = prevPositions[i]; var vel = pos - prevPos; prevPos = pos; pos += vel; - // Check for overlap - var hitCount = Physics.OverlapSphereNonAlloc(pos, extendedRadius, collisionQueryBuffer, layerMask); // use a slightly larger sphere to catch more collisions + // 检查重叠 + var hitCount = + Physics.OverlapSphereNonAlloc(pos, extendedRadius, collisionQueryBuffer, + layerMask); // 使用稍大的球体来捕获更多碰撞 for (int j = 0; j < hitCount && planeCount < MaxCollisionPlanesPerParticle; j++) { var collider = collisionQueryBuffer[j]; @@ -990,7 +972,8 @@ namespace RopeToolkit collider is CapsuleCollider || (meshCollider != null && meshCollider.convex)) { - var closestPoint = (float3)Physics.ClosestPoint(pos, collider, collider.transform.position, collider.transform.rotation); + var closestPoint = (float3)Physics.ClosestPoint(pos, collider, collider.transform.position, + collider.transform.rotation); var normal = math.normalizesafe(pos - closestPoint); if (math.all(normal == float3.zero)) @@ -1006,12 +989,13 @@ namespace RopeToolkit ? (float3)collider.attachedRigidbody.GetPointVelocity(closestPoint) * deltaTime : float3.zero, }; - collisionRigidbodies[i * MaxCollisionPlanesPerParticle + planeCount] = collider.attachedRigidbody; + collisionRigidbodies[i * MaxCollisionPlanesPerParticle + planeCount] = + collider.attachedRigidbody; planeCount++; } } - // Check fast movements + // 检查快速移动 if (planeCount < MaxCollisionPlanesPerParticle) { var movementSq = math.lengthsq(vel); @@ -1051,8 +1035,8 @@ namespace RopeToolkit if (liveRigidbodyConnections.Count > MaxRigidbodyConnections) { Debug.LogWarning( - $"Encountered too many live rigid body connections ({liveRigidbodyConnections.Count}) this frame. " + - $"Limiting enforcement to the max value ({MaxRigidbodyConnections}) to avoid a performance drop..."); + $"本帧遇到过多的活动刚体连接({liveRigidbodyConnections.Count})。" + + $"限制执行到最大值({MaxRigidbodyConnections})以避免性能下降..."); } else { @@ -1078,7 +1062,7 @@ namespace RopeToolkit particleTargets[i] = c.target; - // Make particle immovable if rigidbody is kinematic + // 如果刚体是运动学的,则使粒子不可移动 if (c.rigidbody && c.rigidbody.isKinematic) { massMultipliers[c.target.particleIndex] = 0.0f; @@ -1103,7 +1087,7 @@ namespace RopeToolkit var particleMass = simulation.massPerMeter * _measurements.realCurveLength / _measurements.particleCount; var invDtAndSim = 1.0f / (Time.fixedDeltaTime * simulation.substeps * simulation.solverIterations); - // Collisions + // 碰撞 if (collisions.enabled && collisions.influenceRigidbodies) { for (int i = 0; i < collisionPlanesActive.Length; i++) @@ -1127,7 +1111,7 @@ namespace RopeToolkit } } - // Connections + // 连接 if (liveRigidbodyConnections.Count > 0) { var iterationCount = math.min(liveRigidbodyConnections.Count, particleTargetFeedbacks.Length); @@ -1136,7 +1120,7 @@ namespace RopeToolkit { var c = liveRigidbodyConnections[i]; - // Apply impulse + // 应用冲量 if (c.rigidbody) { float3 impulse = particleTargetFeedbacks[i] * (particleMass * invDtAndSim); @@ -1149,7 +1133,7 @@ namespace RopeToolkit } } - // Reset particle mass multiplier (may have changed if body was kinematic) + // 重置粒子质量倍增器(如果身体是运动学的可能已更改) massMultipliers[c.target.particleIndex] = 1.0f; } @@ -1211,7 +1195,7 @@ namespace RopeToolkit } else { - // OutputVerticesJob must happen after interpolation, and interpolation happens in Update(), not FixedUpdate() + // OutputVerticesJob必须在插值之后发生,而插值发生在Update()中,而不是FixedUpdate() simulationFrameHandle = simulate; } @@ -1297,7 +1281,9 @@ namespace RopeToolkit Profiler.EndSample(); } - protected static void FillMeshFrames(ref NativeArray positions, ref NativeArray bitangents, Matrix4x4[] meshFrames, float spacing, bool isLoop, float rotationOffset, Vector3 scaleMultiplier, bool stretch) + protected static void FillMeshFrames(ref NativeArray positions, ref NativeArray bitangents, + Matrix4x4[] meshFrames, float spacing, bool isLoop, float rotationOffset, Vector3 scaleMultiplier, + bool stretch) { var scale = scaleMultiplier * 0.5f * spacing; if (stretch) @@ -1306,7 +1292,7 @@ namespace RopeToolkit } var currentRotation = 0.0f; - for (var i = 0; i < positions.Length; i++) // use the positions array here and hope that the compiler optimizes away bounds checking... + for (var i = 0; i < positions.Length; i++) // 在这里使用positions数组,希望编译器能优化掉边界检查... { var tangent = Vector3.zero; if (isLoop) @@ -1319,12 +1305,14 @@ namespace RopeToolkit ? positions[i + 1] - positions[i] : positions[i] - positions[i - 1]; } + var frameScale = stretch ? new Vector3(scale.x, scale.y, scale.z * tangent.magnitude) : scale; tangent.Normalize(); - var frameRotation = Quaternion.LookRotation(tangent, bitangents[i]) * Quaternion.Euler(0.0f, 0.0f, currentRotation); + var frameRotation = Quaternion.LookRotation(tangent, bitangents[i]) * + Quaternion.Euler(0.0f, 0.0f, currentRotation); currentRotation += rotationOffset; customMeshFrames[i] = Matrix4x4.TRS(positions[i], frameRotation, frameScale); @@ -1341,54 +1329,16 @@ namespace RopeToolkit } Profiler.BeginSample(nameof(SubmitToRenderer)); - - if (customMesh.mesh == null) + + // 默认绳子圆柱体 + if (simulation.enabled) { - // Default rope cylinder - if (simulation.enabled) - { - mesh.SetVertices(vertices); - mesh.SetNormals(normals); - mesh.RecalculateBounds(); - } - - Graphics.DrawMesh(mesh, Matrix4x4.identity, material, gameObject.layer, null, 0, null, shadowMode); + mesh.SetVertices(vertices); + mesh.SetNormals(normals); + mesh.RecalculateBounds(); } - else - { - // Custom mesh at each simulation particle - if (customMeshFrames == null || customMeshFrames.Length < positions.Length) - { - customMeshFrames = new Matrix4x4[positions.Length]; - } - if (interpolation == RopeInterpolation.None) - { - FillMeshFrames( - ref positions, - ref bitangents, - customMeshFrames, - _measurements.particleSpacing, - isLoop, - customMesh.rotation, - customMesh.scale, - customMesh.stretch); - } - else - { - FillMeshFrames( - ref interpolatedPositions, - ref bitangents, - customMeshFrames, - _measurements.particleSpacing, - isLoop, - customMesh.rotation, - customMesh.scale, - customMesh.stretch); - } - - Graphics.DrawMeshInstanced(customMesh.mesh, 0, material, customMeshFrames, positions.Length, null, shadowMode, true, gameObject.layer); - } + Graphics.DrawMesh(mesh, Matrix4x4.identity, material, gameObject.layer, null, 0, null, shadowMode); Profiler.EndSample(); } @@ -1401,24 +1351,26 @@ namespace RopeToolkit { return; } + if (!simulation.enabled) { simulationDisabledPrevFrame = true; return; } - CompletePreviousSimulationFrame(); // fixed update might run several times per rendered frame + CompletePreviousSimulationFrame(); // 固定更新可能在每个渲染帧中运行多次 if (simulationDisabledPrevFrame) { queuedRigidbodyConnections.Clear(); liveRigidbodyConnections.Clear(); } + simulationDisabledPrevFrame = false; transform.position = positions[0]; - ApplyRigidbodyFeedback(); // from previous frame + ApplyRigidbodyFeedback(); // 来自前一帧 UpdateCollisionPlanes(); @@ -1461,6 +1413,7 @@ namespace RopeToolkit { Gizmos.DrawLine(points[i], points[i + 1]); } + if (isLoop && points.Length > 1) { Gizmos.DrawLine(points[points.Length - 1], points[0]); @@ -1478,6 +1431,7 @@ namespace RopeToolkit { Gizmos.color = Colors.simulationParticle; } + Gizmos.DrawSphere(points[i], radius); } } @@ -1505,19 +1459,19 @@ namespace RopeToolkit [ReadOnly] public float3 externalAcceleration; [ReadOnly] public float energyKept; - // State + // 状态 public NativeArray positions; public NativeArray prevPositions; [ReadOnly] public NativeArray massMultipliers; - // Shape + // 形状 [ReadOnly] public bool isLoop; [ReadOnly] public int substeps; [ReadOnly] public int solverIterations; [ReadOnly] public float stiffness; [ReadOnly] public float desiredSpacing; - // Collision handling + // 碰撞处理 [ReadOnly] public bool collisionsEnabled; [ReadOnly] public float radius; [ReadOnly] public float friction; @@ -1525,19 +1479,19 @@ namespace RopeToolkit [ReadOnly] public NativeArray collisionPlanesActive; public NativeArray collisionPlanes; - // Rigidbody attachments + // 刚体附件 [ReadOnly] public NativeArray particleTargets; public NativeArray particleTargetFeedbacks; public void Execute() { - // Prepare for simulation + // 准备模拟 for (int i = 0; i < particleTargetFeedbacks.Length; i++) { particleTargetFeedbacks[i] = float3.zero; } - // Simulate + // 模拟 float dt = deltaTime / substeps; float invDt = 1.0f / dt; bool forwardSolve = true; @@ -1567,8 +1521,8 @@ namespace RopeToolkit { int loopCount = isLoop ? positions.Length : positions.Length - 1; - // Apply stick constraints - if (forwardSolve) // alternate solving forwards and backwards to balance out errors + // 应用杆约束 + if (forwardSolve) // 交替向前和向后求解以平衡误差 { for (int i = 0; i < loopCount; i++) { @@ -1582,9 +1536,10 @@ namespace RopeToolkit ApplyStickConstraint(i, (i + 1) % positions.Length); } } + forwardSolve = !forwardSolve; - // Apply collision constraints + // 应用碰撞约束 if (collisionsEnabled) { for (int i = 0; i < positions.Length; i++) @@ -1599,7 +1554,7 @@ namespace RopeToolkit } } - // Apply rigidbody connections + // 应用刚体连接 for (int i = 0; i < particleTargets.Length; i++) { var target = particleTargets[i]; @@ -1636,11 +1591,13 @@ namespace RopeToolkit { w0 = 1.0f / w0; } + var w1 = massMultipliers[idx1]; if (w1 > 0.0f) { w1 = 1.0f / w1; } + var invSumW = w0 + w1; if (invSumW > 0.0f) { @@ -1661,7 +1618,7 @@ namespace RopeToolkit positions[idx] += correction; plane.feedback -= correction * massMultipliers[idx]; - // Friction + // 摩擦 var delta = (positions[idx] - prevPositions[idx]) - plane.velocityChange; var length = math.lengthsq(delta); if (length > 0.0f) @@ -1669,6 +1626,7 @@ namespace RopeToolkit length = math.sqrt(length); delta /= length; } + prevPositions[idx] += delta * math.min(depth * friction, length); } } @@ -1738,7 +1696,7 @@ namespace RopeToolkit { var last = positions.Length - 1; - // Diffuse bitangents + // 扩散双切线 var smoothedBitangents = new NativeArray(bitangents.Length, Allocator.Temp); smoothedBitangents[0] = bitangents[0] + bitangents[1]; @@ -1746,17 +1704,19 @@ namespace RopeToolkit { smoothedBitangents[0] += bitangents[last]; } + for (int i = 1; i < bitangents.Length - 1; i++) { smoothedBitangents[i] = bitangents[i - 1] + bitangents[i] + bitangents[i + 1]; } + smoothedBitangents[last] = bitangents[last - 1] + bitangents[last]; if (isLoop) { smoothedBitangents[last] += bitangents[0]; } - // Re-normalize bitangents + // 重新标准化双切线 for (int i = 0; i < bitangents.Length; i++) { var tangent = positions[(i + 1) % positions.Length] - positions[i]; @@ -1764,12 +1724,13 @@ namespace RopeToolkit bitangents[i] = math.normalizesafe(math.cross(normal, tangent)); } + if (!isLoop) { bitangents[last] = bitangents[last - 1]; } - // Set vertices + // 设置顶点 for (int i = 0; i < positions.Length; i++) { var tangent = float3.zero; @@ -1783,6 +1744,7 @@ namespace RopeToolkit ? positions[i + 1] - positions[i] : positions[i] - positions[i - 1]; } + var bitangent = bitangents[i]; var normal = math.normalizesafe(math.cross(tangent, bitangent)); @@ -1796,4 +1758,4 @@ namespace RopeToolkit } } } -} +} \ No newline at end of file diff --git a/Assets/Toolkits/Rope/Rope.cs.meta b/Assets/Scripts/ThirdParty/Rope/Rope.cs.meta similarity index 100% rename from Assets/Toolkits/Rope/Rope.cs.meta rename to Assets/Scripts/ThirdParty/Rope/Rope.cs.meta diff --git a/Assets/Toolkits/Rope/RopeConnection.cs b/Assets/Scripts/ThirdParty/Rope/RopeConnection.cs similarity index 99% rename from Assets/Toolkits/Rope/RopeConnection.cs rename to Assets/Scripts/ThirdParty/Rope/RopeConnection.cs index 7c8609822..c263d03f2 100644 --- a/Assets/Toolkits/Rope/RopeConnection.cs +++ b/Assets/Scripts/ThirdParty/Rope/RopeConnection.cs @@ -1,7 +1,7 @@ using UnityEngine; using Unity.Mathematics; -namespace RopeToolkit +namespace NBF { public enum RopeConnectionType : int { diff --git a/Assets/Toolkits/Rope/RopeConnection.cs.meta b/Assets/Scripts/ThirdParty/Rope/RopeConnection.cs.meta similarity index 100% rename from Assets/Toolkits/Rope/RopeConnection.cs.meta rename to Assets/Scripts/ThirdParty/Rope/RopeConnection.cs.meta diff --git a/Assets/Toolkits.meta b/Assets/Toolkits.meta deleted file mode 100644 index a982f01ef..000000000 --- a/Assets/Toolkits.meta +++ /dev/null @@ -1,8 +0,0 @@ -fileFormatVersion: 2 -guid: 3c80fb16709723342aee1516c61c20e8 -folderAsset: yes -DefaultImporter: - externalObjects: {} - userData: - assetBundleName: - assetBundleVariant: diff --git a/UserSettings/EditorUserSettings.asset b/UserSettings/EditorUserSettings.asset index 328e060b3..2ec8c451b 100644 --- a/UserSettings/EditorUserSettings.asset +++ b/UserSettings/EditorUserSettings.asset @@ -30,14 +30,14 @@ EditorUserSettings: value: 0007065353055f0c0c0b5f2347725c44474f402e7878756629711f62e6b6606b flags: 0 RecentlyUsedSceneGuid-7: - value: 505203005253585d5e5d0f7515715a4447164e7d2e707e657a7c4863b7b2313d - flags: 0 - RecentlyUsedSceneGuid-8: value: 0108010453510c585c5b0d711677074613154f787d702561797f4b67e1b4656d flags: 0 - RecentlyUsedSceneGuid-9: + RecentlyUsedSceneGuid-8: value: 5102010054540a0e555c5d7615775a48171648737d792533752a1c31bab4603d flags: 0 + RecentlyUsedSceneGuid-9: + value: 505203005253585d5e5d0f7515715a4447164e7d2e707e657a7c4863b7b2313d + flags: 0 UnityEditor.ShaderGraph.Blackboard: value: 18135939215a0a5004000b0e15254b524c030a3f2964643d120d1230e9e93a3fd6e826abbd2e2d293c4ead313b08042de6030a0afa240c0d020be94c4ba75e435d8715fa32c70d15d11612dacc11fee5d3c5d1fe9ab1bf968e93e2ffcbc3e7e2f0b3ffe0e8b0be9afeffa9ffff8e85dd8390e2969e8899daa7 flags: 0