ScriptableObject 사용법 사용법

5264 단어 Unity

ScriptableObject란?


  • 동일한 데이터를 여러 번 인스턴스화하지 않도록 동일한 인스턴스를 참조하십시오.
  • 인스펙터에서 캐릭터와의 상태 변경을 용이하게 한다.
  • 데이터 구조를 통합하여 데이터 프레임을 만들 수 있습니다.

  • 솔직히 이런 말을 해도 좋을지 모르겠지만, 이 3가지 사용법 혹은 이들을 복합해서 사용할 수 있다.

    본래의 사용법은 이런 느낌(일까?)
    h tps://에쿠아보. 코 m / 아보 tsc rip b b-o b g ct
    드라크에 슬라임이 9마리 정도 나오는 전투가 있다.
    이 슬라임 1장씩을 인스턴스화하면 그만큼 메모리를 먹기 때문에, 참조처를 같게 하는 것으로 먹는 메모리를 줄일 수 있다.
    이것이 9체이니까 좋지만, 1000체라든지 늘어나면 같은 곳을 참조하는 편이 좋지요.

    ScriptableObject의 장점



    ScriptableObject에 GameObject나 Prefab을 넣을 수 있는 것.
    htps : // m / 잡아 P / ms / 1d0c8 3d8040cb413fc
    이것으로 일일이 prefab로부터 호출할 필요가 없다. 라고 할까 취급하기 쉽다.
    그래서 같은 객체에서도 상태를 인스펙터 상으로 바꿀 수 있다.
    예를 들어 무기의 데이터를 만들기 위해 이런 ScriptableObject를 만들어 보자.

    WeaponData.cs
    using System.Collections;
    using System.Collections.Generic;
    using UnityEngine;
    [CreateAssetMenu(menuName = "MyScriptable/Create WeaponData")]  
    //project上でWeaponDataを新規作成できるようにする
    public class WeaponData : ScriptableObject {
        public string weaponName;//武器の名前
        public bool unlock;//武器の解放条件
        public GameObject gameObject;//武器本体
        public int level;//武器の強化情報
        public int weaponCost;//武器強化にかかる値段に影響する1~4の4段階
        public int WeaponUpgrage(int level) { //実装中の機能
            int value = level * weaponCost * 100;
            return (value);
        }
    }
    


    그러면 이런 식으로 project에서 ScriptableObject를 만들 수 있다.

    신규 작성하면 이런 느낌. 입방체에 {}가 붙어있는 것이 ScriptableObject의 특징
    새롭게 작성한 오브젝트는 인스펙터상에서 여러가지 설정할 수 있다.
    설정한 데이터가 무기 1개의 데이터가 된다.

    어쩐지 이런 느낌으로 많이 만들면 무기 데이터를 많이 만들 수 있다.

    ScriptableObject의 단점



    데이터의 크기가 터무니 없이 커지면 엑셀 등으로 취급하는 것이 편리하게 된다.

    많은 무기의 공격력을 정렬하거나 카테고리별로 처리하는 등.
    대량의 데이터 처리에 관해서는 ScriptableObject는 사용하기 어려운 것이 아닌가?

    결론



    어라, 이것 보통의 Script라도 좋지 않아? 라고 사용법을 하고 있다.
    사용 장소를 잘못하고 있다고 생각되지 않는, 특히 무기 데이터에 관해서는.
    다만 무기 데이터 구조의 통일이라는 면에서는 WeaponData를 만드는 의미가 있을 것 같았다.

    참고문헌
    공식 참조
    htps : // / cs. 글쎄, ty3d. 이 m / 그럼 / 540 / 마누아 l / c ぁ s - Sc 리 p b b 오 b b ct. HTML
    알기 쉬운 입문 기사
    htps : // 이 m/4_미오_11/있어 ms/아 7d8967b853세 f4385cd
    공식 3가지 사용법
    htps : // 우니 ty. 코 m / 자 / 호 w - 및 / r 치 테 ct - 메코 - sc p b

    좋은 웹페이지 즐겨찾기