SlideShare a Scribd company logo
1 of 33
Download to read offline
The comprehensive PBR Guide by Allegorithmic – vol. 2 written by Wes McDermott | 번역 vich
빛과 재질
PBR 텍스쳐를 만드는 실용적인 가이드
물리 기반 렌더링(PBR)은 하나의 정해진 기준보다 많은 방법론으로 생각될 수 있습니다. 특정한 원칙과 가
이드라인들이 있지만 완벽한 기준이 아닙니다. 그러므로 많은 다른 실행 방법들이 있습니다. 이러한 차이는
사용하는 맵의 타입에서 전형적으로 발견됩니다. 심지어 맵 이름을 바꾸는 방법도 다르지만 기본적인 사용
방법은 역시 같습니다.
이 가이드에서 우리는 figure 01에서 보여지듯이 가장 공통적인 2개의 워크플로우인 metal/roughness 와
specular/glossiness에 대해서 다룰 것입니다. Substance Designer, Substance Painter, Bitmap2Material 3 으로
구성된 Substance toolset은 PBR맵들을 만드는데 있어서 두 가지 워크플로우를 모두 지원합니다.
Metal/roughness와 specular/glossiness을 위한 Substance PBR 쉐이더는 GGX BRDF를 사용하며
roughness/glossiness를 리맵핑하는데 어떤 값도 활용하지 않습니다. 그러나 만약 임의의 리맵핑이 필요하다
면 이것은 Substance material을 통해서 쉽게 실행될 수 있습니다. 더욱이 커스텀 쉐이더들은 Substance
toolset에서 지원하기 때문에 당신은 어떤 커스텀된 파이프라인에서도 Substance를 활용할 수 있습니다.
두 가지 워크플로우가 각각의 장단점을 가지고 있지만 하나의 워크플로우가 특별히 다른 하나보다 낫다고
말할수는 없습니다. 가장 중요한 것은 당신이 PBR뒤에 있는 핵심 요소를 이해하는 것입니다. 워크플로우들은
PBR맵들을 당신이 정확하게 만들기 위한 컨셉과 가이드라인이지 워크플로우 자체가 아닙니다. 각각의 워크
플로우는 같은 자료를 나타내지만 각자 다른 방법으로 자료를 활용합니다.
볼륨1인 'The Comprehensive PBR Guide'에서 우리는 PBR을 기술적이고 이론적인 측면에서 정의했습니다.
이 두번째 볼륨에서는 우리는 PBR 텍스쳐들을 제작하는데 실용적인 방법을 논의하고 볼륨1에서 확립된 기초
에 입각한 가이드라인들을 제공할 것입니다. 우리는 PRR을 아티스트의 입장에서 바라보는 것으로 시작할 것
입니다. 거기서 우리는 metal/roughness 워크플로우를 원칙과 가이드라인에 따라 다루는 것을 논의할 것입니
다. 우리는 그리고나서 specular/glossinss 워크플로우를 다루고 제작하는 방법의 차이를 설명할 것입니다.
그러므로 PBR 텍스쳐들을 만드는데 전체적인 가이드라인에 대한 이해를 하는 가장 좋은 방법은 두 가지 워크
플로우를 모두 읽어보는 것입니다.
The comprehensive PBR Guide by Allegorithmic – vol. 2 written by Wes McDermott | 번역 vich
PBR은 무엇인가?
물리 기반 렌더링(PBR)은 빛이 표면과 작용하는 반응을 더 자세하게 표현해주는 쉐이딩 & 렌더링 기법입니
다. 이것은 물리 기반 렌더링(PBR) 또는 물리 기반 쉐이딩(PBS)으로도 불려집니다. 파이프라인의 어떠한 부
분이 논의되는지에 따라서 PBS는 보통 쉐이딩컨셉을 뜻하고 PBR은 렌더링과 라이팅에 집중되어 있습니다.
그러나 두 개의 방식 모두 물리적으로 정확한 관점을 표시하는 과정을 묘사하고 있습니다.
PBR의 이점은 무엇인가?
우리는 PBR의 장점을 다음과 같은 미적인(artistic) 부분과 효율적인 생산 방식으로 볼 수 있습니다.
1. 제작 방법과 알고리즘들이 물리적으로 정확한 계산을 따르기 때문에 specularity와 같은 표면의 특성
을 고려하지 않아도 되어 더 사실적인 어셋을 제작하는 것이 쉽다.
2. 어셋들은 모든 조명 환경에서 정확하게 보일 것이다.
3. 각각의 아티스트에게 일관된 워크플로우를 제공한다.(서로 다른 아티스트여도 같은 워크플로우로 작업)
이것이 아티스트에게 의미하는 것
우리 아티스트들은 표면의 특성을 묘사하는 맵들을 다르게 생각할 필요가 있습니다. 규칙과 가이드라인을
따라야 하는 새로운 맵 타입들이 있습니다.
우리는 전통적인 렌더링 워크플로우인 diffuse와 specular맵의 개념을 버려야 합니다. 이 맵들은 재질들과 빛
이 반응하는 것에 대한 근사치로써의 제2의 옵션이었기 때문입니다. 컴퓨터 하드웨어와 렌더링이 발전은 우
리가 빛의 물리 법칙을 더 자세하게 시뮬레이션 할 수 있게 해주었습니다.
PBR에서 쉐이더는 우리가 물리법칙에 입각한 맵을 만드는 반면에, 무거운 물리 리프팅을 에너지 보존과
BRDF를 통해서 다룹니다. 재질값을 마음대로 추정하는일을 PBR을 통해선 하지 않아도 되기 때문에 우리는
아티스트로서 텍스쳐를 만드는데 더 많은 시간을 활용할 수 있습니다. 가이드라인을 고수하고 맵을 정확하게
만드는 것은 중요하지만 그것이 우리가 아티스트로서의 직관을 고려하지 않아도 된다는 것은 아닙니다. 사
실, 캐릭터에 재질을 부여하는건 예술적인 측면입니다. 너무 물리학에 사로 잡히지 않는 것 또한 중요합니다.
우리가 물리학에 기초한 환경에서 일한다고 해서 이것이 우리가 세련된 아트 스타일로 작업을 할 수 없는 것
은 아닙니다. 예를 들면 디즈니의 물리기반 반사모델은 원칙에 입각하도록(principled) 디자인 되어있습니다.
이것은 엄격한 물리적 모델보다 아트적인 면에 더 맞도록 디자인 되었다는 말입니다. 이제 우리는 원리와 가
이드라인을 활용해야 한다는 사실을 알고 있습니다, 하지만 그들의 노예가 되어서는 안됩니다.
Metal/Roughness Workflow
metal/roughness 워크플로우는 PBR쉐이더에서 샘플러에 텍스쳐로 공급되는 채널의 셋트로 정의할 수 있습
니다. Metal/roughness 워크플로우에 특화된 맵은 figure02에서 보이듯 base color, metallic 그리고 roughness
이며, 우리는 각각의 이 맵들을 밑에서 다룰 것입니다.
PBR쉐이더는 또한 figure03에서 보이듯 ambient occlusion, normal 그리고 parallax mapping을 위한 possible
height을 활용합니다. 이 맵 타입들은 두 가지의 워크플로우(roughness/metal, specular/glossiness) 에서 모두
공통이며 'Maps common to both workflows'섹션에서 다룰 것입니다.
Metal/roughness 워크플로우에서 금속의 반사값은 유전체를 위한 반사값과 BRDF에 의해서 다루어지는 평면
각도에서의 반사와 함께 base color map에서 다룹니다. 금속 맵은 차별화된 금속(뭔가 묻거나, 부식된..?)에
대한 마스크와 base color 맵에서 찾은 부도체 데이타로 활용됩니다. 유전체 F0값들은 쉐이더가 직접 다루기
때문에 수동으로 제작되진 않습니다. 쉐이더가 metal map에서 검은 부분을 찾으면 base color맵에서 해당하
는 부분은 유전체(금속이 아닌)로 인식되며 figure04에서 보이듯 4%의 반사율을 사용합니다.
첫 번째, 4%의 값은 거의 모든 유전체 재질에 사용해도 이상하지 않습니다. 유전체 F0, 금속 반사율, albedo
color의 밝기 범위 같은 모든 값들은 실제로 측정 된 데이타에서 유추한 것들입니다. 이것을 알고 있는 것은
중요합니다. 우리는 볼륨1에서 표면에서 빛이 반사되는 곳의 빛 세기는 반사하기 전의 빛 세기보다 강할 수
없다는 에너지 보존법칙의 개념을 논의했습니다. Substance는 실행의 측면에서, 쉐이더가 전형적으로 에너
지 보존을 컨트롤 합니다. Metal/roughness 워크플로우에서 에너지 보존 법칙을 거스르는것은 불가능 합니다.
The comprehensive PBR Guide by Allegorithmic – vol. 2 written by Wes McDermott | 번역 vich
메탈릭에서 검은색으로 된 부분(==base color에서 빨간부분)은 반사율이 낮은 상태로 렌더링 됩니다.
Height맵과 Ambient Occlusion을 이용해 높낮이와 음영을 표현할 수 있습니다.
The comprehensive PBR Guide by Allegorithmic – vol. 2 written by Wes McDermott | 번역 vich
유전체(Dielectric) F0
어떤 metal/roughness 실행에선 Substance Toolset과 Unreal Engine 4에서 볼 수 있듯이 specular control이
있습니다. 이 옵션은 아티스트들에게 유전체의 F0의 값을 바꿀 수 있게 해줍니다. Substance에선 이 아웃풋
은 'specularLevel' 이라고 불려지며, PBR의 metal/roughness 텍스쳐 샘플러에 의해 공급됩니다. Figure 05에서
보여지듯 이것은 0.0 – 0.08의 범위를 가지고 있습니다.
The comprehensive PBR Guide by Allegorithmic – vol. 2 written by Wes McDermott | 번역 vich
만약 당신이 유전체의 F0값을 수동으로 설정할 필요가 있다면, figure 06에서 보이듯이 Substance Designer에
있는 Substance graph의 'specularLevel' 아웃풋을 사용할 수 있습니다. 우리는 유전체의 F0에 대해서
specular/glossiness 워크플로우에서 깊게 다룰 것입니다.
Base Color (RGB – sRGB)
Base color 맵은 figure 07에서 보이듯 2가지 타입의 데이터(유전체의 반사 색, 금속에서의 반사율 값)를 담을
수 있는 RGB 맵입니다. 유전체를 표현하는 색은 반사된 파장을 표현한다고 볼륨1에서 다루었었습니다.
Metallic map에서 해당 부분이 메탈로 표시되면 반사율 값이 존재하는 것입니다.
The comprehensive PBR Guide by Allegorithmic – vol. 2 written by Wes McDermott | 번역 vich
가이드라인 생성(Creation Guidelines)
base color 맵은 색조에서 좀 평평해 보일 수가 있습니다. 즉 전통적인 diffuse 맵보다 낮은 컨트라스트를 가지
고 있습니다. 당신은 너무 밝거나 너무 어두운 값을 가지길 원하지 않습니다. 오브젝트들은 사실 우리들이 생
각하고 있는 것보다 밝은 톤을 가지고 있습니다. 우리는 이러한 범위를 가장 어두운 물질을 석탄으로, 가장
밝은 부분을 밝은 눈으로 생각하는 것으로 시각화 할 수 있습니다. 예를들어, 석탄은 어둡지만 완전한 0.0
black은 아닙니다. 우리가 선택하는 색상 값은 밝은 범위에서 선택되어야 합니다. 나는 거의 부도체의 반사되
는 색상을 참조하고 있습니다. Figure 08에서 당신은 dirt value가 correct brightness 값 범위 밑으로 떨어진
걸 볼 수 있습니다. 어두운 값들에 대해서 당신은 30-59범위 밑으로 설정하지 않아야 합니다. 어두운 값들은
30 sRGB 보다 관대하고 50 sRGB 보다 엄격해야 합니다. 밝은 값에 대해선 240 sRGB 이상의 값은 사용하지
않도록 합니다.
우리는 base color가 유전체 재질의 관점에서 반사된 빛의 데이터를 포함하고 그러므로 이것은 ambient
occlusion과 같은 빛 정보는 결여되었다고 주장했었습니다. 쉐이더가 주어진 ambient occlusion 채널로 충분
한 디테일을 표현하지 못할 때 미세한 occlusion을 넣는 경우와 같은 예외가 있습니다.
맵에서 금속의 반사율 값을 나타내는 값은 실제 세계에서 측정된 값이여야 합니다. 이러한 값들은 70-100%
의 specular을 이루고 있고 sRGB에서는 180-255입니다. Substance PBR Utilities 섹션에서 우리는 공통된 재질
을 위한 프리셋 F0값들에 대해서 논의할 것입니다. 또한, Sébastien Lagarde가 제공하는 meta/roughness 차
트들도 훌륭한 자료들입니다.
http://seblagarde.wordpress.com/2014/04/14/dontnodphysically-based-rendering-chart-for-unreal-engine-4/
1. 색상은 비금속 재질의 albedo와 금속재질의 반사율값을 나타낸다.
2. Base color는 micro-occlusion와 같은 예외를 제외하고 빛 정보가 없어야 한다.
3. 어두운 값들은 30 sRGB(허용범위) - 50 sRGB(strict range) 밑으로 내려가지 않는다.
4. 밝은 값들은 240 sRGB보다 높게 설정하지 않는다.
5. 순수한 금속의 반사율은 70-100%의 specular값을 가지며 이것은 180-255 sRGB와 같다.
The comprehensive PBR Guide by Allegorithmic – vol. 2 written by Wes McDermott | 번역 vich
당신이 밑에 있는 Metallic 섹션에서 읽을 것이지만, base color는 또한 금속 반사율값을 포함할 수 있습니다.
만약 오물이나 산화가 base color에 추가된다면 이것은 순수한 금속처럼 취급되지 않고 더 낮은 금속 반사율
값 범위를 가지게 할 것입니다. 오물이나 산화(녹 같은) 추가는 metallic map에서 또한 설명되어야 합니다. 이
러한 부분을 더 이상 금속으로 취급하지 않기 위해서 metallic 값은 낮아져야 합니다.
Metallic (Grayscale - Linear)
메탈릭 맵은 어느 부분이 순수한 금속부분인지 정의하는데 쓰입니다. 메탈릭 맵은 회색톤의 맵입니다. 이것
은 쉐이더에게 어떻게 base color의 데이터를 해석해야하는지 알려주는 마스크 비슷한 기능을 합니다.
메탈릭 맵의 데이타들은 실제세상의 데이타를 포함하고 있지 않습니다. 이것은 base color의 어느 부분이
reflected color(dielectric)으로 해석되어야 하고 어느 부분이 금속 반사율 값을 나타내는지 알려줍니다.
메탈릭 맵에서 0.0(black – 0 sRGB)는 금속이 아닌 부분을 의미하고 1.0(white – 255 sRGB)는 순수한 금속부
분을 의미합니다. 순수한 금속과 비금속을 구분하는 관점에서 메탈릭 맵은 2진법, (black,white = 비금속,금
속) 인 것입니다. 실제로, 쉐이더가 금속맵을 보고 하얀색을 볼 때, 쉐이더는 base color map의 해당 부분을
figure 11에 나와있는 금속의 반사율값을 적용 시킵니다.
The comprehensive PBR Guide by Allegorithmic – vol. 2 written by Wes McDermott | 번역 vich
가이드 라인 생성(Creation Guidelines)
금속 재질들은 텍스처링 하는데 있어서, 금속들의 반사율 값이 70-100%의 specular 범위로 될 것이라는 것과
어떤 금속들은 부식된다는 두 가지 중요한 측면을 가지고 있습니다. 우리는 이러한 두 개의 관점을 각각 가이
드라인 생성에서 언급한대로 살펴보겠습니다.
순수한 금속(Raw Metal)
금속맵은 0, 1 즉 금속이냐 아니냐로 쓰여집니다 그리고 순수한 금속아니면 오염된 금속인지 정의하는데 사
용됩니다. 저너럴 가이드에서 순수한 금속의 범위는 235 – 255 sRGB로 정의됩니다. 이 범위에 속하는 금속부
분은 figure 12에서 보는 것처럼 70-100%의 반사율, 180-255의 sRGB 범위가 필요합니다.
다시 말하지만 이러한 값들은 실제 세상에서 측정한 값을 기준으로 하고 있습니다.
부식되었거나 부도체(Corroded or dielectric layer)
표면을 웨더링 할 때, 금속은 녹슬었거나 다른 환경적 측면, 오물이나 지저분한 레이어들로 보충되어야 합니
다. 산화된 금속은 부도체, 예를들어 부식된 금속으로 다루어져야 합니다. 페인트 칠해진 메탈 또한 같습니다.
예를들어 만약 당신이 페인트 칠해진 금속의 어느 부분이 긁혀지거나 떨어져 나간걸 보았다면, 그 부분은 순
수한 금속재질(metallic map에서 흰색)입니다. 그리고 페인트 부분은 부도체 레이어(metallic map에서 검정
색)로 취급됩니다. 이러한 사실은 figure 13에서 확인할 수 있습니다.
The comprehensive PBR Guide by Allegorithmic – vol. 2 written by Wes McDermott | 번역 vich
Metallic map은 금속과 비금속인 상태의 혼합이 gray value로 맵에서 표현 되었다고 말할 수 있습니다.
만약 metallic map이 235 sRGB보다 낮은 값을 가지고 있다면 당신은 base color의 순수한 금속부분의 반사율
값을 낮출 필요가 있습니다. 예를들어 figure 14에서처럼 dirt layer가 부분적으로 순수한 금속의 부분을 모호
하게 가리고 있다고 생각해보세요. dirt는 부도체고 만약 당신이 metallic map을 완벽한 하얀색으로 내버려 둔
다면 base color의 dirt한 부분들도 순수한 금속과 같은 반사율 값을 가지게 될 것입니다. dirt가 있는 해당부분
의 Metallic map 값들을 낮추는 것으로 당신은 부도체와 금속의 적절한 반사율 값을 만들 수 있습니다.
Dirt layer의 투명도는 base color의 반사율값을 얼마나 낮출지 알려주는 지표가 될 수 있습니다. 여기엔 어렵
거나 빠른 규칙이 있진 않습니다. 당신이 할 일은 높은 반사율 값을 낮은 반사율 값으로 낮추는 것입니다.
그러나 이 변환의 정도는 매우 다양하게 일어납니다.
Substance 툴셋은 멀티채널지원을 통해 웨더링효과 작업과, 효과가 어떻게 채널들에게 전파될지 조절 하는
작업을 쉽게 해줍니다. Substance Designer과 Substance Painter는 Substance effect에 의해 자동적으로 채널
을 조절하는 Substance effect의 매개변수를 당신이 직접 조절할 수 있게 해줍니다.
예를 들어, Substance Designer 안에서 당신은 Material Color Blend node노드를 dirt 효과를 여러개의 채널에
같이 적용하도록 하기 위해 사용할 수 있습니다. Material Color Blend노드에서 당신은 금속의 dirt layer 효과
를 figure 15에서 볼 수 있듯이 metallic value slider을 조절함으로 써 제어 할 수 있습니다.
The comprehensive PBR Guide by Allegorithmic – vol. 2 written by Wes McDermott | 번역 vich
1. 검정(0.0)은 비금속이며 흰색(1.0)은 금속이다. 산화나 dirt에 대한 변화하는 gray scale값이 있다.
2. 만약 금속맵이 235 sRGB보다 낮은 값을 가지고 있다면 base color의 반사율값 또한 낮아져야 한다.
Roughness (Grayscale – Linear)
Roughness맵은 figure 16에서 볼 수 있듯이 빛의 산란을 일으키는 표면의 불규칙성을 나타냅니다. 볼륨1에서
다루었듯이 반사된 방향은 표면의 거친 정도에 따라 매우 다양하게 무작위로 나타날 것입니다. 이것은 빛의
방향을 바꾸지만 빛의 강도는 그대로 남습니다. 더 거친 표면일수록 더 크고 어두운 하이라이트를 가집니다.
부드러운 표면은 같은 양의 빛이 반사되더라도 specular 반사를 또렷하게 유지시킵니다.
이 맵에서 검정(0.0)은 부드러운 표면을 의미하고 흰색(1.0)은 거친 표면을 의미합니다. Roughness맵은 표면
의 성질을 결정하기 때문에 가장 창의적인 맵입니다. 본질적으로 이것은 당신이 표면의 상태에 대한 이야기
를 말할 수 있게 해주는 것입니다. 이것의 환경이 무엇인지? 이것은 세심하거나 무심하게 다루어 졌는지? 비
바람에 노출되어있었는지? 표면의 상태는 환경, 그리고 더 나아가 당신이 만드려고 하는 전체적인 어셋과 월
드에 대한 디자인까지도 연관되어 있습니다. Roughness에 맞고 그름은 없습니다. 아티스트는 완벽한 제어권
을 가집니다. roughness와 함께 시작하기 좋은 것은 노멀맵입니다. 노멀맵은 종종 roughness map에도 나와
야 하는 중요한 표면정보를 가지고 있습니다.
The comprehensive PBR Guide by Allegorithmic – vol. 2 written by Wes McDermott | 번역 vich
가이드라인 생성(Creation Guidelines)
yproduct of using the metal/roughness workflow is
1. 창조적이 되라, 그리고 표면에 대한 비주얼 스토리를 말해라
해상도와 텍셀밀도(Resolution and Texel Density)
metal/roughness 워크플로우를 쓰는 것에 대한 부작용은 figure 17에서 볼 수 있듯이 하얀 엣지구조를 가질
수 있다는 것입니다. 우리는 metallic workflow에 대해서 논의하고 있지만 이 문제는 specular/glossiness 워크
플로우에도 나타날 수 있습니다.
그러나 이것은 이펙트가 뒤집혔기 때문에 거의 보이지 않습니다. 즉, figure 18에서 보이듯이 엣지에 하얀색
대신에 까만 색을 띄고 있습니다. 이 현상은 figure 19에서 볼 수 있듯이 텍스쳐 보간현상 때문에 유전체에서
금속으로 변하는 부분에 명백하게 생겨납니다.
The comprehensive PBR Guide by Allegorithmic – vol. 2 written by Wes McDermott | 번역 vich
Metal/roughness에선 금속부분의 base color가 비금속의 diffuse color보다 밝은 값을 가지기 때문에 하얀 테
두리를 만들게 됩니다. Specular/glossiness에선 순수한 금속은 diffuse 색상이 없기 때문에 비금속 부분과 보
간되면서 검정색 테두리를 만들게 됩니다. 맵의 해상도와 텍셀밀도는 엣지의 인공구조(하얗게 되거나 까맣게
되는 현상)와 직접적인 영향이 있습니다. 만약 당신이 딱 떨어지는 엣지를 가진 브러쉬로 금속과 비금속의 보
간구역을 만드는데 썼다면, 낮은 해상도가 엣지를 부드럽게 해서 결국엔 엣지의 문제를 더 심하게 할 것입니
다. 이 낮은 해상도 문제는 UV에 의해서도 발생 가능합니다. UV가 해상도에 적절한 텍셀밀도로 커지지 않았
을 경우에 그렇습니다. UV을 위한 좋은 텍셀밀도를 제공하는 것이 figure20에서 보이듯이 엣지의 문제를 최
소화 시킬 수 있는 방법입니다. Figure 20에서 두 텍스쳐는 모두 2048픽셀 해상도를 가지고 있습니다. 하지만
오른쪽의 이미지는 낮은 텍셀밀도를 가진 형편없는 UV 전개를 보여주고 있습니다.
The comprehensive PBR Guide by Allegorithmic – vol. 2 written by Wes McDermott | 번역 vich
가이드라인 생성(Creation Guidelines)
yproduct of using the metal/roughness workflow is
1. 텍셀밀도와 해상도는 metal/roughness 워크플로우에서 나타날 수 있는 하얀 엣지에 영향을 미친다.
이러한 현상을 최소화 하기 위해 UV가 적절한 밀도와 알맞은 해상도를 가지고 있는지 확인하기.
Specular
모든 유전체의 F0은 전형적으로 metal/roughness 워크플로우에서 0.04(linear) 4% 반사율로 설정됩니다.
이전에 언급했듯 어떤 툴들은 당신에게 이러한 셋팅을 재 설정할 수 있는 specular channel을 제공합니다.
Substance에서 이것은 specularLevel channel로 불리웁니다. 유전체 F0은 맵 생성을 위한 가이드라인의 관점
에서는 더 복잡하며, 보통의 metal/roughness 워크플로우에서는 0.04값으로 작업하기 때문에 저는 우리가
specular/glossiness 워크플로우를 다루기 전까지는 가이드라인에 대해서는 미뤄둘 것입니다.
Metal/Roughness 장단점(Pros and Cons of the Metal/Roughness Worflow)
장점
1. 만들기가 쉬우며 부정확한 유전체의 F0값 입력으로 인한 에러가 적은 경향이 있다.
2. metallic과 roughness맵들이 grayscale맵이기 때문에 텍스쳐 메모리를 적게 사용한다.
(rgb가 아니라 한 채널만 이용하는 맵)
3. 더 폭넓게 받아들여지는 워크플로우 처럼 보인다.
단점
1. 맵 생성에 있어서 유전체에 대한 F0을 조절할 수 없다. 하지만 거의 모든 툴들은 기본의 4%값을 조
절할 수 있는 specular control을 가지고 있다.
2. Edge artifacts들(재질이 보간되는 부분에서 엣지가 하얗게 되던 현상)이 저 해상도에서 더 부각된다.
Specular/Glossiness Workflow
metal/roughness 처럼 specular/glossiness 워크플로우는 PBR 쉐이더에 샘플러로 공급되는 맵들(textures)의
셋트를 통해서 정의됩니다. Specular/glossiness 워크플로우에 특화된 맵들은 figure 21에서 볼 수 있듯이
diffuse, specular 그리고 glossiness 입니다. 비록 specular/glossiness 워크플로우가 diffuse와 specular와 같은
더 친숙한 이름을 쓰지만, 이러한 맵들이 전통적으로 쓰인 것들과 구별 하는 것은 중요합니다.Substance는
diffuse라는 용어로 사용하지만 어떤 툴에서는 diffuse를 albedo로 부를 수도 있습니다. PBR쉐이더는 또한
ambient occlusion을 활용할 것입니다. “ ”우리는 두가지 워크플로우에서 공통적으로 사용되는 맵들 섹션에서
살펴볼 것입니다.
이 워크플로우에서 금속과 비금속 재질의F0 반사율값들은 specular 맵에 저장됩니다. Specular/glossiness
워크플로우에서 당신은 두개의 RGB맵을 가집니다. 하나는 diffuse color(albedo)이며 다른 하나는 반사율 값
(specular) 입니다. Specular map에서 당신은 맵 자체 내에서 유전체의 F0값을 제어할 수 있습니다.
Metal/roughness에서 살펴보았듯이 Substance의 PBR쉐이더는 에너지 보존을 다룹니다. 이것은 specular
map이 유전체의 F0의 제어를 제공하고, 이것은 결국 부정확한 값에 더 취약해 진다는 뜻이기 때문에
specular/glossiness 워크플로우에서 더 중요해 졌습니다. 예를들어 하얀색(1.0)diffuse와 하얀색(1.0)
specular 값은 reflect/refract값을 시작할 때 받았던 빛의 양보다 보다 더 크게 만들어 에너지 보존법칙을 깨
트릴 수 있습니다. 이것은 텍스쳐를 제작할 때 당신은 텍스쳐 데이타에 기초한 실제 결과를 볼수 없다는 것을
의미합니다.
당신도 보겠지만, 맵들이 나타내는 데이타는 metal/roughness 워크플로우와 같습니다. 우리는 같은 가이드
라인을 따를 것입니다. 다른점은 어떻게 맵들이 제작되느냐 입니다. 데이타들은 다른 맵에 저장될 것이지만
The comprehensive PBR Guide by Allegorithmic – vol. 2 written by Wes McDermott | 번역 vich
같은 원리원칙을 따를 것입니다. 우리가 언급했듯이 유전체의 F0, 금속 굴절률, albedo color의 밝기범위와 같
은 모든 값들은 실제 측정된 데이타에서 유래된 것입니다. 우리가 보는 각각의 맵 타입에서 실제 측정을 기반
으로 한 가이드라인이 논의 될 것입니다. 이 섹션에서 나는 metal/roughness 에서 다루었던 정보를 반복하진
않을 것입니다. 대신 나는 차이점들과 어디서 차이가 만들어질 필요가 있는지에 대해서 집중할 것입니다.
Diffuse (RGB - sRGB)
metal/roughness 워크 플로우 처럼 diffuse map은 albedo color을 포함합니다. 하지만 반사율값을 포함하진
않습니다.
가이드라인 생성(Creation Guidelines)
diffuse 맵은 오직 albedo color입니다. 순수한 금속을 가르키는 부분은 검정(0.0)입니다. 왜냐하면 금속은
figure 22에서 볼 수 있듯이 색상을 가지지 않습니다. 산화가 일어난 부분의 금속은 순수한 금속으로 더 이상
취급되지 않고 색상을 가질 수 있습니다. 어떤 이물질이나 순수한 금속위에 유전체의 레이어를 만들 수 있는
다른 효과 또한 똑같이 취급됩니다.
Diffuse 맵에 대한 가이드라인은 base color 맵과 같습니다. 그러나 차이는 만약 순수한 금속이 있다면 0.0(검
정)의 값이 허용되고 어두운 정도의 범위에 대한 가이드라인에 지배되지 않습니다.
1. 색상은 비금속 재질의 albedo를 의미하고 검정(0.0)은 순수한 금속이다.
2. Base Color는 micro-occlusion같은 예외를 제외하고 빛의 정보를 포함하지 않는다.
3. 어두운 값들은 30 sRGB – 50 sRGB 밑으로 내려가지 않는다. 순수한 금속은 제외.
4. 밝은 값들은 240 sRGB 이상으로 올라가지 않는다.
The comprehensive PBR Guide by Allegorithmic – vol. 2 written by Wes McDermott | 번역 vich
Specular (RGB- sRGB)
specular 맵은 figure 23에서 처럼 금속의 반사율 값을 정의합니다. 이 RGB맵은 제작될 때 유전체 재질에게 서
로 다른 값을 허용합니다. 이것은 유전체에게 4% 반사율을 고정하고 specularLevel channel을 통해서만 수정
될 수 있는 metal/roughness 워크플로우와의 차이점입니다. Metal/roughness에서 다루었듯이 F0 값은 꼭 실
제 세상에서 측정한 값 으로부터 유래되어야 합니다. 유전체의 F0은 grayscale 값이 될 것이고 금속 반사율은
어떤 금속들이 다른 파장에서 빛을 흡수함에 따라 색상이 있을 수 있습니다.
The comprehensive PBR Guide by Allegorithmic – vol. 2 written by Wes McDermott | 번역 vich
가이드라인 생성(Creation Guidelines)
specular 맵이 금속과 비금속에 대한 F0값을 모두 포함하기 때문에 우리는 각각의 금속종류를 구분하여 볼 것
입니다.
Raw Metal
F0값은 실제 세상 데이타에 기초해야 합니다. 우리가 metallic 맵에서 다루었듯이 순수한 금속의 반사율은 산
화나 비금속을 지칭하는 어떤 레이어가 있다면 낮아져야 합니다. Specular/glossiness 워크플로우의 경우에
오염이나 산화는 figure 24에 나와있듯이 diffuse 맵에 있는 순수한 금속의 diffuse color를 높게 할 것이고
specular map의 반사율 값을 낮게 할 것입니다. Figure 24는 순수한 금속에 이물질 레이어가 있는 예제입니다.
specular 맵의 이물질은 유전체의 적절한 F0값을 포함하고 있습니다. 이러한 경우에 나는 0.04 아니면 4%의
값을 사용합니다.
유전체(Dielectric)
유전체 재질의 F0값도 specular map에서 조절됩니다. 당신은 전체적인 F0값을 완벽하게 조절할 수 있습니다.
하지만 정화한 데이터를 쓰는것은 중요합니다. 볼륨1에서 다루었듯이 비금속(부도체,유전체)들은 전기가 잘
통하지 않습니다. 굴절된 빛은 산란되거나 흡수되고(가끔 표면에서 다시 나타남) 그러므로 그들은 금속보다
더 작은 양의 빛을 반사합니다. 일반적인 유전체들은 index of refraction(IOR) 계산에 의하면 F0에서 2-5%값
을 가진다고 다루었습니다. 보석과 같은 경우를 제외하면 figure 25에 나와있듯이, 일반적인 유전체 재질에서
F0은 0.02-0.05(linear)값을 가집니다.
만약 당신이 특정한 재질에 대한 IOR값을 찾지 못한다면 당신은 4%의 값(0.04 – plastic)을 써도 좋습니다.
보석원석들은 예외이고 그들은 figure 21에서 보이듯(원본 오류인지 figure21은 해당 내용과 관련이 없다.)
0.05 – 0.17(linear)값을 가집니다.
쉐이더는 0.0 – 0.08의 범위에 맵핑되고 공기를 나타낼때는 0이 필요합니다.
1. specular 맵은 유전체의 F0과 순수한 금속의 반사율 값을 포함한다.
2. 유전체는 금속보다 작은 양의 빛을 반사한다. 유전체의 공통적인 값은 2 – 5%이며 sRGB의 관점에서
는 0.02 – 0.05범위에 속하는 sRGB 40 – 75 사이여야 한다.
The comprehensive PBR Guide by Allegorithmic – vol. 2 written by Wes McDermott | 번역 vich
3. 일반적인 보석원석들은 0.04 – 0.17(linear)범위이다.
4. 공통적인 액체는 0.02 – 0.04(linear)범위이다.
5. 순수한 금속의 반사율값은 70 – 100% specular이며 이는 sRGB에서 180 – 255 sRGB 이다.
6. 만약 특정 재질의 IOR값을 찾지 못한다면 4%값을 써라(0.04 – plastic)
Glossiness (Grayscale – Linear)
Glossiness 맵은 figure 26에서 볼 수 있듯이, 빛의 확산을 야기시키는 표면의 불규칙함을 묘사합니다. 이 맵에
서 검정(0.0)은 거친 표면을 의미하며 흰색(1.0)은 부드러운 표면을 의미합니다. Metal/roughness 워크플로우
의 roughness맵과 반대입니다. 우리가 roughness 섹션에서 다루었던것과 같은 예술적 가이드라인을 가지고
있습니다.
가이드라인 생성(Creation Guidelines)
yproduct of using the metal/roughness workflow is
1. 창조적이 되라, 그리고 표면에 대한 비주얼 스토리를 말해라
해상도와 텍셀밀도(Resolution and Texel Density)
우리는 어떻게 edge artifacts(가장자리가 하얗게 되거나 까맣게 되는)가 두 가지 워크플로우에서 나타날수
있는지 다루었습니다. 우리는 metal/roughness 섹션에서 이 문제에 대해 자세하게 다루었습니다. 이것은 또
한 specular/glossiness 에서 언급되어집니다. 순수한 금속은 diffuse 색이 없고 그렇기 때문에 diffuse 맵이 검
정색을 포함하게 됩니다. 그리고 검정색 값이 비 금속의 diffuse 색과 보간될 때 figure 27에서 다시 볼 수 있듯
이 검정색 테두리를 볼 수 있습니다.
저는 문서 해상도와 텍셀밀도가 이러한 edge artifacts에 강하고 직접적인 영향을 미친다고 재 반복할 것입니
다. 예를 들어 당신이 모서리가 날카로운 브러쉬로 경계를 표현했어도, 낮은 해상도는 엣지를 부드럽게 할 것
이고 그렇기 때문에 edge artifact를 더 심하게 할 것입니다. 이 낮은 해상도 문제는 해상도에 비해 충분하게
크지 못해서 적절한 texel 밀도를 제공하지 못하는 UVs 에서도 발생됩니다. UVs에 좋은 texel 밀도를 제공하
는것이 figure 28에서 또 볼 수 있는 문제를 해결하는 가장 좋은 방법입니다.
The comprehensive PBR Guide by Allegorithmic – vol. 2 written by Wes McDermott | 번역 vich
가이드라인 생성(Creation Guidelines)
yproduct of using the metal/roughness workflow is
1. texel 밀도와 해상도는 specular/glossiness 워크플로우에서 나올 수 있는 검은 테두리에 영향을 미친
다. UVs가 적절한 밀도를 해상도에 맞춰서 제공하고 있는지 확인해라
The comprehensive PBR Guide by Allegorithmic – vol. 2 written by Wes McDermott | 번역 vich
Specular/Glossiness 장단점(Pros and Cons of the Specular/Glossiness Worflow)
장점
1. Edge artifacts가 덜 보인다.
2. Specular 맵에서 유전체의 F0값을 조절할 수 있다.
단점
1. specular 맵이 유전체의 F0값 조절을 제공하기 때문에 잘못된 값이 쓰여지는 것에 더 취약하다. 이것
은 쉐이더에서 정확하게 다루어 지지 않았을 경우에 에너지 보존법칙을 깨트릴 수 있다.
2. RGB맵을 추가함에 따라 더 많은 텍스쳐 메모리를 사용한다.
3. 전통적인 워크플로우와 비슷한 용어를 사용하지만 다른 데이타를 요구해서 더 혼란스러울 수 있다.
또한 이것은 더 정확한 물리 기반 가이드라인 지식을 요구한다. 예를 들어 정확한 유전체의 F0값, 순
수한 금속의 diffuse color는 검정색인 것 그리고 쉐이더에서 다루어지지 않았을 경우엔 에너지 보존
법칙 까지.
Maps common to both workflows
Ambient Occlusion
ambient occlusion(AO)맵은 얼마나 주변 조명 환경이 표면에 접근하는지를 정의합니다. 이것은 오직 diffuse
contribution에만 영향을 끼치며 specular contribution는 가리지 못합니다. 언리얼4와 같은 엔진은 부분
reflection을 시뮬레이션 하기위한 screen space reflection 옵션을 가지고 있습니다. 가장 좋은 조합은 AO를
screen space reflection과 같이 사용하는 것입니다.
Substance PBR 쉐이더 안에는 ambient lighting(환경맵에 의해 생성되는)는 AO에 의해 곱해집니다. AO맵은
PBR쉐이더의 etxture sampler에 의해 제공됩니다. 이것은 29에 나와있듯이 선택적인 채널입니다.
AO는 texture 맵에 들어가지 않습니다. 이것 자체의 채널을 쉐이더로 공급합니다.
The comprehensive PBR Guide by Allegorithmic – vol. 2 written by Wes McDermott | 번역 vich
Ambient Occlusion 만들기(Creating Ambient Occlusion)
Substance Designer에서 AO는 메쉬를 통해서 구워지거나 통합 baking toolset을 통해서 노멀맵으로 부터 변
환될 수 있습니다. 게다가 figure 30 에서 처럼 height를 AO로 바꿀 수 있는 ambient occlusion 노드도 있습니
다. Bitmap2Material은 소스이미지로부터 AO를 생성하는데 사용될 수 있습니다.(figure 31)
The comprehensive PBR Guide by Allegorithmic – vol. 2 written by Wes McDermott | 번역 vich
높이Height
Height 맵은 종종 displacement를 표현하기위해 사용되고, PBR에선 더 분명한 깊이를 더해줘서 노멀맵과 범
프맵핑에 극 사실주의를 부여해주는 parallax(시차) 맵핑에도 사용될 수 있습니다.(figure 32)
Substance Designer 는 relief mapping parallax 알고리즘을 사용합니다. (Steep parallax mapping이라고도 불
리우며 raytrace를 heightfield로 쏘아서 각각의 교차점을 구해서 가장 가까운 교차점을 visible한 heightfield로
인식하는 알고리즘)
Height는 PBR쉐이더의 texture sampler에 의해 공급되며 또한 option channel도 있습니다. Substance
Designer에서 효과는 Figure 32에서 볼 수 있듯이 쉐이더의 relief parameter을 통해서 조절될 수 있습니다.
Creating Height
AO와 비슷하게 Substance Designer에서 integrated baking toolset을 메쉬를 통해 height를 추출할 수 있습니
다. 추가로 figure 33에서 볼 수 있듯이 노멀맵에서 height를 추출할 수 있는 normal to height노드가 있습니다.
Bitmap2Material 은 figure 34에서 볼 수 있듯이 소스이미지로부터 height를 생성합니다. 심지어 당신은
Substance Designer의 vector/bitmap painting tools로 height data를 생성할 수 있습니다. 그러나 가장 좋은 방
법은 figure 35처럼 Substance Painter로 3d mesh위에 직접적으로 자세하게 그리는 것입니다.
The comprehensive PBR Guide by Allegorithmic – vol. 2 written by Wes McDermott | 번역 vich
노말(Normal)
노말맵은 표면의 세밀함을 시뮬레이션 하는데 쓰여지고 PBR에서도 같은 용도로 쓰여집니다. 그러나 노말맵
이 표면의 세밀함을 시뮬레이션 하기 때문에 노멀맵에서 얻은 표면의 세밀함을 얻는것은 이익입니다.
노말 만들기(Creating Normal)
The comprehensive PBR Guide by Allegorithmic – vol. 2 written by Wes McDermott | 번역 vich
노말맵은 Substance Designer에서 integrated baking toolset을 활용하여 메쉬에서 얻을 수 있습니다. 게다가
figure 36에서처럼 height를 노말로 만들어주는 normal노드도 있습니다. Bitmap2Material은 figure 37에서처
럼 소스이미지에서 노말을 생성할 수 있습니다. 당신은 Substance Designer의 vector/bitmap painting tools 를
활용하여 height data를 생성할 수 있고 normal노드를 통해 그것들을 노말로 컨버팅 할 수 있습니다.
Substance painter에서 칠해진 height data도 노말맵으로 출력이 가능하고 당신은 노말을 아주 직접적으로 칠
할 수 있습니다.
Substance PBR Utilities
The comprehensive PBR Guide by Allegorithmic – vol. 2 written by Wes McDermott | 번역 vich
이번 섹션에서, 우리는 PBR텍스쳐를 만들고 제대로 된 반사율값을 셋팅하는걸 도와주는 몇가지 Substance
utilities 를 살펴볼 것입니다. Utilities들은 재질, correction and values 섹션으로 나뉘어 집니다.
이러한 노드들은 이 가이드 내에 있는 원리와 컨셉에 입각하여 만들어 졌습니다.
Materials
Bitmap2Material 3
B2M 3은 metal/roughness 나 specular/glossiness 워크플로우에 사용할 PBR맵들을 만들어주는 독립적인 앱
(Indie/Pro)이거나 Substance material의 일부(Pro일 경우)입니다. 이것은 반복가능한 맵을 만들어주고
albedo(이것의 light cancelation functions을 사용하는), 노말, height 맵을 만드는데 뛰어납니다.
Figure 38에서처럼 재질의 기본 텍스쳐를 만드는데 있어서 아주 좋은 유틸리티입니다.
PBR Base Material
이 노드는 full base material을 만드는데 사용되는 유틸리티 입니다. Filters>PBR Utilities 밑에 있는 Substance
Designer Library 에서 볼 수 있습니다.(figure 39)
이것은 metal/roughness 와 specular/glossiness 워크플로우 모두를 지원합니다. 순수한 금속에 대해선 공통적
인 프리셋을 제공하고 또한 비금속인 물질에 대해서는 유전체 albedo를 설정할 수 있게 해줍니다.
워크플로우에 따라 grunge amount option을 가진 roughness와 glossiness를 컨트롤 할 수 있습니다.
그렇지 않으면 당신은 Substance Painter에서 만들어진 base maps를 불러들일 때 작동하는 커스텀맵 인풋을
추가 하는 것을 선택할 수 있습니다. 이 방법을 선택하는 것으로 당신은 다른 재질들과 혼합될 수 있는
material node를 신속하게 생성 할 수 있습니다.
The comprehensive PBR Guide by Allegorithmic – vol. 2 written by Wes McDermott | 번역 vich
PBR Substance Materials
Substnace Designer와 Substance Painter는 PBR calibrated materials와 함께 제공됩니다. 그것들은 Substance
format으로 컴파일된, 손그림과 사진으로 생성된 재질들의 procedural의 조합입니다. Substance materials로
써 그것들은 텍스쳐의 다른 측면을 컨트롤 할 수 있는 다양한 매개변수를 가진다는 장점을 가집니다.
그것들은 맵들을 처음부터 제작하는 과정 없이, PBR컨텐츠와 작업하는 빠르고 효율적인 방법을 제공합니다.
Substance Designer안에 Substances들은 PBR Materials아래의 Library에서 발견할 수 있습니다. 거기엔 또한
Gametextures.com에서 제공하는 손으로 그려진 PBR 재질들의 셋트가 있습니다. 당신은 여분의
Gametextures.com PBR Substances 를 당신의 Allegorithmic 계정을 통해서 받을 수 있습니다.
Substance Painter안에서 Substances들은 Shelf의 Material 탭에서 찾을 수 있습니다. 거기에 또한
Gametextures.com 의 재질 셋트들이 있습니다. Gametextures.com 재질 들은 Allegorithmic계정을 통해서 다
운받을 수 있고 Material tab에 저장됩니다.
Substance Designer와 Substance Painter 이외에도 Substance Database는 방대한 양의 계산된 PBR 재질들이
있습니다.
Reflectance Values
유전체 F0(Dielectric F0)
figure 40에서 보이듯이 이 노드는 일반적인 유전체의 F0값을 출력합니다. 당신은 프리셋값을 선택할 수 있습
니다. 이것은 또한 IOR과 F0값을 받는 IOR인풋 필드가 있습니다. 이것은 유전체재질을 위해 디자인 되었으며
specular/glossiness 워크플로우나 metal/roughness워크플로우의 specularLevel channel과 같이 쓰일 수 있습
니다.
The comprehensive PBR Guide by Allegorithmic – vol. 2 written by Wes McDermott | 번역 vich
금속 반사율(Metal Reflectance)
이 노드는 일반적인 순수한 금속들에 대한 반사율 값을 출력하며, Filters>PBR의 Substance Designer Library
에서 찾을 수 있습니다. 당신은 figure 41에서 보이는 것 처럼 여러가지 금속 프리셋값들을 선택하여 사용할
수 있습니다.
The comprehensive PBR Guide by Allegorithmic – vol. 2 written by Wes McDermott | 번역 vich
수정(Correction)
PBR Metal/Roughness 검사(PBR Metal/Roughness Validate)
이 노드는 metal/roughness 워크플로우에서 사용되기 위해 디자인 되었습니다. 이 노드는 base color와 metal
맵의 부정확한 값을 체크하는 유틸리티입니다. Filters>PBR 아래의 Substance Designer Library에서 찾을 수
있습니다. 노드는 heat 맵을 빨강->노랑->녹색의 순서로 방출하는데 빨간색이 부정확한 값이고 초록/노랑
색이 정확한 값입니다. 금속에서 이것은 metallic 맵에서 금속으로 지정된 부분(235 sRGB보다 큰 값)을 base
color에 대입하여 F0값을 체크합니다. Heat 맵은 F0이 너무 낮을수도 있는 범위를 표시합니다. albedo에서는
유전체의 밝기값이 올바른지 체크합니다.
PBR Safe Color
이 노드는 figure 43에서처럼 base color나 diffuse 맵의 값들을 수정합니다. 이것은 값들이 정확한 유전체의
밝기값 안에 들어와 있는지 확인합니다. PBR Utilities아래의 Substance Designer's Library에서 찾을 수 있습니
다.
The comprehensive PBR Guide by Allegorithmic – vol. 2 written by Wes McDermott | 번역 vich
변환(Conversion)
BaseColor_metallic_roughness_to_diffuse_specular_glossiness
이 노드는 metal/roughness 워크플로우의 맵들을 specular/glossiness 워크플로우의 맵으로 변환시켜 줍니다.
(figure 44)이것은 PBR Utilities아래의 Substance Designer's Library에서 찾을 수 있습니다.
The comprehensive PBR Guide by Allegorithmic – vol. 2 written by Wes McDermott | 번역 vich
부록 - 차트(Appendix - Charts)
표면이 금속인가?(Is the surface metal?)
표면을 금속 또는 비금속으로 카테고리화 시키는건 도움이 됩니다. 저는 텍스쳐링을 시작할 때 첫 번째로 내
가 만드는 표면이 금속인지 아닌지 자신에게 묻곤 했습니다. 이 질문을 통해서 당신은 우리가 이 볼륨에서 다
루었고 figure 45, 46에도 나와있는 텍스쳐링 프로세싱 가이드라인을 유도할 수 있습니다.
Figure 45는 metal/roughness 워크플로우이며 figure 46은 specular/glossiness 워크플로우 입니다.
The comprehensive PBR Guide by Allegorithmic – vol. 2 written by Wes McDermott | 번역 vich
반사율 값(Reflectance Values)
Figure 47은 유전체의 F0범위를 보여주고 있습니다. 유전체는 금속보다 적은 양의 빛을 반사합니다. 일반적
인 유전체의 반사율 값은 2 - 5%이며 sRGB의 관점에서 이 값들은 0.02 – 0.05(linear)인 sRGB 40 - 75 입니다.
Figure 48에서 당신은 유전체 F0과 금속 반사율 값 모두를 볼 수 있습니다. 금속은 specular 범위가 70 –
100%이며 sRGB 값은 180 – 255입니다.
The comprehensive PBR Guide by Allegorithmic – vol. 2 written by Wes McDermott | 번역 vich
정확한 것과 부정확한 것 비교(Correct/Incorrect Comparisons)
figure 49에서 당신은 metal/roughness 워크플로우에서 정확하게 생성된 맵과 부정확하게 생성된 맵을 사용
하는 것에 대한 예제를 볼 수 있습니다. 이물질이 묻고 유전체가 페인트된 레이어들은 albedo 값을 너무 낮게
가지고 있고, 이물질은 metallic 맵에서 순수한 금속으로 표현되고 있습니다. 또한 금속 반사율 값이 70 –
100% specular 범위를 반사하지 못하게 너무 낮게 설정되어 있습니다.
Figure 50에서 당신은 specluar/glossiness 워크플로우에서 정확하게 생성된 맵과 부정확하게 생성된 맵을 사
용 하는 것에 대한 예제를 볼 수 있습니다. 모든 순수한 금속은 diffuse 맵에서 너무 밝은 값을 가지고 있습니
다. 이것은 검정색이 되어야 합니다. 유전체 페인트와 이물질 레이어들은 diffuse 맵에서 너무 어두운 값을 가
지고 있습니다. 이물질 레이어는 specular 맵에서 너무 밝은 F0을 가지고 있습니다. 이물질 F0의 유전체의 값
과 일치하지 않습니다. (figure 50의 아래쪽 incorrect 그림이 잘못나온 것 같습니다, base color가 아니고
diffuse여야 하는데)
The comprehensive PBR Guide by Allegorithmic – vol. 2 written by Wes McDermott | 번역 vich
Allegorithmic develops the new generation of 3D texturing software: Substance Painter, Substance Designer
and
Bitmap2Material. With most AAA game studios using these tools, Substance has become the standard for
creating
next-generation PBR (Physically Based Rendering) assets.
For more information on Substance, please visit our website at
www.allegorithmic.com
The comprehensive PBR Guide by Allegorithmic – vol. 2 written by Wes McDermott | 번역 vich

