Improved testing speed

This commit is contained in:
connor committed 2026-10-15 10:50:41 -04:00
1 parent 6888b586dc
commit 0ef9952ae4
16 files changed
+72 -35

No files matched your search

+5 -5
View File
@@ -444,7 +444,7 @@ It falls from 1 at full phase to 0.61 at 60 degrees and 0.11 at 120 degrees.
Up close it is not exact: the near side of the sphere is nearer the camera
than its center, so it counts for more. At 40,000 km from the Moon (R/D =
0.043), the real total is 3 % above the formula. The renderer's image agrees
with the exact surface integral to 0.03 % or better (`tests/analytic.rs`).
with the exact surface integral to 0.03 % or better (`tests/gpu/analytic.rs`).
This gets the overall brightness and the phase (how much of the disk is
lit) right. It misses some things that are visible in real images:
@@ -607,7 +607,7 @@ Two choices turn the map into something the renderer can shade:
Light the Moon sheds on targets (Moonshine) reads the same map, with the
phase factor for the angle between the Sun and the target.
Tests (`tests/moon_texture.rs`), with small synthetic maps, on the GPU and
Tests (`tests/gpu/moon_texture.rs`), with small synthetic maps, on the GPU and
lavapipe: the pixel under the camera reads the texel at its latitude and
longitude, and moves when the Moon's attitude does; the color is the spectrum's;
a uniform map draws exactly the Moon a flat albedo draws times the phase
@@ -815,7 +815,7 @@ proportion to the surface's tilt. The lookup is made from a point 1.5
texels off the surface, toward the Sun. And a blocker has to be more than 2
texels nearer the Sun to count.
Tests (`tests/shadows.rs`) check, on the GPU and lavapipe:
Tests (`tests/gpu/shadows.rs`) check, on the GPU and lavapipe:
- A plate under a 2 m square: the shadow reads zero direct light, and its
edge falls where the square's edge projects, to within one texel.
@@ -916,7 +916,7 @@ pixels at the shadow's edges came out wrong: a point the 64-bit model puts
fully in the umbra read slightly lit, and one just outside the shadow
slightly dimmed.
Tests (`tests/eclipses.rs`), on the GPU and lavapipe, compare each pixel of
Tests (`tests/gpu/eclipses.rs`), on the GPU and lavapipe, compare each pixel of
Earth and the Moon against the 64-bit model at that pixel's surface point:
the Moon entirely in Earth's umbra, the Moon across the umbra's edge, a
total solar eclipse and an annular one. Pixels the model puts fully in shadow
@@ -1005,7 +1005,7 @@ side is in view, so Earthshine is zero there without being told. In the
penumbra the Sun is partly hidden but a crescent of lit ground is still in
view, and that light still arrives.
Tests (`tests/earthshine.rs`) compare a plate's brightness on the GPU and
Tests (`tests/gpu/earthshine.rs`) compare a plate's brightness on the GPU and
lavapipe against the same sum done in 64-bit floating point with 90 times as
many cells: over the subsolar point at 500 km facing down, sideways and up;
toward the terminator; in Earth's shadow; at GEO; 100 km above the Moon at