summaryrefslogtreecommitdiff
path: root/src/modules/ray/ray_object_plane.h
diff options
context:
space:
mode:
authorVito Caputo <vcaputo@pengaru.com>2017-05-12 15:17:52 -0700
committerVito Caputo <vcaputo@pengaru.com>2017-05-12 18:34:40 -0700
commit73ef51a819138e50b3d0b162d61a9f272fe07d01 (patch)
tree21c76ee677da8cd15b229af4715078dbbc1da796 /src/modules/ray/ray_object_plane.h
parent6ebf0d428b25a8b4a2dee9af7a91c38b1f8ff124 (diff)
ray: add ray_scene_prepare() object precomputing
Just embed a _prepared struct in the object where precomputed stuff can be cached. Gets called once before rendering, which ends up calling the object-specific ray_object_$type_prepare() methods per object.
Diffstat (limited to 'src/modules/ray/ray_object_plane.h')
-rw-r--r--src/modules/ray/ray_object_plane.h5
1 files changed, 5 insertions, 0 deletions
diff --git a/src/modules/ray/ray_object_plane.h b/src/modules/ray/ray_object_plane.h
index 8fb64c8..cc7ea8d 100644
--- a/src/modules/ray/ray_object_plane.h
+++ b/src/modules/ray/ray_object_plane.h
@@ -15,6 +15,11 @@ typedef struct ray_object_plane_t {
} ray_object_plane_t;
+static void ray_object_plane_prepare(ray_object_plane_t *plane)
+{
+}
+
+
static inline int ray_object_plane_intersects_ray(ray_object_plane_t *plane, ray_ray_t *ray, float *res_distance)
{
float d = ray_3f_dot(&plane->normal, &ray->direction);
© All Rights Reserved