More Related Content

What's hot

NDC2016 프로젝트 A1의 AAA급 캐릭터 렌더링 기술
NDC2016 프로젝트 A1의 AAA급 캐릭터 렌더링 기술NDC2016 프로젝트 A1의 AAA급 캐릭터 렌더링 기술
NDC2016 프로젝트 A1의 AAA급 캐릭터 렌더링 기술Ki Hyunwoo
 
191019 Forward / Deferred Rendering
191019 Forward / Deferred Rendering191019 Forward / Deferred Rendering
191019 Forward / Deferred RenderingKWANGIL KIM
 
Shadow mapping 정리
Shadow mapping 정리Shadow mapping 정리
Shadow mapping 정리changehee lee
 
Ndc2010 전형규 마비노기2 캐릭터 렌더링 기술
Ndc2010 전형규   마비노기2 캐릭터 렌더링 기술Ndc2010 전형규   마비노기2 캐릭터 렌더링 기술
Ndc2010 전형규 마비노기2 캐릭터 렌더링 기술henjeon
 
[0107 박민근] 쉽게 배우는 hdr과 톤맵핑
[0107 박민근] 쉽게 배우는 hdr과 톤맵핑[0107 박민근] 쉽게 배우는 hdr과 톤맵핑
[0107 박민근] 쉽게 배우는 hdr과 톤맵핑MinGeun Park
 
