Войти
ПрограммированиеФорумГрафика

Конвертирование текстурных PBR-карт (2 стр)

Страницы: 1 2 3 4 Следующая »
#15
(Правка: 21:36) 21:32, 4 окт. 2019

MrShoor, возможно это актуально для мобилок, но для десктопа, я даже не могу представить как можно утилизировать больше 128 бит.


#16
19:26, 7 окт. 2019

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

Если у тебя твой движок тебе наверное проще реализовать два этих воркфлоу, чем заниматься конвертированием с одного на другой.
В юнити кажется поддерживаются оба.В анриле нет.

#17
(Правка: 19:58) 19:53, 7 окт. 2019

endeavour_pr
Да проще тогда на один тип текстур вообще забить, чем извращаться с реализацией обоих типов, так как главный враг оптимизации = это универсальность.

#18
8:09, 8 окт. 2019

innuendo
> вынимать 5 значений из карты высот чтобы подсчитать нормаль это НЕ зависит от
> пропускной способности ?
Практически нет. На первой же выборке тайл падает в кеш, представляешь.

#19
8:14, 8 окт. 2019

vindast
> MrShoor, возможно это актуально для мобилок, но для десктопа, я даже не могу
> представить как можно утилизировать больше 128 бит.
Делаешь g-buffer из: албедо, рогнес/металлика, нормалей, глубины, и ты уже сожрал всё с большим запасом. А это минимум для pbr. Там еще всякие эмишн, велосити и т.п. буфера могут понадобиться.

#20
8:27, 8 окт. 2019

MrShoor
> Практически нет. На первой же выборке тайл падает в кеш, представляешь.


Прикинь, есть и вертекс кеш - ты же видать и не слышал про такое

#21
8:42, 8 окт. 2019

MrShoor
> Там еще всякие эмишн

emission в gbuffer ? точно иначе никак нельзя ?

#22
(Правка: 13:10) 13:03, 8 окт. 2019

Ребята, есть у кого-нибудь ссылка на пару-тройку PBR-текстур сразу в обоих форматах = specular / glossiness и metall / roughness?
Это мне для лабораторных исследований :)

#23
14:02, 8 окт. 2019

Daniil Petrov
https://freepbr.com/

#24
8:54, 9 окт. 2019

Daniil Petrov
да вроде все расжовано

#25
(Правка: 14:10) 14:05, 9 окт. 2019

innuendo
> emission в gbuffer
Имеется в виду что можно учитывать самосвечение в модели pbr.
MrShoor
> Делаешь g-buffer из: албедо, рогнес/металлика, нормалей, глубины, и ты уже
> сожрал всё с большим запасом. А это минимум для pbr. Там еще всякие эмишн,
> велосити и т.п. буфера могут понадобиться.

srgba8 albedo + roughness
rgba8 normal + metalness
rg16f velocity  - опциональный, выкл для статики
r32f depth

Объектов, которые подойдут под такую раскладку g-буфера будет процентов 99%.
Я думаю что даже будь проход с g-buffer который не влазит в шину, допустим с rgba16f emmision, все равно будет дешевый, по тому что таких объектов мало. Да и что врать то. Можно часть объектов закинуть на форвард.

Кстати, было интересно глянуть на тесты такого вот поведения.

#26
14:06, 9 окт. 2019

а rgba8 под нормали не мало?

#27
(Правка: 14:20) 14:10, 9 окт. 2019

barnes
> а rgba8 под нормали не мало?
Тоже интересно стало :) у меня они даже в текстурах хранятся как RGB16F, так же и в G-буфере.
И 32-битный float-буфер глубины заметно садит FPS, мне кажется обычного 24-битного хватит за глаза.
Тем более, что 32-битный буфер глубины почему-то и в формате пикселя-то не поддерживается...

#28
14:25, 9 окт. 2019

vindast
> srgba8 albedo + roughness
> rgba8 normal + metalness
> rg16f velocity  - опциональный, выкл для статики
> r32f depth

rgba8 (albedo, ao)
rgba8 (normal xy, roughness, metalness)
float16 (view space z position)

#29
14:56, 9 окт. 2019

Depth (x, y, z) AmbID, Decals (w) D24S8
N.x N.y (x, y) Gloss, Zsign (z) Translucency (w) A8B8G8R8
Albedo Y (x) Albedo Cb,Cr (y) Specular Y (z) Per-Project (w) A8B8G8R8

Страницы: 1 2 3 4 Следующая »
ПрограммированиеФорумГрафика