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