그래픽스 42

레이 트레이싱 Ray-trace 예제와 원리

극사실적 렌더링의 목표는 사진과 구분할 수 없을 정도의 3D 장면 이미지를 생성한 것이다. 거의 대부분의 극사실적 렌더링 시스템은 레이트레이싱(ray-tracing)알고리즘에 의존한다. 사실 레이트레이싱은 매우 단순한 알고리즘이다. 환경에 있는 물체와 간섭하고 반사되는 장면을 지나는 광선 경로를 추적하는 방법이다. 레이 트레이싱에 깊게 알기 앞서, DX12 API에 있는 레이 트레이싱 샘플을 살펴보자. (번역 수준이 높지 않으니 원문을 통해 이해하길 추천) - 출저, NVIDIA DEVELOPER (https://developer.nvidia.com/rtx/raytracing/dxr/dx12-raytracing-tutorial-part-1) By Martin-Karl Lefrançois and Pasca..

그래픽스/DX12 2023.10.15

물리 기반 렌더러 - 레이 트레이싱 (1)

문학적 프로그래밍은 어떠한 코딩에서든 가장 중요하다. 하지만, 필자가 이해하는 문학적 프로그래밍과 여러분이 아는 문학적 프로그래밍은 다를 수 있다. 또한 책에서 이야기하는 문학적 프로그래밍은 다를 수 있다. 개인적으로 필자는 문학적 프로그래밍 == 좋은 코드라고 생각한다. 번역을 할 때 불필요하게 중복된 표현은 독자의 해석을 어렵게 만든다. 필자는 글이나 코드 또한 작성자의 생각을 논리적으로 깔끔하게 작성해야 한다고 생각한다. 그렇게 노력해도 코드나 글 자체는 깔끔하지 않을 수 있지만, 그렇게라도 해야지 독자로 하여금 더 나은 이해를 낳을 수있다. 그게 컴파일이 됐던 같이 일하는 동료가 되었던 말이다. 그렇다면 논리적으로 깔끔한 코드란 뭘까? 물리 법칙 기반 렌더러에 관한 코드라면 물리 법칙에 벗어나지 ..

그래픽스 2023.10.13