summaryrefslogtreecommitdiff
path: root/r6rs-raytracer.scm
diff options
context:
space:
mode:
authorJakob L. Kreuze <zerodaysfordays@sdf.org>2020-07-20 15:23:45 -0400
committerJakob L. Kreuze <zerodaysfordays@sdf.org>2020-07-20 15:23:45 -0400
commitc747738b7b9de8f7218156893e82429a25a822a9 (patch)
tree2c68693e0469f4ea82fb0d04a1538931d8339dfe /r6rs-raytracer.scm
parent79fb23ef37d3e98bad18f5211720393ce8cd9a52 (diff)
Fix `degrees->radians'.
Diffstat (limited to 'r6rs-raytracer.scm')
-rw-r--r--r6rs-raytracer.scm4
1 files changed, 2 insertions, 2 deletions
diff --git a/r6rs-raytracer.scm b/r6rs-raytracer.scm
index 2d3f525..8ae7885 100644
--- a/r6rs-raytracer.scm
+++ b/r6rs-raytracer.scm
@@ -162,12 +162,12 @@
;; Convert D, a value in degrees, to radians.
(define (degrees->radians d)
(let ((pi 3.1415926535897932384626433))
- (* d (/ pi 360))))
+ (* d (/ pi 180))))
;; Return the ray corresponding to the point X, Y on the viewport plane.
(define (coordinate->ray x y)
(let* ((dist 1.0)
- (top (* dist (tan (degrees->radians camera-fov))))
+ (top (* dist (tan (/ (degrees->radians camera-fov) 2))))
(right (* top image-aspect-ratio))
(bottom (- top))
(left (- right))