본문 바로가기
Unreal/Manual

Unreal C++ 컴포넌트 추가하기

by Dev_카페인 2023. 10. 24.
반응형

[Unreal/C++] 컴포넌트 추가하기

 

C++ 에서 컴포넌트를 추가해 사용할 일이 많다.

예를들어 블루프린트에서는 Root 컴포넌트를 기본적으로 제공해주지만

C++로 작성된 코드의 경우 Actor를 상속받는다 해도 Static Mesh 컴포넌트는 추가되지 않는다.

 

예시로 StaticMeshComponent를 추가해 보도록 한다.

 

1. Actor를 상속받는 C++ 클래스 만들기

2. 필요한 컴포넌트의 헤더를 추가하기

3. 컴포넌트 정의하기

4. 컴포넌트 생성하기

5. 확인하기

 

 

1. Actor를 상속받는 C++ 클래스 만들기

- C++ 클래스를 생성할 때에는 접두사로 C를 붙여 생성한다.

- C02_Spawn Actor라는 클래스를 만들었다.

2. 필요한 컴포넌트 헤더 추가

- 여기서는 StaticMeshComponent를 사용할 예정이다.

- 필요한 컴포넌트는 블루프린트를 통해 찾아보거나 공식 문서를 확인한다.

- 헤더는 generated.h 위쪽으로 선언한다.

StaticMeshComponent에 대한 공식 문서 확인

- UStaticMeshComponent는 다음과 같은 상속구조를 갖는다.

- UStaticMeshComponent 위로 상속 받는 클래스이며, 아래로는 상속하는 클래스이다.

- Module은 C++ 프로젝트에서 사용하던 라이브러리 라고 생각하면 편하다.

- Header은 실제 소스 코드가 어디에 있는지 알려주는 경로이다.

- Include는 C++ 코드에서 포함시켜야 할 경로다.

 

3. 컴포넌트 정의하기

UPROPERTY 매크로를 지정하고

UStaticMeshComponent를 정의했다.

 

4. 컴포넌트 생성하기

정의한 Mesh에 UStaticMeshComponent를 생성하고 RootComponent를 지정해준다.

 

5. 확인하기

- 컴파일이 완료되면 게임뷰에 올렸을 때 StaticMeshComponent가 추가된 것이 보인다.

 

반응형

'Unreal > Manual' 카테고리의 다른 글

Unreal UPROPERTY 종류  (0) 2023.10.25
Unreal C++ 코딩 표준 지침  (0) 2023.10.25
Unreal C++ 헤더 포함 Header Include  (0) 2023.10.24
Unreal C++, 라이브 코딩 컴파일  (0) 2023.10.23
Unreal C++ 클래스 폴더&파일 생성, 삭제,  (0) 2023.10.22