2018.12.22 깊이 버퍼 그림자 매핑
2018.12.22 깊이 버퍼 그림자 매핑2018.12.22 깊이 버퍼 그림자 매핑
2018.12.22 깊이 버퍼 그림자 매핑Sukwoo Lee
 
[1023 박민수] 깊이_버퍼_그림자_1
[1023 박민수] 깊이_버퍼_그림자_1[1023 박민수] 깊이_버퍼_그림자_1
[1023 박민수] 깊이_버퍼_그림자_1MoonLightMS
 
김혁, <드래곤 하운드>의 PBR과 레이트레이싱 렌더링 기법, NDC2019
김혁, <드래곤 하운드>의 PBR과 레이트레이싱 렌더링 기법, NDC2019김혁, <드래곤 하운드>의 PBR과 레이트레이싱 렌더링 기법, NDC2019
김혁, <드래곤 하운드>의 PBR과 레이트레이싱 렌더링 기법, NDC2019devCAT Studio, NEXON
 
Precomputed atmospheric scattering(사전 계산 대기 산란)
Precomputed atmospheric scattering(사전 계산 대기 산란)Precomputed atmospheric scattering(사전 계산 대기 산란)
Precomputed atmospheric scattering(사전 계산 대기 산란)Bongseok Cho
 
