From dc8b773b015348d1b1911ee6b91b5ac57f2aebd8 Mon Sep 17 00:00:00 2001 From: Steve Hollasch Date: Sat, 31 Aug 2024 13:11:10 -0700 Subject: [PATCH 01/15] Prep for v4.0.2 --- CHANGELOG.md | 12 ++++++++++++ books/RayTracingInOneWeekend.html | 23 ++++++++++++----------- books/RayTracingTheNextWeek.html | 23 ++++++++++++----------- books/RayTracingTheRestOfYourLife.html | 23 ++++++++++++----------- 4 files changed, 48 insertions(+), 33 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 0cdef7f7..e3d9d49c 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,6 +1,18 @@ Change Log / Ray Tracing in One Weekend ==================================================================================================== +# v4.0.2 (2024-10-01) + +### Common + +### In One Weekend + +### The Next Week + +### The Rest of Your Life + + +---------------------------------------------------------------------------------------------------- # v4.0.1 (2024-08-31) ### Common diff --git a/books/RayTracingInOneWeekend.html b/books/RayTracingInOneWeekend.html index 3a6bf732..8b9f651b 100644 --- a/books/RayTracingInOneWeekend.html +++ b/books/RayTracingInOneWeekend.html @@ -8,7 +8,8 @@ **Ray Tracing in One Weekend** [Peter Shirley][], [Trevor David Black][], [Steve Hollasch][]
- Version 4.0.1, 2024-08-31 + Version 4.0.2, 2024-10-01 + **DRAFT IN DEVELOPMENT**
Copyright 2018-2024 Peter Shirley. All rights reserved. @@ -4390,8 +4391,8 @@ - **Title (series)**: “Ray Tracing in One Weekend Series” - **Title (book)**: “Ray Tracing in One Weekend” - **Author**: Peter Shirley, Trevor David Black, Steve Hollasch - - **Version/Edition**: v4.0.1 - - **Date**: 2024-08-30 + - **Version/Edition**: XXVersion + - **Date**: XXYear-XXMonth-XXDay - **URL (series)**: - **URL (book)**: @@ -4412,13 +4413,13 @@ ### LaTeX and BibTex ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - ~\cite{Shirley2024RTW1} + ~\cite{ShirleyXXYearRTW1} - @misc{Shirley2024RTW1, + @misc{ShirleyXXYearRTW1, title = {Ray Tracing in One Weekend}, author = {Peter Shirley, Trevor David Black, Steve Hollasch}, - year = {2024}, - month = {August}, + year = {XXYear}, + month = {XXMonth}, note = {\small \texttt{https://raytracing.github.io/books/RayTracingInOneWeekend.html}}, url = {https://raytracing.github.io/books/RayTracingInOneWeekend.html} } @@ -4428,13 +4429,13 @@ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ \usepackage{biblatex} - ~\cite{Shirley2024RTW1} + ~\cite{ShirleyXXYearRTW1} - @online{Shirley2024RTW1, + @online{ShirleyXXYearRTW1, title = {Ray Tracing in One Weekend}, author = {Peter Shirley, Trevor David Black, Steve Hollasch}, - year = {2024}, - month = {August}, + year = {XXYear}, + month = {XXMonth}, url = {https://raytracing.github.io/books/RayTracingInOneWeekend.html} } ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ diff --git a/books/RayTracingTheNextWeek.html b/books/RayTracingTheNextWeek.html index deca87df..fd727c83 100644 --- a/books/RayTracingTheNextWeek.html +++ b/books/RayTracingTheNextWeek.html @@ -8,7 +8,8 @@ **Ray Tracing: The Next Week** [Peter Shirley][], [Trevor David Black][], [Steve Hollasch][]
- Version 4.0.1, 2024-08-31 + Version 4.0.2, 2024-10-01 + **DRAFT IN DEVELOPMENT**
Copyright 2018-2024 Peter Shirley. All rights reserved. @@ -4296,8 +4297,8 @@ - **Title (series)**: “Ray Tracing in One Weekend Series” - **Title (book)**: “Ray Tracing: The Next Week” - **Author**: Peter Shirley, Trevor David Black, Steve Hollasch - - **Version/Edition**: v4.0.1 - - **Date**: 2024-08-30 + - **Version/Edition**: XXVersion + - **Date**: XXYear-XXMonth-XXDay - **URL (series)**: - **URL (book)**: @@ -4318,13 +4319,13 @@ ### LaTeX and BibTex ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - ~\cite{Shirley2024RTW2} + ~\cite{ShirleyXXYearRTW2} - @misc{Shirley2024RTW2, + @misc{ShirleyXXYearRTW2, title = {Ray Tracing: The Next Week}, author = {Peter Shirley, Trevor David Black, Steve Hollasch}, - year = {2024}, - month = {August}, + year = {XXYear}, + month = {XXMonth}, note = {\small \texttt{https://raytracing.github.io/books/RayTracingTheNextWeek.html}}, url = {https://raytracing.github.io/books/RayTracingTheNextWeek.html} } @@ -4334,13 +4335,13 @@ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ \usepackage{biblatex} - ~\cite{Shirley2024RTW2} + ~\cite{ShirleyXXYearRTW2} - @online{Shirley2024RTW2, + @online{ShirleyXXYearRTW2, title = {Ray Tracing: The Next Week}, author = {Peter Shirley, Trevor David Black, Steve Hollasch}, - year = {2024}, - month = {August}, + year = {XXYear}, + month = {XXMonth}, url = {https://raytracing.github.io/books/RayTracingTheNextWeek.html} } ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ diff --git a/books/RayTracingTheRestOfYourLife.html b/books/RayTracingTheRestOfYourLife.html index 5bcdc0d0..42e6df8d 100644 --- a/books/RayTracingTheRestOfYourLife.html +++ b/books/RayTracingTheRestOfYourLife.html @@ -8,7 +8,8 @@ **Ray Tracing: The Rest of Your Life** [Peter Shirley][], [Trevor David Black][], [Steve Hollasch][]
- Version 4.0.1, 2024-08-31 + Version 4.0.2, 2024-10-01 + **DRAFT IN DEVELOPMENT**
Copyright 2018-2024 Peter Shirley. All rights reserved. @@ -4015,8 +4016,8 @@ - **Title (series)**: “Ray Tracing in One Weekend Series” - **Title (book)**: “Ray Tracing: The Rest of Your Life” - **Author**: Peter Shirley, Trevor David Black, Steve Hollasch - - **Version/Edition**: v4.0.1 - - **Date**: 2024-08-30 + - **Version/Edition**: (XXVersion) + - **Date**: XXYear-XXMonth-XXDay - **URL (series)**: - **URL (book)**: @@ -4037,13 +4038,13 @@ ### LaTeX and BibTex ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - ~\cite{Shirley2024RTW3} + ~\cite{ShirleyXXYearRTW3} - @misc{Shirley2024RTW3, + @misc{ShirleyXXYearRTW3, title = {Ray Tracing: The Rest of Your Life}, author = {Peter Shirley, Trevor David Black, Steve Hollasch}, - year = {2024}, - month = {August}, + year = {XXYear}, + month = {XXMonth}, note = {\small \texttt{https://raytracing.github.io/books/RayTracingTheRestOfYourLife.html}}, url = {https://raytracing.github.io/books/RayTracingTheRestOfYourLife.html} } @@ -4053,13 +4054,13 @@ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ \usepackage{biblatex} - ~\cite{Shirley2024RTW3} + ~\cite{ShirleyXXYearRTW3} - @online{Shirley2024RTW3, + @online{ShirleyXXYearRTW3, title = {Ray Tracing: The Rest of Your Life}, author = {Peter Shirley, Trevor David Black, Steve Hollasch}, - year = {2024}, - month = {August}, + year = {XXYear}, + month = {XXMonth}, url = {https://raytracing.github.io/books/RayTracingTheRestOfYourLife.html} } ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ From f1772b050cd4437ef483ebac7fc29a9a90fe3a56 Mon Sep 17 00:00:00 2001 From: Steve Hollasch Date: Sat, 5 Oct 2024 13:29:20 -0700 Subject: [PATCH 02/15] Fix equation for refracted rays of non-unit length Resolves #1644 --- CHANGELOG.md | 3 ++- books/RayTracingInOneWeekend.html | 2 +- 2 files changed, 3 insertions(+), 2 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index e3d9d49c..e4b90447 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,11 +1,12 @@ Change Log / Ray Tracing in One Weekend ==================================================================================================== -# v4.0.2 (2024-10-01) +# v4.0.2 (in progress) ### Common ### In One Weekend + - Fix -- Fix equation for refracted rays of non-unit length (#1644) ### The Next Week diff --git a/books/RayTracingInOneWeekend.html b/books/RayTracingInOneWeekend.html index 8b9f651b..ed26c8a7 100644 --- a/books/RayTracingInOneWeekend.html +++ b/books/RayTracingInOneWeekend.html @@ -3310,7 +3310,7 @@ If we solve for $\mathbf{R'}_{\bot}$ and $\mathbf{R'}_{\parallel}$ we get: - $$ \mathbf{R'}_{\bot} = \frac{\eta}{\eta'} (\mathbf{R} + \cos\theta \mathbf{n}) $$ + $$ \mathbf{R'}_{\bot} = \frac{\eta}{\eta'} (\mathbf{R} + |\mathbf{R}| \cos(\theta) \mathbf{n}) $$ $$ \mathbf{R'}_{\parallel} = -\sqrt{1 - |\mathbf{R'}_{\bot}|^2} \mathbf{n} $$ You can go ahead and prove this for yourself if you want, but we will treat it as fact and move on. From 45f8ffc9024b2bf844751052980765b0411d6916 Mon Sep 17 00:00:00 2001 From: Steve Hollasch Date: Wed, 6 Nov 2024 11:47:00 -0800 Subject: [PATCH 03/15] book1: typo trig "qualities" -> "identities" --- books/RayTracingInOneWeekend.html | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/books/RayTracingInOneWeekend.html b/books/RayTracingInOneWeekend.html index ed26c8a7..63c3ec82 100644 --- a/books/RayTracingInOneWeekend.html +++ b/books/RayTracingInOneWeekend.html @@ -3457,7 +3457,7 @@ the water, but when you are close to the surface and looking sideways, the water surface looks like a mirror. -We can solve for `sin_theta` using the trigonometric qualities: +We can solve for `sin_theta` using the trigonometric identities: $$ \sin\theta = \sqrt{1 - \cos^2\theta} $$ From e890e6d0dac8ae069cc25b8d021fc40e0018106f Mon Sep 17 00:00:00 2001 From: Steve Hollasch Date: Wed, 6 Nov 2024 11:49:58 -0800 Subject: [PATCH 04/15] Update changelog for typo fix --- CHANGELOG.md | 1 + 1 file changed, 1 insertion(+) diff --git a/CHANGELOG.md b/CHANGELOG.md index e4b90447..7ef8ce42 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -7,6 +7,7 @@ Change Log / Ray Tracing in One Weekend ### In One Weekend - Fix -- Fix equation for refracted rays of non-unit length (#1644) + - Fix -- Typo "trigonometric qualities" -> "trigonometric identities" ### The Next Week From 25b8ba841496442bc64e80e1c9d6118ae8cdc5f0 Mon Sep 17 00:00:00 2001 From: Steve Hollasch Date: Wed, 13 Nov 2024 20:41:02 -0600 Subject: [PATCH 05/15] Fix dangling references to random_in_unit_sphere() Resolves #1637 --- CHANGELOG.md | 1 + books/RayTracingInOneWeekend.html | 10 +++++----- books/RayTracingTheRestOfYourLife.html | 8 ++++---- 3 files changed, 10 insertions(+), 9 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 7ef8ce42..d2d13b68 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -4,6 +4,7 @@ Change Log / Ray Tracing in One Weekend # v4.0.2 (in progress) ### Common + - Fix -- Fixed some dangling references to `random_in_unit_sphere()` (#1637) ### In One Weekend - Fix -- Fix equation for refracted rays of non-unit length (#1644) diff --git a/books/RayTracingInOneWeekend.html b/books/RayTracingInOneWeekend.html index 63c3ec82..79c10876 100644 --- a/books/RayTracingInOneWeekend.html +++ b/books/RayTracingInOneWeekend.html @@ -2344,7 +2344,7 @@ } } ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - [Listing [random-in-unit-sphere]: [vec3.h] The random_unit_vector() function, version one] + [Listing [random-unit-vector-1]: [vec3.h] The random_unit_vector() function, version one] @@ -2369,11 +2369,11 @@ } } ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - [Listing [random-in-unit-sphere]: [vec3.h] The random_unit_vector() function, version one] + [Listing [random-unit-vector-2]: [vec3.h] The random_unit_vector() function, version two]
-Now that we have a random vector on the surface of the unit sphere, we can determine if it is on the -correct hemisphere by comparing against the surface normal: +Now that we have a random unit vector, we can determine if it is on the correct hemisphere by +comparing against the surface normal: ![Figure [normal-hor]: The normal vector tells us which hemisphere we need ](../images/fig-1.13-surface-normal.jpg) @@ -4042,7 +4042,7 @@ Since we'll be choosing random points from the defocus disk, we'll need a function to do that: `random_in_unit_disk()`. This function works using the same kind of method we use in -`random_in_unit_sphere()`, just for two dimensions. +`random_unit_vector()`, just for two dimensions. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ C++ ... diff --git a/books/RayTracingTheRestOfYourLife.html b/books/RayTracingTheRestOfYourLife.html index 42e6df8d..e860ecb0 100644 --- a/books/RayTracingTheRestOfYourLife.html +++ b/books/RayTracingTheRestOfYourLife.html @@ -69,12 +69,12 @@ will take to get there. The classic example of a Las Vegas algorithm is the _quicksort_ sorting algorithm. The quicksort algorithm will always complete with a fully sorted list, but, the time it takes to complete is random. Another good example of a Las Vegas algorithm is the code that we use -to pick a random point in a unit sphere: +to pick a random point in a unit disk: ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ C++ - inline vec3 random_in_unit_sphere() { + inline vec3 random_in_unit_disk() { while (true) { - auto p = vec3::random(-1,1); + auto p = vec3(random_double(-1,1), random_double(-1,1), 0); if (p.length_squared() < 1) return p; } @@ -82,7 +82,7 @@ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ [Listing [las-vegas-algo]: [vec3.h] A Las Vegas algorithm] -This code will always eventually arrive at a random point in the unit sphere, but we can't say +This code will always eventually arrive at a random point in the unit disk, but we can't say beforehand how long it'll take. It may take only 1 iteration, it may take 2, 3, 4, or even longer. Whereas, a Monte Carlo program will give a statistical estimate of an answer, and this estimate will get more and more accurate the longer you run it. Which means that at a certain point, we can just From b11aadcfb032d08d387a2f58278ed38c95f119fd Mon Sep 17 00:00:00 2001 From: Alex <33262954+swigof@users.noreply.github.com> Date: Mon, 10 Feb 2025 12:10:15 -0500 Subject: [PATCH 06/15] Fix grammatical error Add missing `that` in Book 2 Section 3.9 Resolves #1675 --- books/RayTracingTheNextWeek.html | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/books/RayTracingTheNextWeek.html b/books/RayTracingTheNextWeek.html index fd727c83..16d19549 100644 --- a/books/RayTracingTheNextWeek.html +++ b/books/RayTracingTheNextWeek.html @@ -1011,9 +1011,9 @@ The Box Comparison Functions ----------------------------- Now we need to implement the box comparison functions, used by `std::sort()`. To do this, create a -generic comparator returns true if the first argument is less than the second, given an additional -axis index argument. Then define axis-specific comparison functions that use the generic comparison -function. +generic comparator that returns true if the first argument is less than the second, given an +additional axis index argument. Then define axis-specific comparison functions that use the generic +comparison function. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ C++ class bvh_node : public hittable { From 104cfce31ef29c208ed93270991a1c23c8a7923c Mon Sep 17 00:00:00 2001 From: Alex <33262954+swigof@users.noreply.github.com> Date: Mon, 10 Feb 2025 12:15:53 -0500 Subject: [PATCH 07/15] Remove trailing underscore Resolves #1677 --- books/RayTracingTheNextWeek.html | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/books/RayTracingTheNextWeek.html b/books/RayTracingTheNextWeek.html index 16d19549..8f5c73b7 100644 --- a/books/RayTracingTheNextWeek.html +++ b/books/RayTracingTheNextWeek.html @@ -929,7 +929,7 @@ traversal algorithm should be smooth and not have to check for null pointers, so if I just have one element I duplicate it in each subtree. Checking explicitly for three elements and just following one recursion would probably help a little, but I figure the whole method will get optimized later. -The following code uses three methods--`box_x_compare`, `box_y_compare_`, and `box_z_compare`--that +The following code uses three methods--`box_x_compare`, `box_y_compare`, and `box_z_compare`--that we haven't yet defined. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ C++ From 1c501bcf466f8a38b800180171119d00f795bac0 Mon Sep 17 00:00:00 2001 From: Steve Hollasch Date: Wed, 12 Feb 2025 16:05:01 -0800 Subject: [PATCH 08/15] =?UTF-8?q?Ack=20Niccol=C3=B2=20Tiezzi?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- books/acknowledgments.md.html | 1 + 1 file changed, 1 insertion(+) diff --git a/books/acknowledgments.md.html b/books/acknowledgments.md.html index 52fd30e5..bd7c518c 100644 --- a/books/acknowledgments.md.html +++ b/books/acknowledgments.md.html @@ -60,6 +60,7 @@ - Matthew Heimlich - Nakata Daisuke - [Nate Rupsis](https://github.com/rupsis) + - [Niccolò Tiezzi](https://github.com/niccolot) - Paul Melis - Phil Cristensen - [LollipopFt](https://github.com/LollipopFt) From 429b57a8d63791f1e1d41758e8ab04e99f97b771 Mon Sep 17 00:00:00 2001 From: Steve Hollasch Date: Wed, 19 Feb 2025 13:57:35 -0800 Subject: [PATCH 09/15] Clarify random_double(min,max) implementation Resolves #1681 --- CHANGELOG.md | 1 + books/RayTracingInOneWeekend.html | 7 +++++++ 2 files changed, 8 insertions(+) diff --git a/CHANGELOG.md b/CHANGELOG.md index d2d13b68..ddfd2ad3 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -5,6 +5,7 @@ Change Log / Ray Tracing in One Weekend ### Common - Fix -- Fixed some dangling references to `random_in_unit_sphere()` (#1637) + - Fix -- Clarify `uniform_real_distribution` usage for `random_double()` (#1680) ### In One Weekend - Fix -- Fix equation for refracted rays of non-unit length (#1644) diff --git a/books/RayTracingInOneWeekend.html b/books/RayTracingInOneWeekend.html index 79c10876..1189367a 100644 --- a/books/RayTracingInOneWeekend.html +++ b/books/RayTracingInOneWeekend.html @@ -2044,6 +2044,13 @@ } ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ C++ + inline double random_double(double min, double max) { + // Returns a random real in [min,max). + return min + (max-min)*random_double(); + } + ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ C++ + + ... ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ From 8560f0d5b21c29bf097eeda8fe52d56bfc4b717f Mon Sep 17 00:00:00 2001 From: Alex <33262954+swigof@users.noreply.github.com> Date: Sun, 2 Mar 2025 12:53:35 -0500 Subject: [PATCH 10/15] Fix typo Change `add` to `and` in Book 2 Section 5.1 Resolves #1683 --- books/RayTracingTheNextWeek.html | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/books/RayTracingTheNextWeek.html b/books/RayTracingTheNextWeek.html index 8f5c73b7..d7f8e729 100644 --- a/books/RayTracingTheNextWeek.html +++ b/books/RayTracingTheNextWeek.html @@ -2069,7 +2069,7 @@
-Add the hashing does scramble as hoped: +And the hashing does scramble as hoped: ![Image 9: Hashed random texture ](../images/img-2.09-hash-random.png class='pixel') From f20e4224303ab83c4c1e6777b44608563a971372 Mon Sep 17 00:00:00 2001 From: Steve Hollasch Date: Tue, 4 Mar 2025 11:14:28 -0800 Subject: [PATCH 11/15] Fix typo in equation in section 3.12.3 Resolves #1686 --- CHANGELOG.md | 1 + books/RayTracingTheRestOfYourLife.html | 2 +- 2 files changed, 2 insertions(+), 1 deletion(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index ddfd2ad3..1ff2e94b 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -14,6 +14,7 @@ Change Log / Ray Tracing in One Weekend ### The Next Week ### The Rest of Your Life + - Fix -- Typo in equation in book 3, section 12.3 (#1686) ---------------------------------------------------------------------------------------------------- diff --git a/books/RayTracingTheRestOfYourLife.html b/books/RayTracingTheRestOfYourLife.html index e860ecb0..6b9247e9 100644 --- a/books/RayTracingTheRestOfYourLife.html +++ b/books/RayTracingTheRestOfYourLife.html @@ -3695,7 +3695,7 @@ $$ r_2 = 2\pi \cdot C \cdot (1-\cos(\theta)) $$ $$ 1 = 2\pi \cdot C \cdot (1-\cos(\theta_{max})) $$ - $$ C = \frac{1}{2\pi \cdot (1-\cos(\theta_{max})} $$ + $$ C = \frac{1}{2\pi \cdot (1-\cos(\theta_{max}))} $$ Which gives us an equality between $\theta$, $\theta_{max}$, and $r_2$: From 4b16a26b1cd474d01d7fed8f50b93e482128ca8e Mon Sep 17 00:00:00 2001 From: FineFindus Date: Tue, 18 Mar 2025 20:47:50 +0100 Subject: [PATCH 12/15] Add missing space to multiplication Closes: https://github.com/RayTracing/raytracing.github.io/issues/1691 --- books/RayTracingTheRestOfYourLife.html | 2 +- src/TheRestOfYourLife/pdf.h | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/books/RayTracingTheRestOfYourLife.html b/books/RayTracingTheRestOfYourLife.html index 6b9247e9..bd4a85ef 100644 --- a/books/RayTracingTheRestOfYourLife.html +++ b/books/RayTracingTheRestOfYourLife.html @@ -3192,7 +3192,7 @@ } double value(const vec3& direction) const override { - return 0.5 * p[0]->value(direction) + 0.5 *p[1]->value(direction); + return 0.5 * p[0]->value(direction) + 0.5 * p[1]->value(direction); } vec3 generate() const override { diff --git a/src/TheRestOfYourLife/pdf.h b/src/TheRestOfYourLife/pdf.h index 75aca504..6c420b8e 100644 --- a/src/TheRestOfYourLife/pdf.h +++ b/src/TheRestOfYourLife/pdf.h @@ -84,7 +84,7 @@ class mixture_pdf : public pdf { } double value(const vec3& direction) const override { - return 0.5 * p[0]->value(direction) + 0.5 *p[1]->value(direction); + return 0.5 * p[0]->value(direction) + 0.5 * p[1]->value(direction); } vec3 generate() const override { From b2039b904ffea2fac1ffb70b702caab024ae4071 Mon Sep 17 00:00:00 2001 From: Steve Hollasch Date: Thu, 24 Apr 2025 12:37:30 -0700 Subject: [PATCH 13/15] Update CMake required version --- CMakeLists.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index bf8f9a7b..8cf3a015 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -4,7 +4,7 @@ # See README.md for guidance. #--------------------------------------------------------------------------------------------------- -cmake_minimum_required ( VERSION 3.1.0...3.27.0 ) +cmake_minimum_required ( VERSION 3.1.0...4.0.0 ) project ( RTWeekend LANGUAGES CXX ) From 24068865d5b6c608345bc978e4411d1cbff17999 Mon Sep 17 00:00:00 2001 From: Steve Hollasch Date: Thu, 24 Apr 2025 19:38:54 -0700 Subject: [PATCH 14/15] Final updates for v4.0.2 release --- CHANGELOG.md | 5 ++--- README.md | 3 --- 2 files changed, 2 insertions(+), 6 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 1ff2e94b..312b5a33 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,18 +1,17 @@ Change Log / Ray Tracing in One Weekend ==================================================================================================== -# v4.0.2 (in progress) +# v4.0.2 (2025-04-24) ### Common - Fix -- Fixed some dangling references to `random_in_unit_sphere()` (#1637) - Fix -- Clarify `uniform_real_distribution` usage for `random_double()` (#1680) + - Update -- CMake minimum required version max now at 4.0.0. ### In One Weekend - Fix -- Fix equation for refracted rays of non-unit length (#1644) - Fix -- Typo "trigonometric qualities" -> "trigonometric identities" -### The Next Week - ### The Rest of Your Life - Fix -- Typo in equation in book 3, section 12.3 (#1686) diff --git a/README.md b/README.md index 974f8a3b..391e2076 100644 --- a/README.md +++ b/README.md @@ -29,9 +29,6 @@ first**_. Project Status --------------- -Version 4 has shipped! Three and a half years in the making, with massive changes to all three books -and accompanying code. Our current version is v4.0.1. - If you'd like to check out the latest updates and watch our progress, we're on the `dev-patch`, `dev-minor`, and `dev-major` branches. You can also browse our issues and milestones to see what we're planning. From 0ab7db4c08fe23f23c0d9d30fed166c83cefed91 Mon Sep 17 00:00:00 2001 From: Steve Hollasch Date: Fri, 25 Apr 2025 11:01:44 -0700 Subject: [PATCH 15/15] Update book versions and timestamps --- books/RayTracingInOneWeekend.html | 23 +++++++++++------------ books/RayTracingTheNextWeek.html | 23 +++++++++++------------ books/RayTracingTheRestOfYourLife.html | 23 +++++++++++------------ 3 files changed, 33 insertions(+), 36 deletions(-) diff --git a/books/RayTracingInOneWeekend.html b/books/RayTracingInOneWeekend.html index 1189367a..3344a422 100644 --- a/books/RayTracingInOneWeekend.html +++ b/books/RayTracingInOneWeekend.html @@ -8,8 +8,7 @@ **Ray Tracing in One Weekend** [Peter Shirley][], [Trevor David Black][], [Steve Hollasch][]
- Version 4.0.2, 2024-10-01 - **DRAFT IN DEVELOPMENT** + Version 4.0.2, 2025-04-25
Copyright 2018-2024 Peter Shirley. All rights reserved. @@ -4398,8 +4397,8 @@ - **Title (series)**: “Ray Tracing in One Weekend Series” - **Title (book)**: “Ray Tracing in One Weekend” - **Author**: Peter Shirley, Trevor David Black, Steve Hollasch - - **Version/Edition**: XXVersion - - **Date**: XXYear-XXMonth-XXDay + - **Version/Edition**: v4.0.2 + - **Date**: 2025-04-25 - **URL (series)**: - **URL (book)**: @@ -4420,13 +4419,13 @@ ### LaTeX and BibTex ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - ~\cite{ShirleyXXYearRTW1} + ~\cite{Shirley2025RTW1} - @misc{ShirleyXXYearRTW1, + @misc{Shirley2025RTW1, title = {Ray Tracing in One Weekend}, author = {Peter Shirley, Trevor David Black, Steve Hollasch}, - year = {XXYear}, - month = {XXMonth}, + year = {2025}, + month = {April}, note = {\small \texttt{https://raytracing.github.io/books/RayTracingInOneWeekend.html}}, url = {https://raytracing.github.io/books/RayTracingInOneWeekend.html} } @@ -4436,13 +4435,13 @@ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ \usepackage{biblatex} - ~\cite{ShirleyXXYearRTW1} + ~\cite{Shirley2025RTW1} - @online{ShirleyXXYearRTW1, + @online{Shirley2025RTW1, title = {Ray Tracing in One Weekend}, author = {Peter Shirley, Trevor David Black, Steve Hollasch}, - year = {XXYear}, - month = {XXMonth}, + year = {2025}, + month = {April}, url = {https://raytracing.github.io/books/RayTracingInOneWeekend.html} } ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ diff --git a/books/RayTracingTheNextWeek.html b/books/RayTracingTheNextWeek.html index d7f8e729..262aaba0 100644 --- a/books/RayTracingTheNextWeek.html +++ b/books/RayTracingTheNextWeek.html @@ -8,8 +8,7 @@ **Ray Tracing: The Next Week** [Peter Shirley][], [Trevor David Black][], [Steve Hollasch][]
- Version 4.0.2, 2024-10-01 - **DRAFT IN DEVELOPMENT** + Version 4.0.2, 2025-04-25
Copyright 2018-2024 Peter Shirley. All rights reserved. @@ -4297,8 +4296,8 @@ - **Title (series)**: “Ray Tracing in One Weekend Series” - **Title (book)**: “Ray Tracing: The Next Week” - **Author**: Peter Shirley, Trevor David Black, Steve Hollasch - - **Version/Edition**: XXVersion - - **Date**: XXYear-XXMonth-XXDay + - **Version/Edition**: v4.0.2 + - **Date**: 2025-04-25 - **URL (series)**: - **URL (book)**: @@ -4319,13 +4318,13 @@ ### LaTeX and BibTex ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - ~\cite{ShirleyXXYearRTW2} + ~\cite{Shirley2025RTW2} - @misc{ShirleyXXYearRTW2, + @misc{Shirley2025RTW2, title = {Ray Tracing: The Next Week}, author = {Peter Shirley, Trevor David Black, Steve Hollasch}, - year = {XXYear}, - month = {XXMonth}, + year = {2025}, + month = {April}, note = {\small \texttt{https://raytracing.github.io/books/RayTracingTheNextWeek.html}}, url = {https://raytracing.github.io/books/RayTracingTheNextWeek.html} } @@ -4335,13 +4334,13 @@ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ \usepackage{biblatex} - ~\cite{ShirleyXXYearRTW2} + ~\cite{Shirley2025RTW2} - @online{ShirleyXXYearRTW2, + @online{Shirley2025RTW2, title = {Ray Tracing: The Next Week}, author = {Peter Shirley, Trevor David Black, Steve Hollasch}, - year = {XXYear}, - month = {XXMonth}, + year = {2025}, + month = {April}, url = {https://raytracing.github.io/books/RayTracingTheNextWeek.html} } ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ diff --git a/books/RayTracingTheRestOfYourLife.html b/books/RayTracingTheRestOfYourLife.html index bd4a85ef..214958db 100644 --- a/books/RayTracingTheRestOfYourLife.html +++ b/books/RayTracingTheRestOfYourLife.html @@ -8,8 +8,7 @@ **Ray Tracing: The Rest of Your Life** [Peter Shirley][], [Trevor David Black][], [Steve Hollasch][]
- Version 4.0.2, 2024-10-01 - **DRAFT IN DEVELOPMENT** + Version 4.0.2, 2025-04-25
Copyright 2018-2024 Peter Shirley. All rights reserved. @@ -4016,8 +4015,8 @@ - **Title (series)**: “Ray Tracing in One Weekend Series” - **Title (book)**: “Ray Tracing: The Rest of Your Life” - **Author**: Peter Shirley, Trevor David Black, Steve Hollasch - - **Version/Edition**: (XXVersion) - - **Date**: XXYear-XXMonth-XXDay + - **Version/Edition**: (v4.0.2) + - **Date**: 2025-04-25 - **URL (series)**: - **URL (book)**: @@ -4038,13 +4037,13 @@ ### LaTeX and BibTex ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - ~\cite{ShirleyXXYearRTW3} + ~\cite{Shirley2025} - @misc{ShirleyXXYearRTW3, + @misc{Shirley2025, title = {Ray Tracing: The Rest of Your Life}, author = {Peter Shirley, Trevor David Black, Steve Hollasch}, - year = {XXYear}, - month = {XXMonth}, + year = {2025}, + month = {April}, note = {\small \texttt{https://raytracing.github.io/books/RayTracingTheRestOfYourLife.html}}, url = {https://raytracing.github.io/books/RayTracingTheRestOfYourLife.html} } @@ -4054,13 +4053,13 @@ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ \usepackage{biblatex} - ~\cite{ShirleyXXYearRTW3} + ~\cite{Shirley2025} - @online{ShirleyXXYearRTW3, + @online{Shirley2025, title = {Ray Tracing: The Rest of Your Life}, author = {Peter Shirley, Trevor David Black, Steve Hollasch}, - year = {XXYear}, - month = {XXMonth}, + year = {2025}, + month = {April}, url = {https://raytracing.github.io/books/RayTracingTheRestOfYourLife.html} } ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~