2012-06-03 2 views
3

전체 지오메트리 장면을 렌더링하는 여러 카메라를 사용하는 렌더 - 투 - 텍스처 프로세스를 개발 중입니다. 이 카메라의 출력은 결합되어 각 지오메트리의 정점 좌표를 정점 셰이더의 화면 좌표로 변환하여 화면에 직접 매핑됩니다 (여기서는 GLSL을 사용하고 있습니다).render-to-texture 프로세스의 최적화

프로세스는 정상적으로 작동하지만 작은 문제가 발생했습니다. 생성 한 모든 RTT 카메라는 화면 출력과 동일한 크기의 텍스처를 생성합니다. 즉, 뷰포트의 크기가 1024x1024 인 경우 지오메트리가 화면의 256x256 섹션을 차지할지라도 각 RTT 카메라는 1024x1024 텍스처로 256x256 지오메트리를 렌더링합니다.

솔루션은 상당히 간단합니다 - RTT 카메라 텍스처 크기를 실제 지형이 차지하는 화면 영역과 일치하도록 조정합니다. 그러나 어떻게해야할지 모르겠습니다. 즉, 어떻게하면 기하 도형이 화면의 256x256 영역을 점유하는지 결정하여 RTT 카메라의 출력 텍스처를 그에 맞게 256x256 픽셀로 설정할 수 있습니까?

내가 사용하는 API (OpenSceneGraph) ..

생각을 축 정렬 경계 상자를 사용하기 때문에 내가 거기에 운이 있어요?

답변

0

왜 운이 좋습니까? 영역을 계산하기 위해 축 정렬 바운딩 박스를 사용할 수 없습니까?

내 생각 :

  • 는 경계 상자의 여덟 모서리 점을와 카메라의 이미지 평면에이를 전망이다. 당신이 축 정렬 된 2 차원 경계 상자를 확인할 수 있습니다 이미지 평면에 결과 2D 포인트
  • 다시

이는 형상이 차지할 수있는 공간에 대한 올바른 상한해야한다.