DAY 5 블렌더 스페이스와 움직이는 액터

칼든개구리·2024년 12월 20일
0

[언리얼TO리얼]

목록 보기
39/42

블랜드 스페이스는 아는 내용이니 조금 넘어가고..

ABP_NBC_Character에 speed 변수를 하나 만들어준다. 현재 속도를 저장해주는 변수이다

이걸 speed에 연결해준다

이렇게 설정해주고 ABP_NBC_Character의 블루프린트 이벤트 그래프로 이동한다
‘ABP_Character’ 블루프린트의 이벤트 그래프로 이동합니다.

Try Get Pawn Owner > Get Velocity 를 통해 캐릭터의 벡터를 가져와 X, Y 축의 수치만을 사용한 벡터를 다시 생성합니다. 여기서 중요한 점!!
간단한 게임수학 ⇒ 벡터의 길이는 스칼라 값으로 속력입니다.

여기서 isvalid는 이 에셋이 제대로 동작하는지 체크하기 위한 노드이다.

애니메이션 연결 완료!


회전하는 차를 만들기 위해 블루프린트 하나를 만들고 차의 메시를 넣어준다

이 차는 반지름을 받는데 반지름 만큼 받아서 그 위치에서 회전하게끔 한다.

radius는 반지름이고 origin은 축이 되는 원래 위치를 나타낸다. 이 차는 축은 그대로 두고 스테틱 메시의 위치만 바꿔준다. 액터는 그 위치 그대로 있고 축도 그대로 존재한다. 우리가 생성한 그 위치가 축이 되는것이고 이동시킨 radius 만큼 이동시킨 차가 돌아간다

스태틱 매시만 가져와서 로케이션을 바꿔주도록 하겠다.

이렇게 하고 실행하니 앞에 위치해야할게 사라졌다!

차를 보면 월드 로테이션이다. 월드를 기준으로 월드를 기준에서 700 이동한다. 어딘가 날아갔겠지?

액터를 중심으로 하기 위해 get actor location을 들고오고 x는 radius를 더해준다

Get Actor Location 노드는 해당 액터의 현재 월드 좌표(X, Y, Z)를 반환합니다.

  • Return Value X: 월드 공간에서 X축 좌표.
  • Return Value Y: 월드 공간에서 Y축 좌표.
  • Return Value Z: 월드 공간에서 Z축 좌표.

Make Vector

  • Make Vector 노드는 입력으로 받은 X, Y, Z 값을 하나의 3D 벡터로 만들어 반환합니다.
  • 이 벡터는 새로운 위치, 방향, 혹은 크기를 정의하는 데 사용될 수 있습니다.

연결된 핀의 의미
Return Value X, Y, Z:

  • 현재 액터의 위치를 나타내는 각 축의 값이 그대로 전달되고 있습니다.

Radius:

  • 여기서는 Radius 값을 추가적으로 x 축에 더하고 있습니다.

의미:

  • X, Y, Z 좌표의 x좌표에 Radius 값을 더함으로써, 현재 액터 위치를 중심으로 일정 거리(Radius)만큼 떨어진 새 위치를 계산하고 있습니다.
  • 결과적으로, 새로운 벡터는 현재 위치에서 x축 방향으로 Radius 만큼 이동한 지점을 나타냅니다.

위에 있는 location은 스태틱 메시를 옮기는 것이고 밑의 Rotation은 전체를 다 돌리는 것이다.

z축을 기준으로 돌려준다

그럼 빙글빙글 잘 돌아간다


이제 캐릭터가 차에 치이면 반대방향으로 날리겠다! 라는 것을 만들어볼것이다

친걸 bp_nbc_character로 캐스팅 해주고 캐릭터를 날리는 구조인 것 같다. 근데 잘 안날라간다 하하

profile
메타쏭이

0개의 댓글