[163] | 1 | ############################################################################# |
---|
| 2 | # ERS default configuration file |
---|
| 3 | # Jiri Bittner 2003 |
---|
| 4 | ############################################################################# |
---|
[170] | 5 | |
---|
| 6 | Scene { |
---|
| 7 | |
---|
[534] | 8 | # filename ../data/glasgow/glasgow1.x3d |
---|
[311] | 9 | # filename vienna.x3d |
---|
[376] | 10 | # filename ../data/vienna/vienna-simple.x3d |
---|
[387] | 11 | #filename ../data/vienna/vienna-buildings.x3d |
---|
| 12 | #filename ../data/vienna/vienna-buildings.x3d;../data/vienna/vienna-roofs.x3d |
---|
| 13 | #;../data/vienna/vienna-plane.x3d |
---|
[365] | 14 | # filename ../data/vienna/viewcells-25-sel.x3d |
---|
[599] | 15 | #filename ../data/atlanta/atlanta2.x3d |
---|
[567] | 16 | #filename ../data/soda/soda.dat |
---|
[599] | 17 | filename ../data/soda/soda5.dat |
---|
[170] | 18 | } |
---|
| 19 | |
---|
[374] | 20 | Preprocessor { |
---|
[497] | 21 | # stored sample rays |
---|
| 22 | samplesFilename rays.out |
---|
| 23 | useGlRenderer true |
---|
[374] | 24 | # type sampling |
---|
[677] | 25 | type vss |
---|
| 26 | # type rss |
---|
[608] | 27 | detectEmptyViewSpace true |
---|
[563] | 28 | pvsRenderErrorSamples 10000 |
---|
[599] | 29 | quitOnFinish false |
---|
[374] | 30 | } |
---|
| 31 | |
---|
[563] | 32 | |
---|
[376] | 33 | VssPreprocessor { |
---|
[403] | 34 | samplesPerPass 100000 |
---|
[438] | 35 | initialSamples 500000 |
---|
[534] | 36 | vssSamples 2000000 |
---|
| 37 | vssSamplesPerPass 200000 |
---|
[403] | 38 | useImportanceSampling true |
---|
[497] | 39 | loadInitialSamples false |
---|
| 40 | storeInitialSamples false |
---|
[677] | 41 | useViewSpaceBox true |
---|
| 42 | enlargeViewSpace true |
---|
[376] | 43 | } |
---|
| 44 | |
---|
[446] | 45 | |
---|
[382] | 46 | VssTree { |
---|
[435] | 47 | useRss false |
---|
[382] | 48 | epsilon 1e-6 |
---|
| 49 | |
---|
| 50 | maxDepth 40 |
---|
[497] | 51 | minPvs 30 |
---|
[534] | 52 | minRays 100 |
---|
[427] | 53 | minSize 0.001 |
---|
[534] | 54 | maxCostRatio 1.5 |
---|
| 55 | maxRayContribution 0.5 |
---|
[382] | 56 | |
---|
[427] | 57 | maxTotalMemory 200 |
---|
[534] | 58 | maxStaticMemory 100 |
---|
[382] | 59 | |
---|
[563] | 60 | # splitType regular |
---|
[434] | 61 | # splitType heuristic |
---|
[563] | 62 | splitType hybrid |
---|
[434] | 63 | splitUseOnlyDrivingAxis true |
---|
[382] | 64 | |
---|
[534] | 65 | interleaveDirSplits true |
---|
| 66 | dirSplitDepth 0 |
---|
[438] | 67 | |
---|
[382] | 68 | numberOfEndPointDomains 10000 |
---|
| 69 | ct_div_ci 0.0 |
---|
| 70 | randomize false |
---|
| 71 | |
---|
| 72 | refDirBoxMaxSize 0.1 |
---|
| 73 | } |
---|
| 74 | |
---|
[446] | 75 | RssPreprocessor { |
---|
[677] | 76 | samplesPerPass 100000 |
---|
| 77 | initialSamples 100000 |
---|
[599] | 78 | vssSamples 100 |
---|
[608] | 79 | vssSamplesPerPass 100 |
---|
[446] | 80 | useImportanceSampling true |
---|
[464] | 81 | |
---|
[492] | 82 | directionalSampling true |
---|
| 83 | objectBasedSampling false |
---|
| 84 | |
---|
[464] | 85 | Export { |
---|
| 86 | pvs false |
---|
| 87 | rssTree false |
---|
| 88 | rays true |
---|
| 89 | numRays 5000 |
---|
| 90 | } |
---|
| 91 | |
---|
[467] | 92 | useViewcells true |
---|
[492] | 93 | updateSubdivision true |
---|
[563] | 94 | loadInitialSamples false |
---|
[497] | 95 | storeInitialSamples false |
---|
[446] | 96 | } |
---|
| 97 | |
---|
[497] | 98 | |
---|
[446] | 99 | RssTree { |
---|
| 100 | epsilon 1e-6 |
---|
[569] | 101 | perObjectTree false |
---|
[446] | 102 | |
---|
| 103 | maxDepth 40 |
---|
[556] | 104 | minPvs 1 |
---|
[567] | 105 | minRays 50 |
---|
[446] | 106 | minSize 0.001 |
---|
[492] | 107 | maxCostRatio 1.0 |
---|
| 108 | maxRayContribution 0.5 |
---|
[567] | 109 | maxRays 2000000 |
---|
[446] | 110 | maxTotalMemory 200 |
---|
| 111 | maxStaticMemory 100 |
---|
| 112 | |
---|
[563] | 113 | # splitType regular |
---|
[446] | 114 | # splitType heuristic |
---|
[563] | 115 | splitType hybrid |
---|
| 116 | splitUseOnlyDrivingAxis false |
---|
[492] | 117 | importanceBasedCost false |
---|
[446] | 118 | |
---|
| 119 | interleaveDirSplits true |
---|
[459] | 120 | dirSplitDepth 0 |
---|
[446] | 121 | |
---|
| 122 | ct_div_ci 0.0 |
---|
| 123 | } |
---|
| 124 | |
---|
[163] | 125 | Limits { |
---|
| 126 | |
---|
| 127 | threshold 1e-6 |
---|
| 128 | small 1e-6 |
---|
| 129 | infinity 1e9 |
---|
| 130 | } |
---|
| 131 | |
---|
| 132 | Unigraphics { |
---|
[176] | 133 | meshGrouping 1 |
---|
[163] | 134 | } |
---|
| 135 | |
---|
| 136 | KdTree { |
---|
[170] | 137 | sahUseFaces true |
---|
[163] | 138 | Termination { |
---|
[376] | 139 | minCost 1 |
---|
[163] | 140 | maxDepth 18 |
---|
[335] | 141 | maxCostRatio 0.9 |
---|
[170] | 142 | ct_div_ci 0.5 |
---|
[163] | 143 | } |
---|
| 144 | |
---|
| 145 | # splitMethod spatialMedian |
---|
| 146 | splitMethod SAH |
---|
[170] | 147 | splitBorder 0.01 |
---|
[163] | 148 | } |
---|
[170] | 149 | |
---|
| 150 | MeshKdTree { |
---|
| 151 | Termination { |
---|
[376] | 152 | minCost 1 |
---|
[335] | 153 | maxDepth 18 |
---|
| 154 | maxCostRatio 0.9 |
---|
[170] | 155 | ct_div_ci 0.5 |
---|
| 156 | } |
---|
| 157 | |
---|
| 158 | # splitMethod spatialMedian |
---|
| 159 | splitMethod SAH |
---|
| 160 | splitBorder 0.01 |
---|
| 161 | } |
---|
[176] | 162 | |
---|
| 163 | |
---|
[556] | 164 | SamplingPreprocessor { |
---|
[382] | 165 | totalSamples 10000000 |
---|
[365] | 166 | samplesPerPass 3 |
---|
[176] | 167 | } |
---|
[311] | 168 | |
---|
[563] | 169 | |
---|
[311] | 170 | ViewCells { |
---|
[599] | 171 | # samples used for view cell construction |
---|
| 172 | Construction { |
---|
[677] | 173 | samples 100000 |
---|
[599] | 174 | samplesPerPass 200000 |
---|
| 175 | } |
---|
| 176 | |
---|
| 177 | #number of active view cells |
---|
[677] | 178 | active 1024 |
---|
[599] | 179 | maxStaticMemory 40 |
---|
| 180 | |
---|
[677] | 181 | exportToFile true |
---|
[599] | 182 | loadFromFile false |
---|
| 183 | |
---|
[451] | 184 | #type kdTree |
---|
[467] | 185 | #type vspKdTree |
---|
[677] | 186 | type bspTree |
---|
| 187 | #type vspBspTree |
---|
[451] | 188 | #type sceneDependent |
---|
| 189 | |
---|
[326] | 190 | height 5.0 |
---|
[677] | 191 | maxViewCells 3000 |
---|
[599] | 192 | |
---|
[563] | 193 | #percentage of total visible objects where pvs is considered invalid |
---|
[599] | 194 | maxPvsRatio 1.0 |
---|
[563] | 195 | |
---|
[599] | 196 | pruneEmptyViewCells false |
---|
| 197 | processOnlyValidViewCells false |
---|
[677] | 198 | |
---|
| 199 | #stats viewCellStats.log |
---|
| 200 | |
---|
| 201 | samplingType directional |
---|
| 202 | #samplingType box |
---|
| 203 | |
---|
[563] | 204 | PostProcess { |
---|
[451] | 205 | # how much samples are used for post processing |
---|
[677] | 206 | samples 100000 |
---|
[599] | 207 | renderCostWeight 1.0 |
---|
| 208 | maxCostRatio 0.1 |
---|
| 209 | minViewCells 1 |
---|
[677] | 210 | avgCostMaxDeviation 0.01 |
---|
| 211 | maxMergesPerPass 5000 |
---|
[599] | 212 | useRaysForMerge false |
---|
| 213 | refine false |
---|
| 214 | compress false |
---|
[677] | 215 | merge false |
---|
[430] | 216 | } |
---|
| 217 | |
---|
[563] | 218 | Visualization { |
---|
[497] | 219 | # how much samples we use for visualization |
---|
[599] | 220 | samples 100000 |
---|
[497] | 221 | #colorCode PVS |
---|
| 222 | #colorCode MergedLeaves |
---|
| 223 | #colorCode MergedTreeDiff |
---|
| 224 | colorCode Random |
---|
[677] | 225 | exportRays false |
---|
| 226 | exportGeometry false |
---|
[608] | 227 | exportMergedViewCells false |
---|
[677] | 228 | useClipPlane true |
---|
| 229 | clipPlaneAxis 1 |
---|
[451] | 230 | } |
---|
[677] | 231 | |
---|
| 232 | showVisualization false |
---|
| 233 | evaluateViewCells false |
---|
[370] | 234 | |
---|
[677] | 235 | Evaluation { |
---|
| 236 | samplesPerPass 80000 |
---|
| 237 | samples 1000000 |
---|
| 238 | statsPrefix ../scripts/viewCells |
---|
| 239 | } |
---|
| 240 | |
---|
[326] | 241 | # filename ../data/atlanta/atlanta_viewcells_large.x3d |
---|
[497] | 242 | # filename ../data/vienna/viewcells-25-sel.x3d |
---|
[335] | 243 | # filename ../data/vienna/viewcells-25.x3d |
---|
[311] | 244 | # filename ../data/vienna/viewcells-large-sel.x3d |
---|
[563] | 245 | # filename ../scripts/viewcells_vienna.xml |
---|
[677] | 246 | # filename ../scripts/viewcells_atlanta.xml |
---|
| 247 | filename ../scripts/viewcells_soda5.xml |
---|
[311] | 248 | } |
---|
| 249 | |
---|
| 250 | |
---|
[430] | 251 | Simulation { |
---|
| 252 | objRenderCost 1.0 |
---|
[497] | 253 | vcOverhead 1.0 |
---|
| 254 | # always between 0 and 1 |
---|
| 255 | moveSpeed 0.0001 |
---|
[430] | 256 | } |
---|
| 257 | |
---|
| 258 | |
---|
| 259 | VspKdTree { |
---|
| 260 | epsilon 1e-6 |
---|
| 261 | |
---|
| 262 | Construction { |
---|
[677] | 263 | samples 500000 |
---|
[430] | 264 | } |
---|
| 265 | |
---|
| 266 | Termination { |
---|
[451] | 267 | maxDepth 40 |
---|
[677] | 268 | minPvs 0 |
---|
| 269 | minRays 1 |
---|
[497] | 270 | minSize 0.001 |
---|
[677] | 271 | maxCostRatio 5.9 |
---|
| 272 | maxViewCells 169 |
---|
[497] | 273 | missTolerance 4 |
---|
[677] | 274 | maxRayContribution 2.5 |
---|
[430] | 275 | } |
---|
| 276 | |
---|
[497] | 277 | maxTotalMemory 100 |
---|
[677] | 278 | maxStaticMemory 40 |
---|
[430] | 279 | |
---|
[497] | 280 | splitType regular |
---|
| 281 | #splitType heuristics |
---|
| 282 | splitUseOnlyDrivingAxis true |
---|
[430] | 283 | ct_div_ci 0.0 |
---|
[497] | 284 | |
---|
| 285 | # maximal cost for merging a view cell |
---|
| 286 | PostProcess { |
---|
| 287 | maxCostRatio 0.005 |
---|
[677] | 288 | minViewCells 10000 |
---|
| 289 | maxPvsSize 5000 |
---|
[497] | 290 | } |
---|
| 291 | |
---|
| 292 | |
---|
| 293 | Visualization { |
---|
| 294 | } |
---|
[430] | 295 | } |
---|
[451] | 296 | |
---|
| 297 | VspBspTree { |
---|
| 298 | Construction { |
---|
[677] | 299 | samples 800000 |
---|
| 300 | epsilon 0.0005 |
---|
[497] | 301 | randomize false |
---|
[599] | 302 | renderCostWeight 1.0 |
---|
[451] | 303 | } |
---|
| 304 | |
---|
| 305 | |
---|
| 306 | # random polygon = 1 |
---|
| 307 | # axis aligned = 2 |
---|
| 308 | # least ray splits = 256 |
---|
| 309 | # balanced rays = 512 |
---|
| 310 | # pvs = 1024 |
---|
[599] | 311 | |
---|
[677] | 312 | splitPlaneStrategy 1026 |
---|
[451] | 313 | |
---|
| 314 | # maximal candidates for split planes |
---|
[677] | 315 | maxPolyCandidates 150 |
---|
[599] | 316 | |
---|
[677] | 317 | usePolygonSplitIfAvailable false |
---|
| 318 | |
---|
[451] | 319 | # maximal tested rays for split cost heuristics |
---|
[599] | 320 | maxTests 10000 |
---|
[451] | 321 | |
---|
[599] | 322 | maxTotalMemory 50 |
---|
| 323 | maxStaticMemory 50 |
---|
[677] | 324 | |
---|
| 325 | subdivisionStats ../subdivisionStats.log |
---|
| 326 | |
---|
[451] | 327 | # factors for evaluating split plane costs |
---|
| 328 | Factor { |
---|
| 329 | leastRaySplits 1.0 |
---|
| 330 | balancedRays 1.0 |
---|
| 331 | pvs 1.0 |
---|
| 332 | } |
---|
| 333 | |
---|
[599] | 334 | Termination { |
---|
| 335 | # parameters used for autopartition |
---|
[677] | 336 | minRays -15 |
---|
[599] | 337 | minPolygons -1 |
---|
[677] | 338 | maxDepth 25 |
---|
| 339 | minPvs -15 |
---|
| 340 | minProbability 0.00000001 |
---|
| 341 | maxRayContribution 1.8 |
---|
| 342 | maxCostRatio 1.8 |
---|
| 343 | missTolerance 6 |
---|
| 344 | globalCostMissTolerance 4 |
---|
| 345 | minGlobalCostRatio 0.0000001 |
---|
| 346 | # minGlobalCostRatio 0.0001 |
---|
| 347 | maxViewCells 20000 |
---|
| 348 | |
---|
[599] | 349 | |
---|
| 350 | # used for pvs criterium |
---|
| 351 | ct_div_ci 0.0 |
---|
| 352 | |
---|
| 353 | AxisAligned { |
---|
[677] | 354 | minRays 50000 |
---|
[599] | 355 | maxRayContribution 9.9 |
---|
| 356 | } |
---|
| 357 | } |
---|
[451] | 358 | |
---|
[677] | 359 | useSplitCostQueue true |
---|
| 360 | useCostHeuristics true |
---|
| 361 | |
---|
| 362 | splitUseOnlyDrivingAxis false |
---|
| 363 | simulateOctree false |
---|
| 364 | useRandomAxis false |
---|
| 365 | usePolygonSplitIfAvailable false |
---|
| 366 | useBreathFirstSplits false |
---|
| 367 | |
---|
| 368 | Visualization { |
---|
| 369 | # x3d visualization of the split planes |
---|
| 370 | exportSplits false |
---|
| 371 | } |
---|
| 372 | } |
---|
| 373 | |
---|
| 374 | BspTree { |
---|
| 375 | Construction { |
---|
| 376 | samples 300000 |
---|
| 377 | epsilon 0.005 |
---|
| 378 | } |
---|
| 379 | |
---|
| 380 | |
---|
| 381 | # random polygon = 1 |
---|
| 382 | # axis aligned = 2 |
---|
| 383 | # least splits = 4 |
---|
| 384 | # balanced polygons = 8 |
---|
| 385 | # balanced view cells = 16 |
---|
| 386 | # largest polygon area = 32 |
---|
| 387 | # vertical axis = 64 |
---|
| 388 | # blocked rays = 128 |
---|
| 389 | # least ray splits = 256 |
---|
| 390 | # balanced rays = 512 |
---|
| 391 | # pvs = 1024 |
---|
| 392 | |
---|
| 393 | # least splits + balanced polygons |
---|
| 394 | #splitPlaneStrategy 12 |
---|
[451] | 395 | |
---|
[677] | 396 | #axis aligned + vertical axis |
---|
| 397 | #splitPlaneStrategy 66 |
---|
| 398 | |
---|
| 399 | # axis aligned + balanced view cells |
---|
| 400 | # splitPlaneStrategy 18 |
---|
| 401 | |
---|
| 402 | # largest polygon area |
---|
| 403 | #splitPlaneStrategy 32 |
---|
| 404 | |
---|
| 405 | # axus aligned + balanced polygons |
---|
| 406 | #splitPlaneStrategy 72 |
---|
| 407 | |
---|
| 408 | # axis aligned + blocked rays |
---|
| 409 | #splitPlaneStrategy 130 |
---|
| 410 | |
---|
| 411 | #splitPlaneStrategy 384 |
---|
| 412 | #splitPlaneStrategy 130 |
---|
| 413 | |
---|
| 414 | splitPlaneStrategy 32 |
---|
| 415 | |
---|
| 416 | maxPolyCandidates 100 |
---|
| 417 | maxRayCandidates 0 |
---|
| 418 | |
---|
| 419 | maxTests 10000 |
---|
| 420 | |
---|
| 421 | subdivisionStats ../subDivisionStats.log |
---|
| 422 | |
---|
| 423 | # factors for evaluating split plane costs |
---|
| 424 | Factor { |
---|
| 425 | verticalSplits 1.0 |
---|
| 426 | largestPolyArea 1.0 |
---|
| 427 | blockedRays 1.0 |
---|
| 428 | leastRaySplits 1.0 |
---|
| 429 | balancedRays 1.0 |
---|
| 430 | pvs 1.0 |
---|
| 431 | leastSplits 1.0 |
---|
| 432 | balancedPolys 1.0 |
---|
| 433 | balancedViewCells 1.0 |
---|
| 434 | } |
---|
| 435 | |
---|
| 436 | Termination { |
---|
| 437 | # parameters used for autopartition |
---|
| 438 | minRays -1 |
---|
| 439 | minPolygons 0 |
---|
| 440 | maxDepth 30 |
---|
| 441 | minPvs -1 |
---|
| 442 | minProbability 0.00001 |
---|
| 443 | maxRayContribution 9999 |
---|
| 444 | maxViewCells 20000 |
---|
| 445 | |
---|
| 446 | # used for pvs criterium |
---|
| 447 | ct_div_ci 0.0 |
---|
| 448 | |
---|
| 449 | maxCostRatio 0.9 |
---|
| 450 | |
---|
| 451 | # axis aligned splits |
---|
| 452 | AxisAligned { |
---|
| 453 | minPolys 5000 |
---|
| 454 | minRays 500 |
---|
| 455 | minObjects 10 |
---|
| 456 | ct_div_ci 0.5 |
---|
| 457 | } |
---|
| 458 | } |
---|
| 459 | |
---|
| 460 | AxisAligned { |
---|
| 461 | splitBorder 0.01 |
---|
| 462 | } |
---|
| 463 | |
---|
| 464 | |
---|
[451] | 465 | Visualization { |
---|
| 466 | # x3d visualization of the split planes |
---|
[677] | 467 | exportSplits false |
---|
[451] | 468 | } |
---|
[459] | 469 | } |
---|