TIL - Today I Learned :
오늘은 PlayerInput을 통해 입력받은 키를 정해진 Action Mapping에 따라 탱크를 움직였다.
한다고 잘 한거 같은데 탱크가 움직이지 않아서 당황했다.
Sweep을 활성화한 후 부터 그랬는데 생각보다 간단하게 해결하였다.
Sweep은 충돌감지인데... 놀랍게도 RootComponent의 Collider가 바닥에 닿았던 것....
탱크가 움직이는 것 자체로도 재미가 있다.ㅋ
오늘의 진도: Section 5: Toon Tank 122. Creating Child C++ Classes ~ 127. Local Rotation
Pawn
빙-의를 해야하는 Pawn을 정한다.
언리얼한테 플레이어가 어떤 Actor를 움직이는지 알려준다.
AddActorLocalOffset
캐릭터를 움직이기 위해 AActor의 AddActorLocalOffset & AddActorLocalRotation을 사용하였는데
Sweep은 뭐고 Teleport는 뭔지 궁금했다.
Sweep은 내가 이동되는 곳에 나와 충돌이 되는 물체가 있는지 확인하고
물체가 있다면 목적지에 있는 물체를 관통하지 않고 그전에 멈추는 기능이다.
물론 Collisions Presets에서 어떤 것과 Overlap이 되고 Block이 되는지 정해야한다.
Teleport는 아직 강의에 나오지 않았지만 궁금쓰..
만약 캐릭터를 엄청 먼 거리를 순식간에 이동하면서 벽에 무딪혔다고 하자
내 캐릭터가 가지고 있는 모자나, 옷이나, 총이나.. 등에 엄청난 속도를 받게 된다.
v = s / t 인데 s가 무식하게 늘어났고 t 가 매우매우 작은 상태이니까!
그 엄청난 속도를 가진 물체가 다른 물체와 무딪히게 되면 원하지 않는 상황이 발생할 수 있다.
그것을 방지하기 위한 기능이 Teleport이다.
Teleport가 True일 경우 캐릭터의 움직임에 속력이 더해지지 않는다.
나중에 실험해봐야징.
참고 링크 : AActor::AddActorLocalOffset Moving Physical Objects
내 탱크가 움직이지 않는 이유..
Capsule Collider가 Mesh 보다 아래에 있어서 바닥과 충돌감지로 움직이지 않은 것이다..
'Unreal Engine > Udemy:UE5 C++ 학습하고 게임 만들기' 카테고리의 다른 글
Unreal Day - 35 - End of Section 5. ToonTank 🚙 (0) | 2024.07.12 |
---|---|
Unreal Day - 34 - UE5의 Cast가 평범한 Cast가 아니었던 건에 대해.. (0) | 2024.07.05 |
Unreal Day - 32 - Default & Instance of Blueprint (0) | 2024.06.30 |
Unreal Day - 31 - Start Toon Tank! (0) | 2024.06.27 |
Unreal Day - 30 - End of Section 4. Crypt Raider (0) | 2024.06.26 |