aboutsummaryrefslogtreecommitdiff
path: root/src/core/hittable.rs
diff options
context:
space:
mode:
authorJulian T <julian@jtle.dk>2021-02-21 18:01:56 +0100
committerJulian T <julian@jtle.dk>2021-02-21 18:01:56 +0100
commitda1c3949a449f3fafe579c62ff6b14ffd993a197 (patch)
tree754df5c9b5e9f0fa0a8bb7a8cd3dd4b12fe5ad89 /src/core/hittable.rs
parentc695da871a75bb6786c08c3546ef71ed032bd61d (diff)
Add 3d bounding box and merged SceneIntersection and Intersection
Diffstat (limited to 'src/core/hittable.rs')
-rw-r--r--src/core/hittable.rs25
1 files changed, 0 insertions, 25 deletions
diff --git a/src/core/hittable.rs b/src/core/hittable.rs
deleted file mode 100644
index e495d5b..0000000
--- a/src/core/hittable.rs
+++ /dev/null
@@ -1,25 +0,0 @@
-use crate::core::{Vector3f, Ray};
-use crate::Float;
-
-/// Returns the context of a intersection
-pub struct Intersection {
- /// Normal vector at intersection
- pub n: Vector3f,
- pub p: Vector3f,
- pub t: Float,
-}
-
-impl Intersection {
- pub fn norm_against_ray(&self, r: &Ray) -> Vector3f {
- if self.n.dot(&r.direction) < 0.0 {
- self.n
- } else {
- -self.n
- }
- }
-}
-
-/// Defines a common trait for objects in the scene
-pub trait Hittable {
- fn intersect(&self, ray: &Ray) -> Option<Intersection>;
-}