작성한 모든 글을 모아 보여줍니다.
-
[Emberlit] Camera: worldUp hint로 right를 복원할 수 있는 이유
lookAt 함수의 worldUp hint가 roll 없는 카메라에서 정확한 right 벡터를 복원하는 이유를 카메라 모델 정의에서 출발하여 수학적으로 증명하고, roll이 들어가면 왜 부족한지 정리했습니다.
-
[Emberlit] CPU 레이트레이서 (2): 삼각형 충돌과 그림자
광선-삼각형 충돌을 평면 교점 + 내부 판별 2단계로 구현하고, shadow ray로 그림자를 추가하는 과정을 정리합니다.
-
[Emberlit] CPU 레이트레이서 (1): 광선이 구를 만나는 순간
매개변수 직선으로 광선을 표현하고, 판별식으로 구와의 충돌을 판정한 뒤, Phong 조명으로 입체감을 만드는 과정을 정리합니다.
-
[Vulkan] renderFinished 세마포어는 왜 프레임이 아니라 이미지에 묶어야 하는가
frames-in-flight를 줄였더니 Validation Layer 에러가 발생했습니다. fence와 semaphore가 각각 뭘 보장하는지, renderFinished를 이미지 인덱스로 관리해야 하는 이유를 정리합니다.