Извините, ничего не найдено.

Не расстраивайся! Лучше выпей чайку!
Регистрация
Справка
Календарь

Вернуться   forum.boolean.name > Проекты > Проекты C++

Ответ
 
Опции темы
Старый 17.05.2014, 22:51   #241
Samodelkin
Мастер
 
Регистрация: 12.01.2009
Сообщений: 979
Написано 388 полезных сообщений
(для 631 пользователей)
Ответ: [TrueHorror] - разработка

Сообщение от mr.DIMAS Посмотреть сообщение
Лайтмапы хороши - но блин уже 2014 год на дворе - хочется разнообразия.
http://www.gamedev.ru/code/articles/...agationVolumes
http://the-witness.net/news/2010/03/...uted-lighting/
и вообще весь раздел engine-tech посмотри.
(Offline)
 
Ответить с цитированием
Сообщение было полезно следующим пользователям:
mr.DIMAS (17.05.2014)
Старый 17.05.2014, 23:26   #242
mr.DIMAS
Дэвелопер
 
Аватар для mr.DIMAS
 
Регистрация: 26.12.2006
Адрес: Санкт-Петербург
Сообщений: 1,572
Написано 547 полезных сообщений
(для 1,540 пользователей)
Ответ: [TrueHorror] - разработка

дефер не совместим с ничем полупрозрачным =P
ахахах, совсем забыл, а ведь читал об этом и все равно забыл.

сделал отдельным проходом, как сказал pax
__________________

(Offline)
 
Ответить с цитированием
Старый 17.05.2014, 23:50   #243
Mr_F_
Терабайт исходников
 
Аватар для Mr_F_
 
Регистрация: 13.09.2008
Сообщений: 3,947
Написано 2,189 полезных сообщений
(для 6,051 пользователей)
Ответ: [TrueHorror] - разработка

LightPropagationVolumes
это годная тема, но:
- стоит дважды (а лучше и ещё несколько раз) подумать, прежде, чем приступать к этому, т.к. реализация непростая, и лайтмапы запечь тупо и быстрее и качественнее может выйти. нужно точно понять, насколько тебе нужно действительно динамическое ги.
- тени от индиректа добавляют нехилой нагрузки - насколько я помню, в релизе крайзиса 2 они отключены, а без них индирект светит сквозь всё.
- всего 4 РГБ коэфициента сферических гармоник юзают крайтеки - это маловато для точного описания дифуза - получается менее выраженная направленность отражённого света, он более со всех сторон лезёт. печь 9 ргб коэфов - непрактично.

дак тут тупо чуваки рендерят радиосити игровым рендером - из каждой точки лайтмапа камеры ставят и фигак.
вариант весёлый конечно, и я так пробовал: http://ndotl.files.wordpress.com/201...5-13-04-37.jpg
но работало оно не быстрее офлайновых запекателей, а то и медленее)
офлайновые запекатели умеют всякие хитрости делать, вроде адаптивности, или ноизом раскидать семплы а потом интерполировать, в упомянутом же случае мы просто херачим регулярной сеткой.
плюс надо учитывать всякие швы на развертке и. т. п... это куда больший гемор, чем кажется.
__________________
бложик | geom.io | твиттер | faded | демо 1 2 | роботы | лайтмаппер
(Offline)
 
Ответить с цитированием
Старый 18.05.2014, 00:36   #244
Samodelkin
Мастер
 
Регистрация: 12.01.2009
Сообщений: 979
Написано 388 полезных сообщений
(для 631 пользователей)
Ответ: [TrueHorror] - разработка

Сообщение от Mr_F_ Посмотреть сообщение
это годная тема, но:
- стоит дважды (а лучше и ещё несколько раз) подумать, прежде, чем приступать к этому, т.к. реализация непростая, и лайтмапы запечь тупо и быстрее и качественнее может выйти. нужно точно понять, насколько тебе нужно действительно динамическое ги.
- тени от индиректа добавляют нехилой нагрузки - насколько я помню, в релизе крайзиса 2 они отключены, а без них индирект светит сквозь всё.
- всего 4 РГБ коэфициента сферических гармоник юзают крайтеки - это маловато для точного описания дифуза - получается менее выраженная направленность отражённого света, он более со всех сторон лезёт. печь 9 ргб коэфов - непрактично.
На современном железе это еще не реализуемо в полном объеме - по сути все ресурсы хорошей карточки только на это и уходит, а ведь реальном проекте еще много чего должно обсчитываться - нужно подождать, посмотреть оптимизации алгоритма и т.п., но исследовать начать уже можно - mr.DIMAS же хотел что-то новое.

