Virtual & Really.Ru - Реально о Виртуальном

Виртуальная реальность и 3D Стерео Технологии

Friday, Sep 22nd

Last update02:13:25 PM GMT

Вы здесь: Статьи VR и 3D Games Исследуем сочетание технологий SLI и 3DStereo

Исследуем сочетание технологий SLI и 3DStereo

Печать PDF
Стерео в вопросах и ответах

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

14/04/2007. Исследуем сочетаниеf технологий SLI и 3DStereo

Минимальное разрешение просмотра 1280х1024 [включить мах ширину экрана в настройках шаблона ]

Исследуем сочетание технологий SLI и 3DStereo


Исследуем сочетание технологий SLI и 3DStereo
Перечень встречающихся в статье аббревиатур и их расшифровка.

Stereo - (сокращение приведено толькодля использования в рамкахданной статьи. за пределами этого материала может иметь как похожее, так и совсем иное значение и смысл) - технология получения воспринимаемого в объёме именно изображения, а не только наблюдения на экране плоской перспективы трёхмерной сцены происходящего. Специальные алгоритмы создают раздельные ракурсы изображения для каждого из глаз, по информации с которых наш мозг, как и в реальной жизни "строит" объёмную картину. Есть много способов построения таких ракурсов и представления каждого из них тому глазу, для которого каждый и предназначен. Подробней об этом можно прочитать здесь, на этом интернет-ресурсе
SLI - Scalable Link Interface - Интерфейс, разработанный компанией NVidia. Он позволяет объединить две видеокарты в единую систему формирования изображения на экране, используя все имеющиеся в наличии ресурсы, максимально эффективно и согласованно. Прирост производительности может достигать до двух раз. Для большей совместимости с 3D приложениями, имеет два различных режима работы: AFR и SFR.
AFR - Alternate Frame Rendering - Альтернативное формирование кадров. Каждый графический ускоритель готовит свой отдельный кадр целиком. Потом кадры по очереди выводятся на экран от разных ускорителей. Режим имеет свои особенности, достоинства и недостатки.
SFR - Split Frame Rendering - Совместное формирование кадров. Оба ускорителя занимаются подготовкой разных частей одного и того же кадра. Верхней и нижней соответственно. В поддерживаемых SLI приложениях замечено, что по определению режим используется значительно реже, но он также имеет свои отличительные особенности, достоинства и недостатки.
fps - Frames per second - Количество кадров в секунду. Показатель, принятый индустрией в качестве мерила скорости. Ввиду динамического изменения его в процессе работы приложения из-за изменения сложности сцены и соответственно нагрузки на ускорители, обычно измеряют максимальное, минимальное и среднее его значение за некий период времени.
VSync - Vertical syncronizanion - Вертикальная синхронизация. Способ, позволяющий выводить последовательные изображения на экран согласованно, без рывков и задержек. ЦПУ - Центральное процессорное - собственно тот самый процессор, который стоит у устройство нас на материнской плата (но НЕ на видеокарте).

Вступление

"Как много нам открытий чудных..." Да-да! Именно об этом и хотелось бы поведать в этой статье про самые значительные технологии визуализации изображения на ПК, появившиеся у нас сравнительно недавно и позволяющие окунуться в океан новых эмоций и впечатлений. Но сначала придётся во всём детально разобраться, как и почему это происходит. Итак, обо всём по-порядку. "Не всё так однозначно, как хотелось бы". Пожалуй этот слоган стоило бы поставить во главу проведённого мероприятия по проведению исследования и подготовке данной статьи. Относительная новизна и сложность технологий, а также сырость программного обеспечения для их реализации, а тем более совместного использования - ставят множество преград для достижения максимального эффекта от их применения. В результате чего, в лучшем случае у пользователя складывается неправильное впечатление о новинке, а в худшем – человек просто машет рукой на все эти "причуды" и теряет к ним интерес как к таковым. А зря! Путь энтузиаста долог и тернист, но цель, как правило - оправдывает средства. Для того, чтобы это происходило чаще, нужны: голова не плечах, прямые руки, растущие откуда нужно, целеустремлённость и немного терпения. Сегодня мы рассмотрим целесообразность сочетания и необходимость в перспективной, но пока ещё дорогой технологии SLI от NVidia с широко популярным в узких кругах получением стереоизображения на наших экранах при помощи затворных стереоочков. О SLI на просторах интернета можно найти массу статей с исследованиями, тестами и выводами и в большинстве своём они рассчитаны на массового пользователя, которому зачастую просто негде увидеть все преимущества данной технологии. И авторы этих статей констатируют, что проценты прироста производительности со времён появления технологии SLI в достаточно большом количестве игр заметно подросли и затраты на покупку вполне оправдывают средства. Выход серии 8800 ограничивающим фактором сделал центральный процессор, в связи с чем начались соревнования "у кого больше и лучше антиалиазинг", а компании Dell и Apple даже представили 30" ЖК мониторы сверхвысокого разрешения 2560х1600. Но так ли уж излишни мощности современных видеокарт, если мы вспомним, что массовый потребитель практически ничего не знает о стерео? Не секрет, что для создания стереоизображения максимального качества на экране монитора нам понадобятся именно жидкокристаллические затворные очки, плюс хороший ЭЛТ монитор и видеокарта от NVidia. По сути - нам нужно сформировать на экране два ракурса изображения (по одному для каждого глаза), вместо привычной одной. Информацию для получения второго ракурса мы можем взять из z-буфера видеокарты. Т.е. двойную работу придётся проделать именно нашей видеосистеме. Поэтому, почему бы не использовать всю "лишнюю" мощь второй видеокарты именно для решения нашей стереозадачи? При грамотной реализации - должна получиться достаточно сбалансированная и эффективная система. А вот как это удалось реализовать инженерам и программистам из NVidia, мы на практике сейчас и посмотрим.

 

