• 카테고리

    질문 & 답변
  • 세부 분야

    게임 프로그래밍

  • 해결 여부

    미해결

RayCasting 관련 질문

21.04.20 00:25 작성 조회수 130

0

안녕하세요

UnityChan이 몬스터를 클릭했을 때 제대로 attack이라는 판정이 안들어가는 것 같아서 확인해봤는데 raycasting이 몬스터에 가까워질수록 하늘을 주시하더라구요 무슨 문제인가요?

답변 4

·

답변을 작성해보세요.

0

Insomnia님의 프로필

Insomnia

2022.03.09

현재 위치와 hit.point사이의 거리 값인 distance가 1.0 초과일 때 이동을 하고 1.0 이하일 때 공격을 하게 됩니다.

 

해당 버그는 distance가 1.0초과일 때

사이에 콜라이더와의 충돌이 있을 경우

이동을 하지 않기 때문에 발생합니다. 

 

hit.point는 콜라이더와 충돌한 정확한 위치를 주기 때문에

매 클릭마다 위치가 바뀌는 hit.point가 아닌 콜라이더의 transform을 _destPos로 초기화했습니다.

 

테스트 결과 해당 버그는 재발하지 않았습니다

 

0

raycasting이 몬스터에 가까워질수록 하늘을 주시하더라구요 무슨 문제인가요?

->
이 부분에 대해서, 플레이어/몬스터의
좌표값이 달라서 Ray 방향이 다른 것으로 '추측'해본겁니다.

코드 없이 무엇인가 안된다고 질문을 주시면,
사실 저도 정확한 이유를 알 수 없습니다.
조금 고민해보시고 해결이 안된다면,
전체 프로젝트 압축해서 rookiss@naver.com 로 보내주시면 원인을 살펴보겠습니다!

0

--님의 프로필

--

질문자

2021.04.20

기준위치가 어떤건가요?  attack이 capusle Collider의 범위에 따라서 판정이 들어가는데 기준 위치는 또 다른 개념인가요?

0

몬스터/플레이어 기준 위치가 달라서 그런 것 같은데
Raycasting을 쏠 때 시작/끝 위치를 로그로 찍어보시고
높이 차이를 강제로 0으로 밀어보세요.