ViewVC Help
View File | Revision Log | Show Annotations | Download File | Root Listing
root/radiance/ray/src/rt/ambient.h
Revision: 2.5
Committed: Thu Apr 27 14:12:09 1995 UTC (29 years ago) by greg
Content type: text/plain
Branch: MAIN
Changes since 2.4: +1 -0 lines
Log Message:
added memory sorting to ambient caching module

File Contents

# User Rev Content
1 greg 1.1 /* Copyright (c) 1991 Regents of the University of California */
2    
3     /* SCCSid "$SunId$ LBL" */
4    
5     /*
6     * Common definitions for interreflection routines.
7     */
8    
9     /*
10     * Since we've defined our vectors as float below to save space,
11     * watch out for changes in the definitions of VCOPY() and DOT()
12     * and don't pass these vectors to fvect routines.
13     */
14     typedef struct ambrec {
15 greg 2.5 unsigned long latick; /* last accessed tick */
16 greg 1.1 float pos[3]; /* position in space */
17     float dir[3]; /* normal direction */
18     int lvl; /* recursion level of parent ray */
19     float weight; /* weight of parent ray */
20     float rad; /* validity radius */
21     COLOR val; /* computed ambient value */
22     float gpos[3]; /* gradient wrt. position */
23     float gdir[3]; /* gradient wrt. direction */
24     struct ambrec *next; /* next in list */
25     } AMBVAL; /* ambient value */
26    
27     extern COLOR ambval; /* global ambient component */
28     extern double ambacc; /* ambient accuracy */
29     extern int ambres; /* ambient resolution */
30     extern int ambdiv; /* number of divisions for calculation */
31     extern int ambssamp; /* number of super-samples */
32     extern int ambounce; /* number of ambient bounces */
33     extern char *amblist[]; /* ambient include/exclude list */
34     extern int ambincl; /* include == 1, exclude == 0 */
35     extern double maxarad; /* maximum ambient radius */
36     extern double minarad; /* minimum ambient radius */
37    
38     extern double sumambient(), doambient(), makeambient();
39 greg 1.2
40     #define AVGREFL 0.5 /* assumed average reflectance */
41 greg 2.2
42     #define AMBVALSIZ 75 /* number of bytes in portable AMBVAL struct */
43 greg 2.4 #define AMBMAGIC 557 /* magic number for ambient value files */
44 greg 2.3 #define AMBFMT "Radiance_ambval" /* format id string */