Ignore:
Timestamp:
06/18/08 14:38:45 (16 years ago)
Author:
mattausch
Message:

chc++ still problems

File:
1 edited

Legend:

Unmodified
Added
Removed
  • GTP/trunk/App/Demos/Vis/CHC_revisited/chcdemo.cpp

    r2769 r2770  
    5757float visZoomFactor = 1.5f; 
    5858 
     59long accumulatedTime = 1000; 
     60float fps = 1e3f; 
     61 
     62int renderedObjects = 0; 
     63int issuedQueries = 0; 
     64int traversedNodes = 0; 
     65int frustumCulledNodes = 0; 
     66int queryCulledNodes = 0; 
     67int stateChanges = 0; 
     68 
    5969bool showHelp = false; 
    6070bool showStatistics = true; 
     
    6979int xEyeBegin, yEyeBegin, yMotionBegin, verticalMotionBegin, horizontalMotionBegin = 0; 
    7080 
    71 bool useOptimization = true; 
     81bool useOptimization = false; 
    7282 
    7383 
     
    296306        traverser->SetHierarchy(bvh); 
    297307        traverser->SetRenderState(&state); 
     308        traverser->SetUseOptimization(useOptimization); 
     309        traverser->SetUseRenderQueue(useRenderQueue); 
     310        traverser->SetVisibilityThreshold(threshold); 
    298311} 
    299312 
     
    843856 
    844857 
    845         sprintf_s(msg2, "traversed: %4d, frustum culled: %4d, query culled: %4d (of %d nodes)", 
    846                           traverser->GetStats().mNumTraversedNodes, traverser->GetStats().mNumFrustumCulledNodes, 
    847                           traverser->GetStats().mNumQueryCulledNodes, bvh->GetNumVirtualNodes()); 
    848  
    849858        char *optstr[2] = {"", ", using optimization"}; 
    850859         
    851         float fps = 1e3f; 
    852860        static long renderTime = traverser->GetStats().mRenderTime; 
    853  
    854861        const float expFactor = 0.5f; 
    855  
    856862        renderTime = traverser->GetStats().mRenderTime * expFactor + (1.0f - expFactor) * renderTime; 
    857863 
    858         if (renderTime) fps = 1e3f / (float)renderTime; 
     864        accumulatedTime += renderTime; 
     865 
     866        if (accumulatedTime > 200) // update every fraction of a second 
     867        {        
     868                accumulatedTime = 0; 
     869                if (renderTime) fps = 1e3f / (float)renderTime; 
     870 
     871                renderedObjects = traverser->GetStats().mNumRenderedGeometry; 
     872                traversedNodes = traverser->GetStats().mNumTraversedNodes; 
     873                frustumCulledNodes = traverser->GetStats().mNumFrustumCulledNodes; 
     874                queryCulledNodes = traverser->GetStats().mNumQueryCulledNodes; 
     875                issuedQueries = traverser->GetStats().mNumIssuedQueries; 
     876                stateChanges = traverser->GetStats().mNumStateChanges; 
     877        } 
    859878 
    860879        sprintf_s(msg2, "threshold: %4d%s",  
     
    869888 
    870889        sprintf_s(msg3, "rendered objects: %6d (of %6d), rendered triangles: %s (of %s)",  
    871                           traverser->GetStats().mNumRenderedGeometry, sceneEntities.size(), str.c_str(), str2.c_str());  
    872  
    873         sprintf_s(msg4, "issued queries: %5d", traverser->GetStats().mNumIssuedQueries); 
     890                          renderedObjects, sceneEntities.size(), str.c_str(), str2.c_str());  
     891 
     892        sprintf_s(msg4, "nodes: %5d, traversed: %5d, frustum culled: %5d, query culled: %5d, issued queries: %5d, state changes: %5d", 
     893                          bvh->GetNumVirtualNodes(), traversedNodes, frustumCulledNodes, 
     894                          queryCulledNodes, issuedQueries, stateChanges); 
    874895 
    875896        sprintf_s(msg5, "fps: %6.1f", fps); 
    876897 
     898        cout << "previously visible node queries: " << traverser->GetStats().mNumPreviouslyVisibleNodeQueries << endl; 
    877899 
    878900        begin2D(); 
Note: See TracChangeset for help on using the changeset viewer.