1748 Commits

Author SHA1 Message Date
Steve Hollasch
0ab7db4c08 Update book versions and timestamps v4.0.2 2025-04-25 11:01:44 -07:00
Steve Hollasch
24068865d5 Final updates for v4.0.2 release 2025-04-24 19:38:54 -07:00
Steve Hollasch
b2039b904f Update CMake required version 2025-04-24 12:38:40 -07:00
FineFindus
4b16a26b1c Add missing space to multiplication
Closes: https://github.com/RayTracing/raytracing.github.io/issues/1691
2025-03-21 11:07:59 -07:00
Steve Hollasch
f20e422430 Fix typo in equation in section 3.12.3
Resolves #1686
2025-03-04 16:30:39 -08:00
Alex
8560f0d5b2 Fix typo
Change `add` to `and` in Book 2 Section 5.1
Resolves #1683
2025-03-02 10:35:23 -08:00
Steve Hollasch
429b57a8d6 Clarify random_double(min,max) implementation
Resolves #1681
2025-02-25 12:46:19 -08:00
Steve Hollasch
1c501bcf46 Ack Niccolò Tiezzi 2025-02-12 16:07:09 -08:00
Alex
104cfce31e Remove trailing underscore
Resolves #1677
2025-02-12 14:35:55 -08:00
Alex
b11aadcfb0 Fix grammatical error
Add missing `that` in Book 2 Section 3.9
Resolves #1675
2025-02-12 14:34:58 -08:00
Steve Hollasch
25b8ba8414 Fix dangling references to random_in_unit_sphere()
Resolves #1637
2024-11-15 14:06:21 -08:00
Steve Hollasch
e890e6d0da Update changelog for typo fix 2024-11-06 11:49:58 -08:00
Steve Hollasch
45f8ffc902 book1: typo trig "qualities" -> "identities" 2024-11-06 11:48:33 -08:00
Steve Hollasch
f1772b050c Fix equation for refracted rays of non-unit length
Resolves #1644
2024-11-06 11:46:17 -08:00
Steve Hollasch
dc8b773b01 Prep for v4.0.2 2024-08-31 13:14:37 -07:00
Steve Hollasch
b6a3368710 Final updates for v4.0.1 v4.0.1 2024-08-31 12:35:47 -07:00
Steve Hollasch
f0ade8eb94 Headers assume implicit rtweekend.h include
Resolves #1628
2024-08-29 21:40:51 -07:00
Steve Hollasch
7fa2506865 Refactor moving sphere to use ray for center
This basically implements Peter's original alternative of having spheres
always support animation, with static spheres as a special case. In this
case, using a ray to represent the sphere center allows for pretty
trivial selection of the center position at a given time, and simplifies
the code.
2024-08-28 16:35:28 -07:00
Steve Hollasch
26d2c3238b Fix x-axis label for figure 3.08 (#1618)
Resolves #1532
2024-08-27 00:56:34 -07:00
Steve Hollasch
375888f1e0 Correct range of scatter angle theta in sec 3.3.5 (#1620)
Resolves #1331
2024-08-27 00:55:38 -07:00
Steve Hollasch
d32eea196d Clarify difference of average vs expected value
Resolves #1535
2024-08-27 00:53:57 -07:00
Steve Hollasch
b09c5a1d84 Merge pull request #1617 from RayTracing/refactor/rotate-y-hit
Small improvement to rotate_y::hit() function
2024-08-23 11:30:49 -07:00
Steve Hollasch
07f11f5045 Merge branch 'dev-patch' into refactor/rotate-y-hit 2024-08-23 11:29:07 -07:00
Steve Hollasch
c6f803f6f9 Improve random_unit_vector()
The old method had a floating-point weakness in which all three vector
components, when small enough, can yield a vector length that underflows
to zero, leading to a bogus [+/- infinity, +/- infinity, +/- infinity]
result.

This change also eliminates the `random_in_unit_sphere()` function, and
does everything inside the `random_unit_vector()` function, which allows
us to compute the vector length only once and then re-use it for
normalization.

Resolves #1606
2024-08-23 11:22:13 -07:00
Steve Hollasch
3c67b90ebf Add explanation of Buffon's needle problem
Resolves #1529
2024-08-23 11:21:50 -07:00
Steve Hollasch
3a2f677a01 Add missing ellipsis in listing 2.62
Resolves #1612
2024-08-23 11:21:15 -07:00
Steve Hollasch
276cf1c2e0 Small improvement to rotate_y::hit() function
Resolves #1484
2024-08-22 12:11:24 -07:00
Steve Hollasch
949dec957a Fix typos "probabilty", "dot project"
Resolves #1607
2024-08-21 13:28:48 -07:00
Steve Hollasch
7bf2f3cd45 Update changelog for material.h include hittable.h 2024-08-19 13:18:03 -07:00
Steve Hollasch
165238d9cc Include hittable.h from material.h
The prior version used a forward declaration of `hit_record`, which was
insufficient since hittable.h lines referenced members of `hit_record`,
and was unnecessary because hittable.h was included before material.h in
practice.

For this specific code, the inclusion is unnecessary, but is proper
form.

Resolves #1608
2024-08-19 13:18:03 -07:00
Steve Hollasch
fe3385bad0 Fix text around unit sphere random pt generation
Resolves #1603
2024-08-18 10:15:17 -07:00
Jeff Smith
40c5c92a76 Fix broken highlighting on some code listings
Resolves #1600
2024-08-16 13:36:41 -07:00
Steve Hollasch
cac1b1a283 Book 1 typo: Realistially / Realistically 2024-08-15 20:48:12 -07:00
Steve Hollasch
e57d1ea14c Fix accidentally-indented code fence 2024-08-15 11:34:47 -07:00
Steve Hollasch
e52678dc59 Improve code listing style
- Bigger font for print version code listings.
- More compact line height for print + online code listings.

Resolves #1595
2024-08-04 13:36:47 -07:00
Steve Hollasch
11c411df62 Spell out MC and LV abbreviations
We used MC (Monte Carlo) and LV (Las Vegas) abbreviations in a couple of
paragraphs. It's easier to read these out full.
2024-08-04 13:36:22 -07:00
Steve Hollasch
b697333919 Correct usage of the term "unit cube"
Resolves #1555
2024-07-29 13:10:14 -07:00
Steve Hollasch
d8cc3e3332 Fix typo "arbirary"
Resolves #1589
2024-07-28 16:54:33 -07:00
Steve Hollasch
44ecfab9cd Set up for v4.0.1 development 2024-07-26 14:53:37 -07:00
Steve Hollasch
9fc8f6a170 Tweak web index page wording
Mostly this is just to bump the GitHub runner, which didn't appear to
pick up the last change to update the GitHub pages.
2024-07-26 13:23:38 -07:00
Steve Hollasch
8844bc0586 v4.0.0 final content updates for 2024-07-26 rel v4.0.0 2024-07-26 13:04:09 -07:00
Steve Hollasch
11f4d728a8 Project file updates for v4.0.0 2024-07-26 12:56:37 -07:00
Steve Hollasch
ff66766803 changelog: update for v4.0.0 release
Resolves #1451
2024-07-26 12:56:22 -07:00
Steve Hollasch
e3d26a38ba Updates from progression 3, 2024-0722 2024-07-26 12:56:07 -07:00
Steve Hollasch
d3cd909379 Wrap listing and figure captions to single line
The prior version had caption blocks wrapped to maintain the
100-character width source. However, Markdeep suffered a regression at
v1.16 (current version v1.17 at this commit) where everything past the
first linefeed in the caption block is ignored. To work around this bug,
this change converts all caption lines to a single block. Note that
figures/images still have an optional linefeed before the closing square
bracket and the parenthesized target.

Resolves #1583
2024-07-26 12:55:51 -07:00
Steve Hollasch
410789c595 Retire parallel v3 directory 2024-07-22 14:50:59 -07:00
Steve Hollasch
b9e037cfbe Merge branch 'release' into 'dev' 2024-05-27 12:42:21 -07:00
Steve Hollasch
152bd65bfa CSS reformatting and fixes
- Inspired by https://github.com/RayTracing/gpu-tracing/pull/9, I'm
  adopting the CSS code style of having one selector per line with
  trailing commas for definitions that apply to multiple selectors.

- Corrected "Hilight.js" to "Highlight.js". There _is_ a hilight.js, but
  it looks like the syntax highlighting package used by Markdeep is
  highlight.js (https://highlightjs.org/).

- Fixed background-color syntax bug.
2024-05-27 12:41:33 -07:00
Steve Hollasch
9c69748218 Add DOCTYPE declaration to Markdeep documents
Resolves #1566
2024-05-27 12:41:13 -07:00
Steve Hollasch
ec325f1571 Upgrade to Markdeep v1.17 2024-05-27 12:40:55 -07:00