Сообщение от Mr_F_ Посмотреть сообщение
дак тут тупо чуваки рендерят радиосити игровым рендером - из каждой точки лайтмапа камеры ставят и фигак.
вариант весёлый конечно, и я так пробовал: http://ndotl.files.wordpress.com/201...5-13-04-37.jpg
но работало оно не быстрее офлайновых запекателей, а то и медленее)
офлайновые запекатели умеют всякие хитрости делать, вроде адаптивности, или ноизом раскидать семплы а потом интерполировать, в упомянутом же случае мы просто херачим регулярной сеткой.
плюс надо учитывать всякие швы на развертке и. т. п... это куда больший гемор, чем кажется.
Да, но как видишь, финальные рендеры их проекта выглядят отлично, причем именно радиосити бросается в глаза.

Вообще это проект Джоната Блоу, который всем известный Braid сделал.
Мне больше их дизайн нравится нежели программирование, но они подробно всё расписывают, что радует.
(Offline)
 
Ответить с цитированием
Старый 18.05.2014, 01:25   #245
Mr_F_
Терабайт исходников
 
Аватар для Mr_F_
 
Регистрация: 13.09.2008
Сообщений: 3,947
Написано 2,189 полезных сообщений
(для 6,051 пользователей)
Ответ: [TrueHorror] - разработка

Да, но как видишь, финальные рендеры их проекта выглядят отлично, причем именно радиосити бросается в глаза.
повторюсь, это лайтмапы. такие же можно запечь и Beastом и чем-то ещё. они просто выбрали особо черезжопный способ их рендера с помощью игрового рендера.
__________________
бложик | geom.io | твиттер | faded | демо 1 2 | роботы | лайтмаппер
(Offline)
 
Ответить с цитированием
Старый 18.05.2014, 01:54   #246
Samodelkin
Мастер
 
Регистрация: 12.01.2009
Сообщений: 979
Написано 388 полезных сообщений
(для 631 пользователей)
Ответ: [TrueHorror] - разработка

Ну технически лайтмапы, но просто когда ты рендеришь картинку ты фиксируешь весь диапазон освещения который падает на поверхность как есть. Если же рендерить с помощью абстрактных лучей и сторонних средств, то они могут не все вещи учитывать.
Вот можно привести такой пример: какой-нибудь эффект, отбрасывающий свет генериться движком в реалтайме, то есть пока движок в процессе отображения сцены не нарисует картинку с этим эффектом, его нельзя будет достичь другими методами, таким образом у сторонних средств не будет нужных ресурсов чтобы корректно рассчитать лайтмапу.
(Offline)
 
Ответить с цитированием
Старый 18.05.2014, 02:11   #247
Mr_F_
Терабайт исходников
 
Аватар для Mr_F_
 
Регистрация: 13.09.2008
Сообщений: 3,947
Написано 2,189 полезных сообщений
(для 6,051 пользователей)
Ответ: [TrueHorror] - разработка

ну разве что у тебя какие-то особо сложные процедурные эффекты в PS на всех поверхностях - тогда может быть да.
а так дифузы/отражения/эмиссив - они и в рейтрейсере дифузы/отражения/эмиссив.
__________________
бложик | geom.io | твиттер | faded | демо 1 2 | роботы | лайтмаппер
(Offline)
 
Ответить с цитированием
Старый 18.05.2014, 12:09   #248
mr.DIMAS
Дэвелопер
 
Аватар для mr.DIMAS
 
Регистрация: 26.12.2006
Адрес: Санкт-Петербург
Сообщений: 1,572
Написано 547 полезных сообщений
(для 1,540 пользователей)
Ответ: [TrueHorror] - разработка

Решил запилить мягкие частицы так как после дефереда есть текстура с данными о глубине. И вот тут затык: как в пиксельном шейдере отрисовки частиц получить координаты текущего фрагмента для выборки из карты глубины? Ведь в D3D9 нет SV_Position - пищаль

Ах, да. Я знаю про семантику VPOS, но мне нужно уложиться в ps_2_0
__________________

(Offline)
 
Ответить с цитированием
Старый 18.05.2014, 13:30   #249
Mr_F_
Терабайт исходников
 
Аватар для Mr_F_
 
Регистрация: 13.09.2008
Сообщений: 3,947
Написано 2,189 полезных сообщений
(для 6,051 пользователей)
Ответ: [TrueHorror] - разработка

Ах, да. Я знаю про семантику VPOS, но мне нужно уложиться в ps_2_0
VPOS норм, зачем тебе 2_0? о_0

в любом случае, не забывай, что то, что ты выводишь из вертексного шейдера в POSITION - это не что иное, как позиция точки на экране в диапазоне [-1, 1].
Так что ты легко получаешь экранные текскоорды из них:
ScreenSpaceUV = OUT.Position.xy*0.5+0.5;


-----
также, смещение на пол-пикселя не забудь: http://msdn.microsoft.com/en-us/libr...=vs.85%29.aspx
__________________
бложик | geom.io | твиттер | faded | демо 1 2 | роботы | лайтмаппер
(Offline)
 
