- Home /
 
Variables not showing up in inspector
Javascript code:
 class spriteDetails
 {
 var pixelWidth: int;
 var pixelHeight: int;
 }
 var singleSpriteDimensions: spriteDetails;
 
               This gives me the pixelWidth and -Height variables in the inspector (as part of 'Single Sprite Dimensions')
Equivalent (at least I thought so) C# code:
 public class SpriteManager : MonoBehaviour {
  public class spriteDetails {
      public int pixelWidth;
      public int pixelHeight;
      }
     public spriteDetails singleSpriteDimensions = new spriteDetails();
 }
 
               However no variables show up in the inspector if I use the C# script. Any ideas why?
               Comment
              
 
               
               
               Best Answer 
              
 
              Answer by Bunny83 · Jul 31, 2012 at 08:42 PM
That's a thing where UnityScript is misleading. You need to mark custom classes as Serializable. In UnityScript every class gets this attribute by default. In C# you have to add it:
 [System.Serializable]
 public class spriteDetails
 {
     public int pixelWidth;
     public int pixelHeight;
 }
 
              Your answer