레이가 큐브에 부딪혔는지를 확인하는 매우 빠른 방법이 있습니까? 나는 큐브의 모든 삼각형을 단순히 검사 할 수 있다는 것을 알고 있지만 광선이 많고 많은 큐브가 있으며 매우 빠르게 발생해야합니다. 레이가 큐브에 부딪혔는 지 확인하는 간단하고 빠른 방법이 있습니까? (구체를 먼저 확인하는 것은 지금 옵션이 아닙니다.)레이 큐브가 있는지 확인하십시오.
3
A
답변
0
기다림, 기다림, 기다림, Checking the spheres first is not an option right now
? 당신은 입방체의 중심을 가졌고, 당신은 그 차원을 가지고 있습니다, 당신은 구형 체킹을 할 수 있습니다.
둘러싸는 영역의 적절한 반지름을 계산하는 대신 직접 너비를 사용하는 경우에도 많은 검사를 줄일 수 있습니다.
다각형에 광선을 조사하는 것은 간단합니다. 삼각형 대신 쿼드로 확장 할 수 있습니다. 폴리곤 쌍이 항상 평면으로 정렬되어 있으므로 검사 수를 2 줄이면됩니다.
이제 레이 큐브 교차점을 직접 확인할 수 있습니다. 레이 트레이서의 경우에는 구형을 먼저 확인하는 것이 좋습니다. 비교적 빠른 알고리즘이 본 백서에 제시되어 있습니다. http://www.cs.utah.edu/~awilliam/box/box.pdf
분명히 큐브가 축 정렬 된 경우이 작업은 훨씬 빨라질 수 있으며 그리드를 형성하는 경우 다소 사소한 작업이됩니다.
관련 문제
- 1. BufferGeometry에서 레이 캐스트 교차의면을 확인하십시오.
- 2. 큐브가 구형 내부에 있는지 테스트 - 가장 빠른 방법
- 3. 기본 뷰어가 있는지 확인하십시오.
- 4. 목록이 있는지 확인하십시오.
- 5. 컨트롤이 화면에 있는지 확인하십시오.
- 6. dataGridView가 비어 있는지 확인하십시오.
- 7. 이름이 데이터베이스에 있는지 확인하십시오.
- 8. json.net 어린이가 있는지 확인하십시오.
- 9. FreeASPUpload에 파일이 있는지 확인하십시오.
- 10. 목록에 변수가 있는지 확인하십시오.
- 11. Jlabel에 아이콘이 있는지 확인하십시오.
- 12. 버튼이 비활성화되어 있는지 확인하십시오.
- 13. 세트에 충돌이 있는지 확인하십시오.
- 14. 자녀가 있는지 확인하십시오.
- 15. 개체에 포커스가 있는지 확인하십시오.
- 16. WCF 서비스가 있는지 확인하십시오.
- 17. 공백이 문자열에 있는지 확인하십시오.
- 18. 사용자가 있는지 확인하십시오 (계속 ...)
- 19. [i]가 있는지 확인하십시오.
- 20. 파일이 열려 있는지 확인하십시오.
- 21. 조치가 Kohana에 있는지 확인하십시오.
- 22. NSEntityDescription 키가 있는지 확인하십시오.
- 23. ServiceHost가 살아 있는지 확인하십시오.
- 24. Thickbox가 열려 있는지 확인하십시오.
- 25. 레코드가 테이블에 있는지 확인하십시오.
- 26. NSMutableArray 요소가 있는지 확인하십시오.
- 27. 외부 그림이 있는지 확인하십시오.
- 28. NSURLCredential이 있는지 확인하십시오.
- 29. 요소가 mongodB에 있는지 확인하십시오.
- 30. 클래스 객체가 있는지 확인하십시오.
큐브가 축 정렬되도록 점검이 구성됩니까? – Codor