Page 1 of 1

arbor3以外のパッケージによるエディタ拡張を無視したい

Posted: 2024/12/05 10:00
by prr
StateBehaviourを継承したクラスにエディタ拡張を行いたいと思っています。
プロジェクト内にodin inspecterをインポートをしたいと考えていますが、この拡張においてはodinの機能を使うつもりはありません。

#if UNITY_EDITOR 〜 #endif で囲った中に、

Code: Select all

EditorGUILayout.PropertyField(
 serializedObject.FindProperty("flexibleField"),
 new GUIContent("flexibleField")
 );
などと書いています。

odin inspecterをインポートしていない場合:問題なくFlexibleFieldやStateLinkなどが表示されます。
odin inspecterをインポートした場合:エディタ拡張スクリプト内にodinに関連する記述がない場合でも、arbor3標準エディタ拡張が消えてしまいます。

よってこれはodin側の問題だとは思うのですが、
https://arbor-docs.caitsithware.com/ja/ ... ult_editor
上記のマニュアルにある、「NodeBehaviourを継承したスクリプトのArbor標準エディタ拡張を無効にします」の部分の逆の状態になって欲しいと思っています。そのような処理は可能でしょうか。

自分が何か記述を見落としていたり、勘違いをしていたりするかもしれません。
ご多様の折恐縮ですが、何卒ご教授いただけますと幸いです。よろしくお願い申し上げます。

Re: arbor3以外のパッケージによるエディタ拡張を無視したい

Posted: 2024/12/05 10:25
by caitsithware
まずは、ドキュメントに記載しているARBOR_DISABLE_DEFAULT_EDITORについてですが。
これはNodeBehaviour用のデフォルトのCustomEditorを無効にする設定ですので、これを設定しなければ他アセットによるEditorの上書きは発生しなくなります。

今回はそれとは別の問題で、EditorGUILayout.PropertyFieldを介した場合のPropertyDrawerが他アセットに上書きされてしまう問題のようですので、Arbor側での回避方法はありません。
問題が他アセットにある場合はそのアセットの開発者へお問い合わせください。