less than 1 minute read

Scriptable Object

Scriptable Object는 스크립트를 만들 때 오브젝트로 만들어서 수정할 수 있게 만드는 것이다.

[CreateAssetMenu(fileName ="DefaultName", menuName = "Root/Catagory/NameOfObject", order = 0)]
public class Class : ScriptableObject
{
	[Header("Info 1")]
	public int value
}

위에서 부터 [CreateAssetMenu(fileName =”DefaultAttackSO”, menuName = “TopDownController/Attacks/Default”, order = 0)] 이 부분은
fileName은 처음 객체 생성시 객체 기본 이름이고, menuName은 이걸 만들 때 Create에 찾아갈 경로이고, order은 이 Scriptable Object 오브젝트가 만들때 고르는 애들 중 몇번째로 있을지 이다.

[System.Serializable]

[System.Serializable]
public class DataClass
{
	public Enum enum;
  public int value;
}

이런식으로 [System.Serializable]을 붙여준 클래스는 인스펙터창에서 값을 넣어서 데이터 저장용 객체로 활용할 수 있다.