[언리얼]배틀 그라운드 따라 만들기 #19 사망시 랙돌 적용하기
- 게임 개발 - Unreal
- 2020. 6. 4. 21:56
안녕하세요 유랑입니다.
실력향상을 위해서 이번 시간부터는 유료 강의를 따라하면서 공부하겠습니다.
블루프린트와 엔진 버전은 4.18.3을 사용합니다^^
1. 배틀 그라운드 만들기
이번 강의는 얼론데브와 인프런에 있는 배틀 그라운드(로얄)을 만드는 강좌이며,
유료로 돈을 지불해야만 강의를 들을 수 있습니다.
저는 돈을 지불하였고, 스킬업을 위해서 복습겸 글을 올리겠습니다.
얼론데브 => https://alonedev.com/
인프런 => https://www.inflearn.com/
2. 사망시 랙돌 적용하기
오늘은 플레이어 사망시 랙돌을 적용해 보겠습니다.
죽는 애니메이션이 따로 없을 시 유용하게 사용할 수 있습니다.
2-1) 데미지 적용하기
플레이어가 총알에 맞았을 시 데미지를 적용해보고,
사망하면 랙돌처리를 해주겠습니다.
우선 플레이어 클래스를 실행시켜주세요.
플레이어의 체력은 'HP'라는 변수를 만들어 설정하겠습니다.
기본 체력은 20으로 맞춰줄께요^^
언리얼에는 'Apply Damage'라는 데미지를 줄 수 있는 노드가 존재합니다.
총알을 맞은 녀석한테 데미지를 넣어줄게요.
'Event Instigator'는 누가 날 쐈는지,
'Damage Causer'는 데미지를 발생한 액터를 넣어주시면 됩니다.
2-2) 사망시 랙돌 적용
데미지를 맞는 부분은 'AnyDamage'라는 이벤트로 알 수 있습니다.
데미지를 입었을 때 입은 데미지를 이용해 체력을 설정해 줄게요.
최종적으로 랙돌을 실행시켜주면 끝!!
랙돌처리는 되었지만,
캐릭터가 가라앉네요?!
2-3) 콜리전 설정 -㉠캐릭터
그 이유는 플레이어 콜리전 설정 때문인데요.
쿼리와 피직스 둘 다 사용하도록 설정하겠습니다.
이번에는 ㅋㅋㅋ 멀리 날아가네요.
2-4) 콜리전 설정 -㉡무기
원인은 무기와 캐릭터가 충돌처리가 일어나기 때문입니다.
피직스 애셋으로 들어가 주세요.
시뮬레이션 상태에서도 날라갑니다.
프리뷰 된 무기를 없애주면?
이상없이 랙돌처리가 됩니다.
플레이어 클래스를 실행시키고,
무기를 모두 선택
콜리전 설정을 플레이어와 충돌하지 않도록 설정해 줄게요.
굿굿 바로 이거죠.
2-5) 콜리전 해제 -㉠캐릭터
사망시 콜리전이 남아있어서 지나갈 수가 없습니다.
그렇기에 사망시 캡슐 콜리전을 해제시켜줄게요.
2-6) 콜리전 해제 -㉡무기
무기도 똑같이 콜리전을 해제시켜주시고
무기를 부모인 플레이어한테서 해제시킵니다.
2-7) 콜리전 추가
하지만 아직까지 랙돌이 부자연스럽습니다.
그 이유는 자동으로 만들어진 콜리전들 때문입니다.
팔꿈치 부분의 크기와 위치를 조정 후
바디를 추가
반대쪽도 마찬가지로 추가해 줍니다.
2-8) 콜리전 회전 제한
이번에는 콜리전이 회전하는 각도 제한도 해줄게요.
콜리전 사이사이에 있는 컨스트레인트를 모두 선택 후 값을 변경해 주세요.
컨스트레인트는 피직스 오브젝트의 모션을 제한할 때 유용합니다.
모든 바디 선택 후
'Angular Damping' 값도 설정해 주세요.
회전하는 힘을 막는 부분이라고 생각하시면 됩니다.
어떤가요?
자연스러워 졌나요?ㅎㅎ
3. 마무리
오늘 강의는 여기까지입니다.
배틀 그라운드를 따라하면서 사망시 랙돌을 적용해 보았습니다.
오늘도 고생하셨습니다.
감사합니다.
수업자료: 배틀 그라운드 따라 만들기 #19 사망시 랙돌 적용하기