PBR a Element 3D v2 (part 3)

Canals PBR a E3D

Element 3D v.2 fa servir un sistema de shaders físics (PBR) basat en la dualitat specular/glossiness en contraposició al model PBR Disney, basat en metalness/roughness. Així doncs, la gran diferència entre un sistema PBR i els antics és l’ús del specular.

canalesPBRE3D

Canals PBR a Element 3D v2

Un material de qualitat en aquest sistema PBR ha de tenir com a mínim 4 inputs: Diffuse, Glossiness, Reflectivity i Normal Bump.

Diffuse

També conegut com albedo, és el color de la llum que torna dispersada des de la superfície. En altres termes, és el color de la superfície sense tenir en compte altres efectes comunment fusionats en aquest canal com oclussió ambiental, iluminació, especular o fins i tot la reflexió. Col·loquialment es parla de la textura il·luminada per una llum homogènea al 100%.

És molt important mantenir aquesta separació del color base de qualsevol llum direccional o oclussió ambiental per poder conseguir un material que s’adapti a qualsevol tipus d’il·luminació. La textura albedo sol ser poc contrastada, mantenint-se en un rang de lluminositat entre 40-240/255.

diffuseAlbedo

Diffuse tradicional vs. Albedo

Glossiness

En altres sistemes PBR també s’usen canals com microsurface o roughness amb el mateix objectiu. Ja hem parlat de la seva importància en la primera part de l’article en l’apartat de microsuperfície.

En aquest canal estem representant els microrelleus d’una superfície. Estem indicant doncs, en què intensitat un material és mat o brillant, afectant l’amplitud i nitidesa dels especulars. Blanc serà una superfície brillant i negre, totalment mat, amb tota la gamma de grisos entre mig.

glossiness

Valors de glossiness de 100% a 0%.

És el canal més difícil de crear de zero ja que el seu funcionament no és “artístic”. Hi ha poca informació per la xarxa de com crear-lo.

Reflectivity

Aquí assignem el color especular de cadascuna de les parts del nostre objecte. Aquest color defineix la quantitat de llum que és reflectida immediatament per la superfície quan la font de llum està directament a sobre d’ella, així com el color d’aquest especular.

El mapa d’aquest canal hauria de ser bastant pla. Com comentàvem en la primera part de l’article, la reflectivitat d’un material/substància és constant i és al canal de glossiness on hauríem representar els canvis en la superfície. Al canal de reflectivity si haurien d’aparèixer els canvis de material/substància com seria òxid en un metall o una pàtina metàl·lica desgastada sobre un objecte no metàl·lic.

reflectivity

Valors de reflectivity de 100% a 0%

Si utilitzem un mapa en aquest canal, el color especular en l’apartat reflectivity s’ha d’establir en blanc (255/255/255), ja que aquest es multiplica amb els valors del mapa.

Com a dada extra, els materials dielèctrics, encara que en la segona part d’aquest article diguéssim que estaven en un rang de 0-20%, la majoria no sobrepassen el 5% de reflectivitat, deixant sempre com a mínim un 2%. Recordem, TOTS els materials reflecteixen.

Normal

En aquest canal podem definir els relleus palpables d’una superfície. Detalls petits en aquest canal ja generen unes variacions en els reflexos que donen vida als materials, amb un efecte semblant al del canal glossiness. Aquests dos canals estan molt lligats, però sigui com sigui, mantindrem els detalls a microescala al canal de glossiness.

L’ autoria d’aquests mapes ha de fer-se des de programari destinat a això com Crazybump, Bitmap2Material, nDo, Xnormal i similars.

normalmap

Normal map

Altres canals

Amb els altres tres canals que ens queden, podem acabar d’afinar els materials i assignar-li alguna propietat addicional.

Ilumination

Autoil·luminació.

Occlusion

Ombres de contacte i bruticia a racons ja bakeada.

Enviroment

Entorn diferent per aquest únic objecte.

Més enllà

Fins aquí la introducció a PBR a E3D. Amb aquestes explicacions hauríem de ser capaços de crear els nostres materials PBR a Element 3D v2 i de reciclar mapes d’altres sistemes no PBR i materials d’anteriors versions de E3D.

 

Bibliografia

“Feeding a physically based shading model”. http://seblagarde.wordpress.com/2011/08/17/feeding-a-physical-based-lighting-mode/

“DONTNOD Physically based rendering chart for Unreal Engine 4”. http://seblagarde.wordpress.com/2014/04/14/dontnod-physically-based-rendering-chart-for-unreal-engine-4/

“Basic Theory of Physically-Based Rendering”. http://www.marmoset.co/toolbag/learn/pbr-theory

“Tutorial: Physically Based Rendering, And You Can Too!”. http://www.marmoset.co/toolbag/learn/pbr-practice

“Tutorial: PBR Texture Conversion”. http://www.marmoset.co/toolbag/learn/pbr-conversion