100 |
|
#include "random.h" |
101 |
|
#include "data.h" |
102 |
|
#include "font.h" |
103 |
+ |
#include "pmapray.h" |
104 |
|
|
105 |
|
char *progname = "unknown_app"; /* caller sets to argv[0] */ |
106 |
|
|
177 |
|
/* read scene octree */ |
178 |
|
readoct(octname = otnm, ~(IO_FILES|IO_INFO), &thescene, NULL); |
179 |
|
nsceneobjs = nobjects; |
180 |
+ |
/* PMAP: Init & load photon maps */ |
181 |
+ |
ray_init_pmap(); |
182 |
|
/* find and mark sources */ |
183 |
|
marksources(); |
184 |
|
/* initialize ambient calculation */ |
185 |
|
setambient(); |
186 |
< |
/* ready to go... */ |
186 |
> |
/* ready to go... (almost) */ |
187 |
|
} |
188 |
|
|
189 |
|
void |
223 |
|
(long)nobjects); |
224 |
|
error(WARNING, errmsg); |
225 |
|
} |
226 |
+ |
|
227 |
+ |
ray_done_pmap(); |
228 |
|
} |
229 |
|
|
230 |
|
|
276 |
|
} |
277 |
|
while (i <= AMBLLEN) |
278 |
|
rp->amblndx[i++] = -1; |
279 |
+ |
|
280 |
+ |
/* PMAP: save photon mapping params */ |
281 |
+ |
ray_save_pmap(rp); |
282 |
|
} |
283 |
|
|
284 |
|
|
347 |
|
ambres = rp->ambres; |
348 |
|
ambacc = rp->ambacc; |
349 |
|
} |
350 |
+ |
|
351 |
+ |
/* PMAP: restore photon mapping params */ |
352 |
+ |
ray_restore_pmap(rp); |
353 |
|
} |
354 |
|
|
355 |
|
|
392 |
|
memset(rp->amblval, '\0', sizeof(rp->amblval)); |
393 |
|
for (i = AMBLLEN+1; i--; ) |
394 |
|
rp->amblndx[i] = -1; |
395 |
+ |
|
396 |
+ |
/* PMAP: restore photon mapping defaults */ |
397 |
+ |
ray_defaults_pmap(rp); |
398 |
|
} |