[IGC 2016] 넷게임즈 김영희 - Unreal4를 사용해 모바일 프로젝트 제작하기
[IGC 2016] 넷게임즈 김영희 - Unreal4를 사용해 모바일 프로젝트 제작하기[IGC 2016] 넷게임즈 김영희 - Unreal4를 사용해 모바일 프로젝트 제작하기
[IGC 2016] 넷게임즈 김영희 - Unreal4를 사용해 모바일 프로젝트 제작하기강 민우
 
[1023 박민수] 깊이_버퍼_그림자
[1023 박민수] 깊이_버퍼_그림자[1023 박민수] 깊이_버퍼_그림자
[1023 박민수] 깊이_버퍼_그림자MoonLightMS
 
Brdf기반 사전정의 스킨 셰이더
Brdf기반 사전정의 스킨 셰이더Brdf기반 사전정의 스킨 셰이더
Brdf기반 사전정의 스킨 셰이더동석 김
 
Igc2016 Technical Artist가 뭐하는 사람이에요?
Igc2016 Technical Artist가 뭐하는 사람이에요?Igc2016 Technical Artist가 뭐하는 사람이에요?
Igc2016 Technical Artist가 뭐하는 사람이에요?SangYun Yi
 
Hierachical z Map Occlusion Culling
Hierachical z Map Occlusion CullingHierachical z Map Occlusion Culling
Hierachical z Map Occlusion CullingYEONG-CHEON YOU
 
Ndc17 - 차세대 게임이펙트를 위해 알야아할 기법들
Ndc17 - 차세대 게임이펙트를 위해 알야아할 기법들Ndc17 - 차세대 게임이펙트를 위해 알야아할 기법들
Ndc17 - 차세대 게임이펙트를 위해 알야아할 기법들Dae Hyek KIM
 
빠른 렌더링을 위한 오브젝트 제외 기술
빠른 렌더링을 위한 오브젝트 제외 기술빠른 렌더링을 위한 오브젝트 제외 기술
빠른 렌더링을 위한 오브젝트 제외 기술YEONG-CHEON YOU
 

What's hot (20)

