주말 동안 배우는 레이 트레이싱
—
도서 시리즈
도서 구하기
주말 동안 배우는 레이 트레이싱 시리즈 도서는 온라인에서 누구나 무료로 이용할 수 있습니다. 이 도서들은 CC0 라이선스로 배포됩니다. 이는 저희가 할 수 있는 한 퍼블릭 도메인에 가장 가깝게 공개했다는 뜻입니다. (이로 인해 저작자 표시 의무에서도 벗어나게 되지만, 다른 사용자를 위해 이 웹사이트를 출처로 알려 주신다면 프로젝트 전체에 도움이 될 것입니다.)
위의 도서 표지 이미지 중 하나를 클릭하면 읽기를 시작할 수 있습니다. 이 도서들은 브라우저에서 바로 인쇄할 수 있도록 구성되어 있으며, (대부분의 브라우저에서) PDF로 저장할 수도 있습니다.
개요
저는 수년간 많은 그래픽스 강의를 해 왔습니다. 저는 레이 트레이싱으로 강의하는 경우가 많은데, 모든 코드를 직접 작성해야 하지만 API 없이도 멋진 이미지를 얻을 수 있기 때문입니다. 여러분이 최대한 빨리 멋진 프로그램을 만들 수 있도록 제 강의 노트를 따라 하기 쉬운 안내서로 옮기기로 했습니다. 모든 기능을 갖춘 레이 트레이서는 아니지만, 레이 트레이싱을 영화의 필수 요소로 만든 간접 조명은 갖추고 있습니다. 이 단계를 따라가면, 여러분이 만든 레이 트레이서의 구조는 흥미가 생겨 더 깊이 파고들고 싶을 때 더 방대한 레이 트레이서로 확장하기에 적합할 것입니다.
누군가 “레이 트레이싱”이라고 말할 때 그것은 여러 가지를 의미할 수 있습니다. 제가 설명하려는 것은 엄밀히 말해 경로 추적기이며, 꽤 범용적인 것입니다. 코드는 상당히 간단하겠지만(일은 컴퓨터에게 맡기십시오!) 여러분이 만들 수 있는 이미지에 매우 만족하실 것이라고 생각합니다.
주말 동안 배우는 레이 트레이싱에서는 단순한 무차별 대입 방식의 경로 추적기를 만듭니다. 이어서 레이 트레이싱: 다음 주에서는 텍스처, (안개 같은) 볼륨, 사각형, 인스턴스, 광원을 추가하고, 경계 볼륨 계층 구조(BVH)를 사용해 많은 객체를 지원하도록 만듭니다. 마지막으로 레이 트레이싱: 남은 인생에서는 매우 본격적인 레이 트레이서를 만드는 데 필요한 수학을 깊이 있게 다룹니다.
이 과정을 마치면 영화 및 제품 디자인 산업의 기반이 되는 여러 본격적인 상용 레이 트레이서를 다뤄 볼 준비가 되어 있을 것입니다.
소스 코드
각 도서의 소스 코드는 GitHub 저장소에서 찾을 수 있습니다: https://github.com/RayTracing/raytracing.github.io. 또한 전체 프로젝트(세 권 모두)의 최신 버전을 단일 압축 파일로 직접 내려받을 수도 있습니다:
이슈
책에 대한 제안과 오류는 GitHub 이슈에서 확인하실 수 있습니다. 제안할 내용이 있거나 오류를 발견하셨다고 생각되시면, 이미 보고된 내용인지 확인하기 위해 먼저 이 이슈들(닫힌 이슈 포함)을 확인해 주십시오. 아직 보고되지 않았다면 새 항목을 만들어 문제, 해당 책 또는 소스 파일, 위치, 그리고 그것이 왜 문제라고 생각하시는지 이해하는 데 도움이 될 만한 기타 정보를 설명해 주십시오. 가능하다면 어떻게 수정하면 좋을지에 대한 의견도 함께 적어 주십시오.
기여하기
도움을 주는 데 관심이 있으십니까? 먼저 CONTRIBUTING.md 문서의 가이드라인을 읽어 주십시오. 관련 이슈가 없거나 사전 조율 없이 제출된 풀 리퀘스트는 거부될 가능성이 매우 높습니다.