--- ray/src/rt/pmapparm.h 2015/08/18 18:45:55 2.5 +++ ray/src/rt/pmapparm.h 2018/02/02 19:47:55 2.9 @@ -1,16 +1,17 @@ -/* RCSid $Id: pmapparm.h,v 2.5 2015/08/18 18:45:55 greg Exp $ */ +/* RCSid $Id: pmapparm.h,v 2.9 2018/02/02 19:47:55 rschregle Exp $ */ + /* - ================================================================== - Parameters for photon map generation; used by MKPMAP - For inclusion in mkpmap.c + ====================================================================== + Parameters for photon map generation and rendering; used by mkpmap + and rpict/rvu/rtrace. Roland Schregle (roland.schregle@{hslu.ch, gmail.com} (c) Fraunhofer Institute for Solar Energy Systems, (c) Lucerne University of Applied Sciences and Arts, - supported by the Swiss National Science Foundation (SNSF, #147053) - ================================================================== + supported by the Swiss National Science Foundation (SNSF, #147053) + ====================================================================== - $Id: pmapparm.h,v 2.5 2015/08/18 18:45:55 greg Exp $ + $Id: pmapparm.h,v 2.9 2018/02/02 19:47:55 rschregle Exp $ */ @@ -26,6 +27,11 @@ unsigned minGather, maxGather; /* Num photons to gather */ unsigned long distribTarget; /* Num photons to store */ } PhotonMapParams; + + /* Bounding box for region of interest */ + typedef struct { + float min [3], max [3]; + } PhotonMapROI; extern PhotonMapParams pmapParams [NUM_PMAP_TYPES]; @@ -39,13 +45,21 @@ #define contribPmapParams (pmapParams [PMAP_TYPE_CONTRIB]) - extern float pdfSamples, preDistrib, finalGather, gatherTolerance, - maxDistFix; - extern unsigned long photonHeapSizeInc, photonMaxBounce; - extern unsigned photonRepTime, maxPreDistrib, defaultGather; -#ifdef PMAP_ROI - extern float pmapROI [6]; + extern float pdfSamples, preDistrib, finalGather, + gatherTolerance, maxDistFix, pmapMaxDist, + photonMaxDist; + extern unsigned long photonHeapSizeInc, photonMaxBounce; + extern unsigned photonRepTime, maxPreDistrib, defaultGather, + verbose; + + extern unsigned pmapNumROI; + extern PhotonMapROI *pmapROI; + +#ifdef PMAP_OOC + extern float pmapCachePageSize; + extern unsigned long pmapCacheSize; #endif + struct PhotonMap;