1 |
+ |
/* RCSid $Id$ */ |
2 |
|
/* |
3 |
|
================================================================== |
4 |
|
Photon map data structures and kd-tree handling |
35 |
|
|
36 |
|
/* Primary photon ray for light source contributions */ |
37 |
|
typedef struct { |
38 |
< |
short srcIdx; /* Index of emitting light source */ |
39 |
< |
float dir [3], pos [3]; /* Incident dir & hit point */ |
38 |
> |
int32 srcIdx; /* Index of emitting light source */ |
39 |
> |
int32 dir; /* Encoded ray direction */ |
40 |
> |
float pos [3]; /* Hit point */ |
41 |
|
} PhotonPrimary; |
42 |
|
|
43 |
|
#define photonSrcIdx(pm, p) ((pm) -> primary [(p) -> primary].srcIdx) |
55 |
|
COLR flux; /* Photon flux */ |
56 |
|
#endif |
57 |
|
|
58 |
< |
unsigned primary; /* Index to primary ray */ |
58 |
> |
uint32 primary; /* Index to primary ray */ |
59 |
|
} Photon; |
60 |
|
|
61 |
|
/* Photon flag bitmasks and manipulation macros */ |