I’m writing a DLL plugin for Unity and for the purposes of my own architecture I have an abstract base class which a number of my classes inherit from. That base class is intern inherited from MonoBehaviour such that each of my concrete classes can be attached to GameObjects.
The problem is that public fields or fields labelled with the SerializeField attribute are not displayed in the inspector for any of these classes.
For illustration;
Class Base : MonoBehaviour{
// Properties that are defined here are also not shown in inspector
}
Class A : Base{
// Properties that I want to be shown in the inspector
Public Vector2 Test;
}
Class B: Base{
// Some more properties
}
I have tested and objects defined in the plugin which directly implement MonoBehaviour do have their properties displayed correctly. It is only the objects which indirectly implement MonoBehaviour.