Commit graph

8 commits

Author SHA1 Message Date
5038ed8270 basic_intersect for DiskShape computed the plane hit with interval arithmetic where
pbrt uses a scalar (shapes.h: Float tShapeHit = (height - Float(oi.z)) /
Float(di.z)). It produced NaN, and since every NaN comparison is false neither
the t range test nor the subsequent dist2 > radius^2 test could reject it. The
disk reported a hit on every ray tested against it, and the NaN reached dpdu/
dpdv, the shading normal, and the area-light MIS pdf.

NaN is absorbing in the film, so one bad sample poisoned pixel RgbSum permantenly. Wavefront now works
2026-09-03 12:39:56 +01:00
1b1344c393 Disk and Cylinder stored the phimax parameter raw. It arrives in degrees, while PBRT does radians. This one is embarassing, was causing 50x exposure 2026-09-02 21:59:38 +01:00
853e980e83 Fixing logic bugs in Sampling, texture loading. Moving on to issues with ImageTexture, the long dreaded dive 2026-06-06 17:13:52 +01:00
ac7fdd7486 Fixing precision issues on vector operations, disk intersection 2026-06-05 16:04:19 +01:00
4188adbc33 Spring cleaning 2026-06-05 15:51:06 +01:00
7ebed27d4a Cleanup of shared codebase to no_std and spirv compatibility 2026-02-20 16:39:27 +00:00
75655ed774 Continuing GPU migration, implemented new parallelization strategies, correcting some logic bugs in maths functions 2025-12-30 18:09:30 +00:00
8bcc2fb0c8 Very big change, preparing for gpu integration 2025-12-20 00:11:31 +00:00
Renamed from src/shapes/disk.rs (Browse further)