NDC2016 프로젝트 A1의 AAA급 캐릭터 렌더링 기술
NDC2016 프로젝트 A1의 AAA급 캐릭터 렌더링 기술NDC2016 프로젝트 A1의 AAA급 캐릭터 렌더링 기술
NDC2016 프로젝트 A1의 AAA급 캐릭터 렌더링 기술
 
High dynamic range
High dynamic rangeHigh dynamic range
High dynamic range
 
191019 Forward / Deferred Rendering
191019 Forward / Deferred Rendering191019 Forward / Deferred Rendering
191019 Forward / Deferred Rendering
 
Shadow mapping 정리
Shadow mapping 정리Shadow mapping 정리
Shadow mapping 정리
 
Ndc2010 전형규 마비노기2 캐릭터 렌더링 기술
Ndc2010 전형규   마비노기2 캐릭터 렌더링 기술Ndc2010 전형규   마비노기2 캐릭터 렌더링 기술
Ndc2010 전형규 마비노기2 캐릭터 렌더링 기술
 
[0107 박민근] 쉽게 배우는 hdr과 톤맵핑
[0107 박민근] 쉽게 배우는 hdr과 톤맵핑[0107 박민근] 쉽게 배우는 hdr과 톤맵핑
[0107 박민근] 쉽게 배우는 hdr과 톤맵핑
 
2018.12.22 깊이 버퍼 그림자 매핑
2018.12.22 깊이 버퍼 그림자 매핑2018.12.22 깊이 버퍼 그림자 매핑
2018.12.22 깊이 버퍼 그림자 매핑
 
Bump Mapping
Bump MappingBump Mapping
Bump Mapping
 
[1023 박민수] 깊이_버퍼_그림자_1
[1023 박민수] 깊이_버퍼_그림자_1[1023 박민수] 깊이_버퍼_그림자_1
[1023 박민수] 깊이_버퍼_그림자_1
 
김혁, <드래곤 하운드>의 PBR과 레이트레이싱 렌더링 기법, NDC2019
김혁, <드래곤 하운드>의 PBR과 레이트레이싱 렌더링 기법, NDC2019김혁, <드래곤 하운드>의 PBR과 레이트레이싱 렌더링 기법, NDC2019
김혁, <드래곤 하운드>의 PBR과 레이트레이싱 렌더링 기법, NDC2019
 
Precomputed atmospheric scattering(사전 계산 대기 산란)
Precomputed atmospheric scattering(사전 계산 대기 산란)Precomputed atmospheric scattering(사전 계산 대기 산란)
Precomputed atmospheric scattering(사전 계산 대기 산란)
 
D2 Hdr
D2 HdrD2 Hdr
D2 Hdr
 
[IGC 2016] 넷게임즈 김영희 - Unreal4를 사용해 모바일 프로젝트 제작하기
[IGC 2016] 넷게임즈 김영희 - Unreal4를 사용해 모바일 프로젝트 제작하기[IGC 2016] 넷게임즈 김영희 - Unreal4를 사용해 모바일 프로젝트 제작하기
[IGC 2016] 넷게임즈 김영희 - Unreal4를 사용해 모바일 프로젝트 제작하기
 
[1023 박민수] 깊이_버퍼_그림자
[1023 박민수] 깊이_버퍼_그림자[1023 박민수] 깊이_버퍼_그림자
[1023 박민수] 깊이_버퍼_그림자
 
Brdf기반 사전정의 스킨 셰이더
Brdf기반 사전정의 스킨 셰이더Brdf기반 사전정의 스킨 셰이더
Brdf기반 사전정의 스킨 셰이더
 
Igc2016 Technical Artist가 뭐하는 사람이에요?
Igc2016 Technical Artist가 뭐하는 사람이에요?Igc2016 Technical Artist가 뭐하는 사람이에요?
Igc2016 Technical Artist가 뭐하는 사람이에요?
 
Ssao
SsaoSsao
Ssao
 
Hierachical z Map Occlusion Culling
Hierachical z Map Occlusion CullingHierachical z Map Occlusion Culling
Hierachical z Map Occlusion Culling
 
Ndc17 - 차세대 게임이펙트를 위해 알야아할 기법들
Ndc17 - 차세대 게임이펙트를 위해 알야아할 기법들Ndc17 - 차세대 게임이펙트를 위해 알야아할 기법들
Ndc17 - 차세대 게임이펙트를 위해 알야아할 기법들
 
빠른 렌더링을 위한 오브젝트 제외 기술
빠른 렌더링을 위한 오브젝트 제외 기술빠른 렌더링을 위한 오브젝트 제외 기술
빠른 렌더링을 위한 오브젝트 제외 기술
 

