12 |
|
* and don't pass these vectors to fvect routines. |
13 |
|
*/ |
14 |
|
typedef struct ambrec { |
15 |
+ |
unsigned long latick; /* last accessed tick */ |
16 |
|
float pos[3]; /* position in space */ |
17 |
|
float dir[3]; /* normal direction */ |
18 |
|
int lvl; /* recursion level of parent ray */ |
25 |
|
} AMBVAL; /* ambient value */ |
26 |
|
|
27 |
|
extern COLOR ambval; /* global ambient component */ |
28 |
+ |
extern int ambvwt; /* initial weight for ambient value */ |
29 |
|
extern double ambacc; /* ambient accuracy */ |
30 |
|
extern int ambres; /* ambient resolution */ |
31 |
|
extern int ambdiv; /* number of divisions for calculation */ |
39 |
|
extern double sumambient(), doambient(), makeambient(); |
40 |
|
|
41 |
|
#define AVGREFL 0.5 /* assumed average reflectance */ |
42 |
+ |
|
43 |
+ |
#define AMBVALSIZ 75 /* number of bytes in portable AMBVAL struct */ |
44 |
+ |
#define AMBMAGIC 557 /* magic number for ambient value files */ |
45 |
+ |
#define AMBFMT "Radiance_ambval" /* format id string */ |