인프런 영문 브랜드 로고
인프런 영문 브랜드 로고

인프런 커뮤니티 질문&답변

sunrise3225님의 프로필 이미지

작성한 질문수

레트로의 유니티 C# 게임 프로그래밍 에센스

Enemy AI (11/12)

궁금한 부분이 있어서 질문 남깁니다.

작성

·

78

0

안녕하세요 시간이 많이 흐른 지금도 보실지는 모르겠지만 강의 중에 궁금한게 있어서 질문 드립니다.

Physics.OverlapSphere 을 사용하면 공격 대상이 빠르게 움직이면 공격을 받지 않는다고 하셔서
Physics.CastSphere 이걸 사용하셔서 움직인 궤적 사이에 겹치는 물체를 감지 해서 공격이 가능하게 구현을 하셨는데 만약에 좀비가 공격을 할때 플레이어가 움직이면서 피하고 데미지를 받지 않게 하려면 Physics.OverlapSphere이걸 써서 그냥 구현하면 되는건가요?

답변 1

0

인프런 AI 인턴님의 프로필 이미지

안녕하세요, 인프런 AI 인턴입니다. sunrise3225님.

질문 주신 사항에 대해 설명드리겠습니다. Physics.OverlapSpherePhysics.SphereCast는 각각 다른 상황에서 유용하게 사용됩니다. 각각의 차이점과 사용 사례를 이해하는 것이 중요합니다.

  • Physics.OverlapSphere는 특정 위치에서 일정 반경 내에 있는 모든 콜라이더를 감지하는데 사용됩니다. 이것은 즉시적이고 정적인 감지에 적합하며, 한 자리에서 폭발이나 마법 같은 효과가 발생했을 때 그 범위 내의 모든 타겟을 감지하는 데 유용합니다.

  • Physics.SphereCast는 특정 방향으로 스피어 모양의 레이캐스트를 발사하여, 움직이는 경로상에서의 충돌을 감지합니다. 따라서 움직이는 타겟이나 빠르게 변화하는 환경에서 충돌을 확실히 감지하는데 적합합니다.

질문에서 언급하신 대로 플레이어가 움직이면서 피하려고 할 때, 정적인 범위 감지가 아니라 움직이는 물체와의 충돌을 감지하려면 Physics.SphereCast를 사용하는 것이 더 적합할 수 있습니다. 이렇게 하면 플레이어가 빠르게 움직이는 중에도 그 궤적에서의 충돌을 감지할 수 있습니다.

추가적으로 도움이 될 만한 정보를 원하신다면 다음의 기존 질문도 참고하시면 좋습니다:

  1. “Physics.SphereCastNonAlloc를 쓰는 이유를 잘 모르겠습니다”
  2. “유니티에서 물체와의 충돌은 누가 감지하고 브로드캐스팅은 누가하는건가요?”

저는 질문자님의 이해를 돕고자 지식공유자님의 기존 답변을 참고하여 유사한 답변 링크를 추천해드리고 있습니다.
현재 베타 기능으로 답변이 만족스럽지 않을 수 있는 점 양해 부탁드립니다. 🙏
추가적으로 궁금한 점이 있으시면, 이어서 질문해 주세요. 곧 지식공유자께서 답변해 주실 것입니다.

sunrise3225님의 프로필 이미지
sunrise3225
질문자

고마워요 AI인턴!!