Pbr guide kor_02

  • 1. The comprehensive PBR Guide by Allegorithmic – vol. 2 written by Wes McDermott | 번역 vich
  • 2. 빛과 재질 PBR 텍스쳐를 만드는 실용적인 가이드 물리 기반 렌더링(PBR)은 하나의 정해진 기준보다 많은 방법론으로 생각될 수 있습니다. 특정한 원칙과 가 이드라인들이 있지만 완벽한 기준이 아닙니다. 그러므로 많은 다른 실행 방법들이 있습니다. 이러한 차이는 사용하는 맵의 타입에서 전형적으로 발견됩니다. 심지어 맵 이름을 바꾸는 방법도 다르지만 기본적인 사용 방법은 역시 같습니다. 이 가이드에서 우리는 figure 01에서 보여지듯이 가장 공통적인 2개의 워크플로우인 metal/roughness 와 specular/glossiness에 대해서 다룰 것입니다. Substance Designer, Substance Painter, Bitmap2Material 3 으로 구성된 Substance toolset은 PBR맵들을 만드는데 있어서 두 가지 워크플로우를 모두 지원합니다. Metal/roughness와 specular/glossiness을 위한 Substance PBR 쉐이더는 GGX BRDF를 사용하며 roughness/glossiness를 리맵핑하는데 어떤 값도 활용하지 않습니다. 그러나 만약 임의의 리맵핑이 필요하다 면 이것은 Substance material을 통해서 쉽게 실행될 수 있습니다. 더욱이 커스텀 쉐이더들은 Substance toolset에서 지원하기 때문에 당신은 어떤 커스텀된 파이프라인에서도 Substance를 활용할 수 있습니다. 두 가지 워크플로우가 각각의 장단점을 가지고 있지만 하나의 워크플로우가 특별히 다른 하나보다 낫다고 말할수는 없습니다. 가장 중요한 것은 당신이 PBR뒤에 있는 핵심 요소를 이해하는 것입니다. 워크플로우들은 PBR맵들을 당신이 정확하게 만들기 위한 컨셉과 가이드라인이지 워크플로우 자체가 아닙니다. 각각의 워크 플로우는 같은 자료를 나타내지만 각자 다른 방법으로 자료를 활용합니다. 볼륨1인 'The Comprehensive PBR Guide'에서 우리는 PBR을 기술적이고 이론적인 측면에서 정의했습니다. 이 두번째 볼륨에서는 우리는 PBR 텍스쳐들을 제작하는데 실용적인 방법을 논의하고 볼륨1에서 확립된 기초 에 입각한 가이드라인들을 제공할 것입니다. 우리는 PRR을 아티스트의 입장에서 바라보는 것으로 시작할 것 입니다. 거기서 우리는 metal/roughness 워크플로우를 원칙과 가이드라인에 따라 다루는 것을 논의할 것입니 다. 우리는 그리고나서 specular/glossinss 워크플로우를 다루고 제작하는 방법의 차이를 설명할 것입니다. 그러므로 PBR 텍스쳐들을 만드는데 전체적인 가이드라인에 대한 이해를 하는 가장 좋은 방법은 두 가지 워크 플로우를 모두 읽어보는 것입니다. The comprehensive PBR Guide by Allegorithmic – vol. 2 written by Wes McDermott | 번역 vich
  • 3. PBR은 무엇인가? 물리 기반 렌더링(PBR)은 빛이 표면과 작용하는 반응을 더 자세하게 표현해주는 쉐이딩 & 렌더링 기법입니 다. 이것은 물리 기반 렌더링(PBR) 또는 물리 기반 쉐이딩(PBS)으로도 불려집니다. 파이프라인의 어떠한 부 분이 논의되는지에 따라서 PBS는 보통 쉐이딩컨셉을 뜻하고 PBR은 렌더링과 라이팅에 집중되어 있습니다. 그러나 두 개의 방식 모두 물리적으로 정확한 관점을 표시하는 과정을 묘사하고 있습니다. PBR의 이점은 무엇인가? 우리는 PBR의 장점을 다음과 같은 미적인(artistic) 부분과 효율적인 생산 방식으로 볼 수 있습니다. 1. 제작 방법과 알고리즘들이 물리적으로 정확한 계산을 따르기 때문에 specularity와 같은 표면의 특성 을 고려하지 않아도 되어 더 사실적인 어셋을 제작하는 것이 쉽다. 2. 어셋들은 모든 조명 환경에서 정확하게 보일 것이다. 3. 각각의 아티스트에게 일관된 워크플로우를 제공한다.(서로 다른 아티스트여도 같은 워크플로우로 작업) 이것이 아티스트에게 의미하는 것 우리 아티스트들은 표면의 특성을 묘사하는 맵들을 다르게 생각할 필요가 있습니다. 규칙과 가이드라인을 따라야 하는 새로운 맵 타입들이 있습니다. 우리는 전통적인 렌더링 워크플로우인 diffuse와 specular맵의 개념을 버려야 합니다. 이 맵들은 재질들과 빛 이 반응하는 것에 대한 근사치로써의 제2의 옵션이었기 때문입니다. 컴퓨터 하드웨어와 렌더링이 발전은 우 리가 빛의 물리 법칙을 더 자세하게 시뮬레이션 할 수 있게 해주었습니다. PBR에서 쉐이더는 우리가 물리법칙에 입각한 맵을 만드는 반면에, 무거운 물리 리프팅을 에너지 보존과 BRDF를 통해서 다룹니다. 재질값을 마음대로 추정하는일을 PBR을 통해선 하지 않아도 되기 때문에 우리는 아티스트로서 텍스쳐를 만드는데 더 많은 시간을 활용할 수 있습니다. 가이드라인을 고수하고 맵을 정확하게 만드는 것은 중요하지만 그것이 우리가 아티스트로서의 직관을 고려하지 않아도 된다는 것은 아닙니다. 사 실, 캐릭터에 재질을 부여하는건 예술적인 측면입니다. 너무 물리학에 사로 잡히지 않는 것 또한 중요합니다. 우리가 물리학에 기초한 환경에서 일한다고 해서 이것이 우리가 세련된 아트 스타일로 작업을 할 수 없는 것 은 아닙니다. 예를 들면 디즈니의 물리기반 반사모델은 원칙에 입각하도록(principled) 디자인 되어있습니다. 이것은 엄격한 물리적 모델보다 아트적인 면에 더 맞도록 디자인 되었다는 말입니다. 이제 우리는 원리와 가 이드라인을 활용해야 한다는 사실을 알고 있습니다, 하지만 그들의 노예가 되어서는 안됩니다. Metal/Roughness Workflow metal/roughness 워크플로우는 PBR쉐이더에서 샘플러에 텍스쳐로 공급되는 채널의 셋트로 정의할 수 있습 니다. Metal/roughness 워크플로우에 특화된 맵은 figure02에서 보이듯 base color, metallic 그리고 roughness 이며, 우리는 각각의 이 맵들을 밑에서 다룰 것입니다. PBR쉐이더는 또한 figure03에서 보이듯 ambient occlusion, normal 그리고 parallax mapping을 위한 possible height을 활용합니다. 이 맵 타입들은 두 가지의 워크플로우(roughness/metal, specular/glossiness) 에서 모두 공통이며 'Maps common to both workflows'섹션에서 다룰 것입니다. Metal/roughness 워크플로우에서 금속의 반사값은 유전체를 위한 반사값과 BRDF에 의해서 다루어지는 평면 각도에서의 반사와 함께 base color map에서 다룹니다. 금속 맵은 차별화된 금속(뭔가 묻거나, 부식된..?)에 대한 마스크와 base color 맵에서 찾은 부도체 데이타로 활용됩니다. 유전체 F0값들은 쉐이더가 직접 다루기 때문에 수동으로 제작되진 않습니다. 쉐이더가 metal map에서 검은 부분을 찾으면 base color맵에서 해당하 는 부분은 유전체(금속이 아닌)로 인식되며 figure04에서 보이듯 4%의 반사율을 사용합니다. 첫 번째, 4%의 값은 거의 모든 유전체 재질에 사용해도 이상하지 않습니다. 유전체 F0, 금속 반사율, albedo color의 밝기 범위 같은 모든 값들은 실제로 측정 된 데이타에서 유추한 것들입니다. 이것을 알고 있는 것은 중요합니다. 우리는 볼륨1에서 표면에서 빛이 반사되는 곳의 빛 세기는 반사하기 전의 빛 세기보다 강할 수 없다는 에너지 보존법칙의 개념을 논의했습니다. Substance는 실행의 측면에서, 쉐이더가 전형적으로 에너 지 보존을 컨트롤 합니다. Metal/roughness 워크플로우에서 에너지 보존 법칙을 거스르는것은 불가능 합니다. The comprehensive PBR Guide by Allegorithmic – vol. 2 written by Wes McDermott | 번역 vich
  • 4. 메탈릭에서 검은색으로 된 부분(==base color에서 빨간부분)은 반사율이 낮은 상태로 렌더링 됩니다. Height맵과 Ambient Occlusion을 이용해 높낮이와 음영을 표현할 수 있습니다. The comprehensive PBR Guide by Allegorithmic – vol. 2 written by Wes McDermott | 번역 vich
  • 5. 유전체(Dielectric) F0 어떤 metal/roughness 실행에선 Substance Toolset과 Unreal Engine 4에서 볼 수 있듯이 specular control이 있습니다. 이 옵션은 아티스트들에게 유전체의 F0의 값을 바꿀 수 있게 해줍니다. Substance에선 이 아웃풋 은 'specularLevel' 이라고 불려지며, PBR의 metal/roughness 텍스쳐 샘플러에 의해 공급됩니다. Figure 05에서 보여지듯 이것은 0.0 – 0.08의 범위를 가지고 있습니다. The comprehensive PBR Guide by Allegorithmic – vol. 2 written by Wes McDermott | 번역 vich
  • 6. 만약 당신이 유전체의 F0값을 수동으로 설정할 필요가 있다면, figure 06에서 보이듯이 Substance Designer에 있는 Substance graph의 'specularLevel' 아웃풋을 사용할 수 있습니다. 우리는 유전체의 F0에 대해서 specular/glossiness 워크플로우에서 깊게 다룰 것입니다. Base Color (RGB – sRGB) Base color 맵은 figure 07에서 보이듯 2가지 타입의 데이터(유전체의 반사 색, 금속에서의 반사율 값)를 담을 수 있는 RGB 맵입니다. 유전체를 표현하는 색은 반사된 파장을 표현한다고 볼륨1에서 다루었었습니다. Metallic map에서 해당 부분이 메탈로 표시되면 반사율 값이 존재하는 것입니다. The comprehensive PBR Guide by Allegorithmic – vol. 2 written by Wes McDermott | 번역 vich
  • 7. 가이드라인 생성(Creation Guidelines) base color 맵은 색조에서 좀 평평해 보일 수가 있습니다. 즉 전통적인 diffuse 맵보다 낮은 컨트라스트를 가지 고 있습니다. 당신은 너무 밝거나 너무 어두운 값을 가지길 원하지 않습니다. 오브젝트들은 사실 우리들이 생 각하고 있는 것보다 밝은 톤을 가지고 있습니다. 우리는 이러한 범위를 가장 어두운 물질을 석탄으로, 가장 밝은 부분을 밝은 눈으로 생각하는 것으로 시각화 할 수 있습니다. 예를들어, 석탄은 어둡지만 완전한 0.0 black은 아닙니다. 우리가 선택하는 색상 값은 밝은 범위에서 선택되어야 합니다. 나는 거의 부도체의 반사되 는 색상을 참조하고 있습니다. Figure 08에서 당신은 dirt value가 correct brightness 값 범위 밑으로 떨어진 걸 볼 수 있습니다. 어두운 값들에 대해서 당신은 30-59범위 밑으로 설정하지 않아야 합니다. 어두운 값들은 30 sRGB 보다 관대하고 50 sRGB 보다 엄격해야 합니다. 밝은 값에 대해선 240 sRGB 이상의 값은 사용하지 않도록 합니다. 우리는 base color가 유전체 재질의 관점에서 반사된 빛의 데이터를 포함하고 그러므로 이것은 ambient occlusion과 같은 빛 정보는 결여되었다고 주장했었습니다. 쉐이더가 주어진 ambient occlusion 채널로 충분 한 디테일을 표현하지 못할 때 미세한 occlusion을 넣는 경우와 같은 예외가 있습니다. 맵에서 금속의 반사율 값을 나타내는 값은 실제 세계에서 측정된 값이여야 합니다. 이러한 값들은 70-100% 의 specular을 이루고 있고 sRGB에서는 180-255입니다. Substance PBR Utilities 섹션에서 우리는 공통된 재질 을 위한 프리셋 F0값들에 대해서 논의할 것입니다. 또한, Sébastien Lagarde가 제공하는 meta/roughness 차 트들도 훌륭한 자료들입니다. http://seblagarde.wordpress.com/2014/04/14/dontnodphysically-based-rendering-chart-for-unreal-engine-4/ 1. 색상은 비금속 재질의 albedo와 금속재질의 반사율값을 나타낸다. 2. Base color는 micro-occlusion와 같은 예외를 제외하고 빛 정보가 없어야 한다. 3. 어두운 값들은 30 sRGB(허용범위) - 50 sRGB(strict range) 밑으로 내려가지 않는다. 4. 밝은 값들은 240 sRGB보다 높게 설정하지 않는다. 5. 순수한 금속의 반사율은 70-100%의 specular값을 가지며 이것은 180-255 sRGB와 같다. The comprehensive PBR Guide by Allegorithmic – vol. 2 written by Wes McDermott | 번역 vich
  • 8. 당신이 밑에 있는 Metallic 섹션에서 읽을 것이지만, base color는 또한 금속 반사율값을 포함할 수 있습니다. 만약 오물이나 산화가 base color에 추가된다면 이것은 순수한 금속처럼 취급되지 않고 더 낮은 금속 반사율 값 범위를 가지게 할 것입니다. 오물이나 산화(녹 같은) 추가는 metallic map에서 또한 설명되어야 합니다. 이 러한 부분을 더 이상 금속으로 취급하지 않기 위해서 metallic 값은 낮아져야 합니다. Metallic (Grayscale - Linear) 메탈릭 맵은 어느 부분이 순수한 금속부분인지 정의하는데 쓰입니다. 메탈릭 맵은 회색톤의 맵입니다. 이것 은 쉐이더에게 어떻게 base color의 데이터를 해석해야하는지 알려주는 마스크 비슷한 기능을 합니다. 메탈릭 맵의 데이타들은 실제세상의 데이타를 포함하고 있지 않습니다. 이것은 base color의 어느 부분이 reflected color(dielectric)으로 해석되어야 하고 어느 부분이 금속 반사율 값을 나타내는지 알려줍니다. 메탈릭 맵에서 0.0(black – 0 sRGB)는 금속이 아닌 부분을 의미하고 1.0(white – 255 sRGB)는 순수한 금속부 분을 의미합니다. 순수한 금속과 비금속을 구분하는 관점에서 메탈릭 맵은 2진법, (black,white = 비금속,금 속) 인 것입니다. 실제로, 쉐이더가 금속맵을 보고 하얀색을 볼 때, 쉐이더는 base color map의 해당 부분을 figure 11에 나와있는 금속의 반사율값을 적용 시킵니다. The comprehensive PBR Guide by Allegorithmic – vol. 2 written by Wes McDermott | 번역 vich
  • 9. 가이드 라인 생성(Creation Guidelines) 금속 재질들은 텍스처링 하는데 있어서, 금속들의 반사율 값이 70-100%의 specular 범위로 될 것이라는 것과 어떤 금속들은 부식된다는 두 가지 중요한 측면을 가지고 있습니다. 우리는 이러한 두 개의 관점을 각각 가이 드라인 생성에서 언급한대로 살펴보겠습니다. 순수한 금속(Raw Metal) 금속맵은 0, 1 즉 금속이냐 아니냐로 쓰여집니다 그리고 순수한 금속아니면 오염된 금속인지 정의하는데 사 용됩니다. 저너럴 가이드에서 순수한 금속의 범위는 235 – 255 sRGB로 정의됩니다. 이 범위에 속하는 금속부 분은 figure 12에서 보는 것처럼 70-100%의 반사율, 180-255의 sRGB 범위가 필요합니다. 다시 말하지만 이러한 값들은 실제 세상에서 측정한 값을 기준으로 하고 있습니다. 부식되었거나 부도체(Corroded or dielectric layer) 표면을 웨더링 할 때, 금속은 녹슬었거나 다른 환경적 측면, 오물이나 지저분한 레이어들로 보충되어야 합니 다. 산화된 금속은 부도체, 예를들어 부식된 금속으로 다루어져야 합니다. 페인트 칠해진 메탈 또한 같습니다. 예를들어 만약 당신이 페인트 칠해진 금속의 어느 부분이 긁혀지거나 떨어져 나간걸 보았다면, 그 부분은 순 수한 금속재질(metallic map에서 흰색)입니다. 그리고 페인트 부분은 부도체 레이어(metallic map에서 검정 색)로 취급됩니다. 이러한 사실은 figure 13에서 확인할 수 있습니다. The comprehensive PBR Guide by Allegorithmic – vol. 2 written by Wes McDermott | 번역 vich
  • 10. Metallic map은 금속과 비금속인 상태의 혼합이 gray value로 맵에서 표현 되었다고 말할 수 있습니다. 만약 metallic map이 235 sRGB보다 낮은 값을 가지고 있다면 당신은 base color의 순수한 금속부분의 반사율 값을 낮출 필요가 있습니다. 예를들어 figure 14에서처럼 dirt layer가 부분적으로 순수한 금속의 부분을 모호 하게 가리고 있다고 생각해보세요. dirt는 부도체고 만약 당신이 metallic map을 완벽한 하얀색으로 내버려 둔 다면 base color의 dirt한 부분들도 순수한 금속과 같은 반사율 값을 가지게 될 것입니다. dirt가 있는 해당부분 의 Metallic map 값들을 낮추는 것으로 당신은 부도체와 금속의 적절한 반사율 값을 만들 수 있습니다. Dirt layer의 투명도는 base color의 반사율값을 얼마나 낮출지 알려주는 지표가 될 수 있습니다. 여기엔 어렵 거나 빠른 규칙이 있진 않습니다. 당신이 할 일은 높은 반사율 값을 낮은 반사율 값으로 낮추는 것입니다. 그러나 이 변환의 정도는 매우 다양하게 일어납니다. Substance 툴셋은 멀티채널지원을 통해 웨더링효과 작업과, 효과가 어떻게 채널들에게 전파될지 조절 하는 작업을 쉽게 해줍니다. Substance Designer과 Substance Painter는 Substance effect에 의해 자동적으로 채널 을 조절하는 Substance effect의 매개변수를 당신이 직접 조절할 수 있게 해줍니다. 예를 들어, Substance Designer 안에서 당신은 Material Color Blend node노드를 dirt 효과를 여러개의 채널에 같이 적용하도록 하기 위해 사용할 수 있습니다. Material Color Blend노드에서 당신은 금속의 dirt layer 효과 를 figure 15에서 볼 수 있듯이 metallic value slider을 조절함으로 써 제어 할 수 있습니다. The comprehensive PBR Guide by Allegorithmic – vol. 2 written by Wes McDermott | 번역 vich
  • 11. 1. 검정(0.0)은 비금속이며 흰색(1.0)은 금속이다. 산화나 dirt에 대한 변화하는 gray scale값이 있다. 2. 만약 금속맵이 235 sRGB보다 낮은 값을 가지고 있다면 base color의 반사율값 또한 낮아져야 한다. Roughness (Grayscale – Linear) Roughness맵은 figure 16에서 볼 수 있듯이 빛의 산란을 일으키는 표면의 불규칙성을 나타냅니다. 볼륨1에서 다루었듯이 반사된 방향은 표면의 거친 정도에 따라 매우 다양하게 무작위로 나타날 것입니다. 이것은 빛의 방향을 바꾸지만 빛의 강도는 그대로 남습니다. 더 거친 표면일수록 더 크고 어두운 하이라이트를 가집니다. 부드러운 표면은 같은 양의 빛이 반사되더라도 specular 반사를 또렷하게 유지시킵니다. 이 맵에서 검정(0.0)은 부드러운 표면을 의미하고 흰색(1.0)은 거친 표면을 의미합니다. Roughness맵은 표면 의 성질을 결정하기 때문에 가장 창의적인 맵입니다. 본질적으로 이것은 당신이 표면의 상태에 대한 이야기 를 말할 수 있게 해주는 것입니다. 이것의 환경이 무엇인지? 이것은 세심하거나 무심하게 다루어 졌는지? 비 바람에 노출되어있었는지? 표면의 상태는 환경, 그리고 더 나아가 당신이 만드려고 하는 전체적인 어셋과 월 드에 대한 디자인까지도 연관되어 있습니다. Roughness에 맞고 그름은 없습니다. 아티스트는 완벽한 제어권 을 가집니다. roughness와 함께 시작하기 좋은 것은 노멀맵입니다. 노멀맵은 종종 roughness map에도 나와 야 하는 중요한 표면정보를 가지고 있습니다. The comprehensive PBR Guide by Allegorithmic – vol. 2 written by Wes McDermott | 번역 vich
  • 12. 가이드라인 생성(Creation Guidelines) yproduct of using the metal/roughness workflow is 1. 창조적이 되라, 그리고 표면에 대한 비주얼 스토리를 말해라 해상도와 텍셀밀도(Resolution and Texel Density) metal/roughness 워크플로우를 쓰는 것에 대한 부작용은 figure 17에서 볼 수 있듯이 하얀 엣지구조를 가질 수 있다는 것입니다. 우리는 metallic workflow에 대해서 논의하고 있지만 이 문제는 specular/glossiness 워크 플로우에도 나타날 수 있습니다. 그러나 이것은 이펙트가 뒤집혔기 때문에 거의 보이지 않습니다. 즉, figure 18에서 보이듯이 엣지에 하얀색 대신에 까만 색을 띄고 있습니다. 이 현상은 figure 19에서 볼 수 있듯이 텍스쳐 보간현상 때문에 유전체에서 금속으로 변하는 부분에 명백하게 생겨납니다. The comprehensive PBR Guide by Allegorithmic – vol. 2 written by Wes McDermott | 번역 vich
  • 13. Metal/roughness에선 금속부분의 base color가 비금속의 diffuse color보다 밝은 값을 가지기 때문에 하얀 테 두리를 만들게 됩니다. Specular/glossiness에선 순수한 금속은 diffuse 색상이 없기 때문에 비금속 부분과 보 간되면서 검정색 테두리를 만들게 됩니다. 맵의 해상도와 텍셀밀도는 엣지의 인공구조(하얗게 되거나 까맣게 되는 현상)와 직접적인 영향이 있습니다. 만약 당신이 딱 떨어지는 엣지를 가진 브러쉬로 금속과 비금속의 보 간구역을 만드는데 썼다면, 낮은 해상도가 엣지를 부드럽게 해서 결국엔 엣지의 문제를 더 심하게 할 것입니 다. 이 낮은 해상도 문제는 UV에 의해서도 발생 가능합니다. UV가 해상도에 적절한 텍셀밀도로 커지지 않았 을 경우에 그렇습니다. UV을 위한 좋은 텍셀밀도를 제공하는 것이 figure20에서 보이듯이 엣지의 문제를 최 소화 시킬 수 있는 방법입니다. Figure 20에서 두 텍스쳐는 모두 2048픽셀 해상도를 가지고 있습니다. 하지만 오른쪽의 이미지는 낮은 텍셀밀도를 가진 형편없는 UV 전개를 보여주고 있습니다. The comprehensive PBR Guide by Allegorithmic – vol. 2 written by Wes McDermott | 번역 vich
  • 14. 가이드라인 생성(Creation Guidelines) yproduct of using the metal/roughness workflow is 1. 텍셀밀도와 해상도는 metal/roughness 워크플로우에서 나타날 수 있는 하얀 엣지에 영향을 미친다. 이러한 현상을 최소화 하기 위해 UV가 적절한 밀도와 알맞은 해상도를 가지고 있는지 확인하기. Specular 모든 유전체의 F0은 전형적으로 metal/roughness 워크플로우에서 0.04(linear) 4% 반사율로 설정됩니다. 이전에 언급했듯 어떤 툴들은 당신에게 이러한 셋팅을 재 설정할 수 있는 specular channel을 제공합니다. Substance에서 이것은 specularLevel channel로 불리웁니다. 유전체 F0은 맵 생성을 위한 가이드라인의 관점 에서는 더 복잡하며, 보통의 metal/roughness 워크플로우에서는 0.04값으로 작업하기 때문에 저는 우리가 specular/glossiness 워크플로우를 다루기 전까지는 가이드라인에 대해서는 미뤄둘 것입니다. Metal/Roughness 장단점(Pros and Cons of the Metal/Roughness Worflow) 장점 1. 만들기가 쉬우며 부정확한 유전체의 F0값 입력으로 인한 에러가 적은 경향이 있다. 2. metallic과 roughness맵들이 grayscale맵이기 때문에 텍스쳐 메모리를 적게 사용한다. (rgb가 아니라 한 채널만 이용하는 맵) 3. 더 폭넓게 받아들여지는 워크플로우 처럼 보인다. 단점 1. 맵 생성에 있어서 유전체에 대한 F0을 조절할 수 없다. 하지만 거의 모든 툴들은 기본의 4%값을 조 절할 수 있는 specular control을 가지고 있다. 2. Edge artifacts들(재질이 보간되는 부분에서 엣지가 하얗게 되던 현상)이 저 해상도에서 더 부각된다. Specular/Glossiness Workflow metal/roughness 처럼 specular/glossiness 워크플로우는 PBR 쉐이더에 샘플러로 공급되는 맵들(textures)의 셋트를 통해서 정의됩니다. Specular/glossiness 워크플로우에 특화된 맵들은 figure 21에서 볼 수 있듯이 diffuse, specular 그리고 glossiness 입니다. 비록 specular/glossiness 워크플로우가 diffuse와 specular와 같은 더 친숙한 이름을 쓰지만, 이러한 맵들이 전통적으로 쓰인 것들과 구별 하는 것은 중요합니다.Substance는 diffuse라는 용어로 사용하지만 어떤 툴에서는 diffuse를 albedo로 부를 수도 있습니다. PBR쉐이더는 또한 ambient occlusion을 활용할 것입니다. “ ”우리는 두가지 워크플로우에서 공통적으로 사용되는 맵들 섹션에서 살펴볼 것입니다. 이 워크플로우에서 금속과 비금속 재질의F0 반사율값들은 specular 맵에 저장됩니다. Specular/glossiness 워크플로우에서 당신은 두개의 RGB맵을 가집니다. 하나는 diffuse color(albedo)이며 다른 하나는 반사율 값 (specular) 입니다. Specular map에서 당신은 맵 자체 내에서 유전체의 F0값을 제어할 수 있습니다. Metal/roughness에서 살펴보았듯이 Substance의 PBR쉐이더는 에너지 보존을 다룹니다. 이것은 specular map이 유전체의 F0의 제어를 제공하고, 이것은 결국 부정확한 값에 더 취약해 진다는 뜻이기 때문에 specular/glossiness 워크플로우에서 더 중요해 졌습니다. 예를들어 하얀색(1.0)diffuse와 하얀색(1.0) specular 값은 reflect/refract값을 시작할 때 받았던 빛의 양보다 보다 더 크게 만들어 에너지 보존법칙을 깨 트릴 수 있습니다. 이것은 텍스쳐를 제작할 때 당신은 텍스쳐 데이타에 기초한 실제 결과를 볼수 없다는 것을 의미합니다. 당신도 보겠지만, 맵들이 나타내는 데이타는 metal/roughness 워크플로우와 같습니다. 우리는 같은 가이드 라인을 따를 것입니다. 다른점은 어떻게 맵들이 제작되느냐 입니다. 데이타들은 다른 맵에 저장될 것이지만 The comprehensive PBR Guide by Allegorithmic – vol. 2 written by Wes McDermott | 번역 vich
  • 15. 같은 원리원칙을 따를 것입니다. 우리가 언급했듯이 유전체의 F0, 금속 굴절률, albedo color의 밝기범위와 같 은 모든 값들은 실제 측정된 데이타에서 유래된 것입니다. 우리가 보는 각각의 맵 타입에서 실제 측정을 기반 으로 한 가이드라인이 논의 될 것입니다. 이 섹션에서 나는 metal/roughness 에서 다루었던 정보를 반복하진 않을 것입니다. 대신 나는 차이점들과 어디서 차이가 만들어질 필요가 있는지에 대해서 집중할 것입니다. Diffuse (RGB - sRGB) metal/roughness 워크 플로우 처럼 diffuse map은 albedo color을 포함합니다. 하지만 반사율값을 포함하진 않습니다. 가이드라인 생성(Creation Guidelines) diffuse 맵은 오직 albedo color입니다. 순수한 금속을 가르키는 부분은 검정(0.0)입니다. 왜냐하면 금속은 figure 22에서 볼 수 있듯이 색상을 가지지 않습니다. 산화가 일어난 부분의 금속은 순수한 금속으로 더 이상 취급되지 않고 색상을 가질 수 있습니다. 어떤 이물질이나 순수한 금속위에 유전체의 레이어를 만들 수 있는 다른 효과 또한 똑같이 취급됩니다. Diffuse 맵에 대한 가이드라인은 base color 맵과 같습니다. 그러나 차이는 만약 순수한 금속이 있다면 0.0(검 정)의 값이 허용되고 어두운 정도의 범위에 대한 가이드라인에 지배되지 않습니다. 1. 색상은 비금속 재질의 albedo를 의미하고 검정(0.0)은 순수한 금속이다. 2. Base Color는 micro-occlusion같은 예외를 제외하고 빛의 정보를 포함하지 않는다. 3. 어두운 값들은 30 sRGB – 50 sRGB 밑으로 내려가지 않는다. 순수한 금속은 제외. 4. 밝은 값들은 240 sRGB 이상으로 올라가지 않는다. The comprehensive PBR Guide by Allegorithmic – vol. 2 written by Wes McDermott | 번역 vich
  • 16. Specular (RGB- sRGB) specular 맵은 figure 23에서 처럼 금속의 반사율 값을 정의합니다. 이 RGB맵은 제작될 때 유전체 재질에게 서 로 다른 값을 허용합니다. 이것은 유전체에게 4% 반사율을 고정하고 specularLevel channel을 통해서만 수정 될 수 있는 metal/roughness 워크플로우와의 차이점입니다. Metal/roughness에서 다루었듯이 F0 값은 꼭 실 제 세상에서 측정한 값 으로부터 유래되어야 합니다. 유전체의 F0은 grayscale 값이 될 것이고 금속 반사율은 어떤 금속들이 다른 파장에서 빛을 흡수함에 따라 색상이 있을 수 있습니다. The comprehensive PBR Guide by Allegorithmic – vol. 2 written by Wes McDermott | 번역 vich
  • 17. 가이드라인 생성(Creation Guidelines) specular 맵이 금속과 비금속에 대한 F0값을 모두 포함하기 때문에 우리는 각각의 금속종류를 구분하여 볼 것 입니다. Raw Metal F0값은 실제 세상 데이타에 기초해야 합니다. 우리가 metallic 맵에서 다루었듯이 순수한 금속의 반사율은 산 화나 비금속을 지칭하는 어떤 레이어가 있다면 낮아져야 합니다. Specular/glossiness 워크플로우의 경우에 오염이나 산화는 figure 24에 나와있듯이 diffuse 맵에 있는 순수한 금속의 diffuse color를 높게 할 것이고 specular map의 반사율 값을 낮게 할 것입니다. Figure 24는 순수한 금속에 이물질 레이어가 있는 예제입니다. specular 맵의 이물질은 유전체의 적절한 F0값을 포함하고 있습니다. 이러한 경우에 나는 0.04 아니면 4%의 값을 사용합니다. 유전체(Dielectric) 유전체 재질의 F0값도 specular map에서 조절됩니다. 당신은 전체적인 F0값을 완벽하게 조절할 수 있습니다. 하지만 정화한 데이터를 쓰는것은 중요합니다. 볼륨1에서 다루었듯이 비금속(부도체,유전체)들은 전기가 잘 통하지 않습니다. 굴절된 빛은 산란되거나 흡수되고(가끔 표면에서 다시 나타남) 그러므로 그들은 금속보다 더 작은 양의 빛을 반사합니다. 일반적인 유전체들은 index of refraction(IOR) 계산에 의하면 F0에서 2-5%값 을 가진다고 다루었습니다. 보석과 같은 경우를 제외하면 figure 25에 나와있듯이, 일반적인 유전체 재질에서 F0은 0.02-0.05(linear)값을 가집니다. 만약 당신이 특정한 재질에 대한 IOR값을 찾지 못한다면 당신은 4%의 값(0.04 – plastic)을 써도 좋습니다. 보석원석들은 예외이고 그들은 figure 21에서 보이듯(원본 오류인지 figure21은 해당 내용과 관련이 없다.) 0.05 – 0.17(linear)값을 가집니다. 쉐이더는 0.0 – 0.08의 범위에 맵핑되고 공기를 나타낼때는 0이 필요합니다. 1. specular 맵은 유전체의 F0과 순수한 금속의 반사율 값을 포함한다. 2. 유전체는 금속보다 작은 양의 빛을 반사한다. 유전체의 공통적인 값은 2 – 5%이며 sRGB의 관점에서 는 0.02 – 0.05범위에 속하는 sRGB 40 – 75 사이여야 한다. The comprehensive PBR Guide by Allegorithmic – vol. 2 written by Wes McDermott | 번역 vich
  • 18. 3. 일반적인 보석원석들은 0.04 – 0.17(linear)범위이다. 4. 공통적인 액체는 0.02 – 0.04(linear)범위이다. 5. 순수한 금속의 반사율값은 70 – 100% specular이며 이는 sRGB에서 180 – 255 sRGB 이다. 6. 만약 특정 재질의 IOR값을 찾지 못한다면 4%값을 써라(0.04 – plastic) Glossiness (Grayscale – Linear) Glossiness 맵은 figure 26에서 볼 수 있듯이, 빛의 확산을 야기시키는 표면의 불규칙함을 묘사합니다. 이 맵에 서 검정(0.0)은 거친 표면을 의미하며 흰색(1.0)은 부드러운 표면을 의미합니다. Metal/roughness 워크플로우 의 roughness맵과 반대입니다. 우리가 roughness 섹션에서 다루었던것과 같은 예술적 가이드라인을 가지고 있습니다. 가이드라인 생성(Creation Guidelines) yproduct of using the metal/roughness workflow is 1. 창조적이 되라, 그리고 표면에 대한 비주얼 스토리를 말해라 해상도와 텍셀밀도(Resolution and Texel Density) 우리는 어떻게 edge artifacts(가장자리가 하얗게 되거나 까맣게 되는)가 두 가지 워크플로우에서 나타날수 있는지 다루었습니다. 우리는 metal/roughness 섹션에서 이 문제에 대해 자세하게 다루었습니다. 이것은 또 한 specular/glossiness 에서 언급되어집니다. 순수한 금속은 diffuse 색이 없고 그렇기 때문에 diffuse 맵이 검 정색을 포함하게 됩니다. 그리고 검정색 값이 비 금속의 diffuse 색과 보간될 때 figure 27에서 다시 볼 수 있듯 이 검정색 테두리를 볼 수 있습니다. 저는 문서 해상도와 텍셀밀도가 이러한 edge artifacts에 강하고 직접적인 영향을 미친다고 재 반복할 것입니 다. 예를 들어 당신이 모서리가 날카로운 브러쉬로 경계를 표현했어도, 낮은 해상도는 엣지를 부드럽게 할 것 이고 그렇기 때문에 edge artifact를 더 심하게 할 것입니다. 이 낮은 해상도 문제는 해상도에 비해 충분하게 크지 못해서 적절한 texel 밀도를 제공하지 못하는 UVs 에서도 발생됩니다. UVs에 좋은 texel 밀도를 제공하 는것이 figure 28에서 또 볼 수 있는 문제를 해결하는 가장 좋은 방법입니다. The comprehensive PBR Guide by Allegorithmic – vol. 2 written by Wes McDermott | 번역 vich
  • 19. 가이드라인 생성(Creation Guidelines) yproduct of using the metal/roughness workflow is 1. texel 밀도와 해상도는 specular/glossiness 워크플로우에서 나올 수 있는 검은 테두리에 영향을 미친 다. UVs가 적절한 밀도를 해상도에 맞춰서 제공하고 있는지 확인해라 The comprehensive PBR Guide by Allegorithmic – vol. 2 written by Wes McDermott | 번역 vich
  • 20. Specular/Glossiness 장단점(Pros and Cons of the Specular/Glossiness Worflow) 장점 1. Edge artifacts가 덜 보인다. 2. Specular 맵에서 유전체의 F0값을 조절할 수 있다. 단점 1. specular 맵이 유전체의 F0값 조절을 제공하기 때문에 잘못된 값이 쓰여지는 것에 더 취약하다. 이것 은 쉐이더에서 정확하게 다루어 지지 않았을 경우에 에너지 보존법칙을 깨트릴 수 있다. 2. RGB맵을 추가함에 따라 더 많은 텍스쳐 메모리를 사용한다. 3. 전통적인 워크플로우와 비슷한 용어를 사용하지만 다른 데이타를 요구해서 더 혼란스러울 수 있다. 또한 이것은 더 정확한 물리 기반 가이드라인 지식을 요구한다. 예를 들어 정확한 유전체의 F0값, 순 수한 금속의 diffuse color는 검정색인 것 그리고 쉐이더에서 다루어지지 않았을 경우엔 에너지 보존 법칙 까지. Maps common to both workflows Ambient Occlusion ambient occlusion(AO)맵은 얼마나 주변 조명 환경이 표면에 접근하는지를 정의합니다. 이것은 오직 diffuse contribution에만 영향을 끼치며 specular contribution는 가리지 못합니다. 언리얼4와 같은 엔진은 부분 reflection을 시뮬레이션 하기위한 screen space reflection 옵션을 가지고 있습니다. 가장 좋은 조합은 AO를 screen space reflection과 같이 사용하는 것입니다. Substance PBR 쉐이더 안에는 ambient lighting(환경맵에 의해 생성되는)는 AO에 의해 곱해집니다. AO맵은 PBR쉐이더의 etxture sampler에 의해 제공됩니다. 이것은 29에 나와있듯이 선택적인 채널입니다. AO는 texture 맵에 들어가지 않습니다. 이것 자체의 채널을 쉐이더로 공급합니다. The comprehensive PBR Guide by Allegorithmic – vol. 2 written by Wes McDermott | 번역 vich
  • 21. Ambient Occlusion 만들기(Creating Ambient Occlusion) Substance Designer에서 AO는 메쉬를 통해서 구워지거나 통합 baking toolset을 통해서 노멀맵으로 부터 변 환될 수 있습니다. 게다가 figure 30 에서 처럼 height를 AO로 바꿀 수 있는 ambient occlusion 노드도 있습니 다. Bitmap2Material은 소스이미지로부터 AO를 생성하는데 사용될 수 있습니다.(figure 31) The comprehensive PBR Guide by Allegorithmic – vol. 2 written by Wes McDermott | 번역 vich
  • 22. 높이Height Height 맵은 종종 displacement를 표현하기위해 사용되고, PBR에선 더 분명한 깊이를 더해줘서 노멀맵과 범 프맵핑에 극 사실주의를 부여해주는 parallax(시차) 맵핑에도 사용될 수 있습니다.(figure 32) Substance Designer 는 relief mapping parallax 알고리즘을 사용합니다. (Steep parallax mapping이라고도 불 리우며 raytrace를 heightfield로 쏘아서 각각의 교차점을 구해서 가장 가까운 교차점을 visible한 heightfield로 인식하는 알고리즘) Height는 PBR쉐이더의 texture sampler에 의해 공급되며 또한 option channel도 있습니다. Substance Designer에서 효과는 Figure 32에서 볼 수 있듯이 쉐이더의 relief parameter을 통해서 조절될 수 있습니다. Creating Height AO와 비슷하게 Substance Designer에서 integrated baking toolset을 메쉬를 통해 height를 추출할 수 있습니 다. 추가로 figure 33에서 볼 수 있듯이 노멀맵에서 height를 추출할 수 있는 normal to height노드가 있습니다. Bitmap2Material 은 figure 34에서 볼 수 있듯이 소스이미지로부터 height를 생성합니다. 심지어 당신은 Substance Designer의 vector/bitmap painting tools로 height data를 생성할 수 있습니다. 그러나 가장 좋은 방 법은 figure 35처럼 Substance Painter로 3d mesh위에 직접적으로 자세하게 그리는 것입니다. The comprehensive PBR Guide by Allegorithmic – vol. 2 written by Wes McDermott | 번역 vich
  • 23. 노말(Normal) 노말맵은 표면의 세밀함을 시뮬레이션 하는데 쓰여지고 PBR에서도 같은 용도로 쓰여집니다. 그러나 노말맵 이 표면의 세밀함을 시뮬레이션 하기 때문에 노멀맵에서 얻은 표면의 세밀함을 얻는것은 이익입니다. 노말 만들기(Creating Normal) The comprehensive PBR Guide by Allegorithmic – vol. 2 written by Wes McDermott | 번역 vich
  • 24. 노말맵은 Substance Designer에서 integrated baking toolset을 활용하여 메쉬에서 얻을 수 있습니다. 게다가 figure 36에서처럼 height를 노말로 만들어주는 normal노드도 있습니다. Bitmap2Material은 figure 37에서처 럼 소스이미지에서 노말을 생성할 수 있습니다. 당신은 Substance Designer의 vector/bitmap painting tools 를 활용하여 height data를 생성할 수 있고 normal노드를 통해 그것들을 노말로 컨버팅 할 수 있습니다. Substance painter에서 칠해진 height data도 노말맵으로 출력이 가능하고 당신은 노말을 아주 직접적으로 칠 할 수 있습니다. Substance PBR Utilities The comprehensive PBR Guide by Allegorithmic – vol. 2 written by Wes McDermott | 번역 vich
  • 25. 이번 섹션에서, 우리는 PBR텍스쳐를 만들고 제대로 된 반사율값을 셋팅하는걸 도와주는 몇가지 Substance utilities 를 살펴볼 것입니다. Utilities들은 재질, correction and values 섹션으로 나뉘어 집니다. 이러한 노드들은 이 가이드 내에 있는 원리와 컨셉에 입각하여 만들어 졌습니다. Materials Bitmap2Material 3 B2M 3은 metal/roughness 나 specular/glossiness 워크플로우에 사용할 PBR맵들을 만들어주는 독립적인 앱 (Indie/Pro)이거나 Substance material의 일부(Pro일 경우)입니다. 이것은 반복가능한 맵을 만들어주고 albedo(이것의 light cancelation functions을 사용하는), 노말, height 맵을 만드는데 뛰어납니다. Figure 38에서처럼 재질의 기본 텍스쳐를 만드는데 있어서 아주 좋은 유틸리티입니다. PBR Base Material 이 노드는 full base material을 만드는데 사용되는 유틸리티 입니다. Filters>PBR Utilities 밑에 있는 Substance Designer Library 에서 볼 수 있습니다.(figure 39) 이것은 metal/roughness 와 specular/glossiness 워크플로우 모두를 지원합니다. 순수한 금속에 대해선 공통적 인 프리셋을 제공하고 또한 비금속인 물질에 대해서는 유전체 albedo를 설정할 수 있게 해줍니다. 워크플로우에 따라 grunge amount option을 가진 roughness와 glossiness를 컨트롤 할 수 있습니다. 그렇지 않으면 당신은 Substance Painter에서 만들어진 base maps를 불러들일 때 작동하는 커스텀맵 인풋을 추가 하는 것을 선택할 수 있습니다. 이 방법을 선택하는 것으로 당신은 다른 재질들과 혼합될 수 있는 material node를 신속하게 생성 할 수 있습니다. The comprehensive PBR Guide by Allegorithmic – vol. 2 written by Wes McDermott | 번역 vich
  • 26. PBR Substance Materials Substnace Designer와 Substance Painter는 PBR calibrated materials와 함께 제공됩니다. 그것들은 Substance format으로 컴파일된, 손그림과 사진으로 생성된 재질들의 procedural의 조합입니다. Substance materials로 써 그것들은 텍스쳐의 다른 측면을 컨트롤 할 수 있는 다양한 매개변수를 가진다는 장점을 가집니다. 그것들은 맵들을 처음부터 제작하는 과정 없이, PBR컨텐츠와 작업하는 빠르고 효율적인 방법을 제공합니다. Substance Designer안에 Substances들은 PBR Materials아래의 Library에서 발견할 수 있습니다. 거기엔 또한 Gametextures.com에서 제공하는 손으로 그려진 PBR 재질들의 셋트가 있습니다. 당신은 여분의 Gametextures.com PBR Substances 를 당신의 Allegorithmic 계정을 통해서 받을 수 있습니다. Substance Painter안에서 Substances들은 Shelf의 Material 탭에서 찾을 수 있습니다. 거기에 또한 Gametextures.com 의 재질 셋트들이 있습니다. Gametextures.com 재질 들은 Allegorithmic계정을 통해서 다 운받을 수 있고 Material tab에 저장됩니다. Substance Designer와 Substance Painter 이외에도 Substance Database는 방대한 양의 계산된 PBR 재질들이 있습니다. Reflectance Values 유전체 F0(Dielectric F0) figure 40에서 보이듯이 이 노드는 일반적인 유전체의 F0값을 출력합니다. 당신은 프리셋값을 선택할 수 있습 니다. 이것은 또한 IOR과 F0값을 받는 IOR인풋 필드가 있습니다. 이것은 유전체재질을 위해 디자인 되었으며 specular/glossiness 워크플로우나 metal/roughness워크플로우의 specularLevel channel과 같이 쓰일 수 있습 니다. The comprehensive PBR Guide by Allegorithmic – vol. 2 written by Wes McDermott | 번역 vich
  • 27. 금속 반사율(Metal Reflectance) 이 노드는 일반적인 순수한 금속들에 대한 반사율 값을 출력하며, Filters>PBR의 Substance Designer Library 에서 찾을 수 있습니다. 당신은 figure 41에서 보이는 것 처럼 여러가지 금속 프리셋값들을 선택하여 사용할 수 있습니다. The comprehensive PBR Guide by Allegorithmic – vol. 2 written by Wes McDermott | 번역 vich
  • 28. 수정(Correction) PBR Metal/Roughness 검사(PBR Metal/Roughness Validate) 이 노드는 metal/roughness 워크플로우에서 사용되기 위해 디자인 되었습니다. 이 노드는 base color와 metal 맵의 부정확한 값을 체크하는 유틸리티입니다. Filters>PBR 아래의 Substance Designer Library에서 찾을 수 있습니다. 노드는 heat 맵을 빨강->노랑->녹색의 순서로 방출하는데 빨간색이 부정확한 값이고 초록/노랑 색이 정확한 값입니다. 금속에서 이것은 metallic 맵에서 금속으로 지정된 부분(235 sRGB보다 큰 값)을 base color에 대입하여 F0값을 체크합니다. Heat 맵은 F0이 너무 낮을수도 있는 범위를 표시합니다. albedo에서는 유전체의 밝기값이 올바른지 체크합니다. PBR Safe Color 이 노드는 figure 43에서처럼 base color나 diffuse 맵의 값들을 수정합니다. 이것은 값들이 정확한 유전체의 밝기값 안에 들어와 있는지 확인합니다. PBR Utilities아래의 Substance Designer's Library에서 찾을 수 있습니 다. The comprehensive PBR Guide by Allegorithmic – vol. 2 written by Wes McDermott | 번역 vich
  • 29. 변환(Conversion) BaseColor_metallic_roughness_to_diffuse_specular_glossiness 이 노드는 metal/roughness 워크플로우의 맵들을 specular/glossiness 워크플로우의 맵으로 변환시켜 줍니다. (figure 44)이것은 PBR Utilities아래의 Substance Designer's Library에서 찾을 수 있습니다. The comprehensive PBR Guide by Allegorithmic – vol. 2 written by Wes McDermott | 번역 vich
  • 30. 부록 - 차트(Appendix - Charts) 표면이 금속인가?(Is the surface metal?) 표면을 금속 또는 비금속으로 카테고리화 시키는건 도움이 됩니다. 저는 텍스쳐링을 시작할 때 첫 번째로 내 가 만드는 표면이 금속인지 아닌지 자신에게 묻곤 했습니다. 이 질문을 통해서 당신은 우리가 이 볼륨에서 다 루었고 figure 45, 46에도 나와있는 텍스쳐링 프로세싱 가이드라인을 유도할 수 있습니다. Figure 45는 metal/roughness 워크플로우이며 figure 46은 specular/glossiness 워크플로우 입니다. The comprehensive PBR Guide by Allegorithmic – vol. 2 written by Wes McDermott | 번역 vich
  • 31. 반사율 값(Reflectance Values) Figure 47은 유전체의 F0범위를 보여주고 있습니다. 유전체는 금속보다 적은 양의 빛을 반사합니다. 일반적 인 유전체의 반사율 값은 2 - 5%이며 sRGB의 관점에서 이 값들은 0.02 – 0.05(linear)인 sRGB 40 - 75 입니다. Figure 48에서 당신은 유전체 F0과 금속 반사율 값 모두를 볼 수 있습니다. 금속은 specular 범위가 70 – 100%이며 sRGB 값은 180 – 255입니다. The comprehensive PBR Guide by Allegorithmic – vol. 2 written by Wes McDermott | 번역 vich
  • 32. 정확한 것과 부정확한 것 비교(Correct/Incorrect Comparisons) figure 49에서 당신은 metal/roughness 워크플로우에서 정확하게 생성된 맵과 부정확하게 생성된 맵을 사용 하는 것에 대한 예제를 볼 수 있습니다. 이물질이 묻고 유전체가 페인트된 레이어들은 albedo 값을 너무 낮게 가지고 있고, 이물질은 metallic 맵에서 순수한 금속으로 표현되고 있습니다. 또한 금속 반사율 값이 70 – 100% specular 범위를 반사하지 못하게 너무 낮게 설정되어 있습니다. Figure 50에서 당신은 specluar/glossiness 워크플로우에서 정확하게 생성된 맵과 부정확하게 생성된 맵을 사 용 하는 것에 대한 예제를 볼 수 있습니다. 모든 순수한 금속은 diffuse 맵에서 너무 밝은 값을 가지고 있습니 다. 이것은 검정색이 되어야 합니다. 유전체 페인트와 이물질 레이어들은 diffuse 맵에서 너무 어두운 값을 가 지고 있습니다. 이물질 레이어는 specular 맵에서 너무 밝은 F0을 가지고 있습니다. 이물질 F0의 유전체의 값 과 일치하지 않습니다. (figure 50의 아래쪽 incorrect 그림이 잘못나온 것 같습니다, base color가 아니고 diffuse여야 하는데) The comprehensive PBR Guide by Allegorithmic – vol. 2 written by Wes McDermott | 번역 vich
  • 33. Allegorithmic develops the new generation of 3D texturing software: Substance Painter, Substance Designer and Bitmap2Material. With most AAA game studios using these tools, Substance has become the standard for creating next-generation PBR (Physically Based Rendering) assets. For more information on Substance, please visit our website at www.allegorithmic.com The comprehensive PBR Guide by Allegorithmic – vol. 2 written by Wes McDermott | 번역 vich