지금은 가시 거리에 Bresenham의 라인 알고리즘을 사용하고 있습니다. 문제는 플레이어가 벽을 볼 수있는 가장자리 케이스를 찾았다는 것입니다. 플레이어가 특정 각도에서 다른쪽에 틈이있는 벽의 두 모서리를 볼 때 발생합니다.
내가 원하는 결과는 두 벽 사이의 타일이 유효하지 않은 것으로 표시되는 것입니다.
이 문제를 해결하기 위해 Bresenham의 라인 알고리즘을 수정하는 가장 빠른 방법은 무엇입니까? 좋은 해결책이 없다면 더 적합한 알고리즘이 있습니까? 어떤 아이디어라도 환영합니다. 이 솔루션은 3d를 지원할 수 있어야합니다.
편집 : 내 간단한 해결책은 선의 x 및 y 좌표가 변경 될 때 두 모서리가 닫혀 있는지 확인하는 것입니다. 작업 소스 코드와 완성 된 제품의 대화식 데모는 http://ashblue.github.io/javascript-pathfinding/을 참조하십시오.