Исследуемые вопросы и методика тестирования.

Данная статья позиционируется как намерение автора поделиться накопленными знаниями и опытом в достаточно редких вопросах, связанных с технологиями, поставленными во главу исследования и попыткой прояснить для себя и остальных заинтересовавшихся полезные вещи. Речь пойдёт о том, насколько велика эффективность SLI именно в стерео. Стоит ли оно того. В тестировании нам сегодня предстоит выяснить следующие вопросы:

1. Совместимо ли стерео со SLI?
2. Насколько эффективно и качественно реализована поддержка этого сочетания в драйверах и с различными режимами работы SLI? Как это скажется на новых и старых играх?
3. В каких приложениях (новых и старых), а также разрешениях востребована такая большая производительность? Много её или вдруг даже мало?
4. Будут ли теперь не самые производительные процессоры сильно ограничивать производительность и каков будет её прирост от перехода на GeForce 7800 GTX и SLI? (к сожалению стереодрайвера для карт серии 8800 до сих пор общественности не представлены)
5. Визуальные артефакты изображения. Где они есть, какие и как с ними бороться?

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

1. Из качества картинки - конечно же выжимаем максимум. И в играх и в драйверах. Кроме особо новомодных функций (где такие будут), типа негативно влияющих на совместимость стерео со SLI или не поддерживаемых официально драйверами и способных "поставить на колени" даже только появившихся видеомонстров, что разумнее будет от них - отказаться.
2. Антиалиазинг - вещь достаточно ресурсоёмкая и на взгляд автора не настолько полезная, чтобы так расходовать силы ускорителей. Учтитывая пожелания и самих разработчиков не пользоваться ею в стерео, от включения антиалиазинга - решено было отказаться совсем.
3. Разрешение экрана было выбрано также - максимально возможным. Во-первых, чтобы понять, действительно ли SLI способен справиться даже с предельными режимами. Во-вторых, для сравнения с близким к этому реальным игровым профилем автора, что говорит о уже сегодняшних возможностях техники (а не за горой уже и бытовое качество HDTV на ТВ).
4. Учитывая влияние опции VSync как на качество восприятия изображения на экране пользователем так и на "реакцию" происходящего на совершаемые действия, также будут затронуты и результаты работы со включенной опцией синхронизаци, так и с выключенной.

Железо, софт, настройки.

     

    Cистема для исследования:

  • Процессор: Athlon X2 4400+, 2,2ГГц 1+1МБ кэш.

  • Охлаждение: Боксовый кулер.

  • Материнская плата: ASUS A8N-SLI Premium, rev. 1.02, Bios ver. 1005.

  • Оперативная память: Patriot 2x1Gb DDR400 2-3-2-5.

  • Видеосистема: Две видеокарты Gigabyte 7800GTX, o/c=485/1305.

  • Накопители: IDE, 80ГБ Hitachi.

  • Блок питания: Zippy (Emacs) PSL-6800P, Active PFC, 800Вт.

  • Монитор: 22", Iiyama Vision Master Pro 514, A204DT.


    Программное обеспечение:
  • Операционная система: Windows XP, SP2.

  • Драйвера: NForce: 6.66. видео: с 77.77 по 93.81, noAA, AF16x, FrameBuffer=Double.

  • стерео: с 77.77 по 93.81, Separation 30%. DirectX: 9.0c.
