お世話になっております。
大量のパラメータをExcelに登録しているのですが、Parameterビューをスクロールする際、スクロールバーの動作とParameterビューの表示が遅く(重たく)なって、下記のエラーや警告が表示されることがあります。
<エラー>
ArgumentException: GUILayout: Mismatched LayoutGroup.Repaint
UnityEngine.GUILayoutUtility.BeginLayoutGroup (UnityEngine.GUIStyle style, UnityEngine.GUILayoutOption[] options, System.Type layoutType) (at C:/buildslave/unity/build/Runtime/IMGUI/Managed/GUILayoutUtility.cs:268)
UnityEngine.GUILayout.BeginHorizontal (UnityEngine.GUIContent content, UnityEngine.GUIStyle style, UnityEngine.GUILayoutOption[] options) (at C:/buildslave/unity/build/Runtime/IMGUI/Managed/GUILayout.cs:282)
UnityEngine.GUILayout.BeginHorizontal (UnityEngine.GUILayoutOption[] options) (at C:/buildslave/unity/build/Runtime/IMGUI/Managed/GUILayout.cs:270)
Utage.AdvParamViewer.OnGuiStructArrayValues (System.String key, Utage.AdvParamStruct param) (at Assets/Utage/Editor/Scripts/Menu/Viewer/AdvParamViewer.cs:190)
Utage.AdvParamViewer+<OnGuiStructArray>c__AnonStorey3.<>m__1 (Int32 x) (at Assets/Utage/Editor/Scripts/Menu/Viewer/AdvParamViewer.cs:142)
Utage.OptimizedScrollView.OnGuiSub (Int32 itemCount, System.Action OnDrawHeader, System.Action`1 OnDrawItem) (at Assets/Utage/Editor/Scripts/Lib/Window/OptimizedScrollView.cs:77)
Utage.OptimizedScrollView+<OnGui>c__AnonStorey0.<>m__0 () (at Assets/Utage/Editor/Scripts/Lib/Window/OptimizedScrollView.cs:43)
Utage.UtageEditorToolKit.FoldoutGroup (System.Boolean& foldOunt, System.String name, System.Action OnGui) (at Assets/Utage/Editor/Scripts/Lib/Util/EdtiorToolKit.cs:120)
Utage.OptimizedScrollView.OnGui (Int32 itemCount, System.Action OnDrawHeader, System.Action`1 OnDrawItem) (at Assets/Utage/Editor/Scripts/Lib/Window/OptimizedScrollView.cs:43)
Utage.AdvParamViewer.OnGuiStructArray (System.String name, System.Collections.Generic.Dictionary`2 tbl) (at Assets/Utage/Editor/Scripts/Menu/Viewer/AdvParamViewer.cs:139)
Utage.AdvParamViewer.OnGuiStructArray (Utage.AdvEngine engine) (at Assets/Utage/Editor/Scripts/Menu/Viewer/AdvParamViewer.cs:127)
Utage.AdvParamViewer.OnGuiParam (Utage.AdvEngine engine) (at Assets/Utage/Editor/Scripts/Menu/Viewer/AdvParamViewer.cs:41)
Utage.AdvParamViewer.OnGUISub () (at Assets/Utage/Editor/Scripts/Menu/Viewer/AdvParamViewer.cs:31)
Utage.CustomEditorWindow.OnGUI () (at Assets/Utage/Editor/Scripts/Lib/Window/CustomEditorWindow.cs:40)
System.Reflection.MonoMethod.Invoke (System.Object obj, BindingFlags invokeAttr, System.Reflection.Binder binder, System.Object[] parameters, System.Globalization.CultureInfo culture) (at /Users/builduser/buildslave/mono/build/mcs/class/corlib/System.Reflection/MonoMethod.cs:222)
<警告>
Invalid AssetDatabase path: C:/buildslave/unity/build/Runtime/IMGUI/Managed/GUILayoutUtility.cs. Use path relative to the project folder.
UnityEditor.AssetDatabase:LoadAssetAtPath(String, Type)
FlyingWormConsole3.ConsoleProStackEntry:OpenEditor(Int32)
FlyingWormConsole3.PanelLog:DrawContent(Rect&, Boolean)
FlyingWormConsole3.Panel:Draw()
FlyingWormConsole3.ConsolePro3Window:OnGUI()
UnityEditor.DockArea:OnGUI()
また、もし可能であれば、「Constにしているパラメータ」や、「任意のParamTblシート」を、Parameterビューに表示するか表示させないか、選択できるような機能をつけていただけると非常に助かります。
主な理由は、Constに設定しているパラメータはParameterビューで操作する必要がないことや、その時の目的によってParameterビューで見たいパラメータが異なること、パラメータがたくさんあるとParameterビューのスクロールが重たく、目的のパラメータを探し出すのに少々時間がかかるためです。
例えば、非表示にさせたい(または表示させたい)ParamTblシート名をExcelのとあるシートに入力する等、何かしらの方法で設定しておけば、そのParamTblシートはParameterビューで無視される(または表示される)ような機能があると、何度もParameterビューをスクロールする必要がなくなるので助かります。
難しい要望でしたら申し訳ございません。
どうぞよろしくお願いします。