--- ray/src/hd/rhdobj.h 1998/08/19 17:45:24 3.1 +++ ray/src/hd/rhdobj.h 1998/12/18 11:06:46 3.4 @@ -21,7 +21,7 @@ #define DO_NCMDS 10 /* number of object display commands */ /* commands entered on stdin only */ -#define DO_INIT {"load","unload","xform","move","unmove","dup",\ +#define DO_INIT {"load","clear","xform","move","unmove","dup",\ "show","light","hide","object"} /******************************************************************* @@ -50,20 +50,25 @@ be printed with error(COMMAND,err). double -dobj_trace(rorg, rdir) : check for ray intersection with objects +dobj_trace(nm, rorg, rdir) : check for ray intersection with objects +char nm[]; : object name (modified) FVECT rorg, rdir; : ray origin and direction -Check to see if the given ray intersects any of the visible objects, +Check to see if the given ray intersects the given object, returning the distance the ray traveled if it did, or FHUGE if it didn't. +If nm contains "*", then all visible objects are checked and the name +of the intersected object is returned, or "" if none. If nm is NULL, +then all visible objects are checked, but the name is not returned. -void +int dobj_render() : render visible objects to OpenGL Renders all display objects using OpenGL, assuming desired view has been set. This routine also assumes that the tone-mapping library is being used to set exposure, and it queries this information to -adjust light sources as necessary for illuminated objects. +adjust light sources as necessary for illuminated objects. Returns +the number of objects rendered. void