21 Авг 2019 - 16:20:20
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.

Войти
 
 
   Начало   Поиск Войти Регистрация  
Страниц: [1]
  Печать  
Автор Тема: Реализация прозрачности алгоритмом Stencil Routed A-Buffer на DX 10
Robot

Сообщений: 653


Робот УралДев
Просмотр профиля
« : 04 Июл 2010 - 22:23:02 »

Реализация прозрачности алгоритмом Stencil Routed A-Buffer на DX 10
Роман Кузнецов "Romanek"

Рассматривается интересный алгоритм Stencil Routed A-Buffer метода реализации
прозрачности Order Independent Transparency с помощью Direct3D 10.


http://www.uraldev.ru/articles/id/40
Записан
Romanek
Юзеры

Сообщений: 10

Роман Multisoft
Просмотр профиля WWW
« Ответ #1 : 05 Июл 2010 - 13:48:21 »

От себя замечу, что было обнаружено некорректное поведение алгоритма на видеокарте под управлением Direct3D 10.1. Предположительно, это связано с тем, что при выключенном MSAA и рендеринге в MSAA-текстуру сэмплы заполняются иначе.

Если у кого AMD-шная карточка проверьте, пожалуйста, у себя. Буду признателен.
Записан
DikobrAz
Юзеры

Сообщений: 44


222950825 < Дмитрий
Просмотр профиля WWW
« Ответ #2 : 06 Июл 2010 - 13:30:27 »

У меня на Radeon 5750 вроде все нормально.
Записан
keYMax
Юзеры

Сообщений: 682



Просмотр профиля WWW
« Ответ #3 : 12 Июл 2010 - 19:36:29 »

Вставлю свои 5 копеек. Не ATI но все же, пример запустился без проблем на жф9600. Оригинальный метод у вас использования буфера однако )
Записан
kore3d
Юзеры

Сообщений: 31

146735863 Евгений ИЦ Графика
Просмотр профиля WWW
« Ответ #4 : 13 Июл 2010 - 12:04:22 »

я в код толком не вчитывался, но по сути это разбор демки NVIDIA и написание более наглядного примера
на радеонах баг на стыках точно есть, но его плохо видно (можно не заметить) - он и в демке Хумуса присутствует
наличие бага - это недоработка драйверов

Если использовать HAL 10.1 и 11.0 работать алгоритм не будет.
Выдержки из SDK, раздел Direct3D 10.1 Features:
MultisampleEnable only affects line rasterization (points and
triangles are unaffected), and is used to choose a line drawing
algorithm. This means that some multisample rasterization from
Direct3D 10 are no longer supported
.


Пример бага из демки к статье и то как он выглядит в демке NV:
Записан
CoderAX27
Юзеры

Сообщений: 350


Rungine.ru, Stu27.com

team@Stu27.com Антон Rungine
Просмотр профиля WWW E-mail
« Ответ #5 : 18 Июл 2010 - 14:12:24 »

У меня на АМД все ровно, провда если заглянуть на фигуру с другой стороны, то в глаза бросается приедставленый ниже баг (нужна сортировка треугольников):

http://depositfiles.com/files/jnd0icqg9
« Последнее редактирование: 18 Июл 2010 - 14:13:23 от CoderAX27 » Записан

Мои проекты:
Rungine.ru - простой игровой 2д движок
Stu27.com - Профессиональная разработка сайтов
Romanek
Юзеры

Сообщений: 10

Роман Multisoft
Просмотр профиля WWW
« Ответ #6 : 19 Июл 2010 - 08:06:42 »

Обратите внимание, что уровень MSAA равен 2. Простыми словами это значит, что визуализация будет корректной, только если мы смотрим не более чем через 2 полупрозрачных слоя. Для того, чтобы видеть, где алгоритму не хватило слоев включите режим отображения Overflow buffer'а.
Если, конечно, Вы про это. То, что показал Евгений, и то, о чем я писал ранее, на данном скриншоте также прекрасно видно.
« Последнее редактирование: 19 Июл 2010 - 08:09:46 от Romanek » Записан
Страниц: [1]
  Печать  
 
Перейти в: