내일배움캠프

내일배움캠프 Unity - TIL : 25.03.14

달시_Dalsi 2025. 3. 14. 23:25
728x90

오늘 학습한 내용

점프 후 벽과의 충돌 보정하기

3D 캐릭터가 점프 후 벽에 닿으면 멈추거나 예상과 다른 물리적 반응을 보이는 경우가 있다. 예를 들어, 오버워치에서는 캐릭터가 올라갈 수 없는 건물 지붕 등에 도달하면 떠 있는 상태로 천천히 미끄러지는 효과가 적용된다. 이를 참고하여, 점프하거나 떨어지는 등 공중에 체공하는 동안 보다 자연스러운 물리적 반응이 이루어지도록 보정해 보았다.

 

 


문제 및 해결 과정

문제 (점프 후 벽에 부딪히면 캐릭터가 멈춰버리는 현상)

 

  • 점프 후 벽에 부딪히면 캐릭터가 멈추거나 특정 벽에 붙어서 움직이지 않는 현상 발생.
  • 캐릭터가 기대한 대로 자연스럽게 밀려나거나 미끄러지는 동작이 구현되지 않음.

 

 

시도한 해결 방법

 

  • 지면에서는 전용 Physics Material 적용 → 정상적인 물리 반응 유지
  • 공중 체공 시 별도의 Physics Material 적용 → 벽에 닿아도 적절한 반응 발생

 

 

결과

 

  • 점프 후 벽과 부딪히면 캐릭터가 자연스럽게 밀려나면서 떨어지는 동작 구현 성공.
  • 기존의 벽에 붙어버리거나 멈춰버리는 현상이 해결됨.
  • 원하는 경우 특정 벽에서 의도적으로 천천히 미끄러지는 효과를 추가하는 것도 가능.

 


새롭게 알게 된 점

Physics Material을 상황에 맞게 동적으로 변경하는 것이 중요

 

  • 기존에는 하나의 Physics Material을 전역적으로 적용했지만 상황에 따라 설정을 조절하는 것이 필요함.
  • 공중 체공 상태에서는 벽에 붙지 않도록 별도의 Physics Material을 적용하는 방식이 효과적임.

 

728x90