언리얼 개인 프로젝트/언리얼엔진C++ 독학(이득우)

3.움직이는 액터의 제작_2

현구구 2022. 3. 3. 22:55

액터를 움직이는 방법에는 2가지가 있다

이번에는 그 2번째 방법이다 

<Fountain.h>

1
2
3
4
5
6
#include "GameFramework/RotatingMovementComponent.h" 
//RotatingMovement 컴포넌트를 사용하기 위한 해터파일 참조
 
    UPROPERTY(VisibleAnywhere)
    URotatingMovementComponent* Movement;
 
cs

우선 Fountain.h 파일에서 URotatingMovementComponent로 Movement 변수를 선언한다

 

 

1
2
3
4
5
6
7
8
<Fountain.cpp>
 
AFountain::AFountain() //생성자
{
    Movement = CreateDefaultSubobject<URotatingMovementComponent>(TEXT("MOVEMENT"));
    RotateSpeed = 30.0f;//h파일에서 선언한 RotateSpeed 를 Fountain 생성자에서 초기화
    Movement->RotationRate = FRotator(0.0f, RotateSpeed, 0.0f);
}
cs

그리고 Fountain.cpp파일의 Fountain 생성자에 위와같이 코드를 작성하고 컴파일 하면 

Fountain에 Movement가 상속된것을 볼 수 있다.

Movement 컴포넌트의 회전 컴포넌트에서 x, y, z 축 각각의 회전 비율을 설정 할 수 있는 것을 볼 수 있다.

x y z 회전비율을 각각 30 으로 설정하고 플레이한 모습

 

2번째 방법이 언리얼 에디터에서 간단히 값을 조정할 수 있어서 편한것같다.