가장 큰 문제는, 당신의 GPU를 점점 입체 형식을 보내는 것입니다 괜찮 이잖아. HDMI 연결의 경우 이는 드라이버의 도움 없이는 작동하지 않습니다.
glDrawBuffer(GL_BACK_LEFT);
render_left_eye();
glDrawBuffer(GL_BACK_RIGHT);
render_right_eye();
glDrawBuffer(GL_BACK); // renders to both eyes simultanously
render_screen_level_and_nonstereoscopic();
SwapBuffers();
는 불행하게도 OpenGL은 쿼드 버퍼가 전문 간주됩니다 : 당신이 전문가 급 GPU (쿼드, FireGL의), 그들은 가능성이 지원 OpenGL을 quadbuffers가있는 경우 모두 앞면과 뒷면, 왼쪽과 오른쪽 눈에 대한 프레임 버퍼를 얻을 즉, 학년 물건.
대신 NVidia는 관례 입체 소설 라이브러리와이를 제어하는 확장 기능을 제공합니다. 주된 추론은 공유 조각이 한 번만 렌더링 된 다음 적절한 시차가 적용된 상태에서 두 눈으로 전송된다는 것입니다. 그러나 입체경 검사로 인한 반 전문적인 경험으로 인해 이러한 종류의 반자동/자동 입체 촬영은이를 잘라 내지 못합니다. 입체경 검사는 전체 "생산"파이프 라인을 엄격하게 제어해야합니다. 코끼리 꿈을 가지고 나는 렌더러의 핵심 코드를 수정하는 한 멀리 갔다.
NVidia에서 입체감 검사 프로세스에 대한 정확한 제어가 필요한 몇 가지 사례 시나리오를 사람들에게 보냈습니다. 조명을보고 가전 하드웨어의 쿼드 버퍼 스테레오에 액세스 할 수 있기를 바랍니다. 나는 3D가 작동하는 방법의 기초를 이해
참고 실제로 두 개의 서로 다른 각도에서하지만 렌더링하지 않는
(2 개 다른 각도, 각 눈 하나에서 두 번 같은 이미지를 렌더링) 이동 시차와 렌즈 시프트. 그렇지 않으면 시계에 매우 불쾌한 사다리꼴/키스톤 왜곡이 발생합니다. 사실 입체 렌더링 과정에서 광학 축을 약간 분산시켜야한다고 생각합니다. 즉 순진한 것과는 완전히 반대되는 것으로 생각합니다. do - and over "는 렌즈 시프트로 보상합니다. 저는 현재 이것에 관한 작은 연구를 준비 중입니다.하지만 여전히 테스트 그룹과 컨트롤 그룹을 수집해야합니다.)
1 : 여하튼, 나는 single-handedly stereographed 코끼리 꿈, rendered it 및이에게 award at a 3D movie festival을받은 사람입니다.
[HDMI 1.4a 호환 입체 신호를 OpenGL 응용 프로그램에서 3DTV로 출력하려면 어떻게합니까?] (https://stackoverflow.com/questions/7032991/how-can-i-output-a) -hdmi-1-4a-compatible-stereoscopic-signal-from-opengl-appli) – user2284570