같은 건 사실 없다.. 언리얼 엔진에서는 제공하지 않는 기능이다.
대신 프로젝트(주 게임 모듈)의 헤더인 {프로젝트명}.h 파일에 #define 전처리 지시자를 이용해 미리 매크로를 정의해놓고 사용하는 편법이 있다.
- 하지만 Collision 채널을 추가, 삭제, 이름 변경하는 경우에는 정의한 매크로와 일치하는지 매번 확인해줘야 한다.
아래와 같이 간편하게 사용할 수 있다.
언리얼 엔진은 프리셋에 설정된 Object Channel(Type) 정보를 가져오는 기능은 제공한다.
이것을 이용한 또 다른 편법은 프리셋 이름을 통해 Collision 채널을 가져오는 것이다.
- 매번 매크로가 일치하는지 확인해주지 않아도 된다.
- Collision 채널과 동일한 이름의 아무 프리셋을 만들고 Object Channel만 동일하게 설정해주면 된다.
- 단, Trace 채널의 정보는 가져올 수 없다.
우선 Object 채널과 동일한 이름의 아무 프리셋을 만들어준다.
새로운 언리얼 오브젝트를 만들고 클래스에 접근해 바로 사용할 수 있도록 정적(static) 함수로 선언한다.
- 관리의 용이성을 위해 새로운 추가 모듈을 만들고 그 곳에 언리얼 오브젝트를 만들어도 된다.
구현부에서는 프리셋 이름을 받아 동일한 이름으로 설정된 Collision 채널을 반환한다.
함수를 사용하기 위해 헤더롤 포함하고 아래와 같이 사용하면 된다.
'Unreal Engine > 팁' 카테고리의 다른 글
런타임이 블루프린트 에셋을 찾지 못할 때 (0) | 2023.03.19 |
---|---|
Source 폴더 정리 및 세분화 (0) | 2023.03.18 |
액터 스냅 (0) | 2023.02.28 |
Browse 버튼 (0) | 2023.02.15 |
액터 흰 공 없애기 (0) | 2023.02.08 |