물건을 잡았을 때 캐릭터 블루프린트에 임의로 설정해둔 GrabLocation 에 위치를 두게 하고 싶은데

 

예상)

NewLocation = GrabLocation -> GetWorldLocation

NewLocation 으로 SetTargetLocation 하면 될 것 같음

 

실제로 한 것)

1. BeginPlay에서, 캐릭터 블루프린트에 있는 GrabLocation(씬 컴포넌트)의 위치를 받아서 SetHandleLocation 함수를 통해 MovableObject로 넘겨줌. GetComponentLocation으로 FVector 형태로 변환해서 위치 설정

2. 1의 방법은 BeginPlay를 통해 실행되다 보니 위치 갱신이 안 됐음.

캐릭터.cpp에서 씬 컴포넌트 자체를 넘겨줌. MovableObject의 Tick에서 씬 컴포넌트를 FVector로 변경함 (실시간 반영됨)

 

문제점)

위치 실시간 반영됨 (적어도 FVector 값을 실시간으로 변경되는 중)

mobility와 physics가 없어서 그런지 물체 자체가 움직이지는 않는다.

 

 

+ Recent posts