diff --git a/Assets/Convention b/Assets/Convention index c12d4a3..32f0038 160000 --- a/Assets/Convention +++ b/Assets/Convention @@ -1 +1 @@ -Subproject commit c12d4a375443062dcef9a6ed204e253b38062b9f +Subproject commit 32f0038e343a20a750f068f0121021d6d9a1ea02 diff --git a/Assets/Scripts/Framework/EditiorContent/EditorController.cs b/Assets/Scripts/Framework/EditiorContent/EditorController.cs index e4b912f..171e895 100644 --- a/Assets/Scripts/Framework/EditiorContent/EditorController.cs +++ b/Assets/Scripts/Framework/EditiorContent/EditorController.cs @@ -378,6 +378,7 @@ namespace Demo.Editor private void RegisterVariableGenerater() { // Generate Framework + Debug.Log(nameof(RegisterVariableGenerater), this); var generaters = DefaultInstantiate.GetScriptableObjectInstantiate(); foreach (var asm in AppDomain.CurrentDomain.GetAssemblies()) { @@ -420,7 +421,7 @@ namespace Demo.Editor helperHeaderDir.MustExistsPath(); foreach (var (name, variable) in Convention.RScript.Variable.RScriptInjectVariableGenerater.AllRScriptInjectVariables) { - (helperHeaderDir | name).SaveAsText(variable.scriptIndicator); + (helperHeaderDir | name.Replace('<', '[').Replace('>', ']')).SaveAsText(variable.scriptIndicator); } // Reset diff --git a/Assets/Scripts/Framework/ScriptableObject.cs b/Assets/Scripts/Framework/ScriptableObject.cs index 3f77aac..ea03668 100644 --- a/Assets/Scripts/Framework/ScriptableObject.cs +++ b/Assets/Scripts/Framework/ScriptableObject.cs @@ -175,12 +175,12 @@ namespace Demo /// public partial class ScriptableObject { - public readonly Dictionary ScriptableObjectContents = new(); + private NativeHashMap ScriptableObjectContents; [Convention.RScript.Variable.Attr.Method] public float GetContent(string key) { - if (ScriptableObjectContents.TryGetValue(key, out var result)) + if (ScriptableObjectContents.IsCreated && ScriptableObjectContents.TryGetValue(key.GetHashCode(), out var result)) { return result; } @@ -190,7 +190,11 @@ namespace Demo [Convention.RScript.Variable.Attr.Method] public float SetContent(string key, float value) { - ScriptableObjectContents[key] = value; + if (ScriptableObjectContents.IsCreated == false) + { + ScriptableObjectContents = new(8, AllocatorManager.Persistent); + } + ScriptableObjectContents[key.GetHashCode()] = value; return value; } } @@ -315,7 +319,12 @@ namespace Demo } this.Parent = parent; if (parent != null) - this.ScriptableObjectContents.AddRange(parent.ScriptableObjectContents); + { + foreach (var item in parent.ScriptableObjectContents) + { + this.ScriptableObjectContents[item.Key] = item.Value; + } + } this.name = ScriptName; @@ -603,7 +612,7 @@ namespace Demo } // 释放资源 { - this.ScriptableObjectContents.Clear(); + this.ScriptableObjectContents.Dispose(); } IsScriptApply = true; } diff --git a/Assets/Scripts/Framework/[RScript] b/Assets/Scripts/Framework/[RScript] index 0a7f6eb..249a2f9 160000 --- a/Assets/Scripts/Framework/[RScript] +++ b/Assets/Scripts/Framework/[RScript] @@ -1 +1 @@ -Subproject commit 0a7f6eb3625cc82e92aa949549d834cc4121f614 +Subproject commit 249a2f9ce36add06f13ca62b20a54ca23144398d diff --git a/Assets/Settings/Build Profiles/Windows.asset b/Assets/Settings/Build Profiles/Windows.asset index fc00a87..54ed7f4 100644 --- a/Assets/Settings/Build Profiles/Windows.asset +++ b/Assets/Settings/Build Profiles/Windows.asset @@ -35,7 +35,7 @@ MonoBehaviour: - line: '| useOnDemandResources: 0' - line: '| accelerometerFrequency: 60' - line: '| companyName: LiuBai' - - line: '| productName: Murmur-Resonance-Editor' + - line: '| productName: ScriptableObject-Editor' - line: '| defaultCursor: {instanceID: 0}' - line: '| cursorHotspot: {x: 0, y: 0}' - line: '| m_SplashScreenBackgroundColor: {r: 0.13725491, g: 0.12156863, b: @@ -165,7 +165,7 @@ MonoBehaviour: - line: '| loadStoreDebugModeEnabled: 0' - line: '| visionOSBundleVersion: 1.0' - line: '| tvOSBundleVersion: 1.0' - - line: '| bundleVersion: 1.0' + - line: '| bundleVersion: 1.1' - line: '| preloadedAssets:' - line: '| - {instanceID: 0}' - line: '| - {instanceID: 0}' @@ -1139,9 +1139,9 @@ MonoBehaviour: - rid: 4324738286741356696 type: {class: WindowsPlatformSettings, ns: UnityEditor.WindowsStandalone, asm: UnityEditor.WindowsStandalone.Extensions} data: - m_Development: 0 + m_Development: 1 m_ConnectProfiler: 0 - m_BuildWithDeepProfilingSupport: 0 + m_BuildWithDeepProfilingSupport: 1 m_AllowDebugging: 0 m_WaitForManagedDebugger: 0 m_ManagedDebuggerFixedPort: 0