Albedo vs base color: jaka jest różnica?
W codziennym użyciu „albedo” i „base color” oznaczają tę samą mapę — czysty kolor powierzchni materiału bez wypalonych informacji o oświetleniu. Jest jednak subtelna różnica techniczna, którą warto znać, zwłaszcza gdy materiał zawiera metal.
Autor: Mixos
Krótka odpowiedź
Albedo i base color często używa się zamiennie dla płaskiego, nieoświetlonego koloru powierzchni. Precyzyjna różnica: w workflow metalness/roughness mapa base color pełni podwójną rolę — kolor rozproszony dla niemetali i kolor odbicia (specular) dla metali — podczas gdy „albedo” ściśle oznacza wyłącznie kolor rozproszony. W obu przypadkach złota zasada jest ta sama: żadnych wypalonych cieni ani rozbłysków.
Ta sama idea, dwie nazwy
Oba terminy opisują kolor powierzchni pozbawiony oświetlenia — czym jest materiał, niezależnie od otaczającej sceny. Większość artystów i narzędzi używa ich zamiennie, a silniki oznaczają slot jako „Base Color” lub „Albedo” zależnie od shadera.
Jeśli ktoś podaje Ci mapę „albedo”, a Twój shader prosi o „base color”, prawie zawsze chodzi o tę samą teksturę.
Różnica techniczna
W materiale metalness/roughness kanał base color koduje albedo rozproszone dla dielektryków (niemetali) i kolor odbicia zwierciadlanego dla metali — to mapa metallic decyduje, która interpretacja obowiązuje w danym pikselu.
Ścisłe „albedo” historycznie oznacza tylko składową rozproszoną. Różnica ma znaczenie głównie przy tworzeniu metali: złoty base color steruje odcieniem odbić metalu, a nie rozproszonym kolorem farby.
Jedyna zasada, która się liczy
Jakkolwiek to nazwiesz, trzymaj oświetlenie z dala od niej. Żadnych namalowanych rozbłysków, ambient occlusion ani cieni w base color — należą do osobnych map albo liczy je renderer.
Wypalone oświetlenie to najczęstszy powód, dla którego materiał PBR wygląda źle po zmianie oświetlenia sceny. Jeśli Twój base color sam w sobie wygląda płasko i trochę nudno, to dokładnie tak ma być.
Najczęściej zadawane pytania
Czy albedo i base color to to samo?
W praktyce tak — oba oznaczają kolor powierzchni bez oświetlenia. Techniczny niuans jest taki, że base color w workflow metalness/roughness niesie też kolor odbicia metalu, podczas gdy albedo ściśle oznacza kolor rozproszony.
Czy albedo powinno zawierać cienie lub rozbłyski?
Nie. Wyrzuć całe oświetlenie z mapy base color/albedo. Wypal cienie kontaktowe do osobnej mapy AO i zostaw resztę rendererowi.
Dlaczego mój base color wygląda płasko?
I słusznie — mapa base color powinna wyglądać płasko i bez oświetlenia. Ożywa dopiero po nałożeniu roughness, metallic, normal i oświetlenia sceny.