vindast
блюр размазывает — он размазывает и шум и, собственно, ao. чтобы размазывать шум, по возможности не нарушая самого ao, есть огромное количество техник:
- всегда нужно использовать как можно меньше радиус блюра. чем больше радиус блюра, тем больше полезной информации ты теряешь.
- bilateral filtering, depth aware blur помогают усреднять каждый пиксель только с теми пикселями, с которыми он "похож". не является панацеей и всё равно создают мыло.
- как я уже говорил, шум нужно генерить не какой попало, а используя специальные паттерны для рандома, у которых частота совпадает с радиусом блюра. например, если ты создашь шум, повторяющийся каждые 4 пикселя, а потом сблюришь его блюром в 4 пикселя радиусом, то он сблюрится в ровный цвет.
Suslik, есть над чем подумать. Ок.
Suslik, какие патерны?
Это победа?
Шума мало, и он малозаметен.
vindast
последний скриншот выглядит здорово. жаль, без ao :D
Suslik, да блен
Suslik, мне кажется что из hbao больше не выжать.
vindast
> Suslik, мне кажется что из hbao больше не выжать.
не забудь у нвидии забрать свою яхту, как только что-то лучше придумаешь :)
Suslik, не смешно.
Так норм? Сделал алг на свой манер все таки, считаю все горизонты в мировых координатах, а не как в том пайпере.
vindast
важное свойство ао — на стыках геометрии почти не должно быть перепада яркости. посмотри у себя на места контакта, например, шторы с землёй или на контакт колонны с землёй на первом скриншоте. сравни с вариантом, когда ты не делаешь своего волшебства с удалением ненужных семплов. отбрасывание семплов — не такая простая операция, как может показаться на первый взгляд, потому что она очень часто ломает это и подобные свойства.
4 метра
0.5 метра
Все нормально работает, там на паре штор нормали завалены.
Вроде бы нормально же все, и там хорошо видно на ао на крыше, на стыках стен и тд. И ао от колонн есть на полу, просто слабое, всего 6 семплов на луч если что.
А если честно, то я ни в чем не уверен.
Может я Ваш множитель пропустил. Блин.
То?
vindast
ну сам посмотри на левую колонну, например. почему она выглядит настолько темнее земли? второй скриншот у тебя выглядит лучше, чем остальные, потому что в нём используется минимальный радиус, а в нём сложнее допустить ошибку. то есть чем больше радиус, тем сложнее его правильно посчитать, но тем круче он выглядит, если всё сделано правильно. в продакшене часто забивают на всё это и просто оставляют маленький радиус, не парясь. поэтому если тебе важен просто результат, можешь сделать так же.
vindast
> Может я Ваш множитель пропустил. Блин.
моих множителей у тебя в коде нет, бро. я все свои множители держу при себе :) множитель с косинусом придумал не я, а геометрия, потому что луч, падающий под углом, покрывает бОльшую площадь с меньшей интенсивностью.
Suslik
> ну сам посмотри на левую колонну, например. почему она выглядит настолько
> темнее земли?
Давайте я так спрошу. Как и от чего вы считаете угол горизонта, от тангесального вектора, или же как разность синусов, как было в той презентации? Вы направления считаете в касательной плоскости или в плоскости изображения?
Я думаю что я все таки не правильно учитываю угол.
Я уже запарился на самом деле.
Тема в архиве.