Computer for test procedures
gamer's computer

Для количественных тестов (полная таблица Excel с результатами различных конфигураций чтобы не перегружать статью излишними цифрами приводится здесь): total_dual.xls

3DMark`05 Pro ver. 1.1.0: PS ver.2.0a, VS ver.2.0, no Post-processing.
3DMark`03 Pro ver. 3.3.0: no Post-processing.
3DMark 2001SE Pro ver. 3.3.0: 32-bit textures, framebuffer=double.
3DMark 2000 Pro ver. 3.4.0: framebuffer=double.
Doom 3, ver. 1.3, "demo1" Ultra Quality, EAX4=on, Enhanced Models Mod, + рецепт от Кирилла Гаврилова. (go to forum)

Прочие настройки тестов: максимальное качество. Для качественных тестов (общие выводы) были использованы различные игры из перечня игр совместимых со стереодрайвером NVidia.

Возникшие в ходе тестирования проблемы, глюки, непредвиденные обстоятельства.

Первоначально поле для экспериментов было выбрано - действительно не маленькое. Это предупреждение всем, кто ещё не сталкивался сам с организацией и проведением серьёзного тестирования. Силы нужно рассчитывать заранее, т.к. по закону Мёрфи, что-нибудь должно обязательно пойти не так. Вот и автору приходилось порой долго думать и аналзировать, почему те или иные цифры "вдруг" не вписываются в общую картину, искать, находить и исправлять ошибки, заново делая те или иные замеры по нескольку раз. Но пазл рано или поздно сходится и тогда можно смело констатировать некоторые вещи, про которые следует узнать и всем остальным:

1. Для того, чтобы гарантировать себе, что приложение будет работать на выбранной вами частоте обновления экрана в желаемом разрешении - следует запастись специальной программкой, позволяющей вручную выбирать и фиксировать частоту для того или иного разрешения при работе в Direct3D и OpenGL. Некоторые программы любят самовольно этим распоряжаться, выбирая, как правило, минимально доступные 60Гц. И пусть стереодрайвер имеет описанный способ фиксации, работает он лишь тогда, когда драйвер - активирован.

