21 struct hit *alloc_hit(void);
22 void free_hit(struct hit *hit);
23 void free_hit_list(struct hit *hit);
25 struct hit *ray_intersect(struct ray *ray, csg_object *o);
27 struct hit *ray_sphere(struct ray *ray, csg_object *o);
28 struct hit *ray_cylinder(struct ray *ray, csg_object *o);
29 struct hit *ray_plane(struct ray *ray, csg_object *o);
30 struct hit *ray_csg_un(struct ray *ray, csg_object *o);
31 struct hit *ray_csg_isect(struct ray *ray, csg_object *o);
32 struct hit *ray_csg_sub(struct ray *ray, csg_object *o);
34 void xform_ray(struct ray *ray, float *mat);