2016-09-24 2 views
-1

Я привык к старому стилю OpenGL 2.0, в котором настройка стереоскопического рендеринга была проста, как:Как настроить стереоскопическое рендеринг в современном OpenGL?

  1. Выберите левый задний буфер, используя glDrawBuffer (GL_BACK_LEFT);
  2. Настройка усечения левого глаза с помощью glMatrixMode() и glFrustum()
  3. Геометрия рендеринга для просмотра в левом.
  4. Повторите шаги с 1 по 3 для просмотра в правом глазу.

Поскольку в современном OpenGL больше нет функций glMatrixMode() или glFrustum(), может ли кто-нибудь объяснить стереоустановку с использованием шейдеров OpenGL? Какова будет последовательность событий для настройки зрения влево и вправо? Обратите внимание, что я предполагаю, что GPU поддерживает четырехъядерный буферный стерео. Спасибо.

+0

@ datenwolf, но есть также задействованные шейдеры ... так что мы дважды вызываем программный код шейдера, один раз для левого и правого глаза? Это кажется немного расточительным. Есть ли лучший способ настроить стерео, когда задействованы шейдеры? – Asif

ответ

0

Единственное отличие состоит в том, что при использовании современного OpenGL материал матрицы был отнесен к стороннему коду; либо матричные операции, реализованные вами самим, либо библиотеку. Практически каждая матричная математическая библиотека, предназначенная для компьютерной графики, будет иметь функцию для настройки преобразования усечения.

Так что вместо матричного режима и glFrustum вы используете это.

Смежные вопросы