2. Для того, чтобы гарантировать себе, что приложение будет работать на выбранных вами настройках драйвера - перед запуском приложения лучше перезагрузиться, тем более, если вы вносили в них изменения. Не все настройки и не всегда почему-то принимаются системой сразу. "Восток - дело тонкое..." (С). Пример: при запуске 3DMark`05 в режиме SLI-AFR, количество fps, иногда, отличалось в два раза! (проверено неоднократно!).

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

4. При смене перед тестированием связки драйверов с 71.74 на 77.77, обнаружилось, что количество fps в Doom 3 при активации стереорежима в драйвере 77.77 в игре резко упало (в 7 раз, по сравнению с ожидаемым падением в 2,4 раза по результатам замеров в версии 71.74). SLI ситуацию не исправляет.

5. Не все приложения измеряющие fps делают это корректно в работающем стереорежиме. Это зависит от способа измерения. Хорошим способом проверить это, явилось переключение различных режимов SLI. Учитывая, что производительность в обоих режимах должна быть, если не одинакова, то по крайней мере сохраняться на одном уровне, различия почти ровно в 2 раза на итак небольших fps и при визуальной одинаковости ощущений этих fps - говорят только о том, что механизмы измерения fps могут просто не знать о том, что такое стерео, как оно работает и давать некорректные результаты (отличия, как правило, кратны двум).

Результаты исследования и выводы.

Мы постараемся сохранить последовательность выводов согласно порядку поставленных нами перед тестированием вопросов:

1. Однозначно - ДА.Стерео и SLI - совместимы. Но только если приложение использует стандартный подход к формированию изображения на экране и задействует стандартные функции драйвера. Тогда вопросов возникнуть не должно. Стереодрайвер заметно отстаёт по реализации поддержки новых и оптимизации старых функций от своего брата видеодрайвера, но это отставание не критично. Большинство приложений позволяют корректно задействовать и SLI и стерео одновременно. Из оставшихся, наиболее грамотно написанные программы позволяют включать/выключать все новомодные или просто ненадёжные функции у себя прямо в настройках или даже меню. К таким рано или поздно обязательно находится "лекарство". К сожалению, все остальные лечению не подлежат без серьёзного вмешательства их авторов или задействования пользователем утилит сторонних разработчиков (ссылки). Для остальных вердикт: запускать без стерео или SLI, или, с грустным вздохом - на полку. Возможно до лучших времён.

2. Эффективность и качество реализации SLI со стерео, можно сказать, что на достаточно приличном уровне. Конечно несколько портит впечатление сырость драйверов, но при всём общем эффекте получаемом от применения указанных возможностей, даже некоторая нестабильность работы режимов SLI, периодические артефакты изображения и прочее, как кажется автору - не способны вызвать отторжение у пользователя. Наоборот – хочется воскликнуть: "Ещё! ЕЩЁ!". ;) Одно сказать можно точно: для каждого приложения свой режим SLI надо подобрать. Это дело скорее вкуса, чем логики - слишком многие детали нужно учесть или же просто закрыть на них глаза. Выбрать более плавный SFR, который может выдать артефакт в виде горизонтальной полосы разделения изображения по ускорителям на экране, или безупречный по качеству картинки, но визуально "дискретный" (при fps, меньших чем частота обновления экрана) режим AFR. Также от приложения будет зависеть и загрузка тех или иных компонентов системы и тот или иной режим SLI может просто показать себя гораздо эффективней, ведь если AFR больше нагружает шину передачей полного объёма данных по геометрии для каждого из ускорителей в отдельности, то SFR, наоборот должен хранить в памяти обоих ускорителей полный набор текстур для одного и того же кадра, хотя и работают они над каждым вместе. А у нас тут ещё и стерео в придачу. Как скажут оверклокеры: "Оставлять всё по умолчанию - значит не использовать и половины возможностей системы". Недаром на автомобильных соревнованиях все машины полностью перенастраивают к каждой трассе. А про старые и новые игры (в качестве примеров которых выступали все 3DMark`и), можно констатировать следующее:
а) В целом выигрыш в новых приложениях значительно выше. Старые - зачастую просто не способны использовать все новые возможности современных ускорителей и оптимально загружать работой все компоненты системы, т.к. рассчитывались на принципиально другие архитектуры.
б) Выводы из пункта "а" ещё не говорят о том, что для старых игр бессмысленны все самые современные ускорители и их технологии. У палки - два конца. В конце концов мы не в ускорители играем. Если нельзя выжать все соки из графической платы, значит можно выжать максимум качества и скорости из самой ИГРЫ. Все настройки на максимум, практически нет проседания fps на самых тяжёлых сценах игры и минимальный fps стремится к значению частоты обновления изображения, реакция происходящего в игре на ваши действия - отзывчива как никогда, а плавность - просто божественна... Не это ли то самое счастье, которого мы так долго ждали? Не за это ли многие так любят игровые приставки и на дух не переносят ПК? Именно в старых играх можно наконец-то отключить VSync без боязни получить рваную картинку, повысив чувствительность игры.

3. В отличие от телевизоров приставочников, на мониторах ПК уже давно можно выставлять разрешения просто умопомрачительной величины (ЭЛТ до 2048х1534) с приемлемой частотой обновления экрана. Это в свою очередь самым прямым образом влияет на качество восприятия игр. Любители приставок получили подобное лишь с распространением нового поколения приставок с HDTV (телевидение высокой чёткости с разрешениями до 1920х1080 при прогрессивной развёртке). Нынешние же пользователи ПК уже несколько лет имеют возможность наслаждаться подобным качеством. При удачном же стечении обстоятельств, совместная технологии SLI может помочь разобраться попутно и ещё с некоторыми старыми проблемами (особенно с узкими местами системы). Тогда суммарный выигрыш может дать результат, казалось бы выше возможных величин. Представить это можно на очень простом примере: Пусть в игре используется огромное количество взаимозависимых геометрических шейдерных расчётов и бутылочным горлышком является блок геометрических вычислений ускорителя. Добавление в систему ещё одного ускорителя поднимет fps в 2 раза, т.к. ЦПУ пусть в состоянии прокормить оба ускорителя (сцена не такая сложная, но много взаимодействий, т.е. физики). Наш текстурный блок ускорителя, как и ЦПУ - пусть был загружен всего на 25% (текстура, это не только цвет, но и детали, которые мы пока не можем отобразить полигонами) и при удвоении числа своих блоков, соответственно остался загружен на те же 25%. Мы включаем режим SFR, что позволяет нам снять половину нагрузки с каждого блока геометрии на обоих ускорителях и начать в 2 раза чаще принимать от ЦПУ данные. Загрузка текстурных блоков теперь выравнивается до 50%, т.к. блоки геометрии стали в 2 раза чаще посылать результаты своей работы. И вот здесь - самое время взять стереодрайверу данные из z-буфера и загрузить текстурники каждого ускорителя с их дальнейшим конвейером работой над вторым ракурсом стереоизображения. Так, при проведении несложной оптимизации, мы смогли бы при помощи SLI поднять fps в стерео в 4 раза! Пусть в теории, но до практики ей не так далеко, как кажется пессимистам. Как раз именно старые игры, недогружающие ускорители, и обладают таким потенциалом. Как вердикт: совершенству нет предела. И к хорошему быстро привыкаешь. Автору же ещё многое показалось недостаточным и он имеет вполне здравое желание "погонять" и "маловостребованные" пока на рынке двухчиповые видеокарты. В SLI и стерео, конечно.

