2013-07-17 4 views
1

내가 이해했는지 보도록하겠습니다. 여러 개의 뷰포트를 사용하면 OpenGL 응용 프로그램에서 여러 개의 "카메라"를 만들 수 있습니다. 권리?OpenGL + 다중 카메라

글쎄, 뷰포트 1에서는 볼 수 있지만 뷰포트 2에서는 볼 수없는 개체가 있습니다. 두 피사체 모두에 피사체가 나타나기를 원하면 ... 두 번 그려야합니다!

즉 두 개의 객체가있는 경우 두 개의 "카메라"가 있으면이 객체를 두 번 그려야합니다. 내 씬에있는 모든 것을 두 배로해야합니다.

괜찮습니까? 객체를 복제하지 않고 화면을 분할하는 또 다른 방법이 있습니까?

+0

내가 원하는 것은 API 호출 복제를 피하는 것입니다. 대상 hw가 지원하는 경우 뷰포트 배열을 사용하여이 작업을 수행 할 수 있습니다. http://www.opengl.org/sdk/docs/man/xhtml/glViewportArray.xml –

+0

답변 해 주셔서 감사합니다. 친구. –

답변

4

괜찮습니까?

예, 그렇습니다.

다른 방법으로 개체를 복제하지 않고 화면을 분할 할 수 있습니까?

개체를 복제하지 않습니다. OpenGL에는 "객체"와 같은 것이 없기 때문에 그렇게 할 수 없습니다. OpenGL은 프레임 버퍼를 그리기위한 정교한 종류의 연필 일뿐입니다. 장면이 없으며 객체가 없으며 프레임 버퍼에 그려진 점, 선 및 삼각형 만 있습니다.

당신이하는 일은 종이에 연필을 사용하는 것처럼 다른 관점에서 동일한 것을 여러 장 그린 것입니다.

+0

응답 해 주셔서 감사합니다. 회전 등의 다양한 연산을 수행하는 모델을 그리는 함수가 있다면 질문이 있습니다. 각 뷰포트에 대해이 함수를 호출하면 동일한 모델에 대한 연산 수가 두 배가되지는 않습니까? –

+0

예. 당신은 그것을하고 있지만 메타포 datenwolf는 분명합니다 : 종이에 연필로 그릴 수 있습니다. 결국 2 장의 종이를 원하십니까? 당신은 그것을 두 번, 2 포인트 (2 카메라), 2 시간 계산 비용 .. 어쩌면 당신은 몇 가지 매개 변수와 일부 미적분을 저장하는 객체 지향 프로그래밍 수 있지만 당신의 프로그램이 아니라 OpenGL에 그려야 – nkint

+0

아주 좋은 친구 . 도와 주셔서 대단히 감사합니다. :-) –