Ignore:
Timestamp:
11/12/08 17:56:47 (16 years ago)
Author:
mattausch
Message:

working on ssao for dynamic objects, found error with tight bounds

File:
1 edited

Legend:

Unmodified
Added
Removed
  • GTP/trunk/App/Demos/Vis/FriendlyCulling/src/Bvh.cpp

    r3075 r3123  
    158158         
    159159        if (!numEntities) 
    160         { 
    161                 // no box=> just initialize 
     160        {       // no box=> just initialize 
    162161                box.Initialize(); 
    163162        } 
     
    202201                mGeometry[mStaticGeometrySize + i] = dynamicEntities[i]; 
    203202        } 
     203} 
     204 
     205 
     206Bvh::Bvh(const SceneEntityContainer &staticEntities,  
     207                 const SceneEntityContainer &dynamicEntities, 
     208                 int maxDepthForTestingChildren) 
     209{ 
     210        Init(); 
     211 
     212        mGeometrySize = staticEntities.size() + dynamicEntities.size(); 
     213        mGeometry = new SceneEntity*[mGeometrySize]; 
     214 
     215        mStaticGeometrySize = staticEntities.size(); 
     216        mDynamicGeometrySize = dynamicEntities.size(); 
     217 
     218        for (size_t i = 0; i < mStaticGeometrySize; ++ i) 
     219        { 
     220                mGeometry[i] = staticEntities[i]; 
     221        } 
     222 
     223        for (size_t i = 0; i < mDynamicGeometrySize; ++ i) 
     224        { 
     225                mGeometry[mStaticGeometrySize + i] = dynamicEntities[i]; 
     226        } 
     227 
     228        mMaxDepthForTestingChildren = maxDepthForTestingChildren; 
    204229} 
    205230 
     
    232257        // nodes are tested using the subnodes from 3 levels below 
    233258        mMaxDepthForTestingChildren = 3; 
     259        mMaxDepthForTestingChildren = 0; 
    234260        //mMaxDepthForTestingChildren = 4; 
    235261 
     
    567593        return numNodes; 
    568594} 
     595 
     596#if TODO 
     597void Bvh::RenderBoundsImmediate(const BvhNodeContainer &nodes, RenderState *state) 
     598{ 
     599        ///////// 
     600        //-- Render the tight bounds in immediate mode 
     601        BvhNodeContainer::const_iterator nit, nit_end = nodes.end(); 
     602 
     603        for (nit = nodes.begin(); nit != nit_end; ++ nit) 
     604        { 
     605                BvhNode *node = *nit; 
     606 
     607                for (int size_t i = 0; i < node->mNumTestNodes; ++ i) 
     608                { 
     609                        BvhNode *testNode = node->mTestNodesIdx 
     610                        RenderBoundingBoxImmediate((*nit)->GetBox()); 
     611                } 
     612        } 
     613} 
     614#endif 
    569615 
    570616 
Note: See TracChangeset for help on using the changeset viewer.