4. Если рассматривать вопрос ограниченности производительности SLI c точки зрения узких мест, т.е. могут ли они вообще возникнуть, то "да" и довольно часто. Можно привести множество примеров того, как можно выкрутить настройки качества до такой степени, что даже топовые карты в SLI "встанут на колени". Разумнее будет сказать, что желание не разочароваться в потраченных понапрасну деньгах всегда будет зависеть от самого пользователя, его понимания того, что "счастье за деньги не купишь", и что придётся всегда приспосабливать и приспосабливаться самому. Процесс "притирки" - неизбежен. В конце концов, ещё раз с сомнением взглянув на эти слова, подумайте о том, что для начала можно просто взять и поискать способ зарабатывать себе деньги на эти вещи, вместо того чтобы сидеть и мучаться вопросом о том, насколько экономно ты на них тратишься. Опять же, софт, который выходит на рынок, старается следовать его веяниям и то, что сейчас сложилась ситуация, когда приложениями не используются огромные вычислительные ресурсы многоядерных и многопроцессорных систем, но именно центральный процессор чаще всего становится узким местом - не может существовать долго. Перемены эти - серьёзные. И ситуация должна "назреть". Тотальное "раздваивание" уже говорит само за себя. Время - пришло. Те кто думает о завтрашнем дне - должны учесть это. Те же кому правда нужна "здесь и сейчас" - переходить на SLI ещё рановато. Но не стало бы поздно, как это получилось с уходящим рынком ЭЛТ мониторов и сырыми технологиями ЖК, затормозившими распространение качественного и дешёвого способа просмотра стерео на экранах мониторов ПК. Удачу, её ведь - ловить надо. Самому...

5. Для начала разделим понятие "качество изображения" на две основные категории: видео и статичное изображение. В каждой из них есть свои подводные камни. Вот теперь - о них:

Проблемы, которые могут иметь статичные изображения:

а) Отдельные цветные точки на экране, не соответствующие тематике изображения (очень хорошо это заметно на текстурах неба, которые часто используются во многих играх). Как правило они возникают вследствие переразгона или просто некорректной работы чипов памяти ускорителя. При перегреве (переразгоне) ядра, изображение – просто замирает на некоторое время или насовсем (зависание). Решить проблему можно сняв разгон или обеспечив должное охлаждение, если это не аппаратные уже повреждения.

б) Горизонтальная полоса, не соответствующая тематике изображения, идущая через весь экран (высота её расположения может быть любой). Эта проблема может возникнуть в некоторых приложениях при включенном режиме SFR у SLI из-за некорректной стыковки верхней и нижней части изображения, формируемыми разными ускорителями. Устранить это можно лишь выбрав другой режим SLI - AFR (если это возможно).

Подраздел для стереоизображений:

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

Проблемы, которые могут возникнуть при формировании на экране видеоряда из статичных изображений:

