rendering 3

[Physically Based Rendering] IBL과 Directional Light 구분

PBR [Physically Based Rendering]은 두 가지 방식으로 조명을 사용합니다. 1) Directional, Point, Spot같은 직접 조명2) IBL[Image Based Rendering], 주변 환경맵을 통한 조명 둘의 공통점과 차이점을 이해하기 위해 다음 식을 살펴봅시다. 일단 첫번째로 조명은 Diffuse와 Specular부분으로 나뉩니다. 직접 조명도 그렇고 IBL도 그렇죠kd*c / 𝝅는 DIffuse부분입니다. 그 뒤 DFG/4( ω 0 ㆍ n * ω i ㆍ n )는 Specular부분입니다. 식을 Cook Torrance Model이라고 하죠. pbr적용시 에너지 보존법칙이 성립해야 하는데 kd+ks=1 이어야 한다는 점입니다. Cook Torrance Mod..

Graphics Techniques 2025.04.14

[Volume Rendering] 구름 볼륨 렌더링 + SDF

구름 볼륨 렌더링을 할 때, 3가지 방식을 진행합니다. CloudDensity-> CoudLighting-> Scattering이죠. 우리가 흔히 무엇을 그리는 과정은 2d texture에다가 했습니다. 하지만 3d texture에다 노이즈를 생성하여 형성하는 방법이죠. 1) CloudDensitydensity의 방법을 살펴보겠습니다. density란 밀도라는 뜻입니다. 노이즈를 형성하여 3d텍스춰에 노이즈를 형성합니다. perlinWorley방식을 사용하여 노이즈를 생성하였습니다. (참고링크 https://www.shadertoy.com/view/3dVXDc) 구름의 움직임을 표현하기 위해서 [numthreads(16, 16, 4)]void main(uint3 dtID : SV_DispatchThrea..

Graphics Techniques 2025.03.01

[PBR] HDRI - postprocess

우리가 후처리를 할 때 예를들어 가우시안 블러를 적용할 때, LDR(Low Dynamic Range)이미지(unorm)이미지로 적용을 하였습니다. 하지만, HDR(High Dynamic Range)이미지를 적용할 때는 방법이 다릅니다. 더 사실적으로 표현하기 위함이죠. HDR이미지는 unorm(R8G8B8A8)과 다르게 float16(R16G16B16A16)입니다. 더 넓은 범위의 빛의 강도를 조절할 수 있지요. 가우시안 블러를 적용하려면 다음과 같은 단계를 따릅니다. 1. 해상도 줄이기(빛 번짐 표현 하기 위함. 이거 없으면 가우시안 블러를 많이 적용해야돼서 속도에 영향을 미침)=> Down 샘플링과 Up샘플링으로 표현2. 가우시안 블러(주위 값을 Convolusion을리가 후처리를 할 때 예를들어 가..

Graphics Techniques 2025.01.15