- 데이터를 저장하고 관리하는 데이터 컨테이너
- 유니티 Inspector 창에서 데이터를 직접 수정하고 관리할 수 있다.
- ScriptableObject 클래스를 상속받아 작성
[CreateAssetMenu(fileName ="DefaultAttackSO", menuName ="TopDownController/Attacks/Default", order = 0)]
public class AttackSO : ScriptableObject
{
[Header("Attack Info")]
public float size;
public float speed;
public float power;
public float delay;
public LayerMask target;
[Header("Knock Back Info")]
public bool isOnKnockBack;
public float knockbackPower;
public float knockbackTime;
}
다음과 같은 코드를 작성하고 저장하면
프로젝트 창 우클릭 -> Create -> TopDownController -> Attacks -> Default 경로로 SO파일을 만들 수 있다
public AttackSO attackSO;
다음과 같은 코드 작성 후 유니티 Inspector창에 위에서 생성한 SO파일을 드래그 해주면
이렇게 적용 가능하다
스크립터블 오브젝트의 장점
- 데이터를 코드와 분리 -> 깔끔한 코드
- 데이터 재사용 가능
- 엄청 간편한 기능인듯
'Study > Unity' 카테고리의 다른 글
[Unity] Anchor Presets (0) | 2024.05.14 |
---|---|
[Unity] Input System (0) | 2024.05.09 |
[Unity] 비트 연산자, 레이어 마스크 (0) | 2024.05.09 |
[Unity] 카메라 사이즈 (0) | 2024.05.08 |
[Unity] 단축키 (0) | 2024.05.08 |