OpenGL-ES에서 그려진 객체가 보이는지 어떻게 확인합니까?객체가 보이는지 확인합니다.
답변
IN 개체가 표시되어 있는지 확인하지 않습니다.
당신은 자신의 가시성/컬링 알고리즘을 가지고 있어야합니다. 그것은 BSP Trees, Portal, Octree 및 기타를 의미합니다. 세계의 복잡성에 따라 그리드 등을 기반으로 공간을 분할 할 수 있습니다. 그것은 당신이하는 일에 달려 있습니다.
OpenGL은 Draw와 Cull 만 알고 있음을 기억하십시오.
세계의 모든 개체에 대해 루프를 수행하고 GL에 모든 개체를 하나씩 그릴 수 있습니다. 볼 수 없으면 각 프로세스가 처리되고 폐기됩니다. 물론 이것은 짐승 같은 힘이며 느립니다.
따라서 도려 내기 알고리즘을 더 포괄 할 필요가 있습니다.
왜 그래픽 엔진에 백만 줄이 있다고 생각합니까? : D
변종 picking을 사용할 수 있습니다. OpenGL 피킹의 개념은보기의 작은 영역을 렌더링하여 스택에 이름을 붙여 놓는 것입니다. 그래서 렌더링 된 내용을 참조 할 수 있습니다. OpenGL은 히트 레코드를 반환하므로 렌더링 된 내용을 알 수 있습니다. 마우스 밑에있는 것을 알아 내기 위해 자주 사용됩니다.
간단한 무언가에 의해 모델을 교체 (이 렌더링 가능한 표면에 장면을 렌더링 (단지 가시성 검사를 수행하는) 작은 렌더링 가능한 표면을
설정 :
그래서 다음을 수행 할 것 예를 들어, 테두리 상자는 실제 삼각형을 렌더링 할 필요가 없으므로 대신 선이나 점을 렌더링 할 수 있습니다.
- 렌더링 된 내용을 보려면 히트 레코드를 확인하십시오.
아직 시도하지는 않았지만 제대로 작동한다고 생각합니다. 어쩌면 매우 빠르지는 않지만 신뢰할 수 있습니다. 효율적인 가시성/컬링 알고리즘을 작성하는 것은 어렵지만 일반적으로 사용자 정의 가시성/컬링 알고리즘이 대신 사용됩니다.
- 1. 2 차원 배열의 객체가 null인지 확인합니다.
- 2. 요청 객체가 어떻게 보이는지 어떻게 알 수 있습니까?
- 3. formgroup이 보이는지 확인하십시오.
- 4. 벡터 객체가 지정된 dpi와 인쇄 크기로 인쇄 할 때 보이는지 확인
- 5. 객체가 유형이 아님을 테스트합니다.
- 6. 이름이 "인간"으로 보이는지 확인 하시겠습니까?
- 7. 스크롤바가 보이는지 여부를 어떻게 확인할 수 있습니까?
- 8. NSTextView NSTextAttachment가 있는지 확인합니다.
- 9. NSURL이 로컬 파일인지 확인합니다.
- 10. 새 SMS를 읽었는지 확인합니다.
- 11. datareader의 레코드가 NULL인지 확인합니다.
- 12. Regex이 특정 문자열을 확인합니다
- 13. Google 계정이 프리미엄인지 확인합니다.
- 14. 라이브러리가 연결 속도를 확인합니다
- 15. Proftpd가 전체 업로드를 확인합니다
- 16. 레일스는 belongs_to 관계를 확인합니다.
- 17. jre가 설치되어 있는지 확인합니다.
- 18. 레일이 페이지가 번역되었는지 확인합니다.
- 19. python에서 파일 변경을 확인합니다.
- 20. JPanel에 JButton이 있는지 확인합니다.
- 21. CRC가 파일을 확인합니다.
- 22. fgets가 차단되는지 확인합니다.
- 23. ! syncblk 대기중인 스레드를 확인합니다
- 24. 조건부로 PloneFormGen의 값을 확인합니다.
- 25. XML 직렬화 : 객체가 직렬화되지 않았습니다.
- 26. 스택 객체가
- 27. 객체가 순서
- 28. 터치 컨트롤러가 움직이는 UIImageView에 있는지 확인합니다.
- 29. 개체가 StructureMap 컨테이너에 있는지 확인합니다.
- 30. Stylecop - Double 또는 Float인지 확인합니다.
OpenGL에서 표시 여부를 확인할 수 있습니다. 사람들은 Occlusion Queries를 사용합니다. 그러나 이것은 OpenGL ES에서 사용할 수 없습니다. – Bahbar
Occlusion Queries는 ARB 확장이 아니라 GL 사양이라고 생각합니다. 어쨌든 응용 프로그램에 따라 GPU 메모리에 모든 지오메트리를 갖고 싶지는 않을 수도 있습니다. – Rui
OQ는 OpenGL에서 OpenGL이 아닌 OpenGLES의 확장입니다. 심지어는 – Calvin1602