Scriptable Object

: 메모리에 스크립터블 오브젝트의 데이터 원본 만을 저장하고 이것을 참조하는 방식으로 작동해서 메모리 소모를 줄이는 것.

실습

Mob 종류를 나눠보자.

  1. Make the MobData Script
  2. MonoBehaviour → ScriptableObject to Change
  3. Make [CreateAssetMenu( )]
    1. CreateAssetMenu attribute : ScriptableObject 를 상속 받는 클래스를 ScriptableObject Asset 으로 생성해주는 역할을 한다.
    2. 매개변수 : fileName, menuName, order 가 있다.
      1. fileName : 생성된 ScriptableObject Asset 의 이름을 정하는 Parameter
      2. menuName : ScriptableObject Asset을 생성하는 메뉴의 이름을 정하는 Parameter → In Unity Menu, [Asset > Create] Under Menu Will find it 이름에 “/”를 넣으면 경로로 표기되어 ScriptableObject 메뉴 아래의 Mob Date 항목으로 표시할 수 있다.
      3. order : Create 메뉴들 중에서 몇 번째 위치에 표시할 것 인지를 정하는 Parameter (가장 마지막 표시 : int.MaxValue)
  4. Make a Parameter ([SerializeField])
  5. -> Asset → Create → ScriptableObject → MobData Click.
  6. 복붙해서 몹의 종류만큼 만든다. (Ctrl + D)
  7. Create a Empty, Prefab (Mob) + Mob Script
  8. Mob Spanwer Script 쓰기.
  9. Create Empty → “Mob Spawner”, + Mob Spanwer Script
  10. Prefab, MobData ++