본문 바로가기
알아두면 좋은것들

03.06 (TIL)

by 오랑이귀엽다 2024. 3. 7.

어떤 에셋을 사용해 보셨나요? 없다면 알고 있는 에셋이 있나요?

  • Standard Assets: 유니티에서 기본적으로 제공하는 에셋 패키지로, 카메라 컨트롤, 차량, 환경, 캐릭터 컨트롤러 등 다양한 기본 컴포넌트와 예제 씬이 포함되어 있습니다.
  • TextMeshPro: 고품질의 텍스트 렌더링을 지원하는 에셋으로, 다양한 스타일링 옵션과 효과를 제공하여 UI의 텍스트 표현을 풍부하게 만들 수 있습니다.
  • Cinemachine: 고급 카메라 워크와 동적 카메라 시스템을 쉽게 구현할 수 있는 강력한 에셋입니다. 카메라 추적, 블렌딩, 가상 카메라 시스템 등을 제공합니다.
  • ProBuilder: 씬 내에서 직접 3D 모델링을 할 수 있게 해주는 에셋으로, 프로토타이핑이나 간단한 모델링 작업에 유용합니다.
  • Asset Store의 타사 에셋: 유니티 에셋 스토어에는 다양한 타사 에셋이 있으며, 이 중에서도 인기 있는 것들은 특정 기능을 강화하거나 게임 개발 과정을 단축시키는 데 도움을 줍니다. 예를 들어, 3D 모델, 애니메이션, 사운드 효과, 플러그인 등이 있습니다.

ScriptableObject란?

ScriptableObjectMonoBehaviour와는 다르게 씬에 종속되지 않고, 데이터를 저장하는 데 사용되는 유니티의 클래스입니다. ScriptableObject를 사용하면 인스턴스, 설정, 데이터 등을 에셋으로 저장하고, 게임 동안 이를 재사용할 수 있습니다.

 

ScriptableObject의 특징:

  1. 메모리 효율성: 게임 실행 동안 변경되지 않는 데이터를 저장하는 데 사용되므로, 런타임에 데이터를 메모리에 한 번만 로드하여 여러 오브젝트에서 공유할 수 있습니다.
  2. 데이터 관리 용이성: 게임의 설정이나 데이터를 중앙에서 관리할 수 있어, 유지보수와 데이터 수정이 용이합니다.
  3. 씬 독립적: ScriptableObject는 씬에 종속되지 않기 때문에, 여러 씬에서 동일한 데이터를 사용하거나 참조할 수 있습니다.
  4. 에디터 확장: 사용자 정의 에디터 인스펙터를 통해 ScriptableObject 데이터를 쉽게 수정하고 관리할 수 있습니다.

예시

더보기

[CreateAssetMenu(fileName = "Data", menuName = "ScriptableObjects/Example", order = 1)]
public class ExampleScriptableObject : ScriptableObject
{
    public int intValue;
    public string stringValue;
}

'알아두면 좋은것들' 카테고리의 다른 글

03.08 (TIL)  (1) 2024.03.08
03.07 (TIL)  (0) 2024.03.07
03.05 (TIL)  (1) 2024.03.05
03.04 (TIL)  (0) 2024.03.05
02.29 (TIL)  (0) 2024.03.05