일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |
- 게임 수학
- C언어
- Private Bytes
- Cell Look
- 작업 집합
- ASW(Application SpaceWarp)
- 개인 바이트
- 3d
- Rim Light
- 프로그래밍 기초
- working set
- Windows Build
- 메모리 누수
- ColorGradingLutPass
- URP
- VR
- URP로 변경
- Virtual Byte
- 벡터
- Three(Two) Tone Shading
- AppSW
- Cell Shader
- OculusMotionVectorPass
- Toon Shader
- Cartoon Rendering
- Specular
- 가상 바이트
- Today
- Total
WinCNT
PBR(Physically Based Rendering) - 프레넬 반사(Fresnel Reflectance) 본문
PBR(Physically Based Rendering) - 프레넬 반사(Fresnel Reflectance)
WinCNT_SSS 2022. 7. 22. 12:32프레넬 반사
모든 표면은 전반사(Total internal reflection)한다
굴절률이 서로 다른 두 매질이 맞닿은 경계면을 빛이 통과할 때,
입사각이 임계각을 넘어서면 빛이 흡수되지 못하고 정반사하는데, 이를 전반사라고 한다
이 현상은 오귀스탱 장 프레넬(Augustin-Jean Fresnel)이 프레넬 방정식으로 유도하여
프레넬 반사(Fresnel Reflectance)라고도 한다
빛이 하나이거나 단순한 모델인 경우는 (다른 항과의 곱셈으로 인해 희미해져서)
PBR에서의 프레넬 항을 구현해도 별 차이가 안 느껴질 수 있지만
사방에서 빛이 들어오거나 GI(글로벌 일루미네이션)에서 확실히 느껴진다
프레넬 반사율 그래프
위의 그래프는 물체별 입사각에 따른 프레넬 반사율을 나타낸 것이다
가로축이 입사각(물체의 노멀과 시점의 각도)이며, 세로축이 가로축에 따른 물질별 프네렐 반사율이다
PBR에서는 연산 부하를 줄이기 위해 원복 식보다 슐릭 근사식을 주로 사용한다
슐릭 근사(Schlick’s approximation)
프레넬 식을 좀 더 단순하게 구하기 위한 식이다
F0는 기본 반사율을 의미하며 F0의 n1, n2는 두 매질의 굴절률에 대한 것이다
그런데 보통 조명 연산은 공기 중의 물체에 대해서 하기 때문에
n1에는 공기(라는 매질의) 굴절률인 1을 두고 계산한다
메탈인 경우는 광택을 표현하기 위해 금속성(0~1의 값)을 프레넬 함수의 반사 계수인 F0로도 사용한다
(금속성은 물체의 광택(반사율)를 나타내기 위한 것이고 F0은 입사각이 0도일 때의 반사율을 나타내기 때문인가??)
F0에다 메탈릭 수치를 곱해야한다(왜일까??)
AO(Ambiendt Occlusion)
프레넬과 상관은 없지만 MRA(ARM) 맵의 한 채널을 차지하므로 일단 추가
AO를 Map으로 적용
사실상 손 맵, 라이트 맵과 비슷함
(Occlusion의 정도를 제공한다는 것이 다름)
주의점
프네넬은 Legacy의 Specular 아닌 부분에서도 정반사(Specular)가 일어나는 것이다
PBR의 Specular에서 상당히 중요한 부분이다
조도 - 들어가는 빛
휘도 - 나오는 빛
참고 사이트
https://lifeisforu.tistory.com/384?category=567143
SSS
'게임 프로그래밍(학습 내용 정리) > 3D Graphic Engine' 카테고리의 다른 글
PBR(Physically Based Rendering) - Global Illumination 1 (0) | 2022.07.25 |
---|---|
PBR(Physically Based Rendering) - 미세면과 거칠기, 금속성 (0) | 2022.07.18 |
PBR(Physically Based Rendering) - BRDF (0) | 2022.07.15 |
PBR(Physically Based Rendering) 개론 (0) | 2022.07.13 |
PBR(Physically Based Rendering) - Regacy Model 복습 (0) | 2022.07.13 |