일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- URP
- Virtual Byte
- 개인 바이트
- 작업 집합
- VR
- 프로그래밍 기초
- Three(Two) Tone Shading
- 가상 바이트
- AppSW
- C언어
- ASW(Application SpaceWarp)
- working set
- Cell Look
- Rim Light
- 3d
- Cell Shader
- ColorGradingLutPass
- 메모리 누수
- Private Bytes
- OculusMotionVectorPass
- Cartoon Rendering
- Toon Shader
- URP로 변경
- 벡터
- 게임 수학
- Windows Build
- Specular
- Today
- Total
WinCNT
PBR 본문
PBR
미세 면이 거친 상태와 부드러운 상태로 라이팅하는 모델
핵심 요소는 6가지
에너지 보존 법칙
빛을 에너지 보존 법칙에 의한 물리적 합으로 생각한다
(레거시 모델에서는 신경 안 써서 1이 넘어가는 경우가 생겼음)
금속이냐 유전체냐
PRB은 금속이나 아니냐에 따라서 2가지 모델로 나뉜다
금속에 한에서 Specular 성분이 고유의 색을 가지고 있다(금속이 아니면 흰색)
BRDF - 양방향 반사 분포 함수
N dot L을 (상당히)구체화한 함수BRDF에는 Diffuse가 없고 모두 Specular라고 생각한다정확히는 Diffuse와 Specular를 같은 모델로 묶은 것이다
D - 미세면 분포 함수와 G - 기하 감쇠율
미세면 거칠기를 나타내기 위한 것레거시 모델에서는 전혀 고려되지 않은 그림자와 차폐라는 요소가 생겼다
그림자는 표면이 표면을 가리면서 생기는 그림자를 말하며
차폐는 반사광이 표면에 의해서 반사되지 못 하는 부분을 말한다
F - 프레넬(혹은 프레넬 이펙트)
두 매질이 맞닿는 경계면에서 생기는 효과들
예) 가까운 거리에서는 물 속이 보이지만 멀어지면 반사되는 현상림 라이트는 프레넬을 경험적으로(레거시하게) 표현한 것일지도...?실제로 프레넬만 적용하면 외곽선에만 빛이 반사되는,
어찌보면 비현실적인 라이팅이 연산된다
전역 조명 - Global Illumination
모든 방향에서 빛이 입사한다
사방에서 오는 빛들을 근사해서 Ambient부분을 보다 물리 기반으로 렌더링할 수 있도록 한다
하지만 모든 방향에서 빛이 입사하는 것은 사실 하드웨어의 능력 상 불가능하므로,
어느 정도 제한된 방향을 가지게 된다
Etc.
레거시 모델 --> PBR의 발전과는 상관 없이 발전된 기술들도 존재한다
아키텍처 변화에 따른 다양한 기술이나 Ray-Tracing 등등
Dfferd Rendering
Vertex Shader에서 할 일을 Pixel Shader 쪽으로 보내서 처리하는 방식이다
오브젝트(버텍스)단위 라이팅 연산을 하는 것이 아니라 픽셀 단위로 라이팅 연산을 하게 되므로
조명 개수 제약이 해결되며 SSAO, DOF 등의 기술이 가능해졌다
SSS
'게임 프로그래밍(학습 내용 정리) > 3D Game Programming' 카테고리의 다른 글
ASE Parser - Node (0) | 2022.04.15 |
---|---|
ASE Parser - Mesh1(Position, Normal) (0) | 2022.04.06 |
Light (0) | 2022.03.31 |
Texture (0) | 2022.03.30 |
Primitive (0) | 2022.03.25 |