title: Serializable class is not shown in custom inspector
body: <p>I am creating custom inspector for my ScriptableObjects in unity, and I have noticed that my Serializable class's properties aren't displayed</p>
  
  <p>I have created a simple script to hold a character data, and one of it fields is a Serializable class. If I don't use custom inspector I can see the class in the inspector, but if I try to make one it automatically just displayes the field name in foldout view, and when I unfold it, it is empty.</p>
  
  <p>My Class:</p>
  
  <pre><code>using UnityEngine;
  [System.Serializable]
  public class Skills
  {
      [SerializeField, Tooltip("This character agility level")]
      private byte agility, strength;
  
  }
  </code></pre>
  
  <p>My Data ScriptableObject:</p>
  
  <pre><code>using UnityEngine;
  using Weapons.ScriptableObjects;
  namespace Characters.ScriptableObjects
  {
       [CreateAssetMenu(fileName = "New Character", menuName 
  "Characters/Soldier")]
      public class SoldierData : CharacterData
      {
          public Weapon weapon;
          public float life = 100;
          public bool autoAttack = true;
          public Skills skills = new Skills();
      }
  }
  </code></pre>
  
  <p>And finally my custom editor:</p>
  
  <pre><code>using UnityEditor;
  namespace Characters.CustomEditors
  {
      [CustomEditor(typeof(ScriptableObjects.SoldierData))]
      public class SoldierEditor : CharacterEditor
      {
          private SerializedProperty life, autoAttack, skills, weapon;
          private bool showBaseProperties = true, showWeaponProperties = false;
  
          private new void OnEnable()
          {
              base.OnEnable();
              life = serializedObject.FindProperty("life");
              autoAttack = serializedObject.FindProperty("autoAttack");
              skills = serializedObject.FindProperty("skills");
              weapon = serializedObject.FindProperty("weapon");
          }
          public override void OnInspectorGUI()
          {
              showBaseProperties = EditorGUILayout.Foldout(showBaseProperties, "Basic settings:");
              if (showBaseProperties)
              {
                  base.OnInspectorGUI();
              }
              serializedObject.Update();
              showWeaponProperties = EditorGUILayout.Foldout(showWeaponProperties, "Weapon settings");
              if (showWeaponProperties)
              {
                  EditorGUILayout.PropertyField(autoAttack);
                  EditorGUILayout.PropertyField(life);
              }
              EditorGUILayout.PropertyField(skills);
              serializedObject.ApplyModifiedProperties();
              }
          }
      }
  </code></pre>
  
  <p>I want to see my Skills class's properties in the custom inspector</p>