Entity, Component, Property, 서비스 & 로직, Model의 개념
Entity
- 엔티티는 월드를 구성하는 객체 요소를 뜻함
화면에 보이는 것들이 전부 엔티티
MOD에서 오브젝트는 Entity와 같은 의미를 가지고 있으며, Entity는 곧 MOD 내에 존재하는 모든 객체입니다.
- World 엔티티를 최상위로 하여 모든 엔티티를 눈으로 확인할 수 있다.
- 부모 자식 관계를 가지는 트리 형태의 계층형 구조를 띈다. 따라서 자식이 부모의 속성을 따라간다.
Component
- Entity가 수행할 일과 가지게 될 성질에 대해 정의하는 역할
각각의 엔티티는 여러개의 컴포넌트들로 구성되어 있습니다.
- Script Component
직접 제작하는 컴포넌트
컴포넌트의 기능은 컴포넌트 내 함수에서 처리
- Native Component
미리 만들어진 컴포넌트
WorkSpace → BaseEnvironment → NativeScripts → MODComponent : MOD에서 확인 가능
API Reference에서 컴포넌트의 상세 내용 확인 가능
Property
- 컴포넌트의 세부값을 조정할 때 도입되는 개념
- 컴포넌트 별로 가지고 있는 프로퍼티는 상이합니다.
- 같은 컴포넌트라도 프로퍼티 값을 다르게 설정할 경우 다르게 동작
서비스 & 로직
-
서비스: 유저가 제어하기 힘든 부분을 제공하는 로직
user, log, data, camera 와 같은 서비스
-
로직: 실제 게임 동작을 위해 사용되는 로직
-
차이점: 서비스는 재가공이 불가능하지만 로직은 가능하다.
Model
- 엔티티와 컴포넌트의 집합체
- 이미 규격화된 형태를 가져와 사용할 수 있음
- 맵을 제작할 때 사용하는 에셋을 모델이라 함