こんにちは、Unityエンジニアのオオバです。
The same field name is serialized multiple times in the class or its parent class. This is not supported: Base(MonoBehaviour) _hoge
UnityEngine.GUIUtility:ProcessEvent(Int32, IntPtr)
エディタで実行中は問題なかったのですが、Android向けにビルドすると上記のエラーが出てしまったので対処してみます。
親子クラス内で同名シリアライズ指定するとダメ
C#という視点から見ると、親クラス、サブクラスで同名private変数を持つことは何ら問題はないのですが、Unity的な視点で見るとSerializeFieldアトリビュートをつけてしまうとよろしくありません。
// 親クラス
class Parent : MonoBehaviour
{
[SerializeField] int _hoge;
}
// 子クラス
class Child : Parent
{
[SerializeField] int _hoge;
}
上記のような状態はUnityはサポートしていないということです。
エラー個所を特定する
エラー文の中にThis is not supported: Base(MonoBehaviour) _hoge
とフィールド名_hoge
が犯人だということを教えてくれるので、全文検索してそれっぽい箇所を修正すれば良いかと思います。
以上

この記事が気に入ったらフォローしよう
「Unity初心者大学」というUnity初心者向けのYouTube始めました!!
ぜひチャンネル登録をお願いします!
最後まで読んでいただきありがとうございました!
すばらしいUnityライフをお過ごしください。
オススメ記事
検証環境
- Unity2019.1.0f2