Hi all, Some invisible (hopefully) but possibly useful additions, firstly frustum culling, so things not in the camera view get prevented from rendering early to speed up complex scenes (depending on which direction you are looking in :) This can make things much faster:
(hint-frustum-cull) This needs a bounding box to be generated to work correctly for each primitive it's used on. You need to call (recalc-bb) each time you move a primitive or change it's pdata. Right now I can't think of a nice way of hiding this which doesn't create awkward side effects, and it's expensive to calculate all the time. I've also added (bb/point-intersect?) for finding out if points (or spheres) collide with a primitive's bounding box. The same rules apply here regarding (recalc-bb). (bb-intersect) has been renamed to (bb/bb-intersect?) to match, and (line-intersect) has been renamed to (geo/line-intersect) as it works quite differently and returns interpolated pdata for the intersection point. Happy intersecting and culling! cheers, dave
