Можно ли использовать рендеринг OpenGL для 3D-мониторов? - PullRequest
7 голосов
/ 20 сентября 2011

Мы рассматривали вопрос о покупке 3D-готового ЖК-монитора вместе с машиной с видеокартой с поддержкой 3D-стереоскопического зрения (ATI Radeon 5870 или выше).Это для отображения некоторых научных данных, которые мы визуализируем в 3D с использованием OpenGL.Теперь можем ли мы ожидать, что графический процессор, монитор и защитные очки позаботятся о стереоскопическом дисплее или нам нужно изменить программу рендеринга?Если существуют специальные методы для графического программирования для трехмерных стереоскопических дисплеев, некоторые учебные ссылки будут высоко оценены.

1 Ответ

9 голосов
/ 20 сентября 2011

Технически положения OpenGL для стереоскопического отображения. Ключевое слово "Quad Buffered Stereo". Вы можете переключить рендеринг левого и правого глаз с помощью glDrawBuffer(GL_BACK_LEFT); /* render left eye view */; glDrawBuffer(GL_BACK_RIGHT); /* render right eye view */;.

К сожалению, Quadbuffer Stereo считается профессиональной функцией производителей графических процессоров. Поэтому вам нужна либо видеокарта NVidia Quadro, либо AMD / ATI FireGL, чтобы получить поддержку для нее.

Стереоскопический рендеринг выполняется не путем наклона глаз, а путем применения «сдвига линзы» в проекционной матрице. Детали немного сложнее, хотя. В прошлом году я говорил об этом, но, очевидно, связь с моими слайдами презентации прекратилась.

Вот ключевая диаграмма (от моих заметок моего патча до Blender'а, чтобы напрямую поддерживать стереоскопический рендеринг) Stereoscopy parameters

...