Формирование стереопары
Ошибка: неверное или отсутствующее изображение |
У этой статьи нет иллюстраций. Вы можете помочь проекту, добавив их (с соблюдением правил использования изображений).
Для поиска иллюстраций можно:
|
Эту статью следует викифицировать. Пожалуйста, оформите её согласно правилам оформления статей.
|
В данной статье будет описан алгоритм модификации 3D программы для того чтоб она могла сформировать стереопару.
Обычно для перспективной проекции в программах используется следующая левостороняя матрица (применяемая к примеру в программах под Direct3D)
<math>~h = 1/\operatorname{tg}(fovY/2)</math>
<math>~w = h*aspect</math>
<math> \begin{bmatrix} 2*zNear/w & 0 & 0 & 0 \\ 0 & 2*zNear/h & 0 & 0 \\ 0 & 0 & {zFar \over zFar-zNear} & 1 \\ 0 & 0 & -{zNear*zFar \over zFar-Near} & 0 \end{bmatrix} </math>
для формирования корректной Off-axis стереопары необходимо модифицировать матрицу таким образом
<math> \begin{bmatrix} 2*zNear/w & 0 & 0 & 0 \\ 0 & 2*zNear/h & 0 & 0 \\ \mathbf{eye*sep} & 0 & {zFar \over zFar-zNear} & 1 \\ \mathbf{-eye*sep*dist} & 0 & -{zNear*zFar \over zFar-Near} & 0 \end{bmatrix} </math>
Здесь переменные означают:
- eye - означает для какого глаза формируется изображение (-1 - левый, +1 - правый)
- sep - разделение экрана, должна быть примерно равна половине расстояния между глазами, значение должно быть в диапазоне от 0 до ZNear/dist
- dist - Z координата плоскости нулевого паралакса (по умолчанию равно ZNear), значение должно быть в диапазоне от -ZNear/sep до ZNear/sep
Ссылки
- [1] - Calculating Stereo Pairs
- [2] - stereo geometry in OpenGL
- [3] - SLI & Stereo
- [4] - NVIDIA GPU Programming Guide
- [5] - NVIDIA Stereo API
- [6] - RealD - Media Room
- [7] - Anaglyph Methods Comparison
- [8] - Optimized Anaglyph
- [9] - Визуальные методы создания стерео варио изображений
Компьютер | Это незавершённая статья о компьютерах. Вы можете помочь проекту, исправив и дополнив её. |
Если вам нравится SbUP.com Сайт, вы можете поддержать его - BTC: bc1qppjcl3c2cyjazy6lepmrv3fh6ke9mxs7zpfky0 , TRC20 и ещё....