а) Tearing. Этим термином принято называть эффект, проявляющийся при несогласованном последовательном выводе изображений на экран, выглядящий как будто часть бумажной картинки оторвали и немного сдвинули в сторону, а образовавшейся дыре – видна часть предыдущего кадра. Это происходит в результате того, что при формировании каждого кадра ускорителю приходится выполнять НЕ одинаковый объём работы, т.к. в сцене могли поменяться объекты, текстуры, освещённость и пр. В связи с этим, время на подготовку разных кадров - разное. Но устройство, выводящее изображение на экран в единицу времени показывает всегда одинаковое число пикселей - исходя из выбранного разрешения и соответственно делает это через одинаковые промежутки времени. Поэтому запросто возможна ситуация, когда ускоритель не успел закончить рисовать картинку в видеобуфер, а устройство уже начало выводить его на экран. Для борьбы с этим явлением была придумана функция VSync, которая не позволяет устройству получить доступ к незаконченной картинке. Но у этой функции есть и недостатки. При недостаточном количестве fps, т.е. когда частота обновления экрана выше, устройство вынуждено отразить на экране полностью весь - старый кадр, когда ускоритель не успел в назначенный срок полностью сформировать изображение. Тогда возникает другая проблема, названная автором как "дискретность" (см. ниже).

б) Дискретность. Движение на экране получается из непрерывной череды кадров. И тем плавнее и естественнее движение, чем лучше соблюдаются "правила работы конвейера". Когда всё идёт хорошо - более высокая скорость конвейера позволяет нам лучше абстрагироваться от того, что он состоит из чётких стадий. Нравилось бы вам видеть кино как комиксы - набором слабо связанных картинок? Нет. Связывает их в единое действие - правильная и быстрая работа конвейера. Поэтому, сбои - не просто видны. Они заметны сразу и очень сильно. Потому, что их не ожидаешь. Не ожидаешь, потому что не хочешь. Вообще, частоту колебаний какой-то величины определить проще, чем её абсолютное значение. Потому - важна не величина fps, а разброс её значений. Все готовы удивляться, почему нам хватает 25 fps в кино, но недостаточно в играх, но мало кто готов задуматься - почему так. Вот это - и есть причина. Повторенный 2 раза кадр - бросается в глаза эдаким "подёргиванием" картинки. Идущий на экране человек - как бы запинается обо что-то. Выглядит это очень неестественно и портит впечатление. Потому автор и склонен уделять столь серьёзное внимание этому фактору. Способов борьбы с этим явлением - много:

1) Отключить VSync, поменяв дискретность обратно на tearing.
2) Снизить частоту обновления экрана.
3) Поднять fps (снизив разрешение, ухудшив настройки качества, проведя апгрейд).
4) Подождать, пока на рынке появится с соответствующей производительностью доступная техника (без тени смеха), плюс успеют патчами поправить все огрехи.

Подраздел для стереоизображений в динамике:

в) Объекты в сцене, которые должны выглядеть объёмно, на экране - выглядят плоско. Стоит проверить такие настройки стереодрайвера, как: активация стереорежима, величина разделения стереоракурсов (separation, горячие клавиши F3, F4) и сведение (горячие клавиши F5, F6). Если не помогло, то попробовать повключать/повыключать различные графические настройки в самом приложении (игре). На крайний случай, есть смысл поискать решение в интернете - многие вопросы там решены достаточно оригинальными способами ("голь на выдумки хитра" (С)). Если же и это не помогло, то скорей всего придётся с этим смириться и ждать. Возможно решение ещё появится.

г) Ghosting. Гостинг - явление, наблюдаемое пользователями затворных ЖК очков. Один из немногих, но серьёзных недостатков этого, по праву считающегося сейчас, самым качественным и удобным из способов просмотра стереоизображений. Заключается в том, что изображение, предназначенное для одного глаза, слабо, но видно другим глазом. Отсюда и название, что в переводе означает - призрачность. Особо сильно его видно на контрастных изображениях типа "яркие звёзды на ночном небе" вкупе с движением изображения типа "панорамирование". Сила эффекта зависит от качества аппаратной реализации очков, устройства вывода изображения на экран и стабильности использованных алгоритмов синхронизации обоих.

Перспективы.

