Помощь · Поиск · Пользователи · Календарь
Полная версия этой страницы: Real 3D на флеше
Flash Zone Forum > Macromedia Flash > 3D во Flash
chingachgoog
Речь пойдет о РЕАЛЬНОМ 3D или, если быть точнее, о просмотре стереоизображений с помощью флеш-плеера.

Немного теории.

Во-первых, разберемся с путаницей терминов. Термин "3D" на Западе используется маркетологами как для софта с трехмерными движками (на 2D экран выводиться проекция 3D мира, внутри движка объекты существуют и взаимодействуют в трехмерном мире) так и для софта и железа для работы со СТЕРЕОизображениями. На мой взгляд, удобнее пользоваться именно термином "Стерео".

Что же необходимо для стереопросмотра?
Самое главное - иметь два глаза! Хотя в реальности человек может видеть объем и одним глазом, но на плоском экране без двух глаз не обойтись.
Второе - надо предоставить каждому глазу отдельное изображение (со смещением). Тогда мозг сформирует стереокартинку и будет виден объем.
Способов предоставления каждому глазу отдельной картинки (стереопары) превеликое множество, но для использования с ФП практически все из них малопригодны. Об этом далее.
Третье - необходимо эту самую стереопару иметь ))) Как счастливый обладатель стереообъектива к цифровой зеркалке, теперь эта возможность у меня есть в полной мере, чего и всем желаю smile.gif

ФП-проблема.
"Нормальное" стереоизображение смотрят на мониторе в специальных очках - затворных, как правило. Система выводит на экран изображение для левого глаза, посылает ИК-сигнал на очки и очки закрывают правый глаз. Потом аналогично для другого глаза. И тут нужен драйвер для синхронизации "миганий" экрана и очков (плюс монитор, который способен так часто мигать). ФП тут в полном пролете - ИК сигнал подать было бы можно (наработки у меня есть), но я не знаю способов как его синхронизировать с системной частотой и вряд ли такое вообще возможно исходя из архитектуры ФП.

Что остается?
Непосредственное выведение стереопары Side-by-side (между прочим, объектив делает именно ее) и анаглиф.

(продолжение следует...)

chingachgoog
Side-by-side

На экран выводятся непосредственно и одновременно две картинки: слева и справа.

Плюсы:

- это родной формат хранения стерео (т.е. преобразовывать почти ничего не надо)
- сохраняется полная цветопередача (вообще это формат наивысшего качества)
- при небольшом размере картинки (физически - размер обычной фотографии) можно научиться смотреть без очков (причем это как езда на велосипеде - один раз научился и потом всегда сможешь)

Минусы:

- Половина полезной площади экрана теряется
- В полноэкранном варианте смотреть можно только через специальные очки (зеркальные, зеркально-линзовые, линзовые, призматические)
- трудности с детальным рассмотрением (хотя тут у меня есть несколько мыслей)

Анаглиф

Наиболее приемлемый вариант стереопросмотра для ФП, на мой взгляд.
Обычно левое изображение записывается в красный канал, а правое - в синий и зеленый.

Минусы:

- теряется 50% информации, как видно (синий и зеленый канал из левого и красный канал из правого изображений)
- соответственно получающиеся цвета "немножко" не похожи на настоящие.
- требуются специальные очки (но они достаточно доступны и дешевы - можно купить с детской книжкой какой-нибудь или даже сделать самому; лично у меня есть светофильтры от телескопа, можно также и фильтры от фотика использовать)
- из-за светофильтров изображение становится темным и необходимо увеличить яркость монитора
- jpg, как поговаривают, из-за особенностей своего алгоритма сжатия сильно недружит с анаглифом

Плюсы:

- можно использовать весь экран
- стереоэффект видят почти все
- можно детально рассматривать (увеличивать) изображение без проблем

Плюсы для ФП:

- эффект никак не зависит ни от физической частоты монитора, ни от системной
- есть родные классы для работы с каналами (можно легко генерировать анаглифы из side-by-side изображений-исходников)
- можно на основе существующих 3D-движков легко получать стереоизображения (создаем скриншоты для двух точек просмотра и конвертим в анаглиф) - даешь танкионлайн в анаглифе! smile.gif
chingachgoog
Вообщем технологии идут семимильными шагами и некоторая информация устаревает )))
Хотя я и не нашел в планах адоба поддержку стерео-режима видеокарт, но скорее всего он будет в конце концов smile.gif
Но удивительное уже рядом - уже есть стереомониторы и телевизоры с поляризационной технологией! А это означает очень простую вещь - не надо синхронизировать частоту очков и монитора, там очки вообще пассивные! Достаточно знать схему построения поляризированного изображения (обычно это row interlace) и вуаля! Кодируем часть пикселов для левого глаза, а часть - для правого. Работает!!!
(надо учесть, что изображение должно быть не масштабированное, а именно пиксел в пиксел)
MustLive
Из предложенных тобою вариантов Side-by-side и Анаглиф, более реальным выглядит второй. У него есть как плюсы, так и минусы, но его более реалистично реализовать на флеше. Ждём реализации во флеш плеере или в виде отдельной флешки. Например, на Ютюбе есть поддержка стереоскопического изображения (может кто сталкивался с другими подобными флеш приложениями).
chingachgoog
Не, после поляризационного экрана анаглиф - это каменный топор.
А черезстрочное изображение для поляризационного экрана гораздо проще складывать, чем анаглиф шаманить, смешивая каналы.
Хотя смысл в обоих технологиях сходный, и очки у обоих пассивные. Так что на флеше можно спокойно сделать переключатель режимов.
Русская версия IP.Board © 2001-2014 IPS, Inc.