
금속 슬라이더를 올렸는데 물체가 검게 변했습니다. 색을 더 밝히기 전에, 그 금속에 비칠 빛이 있는지부터 살펴봐야 합니다. 물리 기반 렌더링을 이해하면 이런 상황에서 바꿔야 할 값을 고르기가 쉬워집니다. 반사가 너무 또렷하면 거칠기를, 플라스틱이 금속처럼 보이면 재질의 반사 특성을, 전체가 칙칙하면 조명과 노출을 살펴볼 수 있지요. PBR은 재질과 조명을 구분해, 들어온 빛이 어느 방향으로 얼마나 반사되는지 계산합니다.1
Phong의 난반사와 반짝임까지 알고 계신다면 출발점은 충분합니다. 저는 구 하나의 반짝임이 왜 넓어지는지, 가장자리에서는 왜 강해지는지부터 살펴보려 합니다. 아래 실험은 같은 물체의 조건을 한 가지씩 바꾸도록 만들었습니다.
익숙한 Phong 반사 모델은 대략 세 항을 더합니다.
주변광 항, 표면이 광원을 향할수록 밝아지는 난반사 항, 반사 방향과 시선이 가까울수록 강해지는 정반사 항입니다. 정반사는 흔히 다음처럼 씁니다.
\(I_s\)는 정반사 항의 값이고, \(k_s\)는 그 세기입니다. \(\mathbf r\)과 \(\mathbf v\)는 각각 빛의 반사 방향과 카메라 방향을 나타내는 길이 1의 벡터입니다. 두 방향이 가까우면 내적이 1에 가까워집니다. 지수 \(p\)를 키우면 조금만 어긋나도 값이 빠르게 줄어들어 반짝임이 좁아집니다. Blinn–Phong은 반사 방향 대신 광원과 시선 사이의 중간 방향을 이용합니다.2
Phong의 지수와 정반사 세기만으로도 좁고 강한 반짝임이나 넓고 부드러운 반짝임을 만들 수 있습니다. 문제는 난반사와 정반사의 세기를 따로 조절할 때 생깁니다. 재질이 받은 빛보다 많은 빛을 내보내는 조합도 만들 수 있고, 지수만 바꿨는데 반사 전체의 양까지 달라질 수 있습니다. Phong에도 반사 에너지를 조절하도록 정규화한 변형이 있습니다. 여기서는 난반사와 정반사를 함께 조절해, 들어온 빛보다 더 많은 빛을 돌려보내지 않게 하는 데 주목하겠습니다.3
실험 1. Phong 계열과 PBR의 반짝임을 비교해 보세요. 넓이뿐 아니라 밝은 중심에서 어두운 주변으로 넘어가는 모양을 봅니다. 두 모델의 슬라이더 숫자가 같은 재질을 뜻하지는 않습니다.
‘Phong shading’이라는 말은 픽셀마다 보간한 법선으로 조명을 계산하는 기법을 뜻하기도 합니다. 여기서 비교하는 대상은 반사 모델입니다. 픽셀마다 계산하는 방식은 PBR에서도 사용할 수 있습니다.
작은 표면 하나를 생각해 봅시다.
그곳으로 들어오는 빛, 카메라 쪽으로 나가는 빛, 표면이 향하는 방향이 있습니다. 재질이 이 방향들 사이에서 빛을 어떻게 돌려보내는지 나타내는 함수가 BRDF입니다. BRDF는 결국 ‘어디서 받은 빛을 어디로 얼마나 돌려보내는가’에 답하는 함수입니다.4
| 기호 | 표면에서 떠올릴 방향 |
|---|---|
| \(\mathbf n\) | 표면에 수직으로 선 방향 |
| \(\mathbf l\) | 표면에서 광원으로 향하는 방향 |
| \(\mathbf v\) | 표면에서 카메라로 향하는 방향 |
| \(\mathbf h\) | 광원 방향과 시선 방향의 정중간 |
방향만 비교할 수 있도록 벡터의 길이는 모두 1로 놓겠습니다. 중간 방향은 \(\mathbf h=\mathrm{normalize}(\mathbf l+\mathbf v)\)로 구합니다. 두 방향을 더한 뒤 길이를 1로 맞추는 계산입니다.
이 글의 벡터들은 표면에서 바깥으로 향합니다. 그림에 그린 입사 광선의 진행 화살표는 \(\mathbf l\)과 반대 방향입니다.
BRDF만으로 픽셀 색이 정해지지는 않습니다. 광원의 세기와 입사각도 필요합니다. 같은 빛을 비스듬히 비추면 더 넓은 면적에 나뉘어 닿습니다. 그래서 \(\max(\mathbf n\cdot\mathbf l,0)\)을 곱합니다. Lambert 난반사에서 보았던 코사인 항이 여전히 남는 것이지요.5
한 방향에서 오는 빛은 방금 설명한 계산으로 구합니다. 주변 여러 방향에서 빛이 들어온다면, 방향마다 같은 계산을 하고 결과를 합칩니다. 다음 렌더링 방정식에서는 적분 기호를 ‘모두 더하기’로 읽어도 충분합니다.
수식 보기
왼쪽의 \(L_o\)는 카메라 쪽으로 나가는 빛입니다. 오른쪽에서는 표면 자체가 내는 빛 \(L_e\)에 주변에서 들어와 반사된 빛을 더합니다. \(\Omega^+\)는 표면 위쪽 반구이고, \(d\omega_l\)은 그 반구에서 아주 작은 방향 범위를 뜻합니다. 적분은 각 방향에서 들어오는 빛 \(L_i\)에 재질의 반응 \(f_r\)과 입사각 항을 곱해 모두 더하라는 뜻입니다. 이 식은 계산해야 할 빛의 합을 정합니다. 실시간 엔진은 그 합을 빠르게 근사하는 방법을 택합니다. 광원 몇 개를 직접 계산하거나, 환경맵과 미리 구한 조명 정보를 쓰거나, 광선을 추적할 수 있습니다.6
겉보기에는 매끈한 금속도 아주 작은 규모에서는 표면 방향이 제각각일 수 있습니다.
미세면 모델은 표면을 수많은 작은 거울 조각으로 생각합니다. 하나하나의 조각은 빛을 규칙적으로 반사하지만, 조각들이 향하는 방향이 다르므로 전체 반사는 퍼집니다.7
미세면의 방향이 다양해질수록 반사가 여러 방향으로 퍼집니다. 설명을 위한 확대 개념도이며 실제 표면 높이를 재현한 그림은 아닙니다.
이때 거칠기는 메시를 울퉁불퉁하게 만드는 값과 구별해야 합니다. Roughness를 높여도 구의 실루엣은 그대로일 수 있습니다. 거칠기는 한 픽셀보다 작은 미세면들의 방향 분포를 통계적으로 바꾸기 때문입니다.8
작은 거울들의 반사를 모으는 식에서 세 가지 요인을 분리해 보겠습니다.
분자의 D, F, G는 각각 다른 질문에 답합니다. D는 필요한 방향의 작은 면이 얼마나 있는지, F는 그 면이 빛을 얼마나 반사하는지, G는 다른 면에 가리지 않고 빛이 드나들 수 있는지를 나타냅니다. 분모는 미세면 기준의 반사를 전체 표면 기준으로 바꾸는 데 필요한 항입니다.9
이 식은 광원과 시선이 표면 앞쪽에 있고 거칠기가 0보다 클 때 평가합니다. 정확히 0인 거칠기는 완전한 거울이라는 특수한 경우이므로, 실시간 구현에서는 보통 작은 최솟값을 둡니다. 분모가 0이 되는 각도도 따로 처리해야 합니다.
전체 반응은 정반사와 난반사를 더해 구합니다. 식으로 쓰면 \(f_r=f_d+f_s\)이며, 난반사 \(f_d\)는 금속성을 설명할 때 다시 살펴보겠습니다. 이 재질 반응에 광원 세기와 입사각을 곱한 뒤, 여러 방향의 결과를 모으는 것이 앞의 렌더링 방정식입니다.
D: 작은 거울은 어디를 향하는가
광원에서 온 빛을 카메라로 보내려면 작은 거울의 법선이 \(\mathbf h\)를 향해야 합니다. D를 보면 그 방향을 향한 미세면이 얼마나 분포하는지 알 수 있습니다. 자주 쓰이는 GGX 분포는 선명한 반짝임 주변에 비교적 긴 꼬리를 만듭니다.10
수식 보기
\(r\)은 사용자가 조절하는 거칠기입니다. 이 실험에서는 \(r\)을 제곱한 \(\alpha\)를 수식에 넣습니다. 거칠기 슬라이더의 값과 수식에 넣는 값을 이렇게 구별합니다.11
실험 2. 거칠기를 낮췄다가 높여 보세요. 색으로 표시된 분포가 얼마나 넓어지는지 봅니다. 이 화면은 모양을 비교하기 위해 중심값으로 나누어 표시하므로, 실제 D의 크기는 옆의 숫자로 확인합니다. D는 재질의 최종 색도, 반드시 0에서 1 사이에 놓이는 반사율도 아닙니다.
F: 같은 표면도 보는 각도에 따라
유리창을 정면으로 볼 때와 옆에서 비스듬히 볼 때를 떠올려 보세요. 옆으로 갈수록 유리에 비친 풍경이 더 강해집니다. 표면에서 반사되는 비율이 입사각에 따라 달라지는 프레넬 효과입니다.12
같은 물 표면도 낮은 각도에서 보면 하늘의 반사가 강해져 물속이 덜 보입니다. 프레넬 효과를 설명하기 위해 생성한 비교 그림이며 측정 사진은 아닙니다.
실시간 렌더링에서 많이 쓰는 Schlick 근사는 다음처럼 생겼습니다.
\(F_0\)는 정면 입사에서의 반사율입니다. 공기와 굴절률 1.5인 비금속 사이에서는 약 0.04, 곧 4%입니다. 정면에서 4%만 반사해도 반짝임은 충분히 눈에 띌 수 있습니다. 광원이 충분히 밝으면 그 일부도 눈에 띕니다.13
수식 보기
\(\eta_1\)과 \(\eta_2\)는 경계 양쪽 물질의 굴절률입니다. 공기에서 유리로 들어간다면 각각 약 1과 1.5를 넣습니다. 이 식은 비금속의 매끈한 경계에 빛이 정면으로 들어올 때 적용합니다. 금속은 흡수까지 포함한 광학 특성이 필요하므로 이 식에 굴절률 하나만 넣어 처리하지 않습니다.14
실험 3. 시점과 굴절률을 바꿔 반사율을 살펴보세요. 거친 표면의 정반사에서는 F를 계산할 때 \(\mathbf n\)이 아니라, 해당 반사를 만드는 미세면의 방향 \(\mathbf h\)를 씁니다. 단순히 ‘구 가장자리를 밝히는 효과’로만 외우면 놓치는 부분입니다.
G: 방향이 맞아도 가려질 수 있다
반사 방향을 맞춘 작은 면도 옆의 돌출부에 가려질 수 있습니다. 광원에서 빛이 도착하지 못하거나, 반사된 빛이 카메라로 가는 길이 막힙니다. G는 이런 미세한 가림을 통계적으로 반영합니다. Smith 계열이 널리 쓰입니다.15
왼쪽은 빛이 도달하지 못하는 경우, 오른쪽은 카메라로 나가는 길이 막힌 경우입니다. G는 두 가림을 통계적으로 반영합니다.
실험 4. 시선을 낮춰 표면을 스치듯 보고 G 적용 전후를 비교해 보세요. G를 끈 화면은 학습을 위한 비물리적 비교입니다. 물체가 바닥에 드리우는 큰 그림자와 이 미세면 가림은 별도 계산입니다.
빨간 플라스틱은 빨간 몸체 위에 흰 조명이 비치는 모습을 보입니다.
구리에서는 표면 반사 자체가 구리빛을 띱니다. 금속성 값으로 재질을 구분할 때는 기본색(Base Color)의 역할이 달라집니다. 비금속에서는 난반사색을, 금속에서는 정면 반사색을 정합니다. 같은 색 입력이 서로 다른 계산에 들어가는 셈입니다.16
비금속의 내부 산란과 금속의 색 있는 표면 반사를 구분한 개념도입니다. 반사되지 않은 빛이 전부 난반사로 돌아오는 것은 아닙니다. 흡수되는 몫도 있습니다.
비금속의 굴절률을 1.5로 둔 교육용 모델에서는 금속성 \(m\)을 다음처럼 연결할 수 있습니다.
\(c\)는 기본색의 선형 RGB 값이며, 이 계산은 빨강, 초록, 파랑 성분 각각에 적용합니다. \(m=1\)이면 난반사 항이 없어지고 색은 정반사에 들어갑니다. \(m=0\)이면 일반적인 비금속의 정면 반사율을 사용합니다. 두 번째 식은 정반사에 쓴 빛을 난반사에 다시 모두 쓰지 않기 위한 교육용 근사입니다. 모든 엔진의 난반사 모델이나 에너지 처리를 그대로 나타내지는 않습니다.1718
에너지 보존은 ‘반사된 빛을 모든 방향에 걸쳐 모아도 들어온 빛보다 많아지지 않는다’는 조건입니다. 픽셀 RGB가 1을 넘으면 위반이라는 뜻은 아닙니다. 밝은 광원의 반사나 넓은 밝기 범위를 담는 HDR 영상에서는 1보다 큰 값이 자연스럽게 필요합니다.1920
실험 5. 같은 색을 두고 금속성을 0과 1로 바꿔 보세요. 반짝임의 색과 밝은 부분 바깥의 색을 비교합니다. 중간값은 전환을 관찰하는 데 유용하지만, 순수한 재질의 ‘반쯤 금속인 정도’로 생각하지 않는 편이 좋습니다. 혼합된 픽셀이나 재질 전환에 쓰일 수 있습니다.21
노멀맵은 조명 계산에 쓸 표면 방향을 바꿉니다.
표면에 홈이 난 듯 빛이 꺾이지만, 일반적인 노멀맵만으로 메시 외곽선이 바뀌지는 않습니다. 거칠기는 그 표면 방향 주변에서 미세면들이 얼마나 퍼져 있는지를 정합니다. 긁힌 자국의 방향과 그 부분의 반사 번짐을 서로 다른 값으로 만들 수 있습니다.22
실험 6. 노멀 강도를 올리면서 구의 외곽선과 표면의 반짝임을 번갈아 봅니다. 다음으로 거칠기를 바꿉니다. 홈의 명암과 반사의 퍼짐이 서로 다른 방식으로 변하는지 관찰해 보세요.
주변광 차폐(Ambient Occlusion, AO)는 틈이나 구석처럼 주변이 막혀 간접광이 적게 들어오는 곳을 근사합니다. 빛이 직접 닿는 홈까지 AO 값으로 어둡게 만들면, 조명을 옮겨도 그곳의 검은 무늬가 남을 수 있습니다. 노멀, 거칠기, AO를 한 종류의 ‘디테일 강도’로 다루면 문제 원인을 찾기 어려워집니다.23
재질을 금속으로 바꾸었더니 대부분 검게 보일 수 있습니다.
금속은 주변을 반사해 보이는데, 그 주변에 반사할 밝은 것이 부족할 수 있지요. 주변에 밝은 조명을 더했을 때 금속이 드러난다면, 재질색을 밝힐 필요는 없었던 셈입니다.
이미지 기반 조명, IBL은 주변의 각 방향에서 들어오는 빛을 환경 이미지로 제공합니다. 반사 방향 하나만 읽는 방식은 매끈한 거울에 가깝습니다. 거친 표면은 여러 방향에서 온 빛을 가중해 모아야 합니다. 이 합을 매번 계산하는 비용을 줄이려고, 실시간 엔진은 거칠기에 따라 필터링한 환경맵과 BRDF 적분표를 준비해 활용합니다.24
위쪽 띠는 주변 환경을, 부채꼴은 표면 한 지점의 반사에 기여하는 방향 범위를 나타냅니다. 거칠기가 높은 표면에서는 여러 방향의 조명이 넓게 반영됩니다.
실험 7. 환경광을 켜고 끈 다음, 거칠기와 환경의 방향을 바꿔 보세요. 표면의 재질색을 고정했는데도 보이는 색이 변합니다. 물체색과 픽셀색이 서로 다른 이유를 직접 확인할 수 있습니다.
환경맵에는 한계도 있습니다. 멀리 있는 환경으로 취급하면 바로 옆 물체의 반사나 위치 변화에 따른 시차를 정확하게 표현하기 어렵습니다. 화면 공간 반사, 반사 프로브, 레이 트레이싱은 계산 비용과 표현할 수 있는 범위가 서로 다릅니다. 좋은 BRDF를 골랐다는 것만으로 주변의 빛까지 정확해지지는 않습니다.25
빛을 더할 때는 선형 공간에서 계산해야 합니다.
저장과 표시를 위한 sRGB 값으로 바로 조명 계산을 하면 빛의 비율이 어긋납니다. 예를 들어 sRGB의 0.5는 선형 빛의 세기 0.5가 아닙니다. 약 0.214에 해당합니다.26
색 텍스처를 선형으로 읽고 조명을 계산한 뒤, 화면에 맞게 변환하는 순서가 필요합니다. 거칠기나 금속성은 색이 아닌 데이터이므로 같은 sRGB 변환을 적용해서는 안 됩니다. 노멀맵도 지정된 데이터 형식으로 읽어야 합니다.2728
밝은 반사를 계산하면 RGB가 1보다 커질 수 있습니다. HDR(High Dynamic Range)은 밝은 반사의 큰 값까지 담을 수 있도록 넓은 밝기 범위를 다룹니다. 계산한 빛에 노출을 적용해 밝기를 조절하고, 톤매핑으로 화면이 표현할 범위에 맞춥니다. 마지막의 sRGB 출력 변환은 톤매핑과 역할이 다릅니다. 톤매핑 곡선에 따라 색과 대비가 바뀌므로 재질을 비교할 때는 이 조건도 고정해야 합니다.29
실험 8. 노출을 올리고 톤매핑 적용 전후를 비교해 보세요. 밝은 부분이 잘려 흰색으로 뭉치는지, 주변과 구별되는지 봅니다. 밝아졌다는 이유만으로 재질의 반사율이 달라진 것은 아닙니다.
Unity와 Unreal은 같은 원리를 공유하면서도 재질 종류와 렌더 파이프라인에 따라 세부 구현이 다릅니다.
앞에서 조절한 값들이 Unity 6의 URP Lit과 Unreal의 금속성 재질 입력에서는 어떤 이름으로 나타나는지 찾아봅시다.3031
| 바꾸려는 성질 | Unity URP Lit | Unreal의 일반 재질 입력 |
|---|---|---|
| 기본 색 | Base Map의 색 | Base Color |
| 금속 여부 | Metallic 작업 방식의 Metallic | Metallic |
| 반사의 퍼짐 | Smoothness를 낮추면 넓어짐 | Roughness를 높이면 넓어짐 |
| 작은 표면 방향 변화 | Normal Map | Normal |
Smoothness와 Roughness는 기본적인 의미상 반대입니다. 두 엔진은 텍스처 채널 배치와 입력 변환, 조명과 톤매핑도 다를 수 있습니다. 같은 화면을 얻으려면 재질 숫자와 함께 이 조건들을 맞춰야 합니다. Unreal의 기본 Specular 0.5도 빛의 50% 반사를 뜻하지 않습니다. 공식 문서에서 설명하는 기본 정면 반사율은 약 4%입니다.32
현대 재질은 여기서 더 나아갑니다. 코팅한 금속은 위의 투명 코팅과 아래 금속을 함께 계산해야 합니다. 방향에 따라 반사가 길어지는 이방성, 피부 안에서 빛이 퍼지는 표면 아래 산란, 유리의 투과도 별도 처리가 필요합니다. 코팅과 금속처럼 한 물체에 겹쳐 있는 성질들을 함께 다룰 방법도 필요합니다. Unreal Substrate에서는 재질을 섞거나 층으로 쌓아, 위쪽 코팅이 아래쪽 금속의 모습에 영향을 주도록 만들 수 있습니다.33
미세면 사이에서 여러 번 반사되는 빛도 있습니다. 단일 산란 모델이 이 빛을 생략하면 거친 재질이 지나치게 어두워질 수 있습니다. 그래서 Filament 같은 실시간 렌더러는 에너지 보정도 다룹니다. 이런 보정은 기본 DFG 식이 생략한 빛을 보완합니다.34
조명을 바꾸어도 같은 물체인가
이제 한 장면에서 재질을 바꿀 때와 조명을 바꿀 때의 차이를 비교해 봅시다. 우선 마음에 드는 재질을 하나 만든 뒤 Base Color와 금속성은 고정해 보세요. 환경의 방향과 세기, 노출만 바꾸며 같은 물체가 어떻게 달라져 보이는지 확인합니다. 다음에는 조명을 고정하고 거칠기만 바꿉니다.
검게 보이는 금속을 만났다면, 이제 색을 밝히기 전에 주변에 비칠 빛이 있는지 살펴보세요. 거칠기를 조절하면 반사의 폭이 달라지고, 재질 입력을 바꾸면 반사색이 달라집니다. 화면에서 고치고 싶은 부분에 맞춰 값을 고를 수 있습니다. 제가 PBR에서 유용하게 보는 점도 여기에 있습니다. 어떤 값을 바꾸었는지뿐 아니라, 그 값을 왜 바꾸었는지도 설명할 수 있게 됩니다.
실험 범위와 그림 제작
이 데모는 불투명하고 방향성이 없는 한 겹의 표면을 중심으로 합니다. 직접광은 앞에서 설명한 단일 산란 모델로 계산하고, 환경 반사는 미리 필터링한 환경맵과 BRDF 근사로 구합니다. 거칠기의 최솟값은 수치 계산을 안정시키기 위해 0.09로 두었습니다. 다중 산란, 투과, 물체가 바닥에 드리우는 그림자는 포함하지 않았습니다.
본문의 개념도는 gpt-image-2.5-sunburst로 생성하고 설명과 대조해 선별했습니다.
Google, Filament: Physically Based Rendering 및 Material System. 재질과 조명의 분리, 표준 모델과 다중 산란 에너지 보정.↩︎
Brian Karis, Epic Games, Real Shading in Unreal Engine 4, SIGGRAPH 2013. 역사적 기본 모델 참고이며 최신 Unreal 전체 구현의 명세는 아닙니다.↩︎
Brian Karis, Epic Games, Real Shading in Unreal Engine 4, SIGGRAPH 2013. 역사적 기본 모델 참고이며 최신 Unreal 전체 구현의 명세는 아닙니다.↩︎
Pharr, Jakob, Humphreys, The Light Transport Equation, Physically Based Rendering, 4판.↩︎
Pharr, Jakob, Humphreys, The Light Transport Equation, Physically Based Rendering, 4판.↩︎
Pharr, Jakob, Humphreys, The Light Transport Equation, Physically Based Rendering, 4판.↩︎
Pharr, Jakob, Humphreys, Roughness Using Microfacet Theory, Physically Based Rendering, 4판.↩︎
Pharr, Jakob, Humphreys, Roughness Using Microfacet Theory, Physically Based Rendering, 4판.↩︎
Pharr, Jakob, Humphreys, Roughness Using Microfacet Theory, Physically Based Rendering, 4판.↩︎
Brian Karis, Epic Games, Real Shading in Unreal Engine 4, SIGGRAPH 2013. 역사적 기본 모델 참고이며 최신 Unreal 전체 구현의 명세는 아닙니다.↩︎
Brian Karis, Epic Games, Real Shading in Unreal Engine 4, SIGGRAPH 2013. 역사적 기본 모델 참고이며 최신 Unreal 전체 구현의 명세는 아닙니다.↩︎
Pharr, Jakob, Humphreys, Specular Reflection and Transmission, Physically Based Rendering, 4판.↩︎
Pharr, Jakob, Humphreys, Specular Reflection and Transmission, Physically Based Rendering, 4판.↩︎
Pharr, Jakob, Humphreys, Specular Reflection and Transmission, Physically Based Rendering, 4판.↩︎
Pharr, Jakob, Humphreys, Roughness Using Microfacet Theory, Physically Based Rendering, 4판.↩︎
Epic Games, Physically Based Materials, 2026-09-09 열람.↩︎
Google, Filament: Physically Based Rendering 및 Material System. 재질과 조명의 분리, 표준 모델과 다중 산란 에너지 보정.↩︎
Pharr, Jakob, Humphreys, Diffuse Reflection, Physically Based Rendering, 4판. Lambert의 \(c/\pi\)와 반사율.↩︎
Pharr, Jakob, Humphreys, The Light Transport Equation, Physically Based Rendering, 4판.↩︎
Pharr, Jakob, Humphreys, Diffuse Reflection, Physically Based Rendering, 4판. Lambert의 \(c/\pi\)와 반사율.↩︎
Epic Games, Physically Based Materials, 2026-09-09 열람.↩︎
Unity, Unity 6.0 URP Lit shader material Inspector window reference, 2026-09-09 열람.↩︎
Unity, Unity 6.0 URP Lit shader material Inspector window reference, 2026-09-09 열람.↩︎
Brian Karis, Epic Games, Real Shading in Unreal Engine 4, SIGGRAPH 2013. 역사적 기본 모델 참고이며 최신 Unreal 전체 구현의 명세는 아닙니다.↩︎
Epic Games, Reflections Captures. 반사 캡처의 근사와 한계.↩︎
Unity, Linear or gamma workflow; Google, Filament: Imaging Pipeline. 선형 계산, 노출, 톤매핑과 표시 변환.↩︎
Unity, Unity 6.0 URP Lit shader material Inspector window reference, 2026-09-09 열람.↩︎
Unity, Linear or gamma workflow; Google, Filament: Imaging Pipeline. 선형 계산, 노출, 톤매핑과 표시 변환.↩︎
Unity, Linear or gamma workflow; Google, Filament: Imaging Pipeline. 선형 계산, 노출, 톤매핑과 표시 변환.↩︎
Epic Games, Physically Based Materials, 2026-09-09 열람.↩︎
Unity, Unity 6.0 URP Lit shader material Inspector window reference, 2026-09-09 열람.↩︎
Epic Games, Physically Based Materials, 2026-09-09 열람.↩︎
Epic Games, Overview of Substrate Materials, 2026-09-09 열람.↩︎
Google, Filament: Physically Based Rendering 및 Material System. 재질과 조명의 분리, 표준 모델과 다중 산란 에너지 보정.↩︎