A-Dyu의 개발 일기장

[유니티]CreateAssetMenu 어트리뷰트 본문

유니티/유니티 기능

[유니티]CreateAssetMenu 어트리뷰트

ADyu 2024. 5. 22. 00:23

CreateAssetMenu 어트리뷰트는 새로운 Scriptable 파일을 만들 때 메뉴에서 생성시킬 수 있는 옵션을 추가해줍니다.

 

사용법은 Scriptable 클래스에 CreateAssetMenu 어트리뷰트를 추가해줍니다.

using UnityEngine;

[CreateAssetMenu(fileName = "EntityData", menuName = "EntityScriptable/EntityData", order = int.MaxValue)]
public class Test : ScriptableObject
{
    [SerializeField] int MaxHP;
    [SerializeField] float Damage;
}

각각의 인자는 다음의 역할을 합니다.

fileName 파일을 생성했을 때 파일 이름의 기본값
menuName 보여질 메뉴의 이름("/"로 하위 경로 구별,  즉 EntityScriptable의 하위 경로의 EntityData를 생성)
order 메뉴에 보여질 순서

 

그럼 Project창에서 메뉴를 열 시 어트리뷰트에 menuName 인자로 적은  EntityScriptable의 하위 메뉴의 EntityData가 만들어진 걸 볼 수 있습니다.

메뉴에 생성된 EntityData

클릭하면 fileName에 적었던 이름대로 파일이 생성되는 걸 볼 수 있습니다.

생성된 EntityData 파일

CreateAssetMenu 어트리뷰트는 Scriptable의 자식클래스에만 추가할 수 있으며,그 외 클래스에 추가시키면 경고가 뜨며 무시됩니다

무시된 CreateAssetMenu  어트리뷰트