Programming/Game-Math

내적을 사용한 시야 판별

Cyn.thi.s 2019. 12. 18. 00:54

플레이어의 시야각(Field of View)을/를 θ라고 하면, Forward Vector와 시야 판별 대상과 플레이어간의 벡터간의 

내적을 통해 나오는 각도 값이 θ/2를 넘지 않으면 시야 내 존재한다는 것을 판별 할 수 있다. 

이때 θ값의 범위가 -90도 ~ 90도 사이에 있으면 플레이어의 앞쪽에 존재한다는 것이고 반대는 뒤에 있기에 

아예 시야에 없다고 판단해도 무방하다. 

내적을 활용해 판별할 것이기에 cosθ의 값이 0보다 크면 앞쪽, 0보다 작으면 뒤쪽에 있다로 판단할 수 있다.