Востребованность технологий - оставляет пока желать лучшего. Стерео - потому что не знают, не пробовали, по прежнему не представляют, что это и что оно вообще бывает. SLI - из-за неверных выводов независимых аналитиков, плохо разобравшихся в вопросе и неумения/нежелания делать грамотный прогноз. На столах уже стоят дву+ядерные ЦПУ, ждущие программистов, когда они загрузят как следует вторые ядра работой. Вышли на рынок физические ускорители от Ageia и поддерживающий их чудо-движок Unreal 3. Такого потенциала хватит для загрузки на все 100% и для пары ускорителей следующего поколения, не то что нынешнего. Не бегать же в магазин каждый месяц за новинками. Многие собирают себе ПК сейчас, но на несколько лет вперёд и не будут его менять уже завтра. И им стоит знать, чего ждать завтра, а не слушать однозначные выводы в духе: "Сейчас - нет... Сейчас - ещё нет... А вот теперь - давай! Покупай!" Архитектурно, SLI пока выбрал достаточно дорогой способ подъёма производительности: увеличением количества чипов/ядер. Трудно сказать, сможет ли удержаться долго на рынке такой высокий по себестоимости вариант, как делать для каждого чипа отдельную карту, но для обкатки и продвижения новых технологий - вполне сгодится, тем более, что NVidia в своё время достались значительные наработки подобной технологии от 3Dfx и именно на нескольких графических платах. Вполне предсказуемо, что карты с двумя чипами на борту это правильная попытка решить эту проблему. Здесь понятно, что самой целесообразной является идея более сильной интеграции компонентов, но последний чип Nvidia и так уже содержит огромное количество транзисторов, что возникают сложности с его проектированием. Необходимо искать другие способы решения этого вопроса и более простой найденный из них это установка более двух ядер для работы вместе на одной карте. Так удаётся заметно снизить себестоимость графических решений, они ещё за счёт лучшей интергации оказываются чуть более производительными. Разработчики игр: вам тоже следовало бы серьёзней подумать над тем, чтобы позволить игровым движкам динамически менять загрузку имеющихся мощностей ПК, парк которых так же многообразен, как и мир живых существ в природе. Качественно масштабировать текстуры (пусть и в сторону уменьшения только) за вас аппаратно уже научились (хотя что мешало создать пакет из разноразмерных, но уже готовых и качественных?), а вот с полигонами идея - как-то завязла. Да и кто увидит, тот же спрайт это или полигональная модель меньше чем в десятке пикселов далеко на экране прыгает? Ругают-то - ЦПУ, за неспособность обеспечить должный объём геометрии для ускорителей. Те потом гнутся под тяжестью работы, которую и делать-то может и не нужно было. Опять же - масштабируемость игр увеличится. Только не забудьте регулирование параметра дальности замены полигонов спрайтами оставить нам. Помните, в стереоочках все ухищрения и недостатки мы легко увидим. А так - больше народу сможет в поиграть в такие игры. Вам - рост продаж. А как приятно потом купить аддончик, годика через два и запустить его уже на совершенно новом качественном уровне? Как новая игра... Да - это увеличение времени на создание игр и затрат на них. Ну так индустрия давно уже предложила выход из ситуации – пусть созданием игровых движков занимаются профессионалы. Остальным нужно будет только наполнять их содержанием. Но самый главный вопрос к разработчикам софта и непосредственно игр, это, конечно же, «знание» рынка окружающих их технологий. «Знание» именно в кавычках! Результаты опроса, проведённого на выставке КРИ2007 просто удручают. Практически тотальное отсутствие даже элементарных знаний о 3DStereo у большинства участников, тем более не считая тех, кому просто не повезло с первым опытом, заставившим забыть эту технологию как страшный сон. Плохо, господа, очень плохо! Нельзя так работать. Двухъядерные процессоры, опять же. Раз уж игровая, да и не только, индустрия взяла курс на многопоточность и начала разрабатывать приложения изначально основываясь на этом, что мешает разработчикам уже сейчас написать патчик к своей игре, переписав там те участки кода, где можно распараллелить алгоритм? Не все, а могущие особо ощутимо повлиять на производительность игры или ещё какие узкие места. Почему многие выходящие приложения даже "понятия не имеют" о многопоточности. А аппетиты растут. Думаю, что Intel и AMD не прочь бы и пофинансировать такие потуги для особо популярных игровых проектов. Это легче, чем с нуля новыми методами писать новый продукт. Патчи проще, но даже они могут дать хороший начальный опыт. Не придётся потом делать громадную работу над ошибками. ATI. Хорошая компания, но вот со стерео дружить почему-то не хочет. Энтузиасты, что покупают самые дорогие карты и являющиеся самыми заядлыми игроками - жалуются: "Для нормального использования стереоочков - приходится переходить на NVidia. Обидно...". Cам лично видел досаду на лице уходящего от меня после стерео ATIшника. "Лучшее - враг хорошего." NVidia. Во-первых огромное спасибо вообще за существование самого стереодрайвера. Жаль только что стереонаправление для компании не является основным, а потому поддержа осуществляется крайне слабо: раз в полгода, да и то изменений - кот наплакал. Обидно. В последнее время ожидания очередной версии драйвера настолько превысили все ожидания, что некоторые энтузиасты нашли в себе не только желание, но и силы собраться, сесть и начать писать свой собственный стереодрайвер. В этом разрезе про SLI говорить не то, чтобы нечего, а даже и смысла нет. Вдвойне обидно. Ну, чтобы не только ругать, но и чем-то попытаться помочь, попробую высказать компании NVidia идею, прозвучавшую на нашем форуме. Действительно, почему бы просто не придумать некий бренд типа “NVidia 3DStereo” и договориться с издателями игр о помещении его на упаковку и диски? Для этого достаточно проверить или обеспечить работу в стерео хоть в каком-то из режимов (тот же практически отработанный DX8-стерео для игр). Помешать это никому не помешает, а пользователю всегда будет любопытно, что это за бренд, и с чем его едят. Половина из интересующихся обязательно захочет попробовать, а из тех кто уже попробовал, от нас из стереокомъюнити ещё никто не уходил. ;) О качестве изображения. Тенденции последнего времени заставляют владельцев стереоочков даже не вздрагивать, а цепенеть от ужаса. Вместо того, чтобы повышать реалистичность картинки честным и естественным путём, нам впаривают непонятно что! И причиной тому накладываемые на подготовленную видеоускорителем картинку разнообразные эффекты постпроцессинга, подразумевающие под собой почти чисто 2D-операции и потому прекрасно видимые, а точнее ужасно выглядящие в стерео. Модный слоган последнего времени: "Мы дадим вам фотографическое качество картинки". О`кей, но товарищи разработчики и их маркетологи, вот только не нужно нам под этим соусом подкладывать просто красивые эффекты, считая, что только это нам всем и нужно. Не всем! Одни ждут от игр простого, понятного и "прикольного" расслабона и идут покупать приставку и пачку игр наподобие Братьев Марио. С ними - вопросов нет. Это не про них. Другим – подавай реалистичность, под чем подразумевается максимальная схожесть с нашей жизнью. Здесь никакие финты не пройдут - всё должно быть максимально честно и правдиво. Фотографические фокусы, используемые профессиональными фотографами для придания "остроты" и индивидуальности снимку, тут играют роль лишь соуса к блюду. Ну так и подайте нам его рядом с блюдом. Это нам, пользователям, решать - есть его или не есть. Это индивидуальность, которая не каждому-то и по вкусу придётся. Вот взять к примеру тот же Motion Blur - эффект размытия картинки при наличии быстрого движения в ней. Это свойство наших глаз, что зависит от выбранного нами фокуса зрения. Размазывать городской пейзаж при взгляде на быстро движущуюся машину или же саму машину, смотря на город - выбирать НАМ, а не ВАМ. На каком объекте хотим - на таком и фокусируемся (привет тому же "Depth of Field"). Между прочим, у меня и так, когда я пристально смотрю в центр экрана изображение по краям размазывается. Зачем же мне мылить его ещё сильнее? Игра - не кино, где нужно всегда подчёркивать те или иные моменты. Она - интерактивна. И многие хотят рулить всем процессом сами, в этом и состоит реализм, потому и меняют фильмы на игры. Поищите компромисс. Оставьте хотя бы в опциях возможность включить/выключить эти вещи. Мы же - всегда это оценим.

Вопросы для дальнейшего обсуждения на форуме.

Автор пожелал, чтобы статья не стала неким законченным материалом, который должен восприниматься всеми "как есть". Автор тоже человек и может ошибаться. Как в деталях, так и концептуально. Дальнейшее обсуждение статьи планируется осуществлять по следующему адресу на форуме Virtual & Really.Ru При появлении и уточнении серьёзных моментов, желании добавить результаты тестирования, к статье планируются периодические обновления. Итак, возникшие к данному моменту у автора вопросы:

1. При включенной опции VSync, если ускоритель способен прорисовывать более чем двукратное количество fps по сравнению с выставленной частотой обновления экрана, продолжают ли складываться в видеобуфер кадры, чтобы к необходимому моменту взять из них самый последний, наиболее соответствующий произошедшим в игре изменениям, или конвейер всё это время простаивает до синхронизации, встав сразу, как сделал кадр?

Наверх

Полезные ссылки:

Алексей Веселкин

Author :
Алексей Веселкин
(aka Alex TOPMAN)

AddThis Social Bookmark Button