From 8e495fdf6e3772ba365082a209062e53cc3dfcab Mon Sep 17 00:00:00 2001 From: imo Date: Fri, 7 Aug 2026 16:11:17 +0900 Subject: [PATCH 1/3] =?UTF-8?q?Unity=206.5=E3=81=A7GetInstanceID=E3=81=8C?= =?UTF-8?q?=E5=89=8A=E9=99=A4=E3=81=95=E3=82=8C=E3=82=8B=E3=81=9F=E3=82=81?= =?UTF-8?q?EntityId=E3=81=B8=E7=A7=BB=E8=A1=8C?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Unity 6.4でObject.GetInstanceID()がdeprecatedになり、6.5では コンパイルエラーになるため、UNITY_6000_4_OR_NEWERで GetEntityId()/EntityIdキーに切り替える。6.3以前は従来どおり GetInstanceID()/intを使うので挙動は変わらない。 Co-Authored-By: Claude Fable 5 --- .../Runtime/Core/Modal/ModalContainer.cs | 13 +++++++++++-- .../Runtime/Core/Page/PageContainer.cs | 13 +++++++++++-- .../Runtime/Core/Sheet/SheetContainer.cs | 15 ++++++++++++--- 3 files changed, 34 insertions(+), 7 deletions(-) diff --git a/Assets/UnityScreenNavigator/Runtime/Core/Modal/ModalContainer.cs b/Assets/UnityScreenNavigator/Runtime/Core/Modal/ModalContainer.cs index 225a8050..ce895d66 100644 --- a/Assets/UnityScreenNavigator/Runtime/Core/Modal/ModalContainer.cs +++ b/Assets/UnityScreenNavigator/Runtime/Core/Modal/ModalContainer.cs @@ -8,13 +8,18 @@ using UnityScreenNavigator.Runtime.Foundation; using UnityScreenNavigator.Runtime.Foundation.AssetLoader; using UnityScreenNavigator.Runtime.Foundation.Coroutine; +#if UNITY_6000_4_OR_NEWER +using TransformId = UnityEngine.EntityId; +#else +using TransformId = System.Int32; +#endif namespace UnityScreenNavigator.Runtime.Core.Modal { [RequireComponent(typeof(RectMask2D))] public sealed class ModalContainer : MonoBehaviour, IScreenContainer { - private static readonly Dictionary InstanceCacheByTransform = new(); + private static readonly Dictionary InstanceCacheByTransform = new(); private static readonly Dictionary InstanceCacheByName = new(); @@ -101,7 +106,7 @@ private void OnDestroy() _orderedModalIds.Clear(); InstanceCacheByName.Remove(_name); - var keysToRemove = new List(); + var keysToRemove = new List(); foreach (var cache in InstanceCacheByTransform) if (Equals(cache.Value)) keysToRemove.Add(cache.Key); @@ -141,7 +146,11 @@ public static ModalContainer Of(Transform transform, bool useCache = true) /// public static ModalContainer Of(RectTransform rectTransform, bool useCache = true) { +#if UNITY_6000_4_OR_NEWER + var id = rectTransform.GetEntityId(); +#else var id = rectTransform.GetInstanceID(); +#endif if (useCache && InstanceCacheByTransform.TryGetValue(id, out var container)) return container; container = rectTransform.GetComponentInParent(); diff --git a/Assets/UnityScreenNavigator/Runtime/Core/Page/PageContainer.cs b/Assets/UnityScreenNavigator/Runtime/Core/Page/PageContainer.cs index 700d86a2..5a595785 100644 --- a/Assets/UnityScreenNavigator/Runtime/Core/Page/PageContainer.cs +++ b/Assets/UnityScreenNavigator/Runtime/Core/Page/PageContainer.cs @@ -8,13 +8,18 @@ using UnityScreenNavigator.Runtime.Foundation; using UnityScreenNavigator.Runtime.Foundation.AssetLoader; using UnityScreenNavigator.Runtime.Foundation.Coroutine; +#if UNITY_6000_4_OR_NEWER +using TransformId = UnityEngine.EntityId; +#else +using TransformId = System.Int32; +#endif namespace UnityScreenNavigator.Runtime.Core.Page { [RequireComponent(typeof(RectMask2D))] public sealed class PageContainer : MonoBehaviour, IScreenContainer { - private static readonly Dictionary InstanceCacheByTransform = new(); + private static readonly Dictionary InstanceCacheByTransform = new(); private static readonly Dictionary InstanceCacheByName = new(); @@ -90,7 +95,7 @@ private void OnDestroy() _orderedPageIds.Clear(); InstanceCacheByName.Remove(_name); - var keysToRemove = new List(); + var keysToRemove = new List(); foreach (var cache in InstanceCacheByTransform) if (Equals(cache.Value)) keysToRemove.Add(cache.Key); @@ -130,7 +135,11 @@ public static PageContainer Of(Transform transform, bool useCache = true) /// public static PageContainer Of(RectTransform rectTransform, bool useCache = true) { +#if UNITY_6000_4_OR_NEWER + var id = rectTransform.GetEntityId(); +#else var id = rectTransform.GetInstanceID(); +#endif if (useCache && InstanceCacheByTransform.TryGetValue(id, out var container)) return container; container = rectTransform.GetComponentInParent(); diff --git a/Assets/UnityScreenNavigator/Runtime/Core/Sheet/SheetContainer.cs b/Assets/UnityScreenNavigator/Runtime/Core/Sheet/SheetContainer.cs index e3f0ba55..78a549e5 100644 --- a/Assets/UnityScreenNavigator/Runtime/Core/Sheet/SheetContainer.cs +++ b/Assets/UnityScreenNavigator/Runtime/Core/Sheet/SheetContainer.cs @@ -8,14 +8,19 @@ using UnityScreenNavigator.Runtime.Foundation; using UnityScreenNavigator.Runtime.Foundation.AssetLoader; using UnityScreenNavigator.Runtime.Foundation.Coroutine; +#if UNITY_6000_4_OR_NEWER +using TransformId = UnityEngine.EntityId; +#else +using TransformId = System.Int32; +#endif namespace UnityScreenNavigator.Runtime.Core.Sheet { [RequireComponent(typeof(RectMask2D))] public sealed class SheetContainer : MonoBehaviour, IScreenContainer { - private static readonly Dictionary InstanceCacheByTransform = - new Dictionary(); + private static readonly Dictionary InstanceCacheByTransform = + new Dictionary(); private static readonly Dictionary InstanceCacheByName = new Dictionary(); @@ -94,7 +99,7 @@ private void OnDestroy() UnregisterAll(); InstanceCacheByName.Remove(_name); - var keysToRemove = new List(); + var keysToRemove = new List(); foreach (var cache in InstanceCacheByTransform) if (Equals(cache.Value)) keysToRemove.Add(cache.Key); @@ -123,7 +128,11 @@ public static SheetContainer Of(Transform transform, bool useCache = true) /// public static SheetContainer Of(RectTransform rectTransform, bool useCache = true) { +#if UNITY_6000_4_OR_NEWER + var hashCode = rectTransform.GetEntityId(); +#else var hashCode = rectTransform.GetInstanceID(); +#endif if (useCache && InstanceCacheByTransform.TryGetValue(hashCode, out var container)) return container; From a37786ffd4eacdb8110174702b25ece233a611d0 Mon Sep 17 00:00:00 2001 From: imo Date: Fri, 7 Aug 2026 16:11:17 +0900 Subject: [PATCH 2/3] =?UTF-8?q?UniTask=E3=82=922.5.11=E3=81=AB=E6=9B=B4?= =?UTF-8?q?=E6=96=B0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Unity 6.5でUniTaskのEditor拡張(UniTaskTrackerTreeView)が TreeView系APIのobsoleteエラーでコンパイル不能になる。 修正が入った2.5.11にピン留めする。 Co-Authored-By: Claude Fable 5 --- Packages/manifest.json | 2 +- Packages/packages-lock.json | 6 +++--- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/Packages/manifest.json b/Packages/manifest.json index cfad2605..6167320c 100644 --- a/Packages/manifest.json +++ b/Packages/manifest.json @@ -1,6 +1,6 @@ { "dependencies": { - "com.cysharp.unitask": "https://github.com/Cysharp/UniTask.git?path=src/UniTask/Assets/Plugins/UniTask", + "com.cysharp.unitask": "https://github.com/Cysharp/UniTask.git?path=src/UniTask/Assets/Plugins/UniTask#2.5.11", "com.harumak.unityuiplayables": "https://github.com/Haruma-K/UnityUIPlayables.git?path=/Assets/UnityUIPlayables", "com.neuecc.unirx": "https://github.com/neuecc/UniRx.git?path=Assets/Plugins/UniRx/Scripts", "com.unity.2d.sprite": "1.0.0", diff --git a/Packages/packages-lock.json b/Packages/packages-lock.json index 37449f2b..9dc25345 100644 --- a/Packages/packages-lock.json +++ b/Packages/packages-lock.json @@ -1,11 +1,11 @@ { "dependencies": { "com.cysharp.unitask": { - "version": "https://github.com/Cysharp/UniTask.git?path=src/UniTask/Assets/Plugins/UniTask", + "version": "https://github.com/Cysharp/UniTask.git?path=src/UniTask/Assets/Plugins/UniTask#2.5.11", "depth": 0, "source": "git", "dependencies": {}, - "hash": "66de0d3a58b256b6e0194f285cc530fd0c08407b" + "hash": "2e993ff18f28c931602a07292df0b0804eebef99" }, "com.harumak.unityuiplayables": { "version": "https://github.com/Haruma-K/UnityUIPlayables.git?path=/Assets/UnityUIPlayables", @@ -115,9 +115,9 @@ "depth": 0, "source": "registry", "dependencies": { + "com.unity.modules.audio": "1.0.0", "com.unity.modules.director": "1.0.0", "com.unity.modules.animation": "1.0.0", - "com.unity.modules.audio": "1.0.0", "com.unity.modules.particlesystem": "1.0.0" }, "url": "https://packages.unity.com" From d9bbfb6e481017ac5908f3c7d21442a01bd18931 Mon Sep 17 00:00:00 2001 From: imo Date: Fri, 7 Aug 2026 16:31:06 +0900 Subject: [PATCH 3/3] =?UTF-8?q?UniTask=E3=81=AE=E3=83=90=E3=83=BC=E3=82=B8?= =?UTF-8?q?=E3=83=A7=E3=83=B3=E5=9B=BA=E5=AE=9A=E3=82=92=E8=A7=A3=E9=99=A4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit manifestの#2.5.11ピンを外し、従来どおりブランチ追従に戻す。 lockはUnityで再解決したmaster(ceac8d6)で、Unity 6.5対応の TreeView修正(0d304f1)は含まれている。 Co-Authored-By: Claude Fable 5 --- Packages/manifest.json | 2 +- Packages/packages-lock.json | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/Packages/manifest.json b/Packages/manifest.json index 6167320c..cfad2605 100644 --- a/Packages/manifest.json +++ b/Packages/manifest.json @@ -1,6 +1,6 @@ { "dependencies": { - "com.cysharp.unitask": "https://github.com/Cysharp/UniTask.git?path=src/UniTask/Assets/Plugins/UniTask#2.5.11", + "com.cysharp.unitask": "https://github.com/Cysharp/UniTask.git?path=src/UniTask/Assets/Plugins/UniTask", "com.harumak.unityuiplayables": "https://github.com/Haruma-K/UnityUIPlayables.git?path=/Assets/UnityUIPlayables", "com.neuecc.unirx": "https://github.com/neuecc/UniRx.git?path=Assets/Plugins/UniRx/Scripts", "com.unity.2d.sprite": "1.0.0", diff --git a/Packages/packages-lock.json b/Packages/packages-lock.json index 9dc25345..cabecb73 100644 --- a/Packages/packages-lock.json +++ b/Packages/packages-lock.json @@ -1,11 +1,11 @@ { "dependencies": { "com.cysharp.unitask": { - "version": "https://github.com/Cysharp/UniTask.git?path=src/UniTask/Assets/Plugins/UniTask#2.5.11", + "version": "https://github.com/Cysharp/UniTask.git?path=src/UniTask/Assets/Plugins/UniTask", "depth": 0, "source": "git", "dependencies": {}, - "hash": "2e993ff18f28c931602a07292df0b0804eebef99" + "hash": "ceac8d6946b1125fe782cd171fbcb245b567dbf9" }, "com.harumak.unityuiplayables": { "version": "https://github.com/Haruma-K/UnityUIPlayables.git?path=/Assets/UnityUIPlayables",