Ответить с цитированием
Сообщение было полезно следующим пользователям:
mr.DIMAS (18.05.2014)
Старый 18.05.2014, 18:19   #250
mr.DIMAS
Дэвелопер
 
Аватар для mr.DIMAS
 
Регистрация: 26.12.2006
Адрес: Санкт-Петербург
Сообщений: 1,572
Написано 547 полезных сообщений
(для 1,540 пользователей)
Ответ: [TrueHorror] - разработка

Сделал. Не уверен что самым лучшим образом, но оно работает.

Вот код:
http://pastebin.com/CKABUej7

Скриншоты - обычные частицы и мягкие.
Миниатюры
Нажмите на изображение для увеличения
Название: mine_debug 2014-05-18 17-17-16-11.jpg
Просмотров: 592
Размер:	184.4 Кб
ID:	20543  Нажмите на изображение для увеличения
Название: mine_debug 2014-05-18 17-17-40-94.jpg
Просмотров: 607
Размер:	180.1 Кб
ID:	20544  
__________________

(Offline)
 
Ответить с цитированием
Старый 18.05.2014, 18:33   #251
Mr_F_
Терабайт исходников
 
Аватар для Mr_F_
 
Регистрация: 13.09.2008
Сообщений: 3,947
Написано 2,189 полезных сообщений
(для 6,051 пользователей)
Ответ: [TrueHorror] - разработка

нормально) хотя я тупо без distance и восстановления позиции делал, на разнице глубин партикла и дептхмапы.
__________________
бложик | geom.io | твиттер | faded | демо 1 2 | роботы | лайтмаппер
(Offline)
 
Ответить с цитированием
Сообщение было полезно следующим пользователям:
mr.DIMAS (18.05.2014)
Старый 18.05.2014, 20:54   #252
mr.DIMAS
Дэвелопер
 
Аватар для mr.DIMAS
 
Регистрация: 26.12.2006
Адрес: Санкт-Петербург
Сообщений: 1,572
Написано 547 полезных сообщений
(для 1,540 пользователей)
Ответ: [TrueHorror] - разработка

объясните мне пожалуйста: почему, если не запаковать нормали в отрезок [0;1]( при записи в текстуру ) и не распаковать их впоследствии( второй проход ), свет считается отстойно? это как-то связано с тем что мы пишем в D3DFMT_A8B8G8R8 где на каждую компоненту приходится по 1 байту?
__________________

(Offline)
 
Ответить с цитированием
Старый 18.05.2014, 22:20   #253
Mr_F_
Терабайт исходников
 
Аватар для Mr_F_
 
Регистрация: 13.09.2008
Сообщений: 3,947
Написано 2,189 полезных сообщений
(для 6,051 пользователей)
Ответ: [TrueHorror] - разработка

если не запаковать нормали в отрезок [0;1]
и не распаковать их впоследствии
потому что ты тупо выбрасываешь все значения < 0?
в ргба8 хранится по байту на канал (0-255) (в шейдерах выглядит как флоаты 0-1)
__________________
бложик | geom.io | твиттер | faded | демо 1 2 | роботы | лайтмаппер
(Offline)
 
Ответить с цитированием
Сообщение было полезно следующим пользователям:
mr.DIMAS (18.05.2014)
Старый 18.05.2014, 23:28   #254
mr.DIMAS
Дэвелопер
 
Аватар для mr.DIMAS
 
Регистрация: 26.12.2006
Адрес: Санкт-Петербург
Сообщений: 1,572
Написано 547 полезных сообщений
(для 1,540 пользователей)
Ответ: [TrueHorror] - разработка

тоесть в подобных форматах хранится беззнаковое целое? Всегда думал что со знаком хранится.

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

(Offline)
 
Ответить с цитированием
Старый 18.05.2014, 23:36   #255
Samodelkin
Мастер
 
Регистрация: 12.01.2009
Сообщений: 979
Написано 388 полезных сообщений
(для 631 пользователей)
Ответ: [TrueHorror] - разработка

Сообщение от mr.DIMAS Посмотреть сообщение
тоесть в подобных форматах хранится беззнаковое целое? Всегда думал что со знаком хранится.
http://msdn.microsoft.com/en-us/libr...=vs.85%29.aspx
Там внизу расписано по категориям signed, unsigned и ieee (то бишь float) форматы.

Например аналог D3DFMT_A8R8G8B8 со знаком будет D3DFMT_Q8W8V8U8.
Однако не все из них поддерживает устройство - нужно проверять.
(Offline)
 
Ответить с цитированием
Сообщение было полезно следующим пользователям:
mr.DIMAS (18.05.2014)
Ответ


Опции темы

Ваши права в разделе
Вы не можете создавать темы
Вы не можете отвечать на сообщения
Вы не можете прикреплять файлы
Вы не можете редактировать сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.


Часовой пояс GMT +4, время: 18:46.


vBulletin® Version 3.6.5.
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Перевод: zCarot
Style crйe par Allan - vBulletin-Ressources.com