20 Мая 2024, 08:09:44
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.

Навигация по форуму







guest3d
Quest3D - Русскоязычное сообщество > Quest3D > Выставка - тестерская > Deferred shading
Deferred shading
(Прочитано 10725 раз)
  [1]
Печать
Alteste | *** | Постоялец | Сообщений: 224 | « 04 Июня 2011, 22:39:20 »
Deferred shading |
0
Сценка с 30 источниками света и системой раздельного освещения Deferred shading. Ссылка для скачивания - http://alteste.ru/download/Deferred_shading.exe

Всем, кому интересно что такое Deferred shading, и как его сделать в Quest3D - прошу ко мне в блог www.alteste.ru где я подробно все описал)

Всем, кто в теме - прошу отписывать о найденных ошибках, я обязательно их учту и исправлю.
Спасибо за внимание!

* deferred.jpg (196.09 Кб, 667x475 - просмотрено 1562 раз.)
« Последнее редактирование: 04 Июня 2011, 23:15:30 от Alteste »
Sqwer | ***** | Ветеран | Сообщений: 540 | «Ответ #1 04 Июня 2011, 23:03:16 »
Re: Deferred shading |
1
1. Не учитывается  смещение  полпиксела.
2. Нет корректировки по позиции.  (можно проверить так:  размести сцену  в 3000 юнитах  от центра мира и посмотреть что из этого выйдет)
3. ужиматься на 8бит-канал  затея для старых видях.
4. Для удобного подключения ИС   нужно  юзать Найчур. (в противном случае замучаешься подключать ИС, или схлопочишь  овердрав если через фор луп).
Alteste | *** | Постоялец | Сообщений: 224 | «Ответ #2 06 Июня 2011, 14:12:43 »
Re: Deferred shading |
2
1. Для чего это делается и на что влияет?
2. Каким образом делается коррекция по позиции?
3. Это вопрос оптимизации.
4. Как раз таки нэйчур и создает жуткую просадку fps
Ruslan | ***** | Ветеран | Сообщений: 664 | «Ответ #3 06 Июня 2011, 17:46:31 »
Re: Deferred shading |
3
Цитировать
4. Как раз таки нэйчур и создает жуткую просадку fps

Examples\Graphics\Particles\NaturePaint Shader Instancing.cgr

где здесь просадка фпс?

а вообще Александр молодец, что реализовали Deferred shading и других научили, допилить только осталось.

В Квесте не предусмотрена возможность  для передачи массива в шейдер, поэтому выдумали всякие извраты (нейчур и так далее).  У нас проблем с передачей параметров в шейдер нет, так как используем шейдера непосредственно dx, в собственном канале.
Скоро совсем откажемся от Квеста, на подходе собственный двиг, пока без редактора (редактор заменяет 3dsMax в нем на модели накидываются шейдера, настраиваются лоды интерактивно во вьюпорте, так же билбордовые деревья, линковка и так далее, затем по нажатию кнопки экспорт, все данные о сцене выгружаются в собственном формате).
« Последнее редактирование: 06 Июня 2011, 18:11:41 от Ruslan »
Sqwer | ***** | Ветеран | Сообщений: 540 | «Ответ #4 06 Июня 2011, 21:28:05 »
Re: Deferred shading |
4
1. Для чего это делается и на что влияет?
выборка в ДХ9  со смещением на пол пиксела.
в ДХ выше 9ки  это устранили.

2. Всё зависит от реализации. Проще всего юзать  не позицию , а глубину. а после домножать её на вью прожекшн инверсную.

3. Когда понадобится делать ССАОс учётом нормалей. ты потратишь больше ресурсов на создание бест алигн нормалей, чем на передачу 64бит текстуры.
 
4. не правда,  вызывается  просто за раз несколько геометрий фулскринов,  на 40 матриц -  получаем 80 треугольников. а это понты. сетинг хендлеро в ДХ дороже обходится.

но это всё мелочи, реальная просадка - это  заполнение стеков  dll ками.   Куча ресурсов  тратится именно на это, и как раз по этому  Квест не пригоден для больших сцен с тысячами объектов.   В замешательстве
« Последнее редактирование: 06 Июня 2011, 21:31:14 от Sqwer »
dfx | ** | Пользователь | Сообщений: 95 | «Ответ #5 07 Июня 2011, 19:06:58 »
Re: Deferred shading |
5
Цитировать
4. Как раз таки нэйчур и создает жуткую просадку fps
Цитировать
4. не правда,  вызывается  просто за раз несколько геометрий фулскринов,  на 40 матриц -  получаем 80 треугольников. а это понты. сетинг хендлеро в ДХ дороже обходится.

Sqwer дело говорит. Вызов дорого обходится, а в квесте нет хардвэр инстансов, которые можно напрямую юзать. Нейчур как раз и дает эту фичу - рисует несколько объектов за один вызов. Если хочешь проверить попробуй нарисовать модель из 1000 триугольников (это один дип) и один триугольник 1000 раз в цикле(1000 дипов) - и... почувствуй разницу, так сказать.)
Den_ya | **** | Старожил | Сообщений: 360 | «Ответ #6 17 Июля 2011, 22:17:30 »
Re: Deferred shading |
6
Ruslan

Цитировать
Скоро совсем откажемся от Квеста, на подходе собственный двиг, пока без редактора

что означает собственный двиг?

ты про этот движок?

http://alternativaplatform.com/ru/
« Последнее редактирование: 17 Июля 2011, 22:28:03 от Den_ya »
Ruslan | ***** | Ветеран | Сообщений: 664 | «Ответ #7 17 Июля 2011, 22:40:22 »
Re: Deferred shading |
7
Den_ya
нет, не про этот.
"свой" в смысле пишем сами на С++\DX10\Newton
Den_ya | **** | Старожил | Сообщений: 360 | «Ответ #8 17 Июля 2011, 22:45:31 »
Re: Deferred shading |
8
нифигасе Шокированный

а что значит заменяет 3ds max(не очень понял как то)
а смаксом то этот движок дружить будет?
Ruslan | ***** | Ветеран | Сообщений: 664 | «Ответ #9 18 Июля 2011, 00:38:51 »
Re: Deferred shading |
9
Если в двух словах, то в 3dsMax строим полностью всю сцену, при этом назначаем на меши DX шейдера и видим результат их работу непосредственно во вьюпорте макса.
Поддерживаются инстанс мешей, материалов, текстур, поддержка лодов, линковка объектов, слои, различные настройки для объектов, в том числе и для физики.
Затем вся сцена, со всеми настройками экспортируется в своем формате, который понимает наш двиг.

* Scr.jpg (485.84 Кб, 1920x961 - просмотрено 1582 раз.)
Ruslan | ***** | Ветеран | Сообщений: 664 | «Ответ #10 18 Июля 2011, 00:56:50 »
Re: Deferred shading |
10
на этом скрине видна работа утилиты, для создания билбордовых деревьев\кустов (как видно, все отображается во вьюпорте макса)

* Scr2.jpg (235.13 Кб, 1920x961 - просмотрено 1599 раз.)
Den_ya | **** | Старожил | Сообщений: 360 | «Ответ #11 18 Июля 2011, 01:17:49 »
Re: Deferred shading |
11
афигеть Смеющийся заинтерисовал Веселый
 
  [1]
Печать
 
Quest3D - Русскоязычное сообщество > Quest3D > Выставка - тестерская > Deferred shading
Перейти в: