Ignore:
Timestamp:
01/25/06 11:08:35 (18 years ago)
Author:
mattausch
Message:

changed view cell parser. warning, not working yet!!

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/VUT/GtpVisibilityPreprocessor/src/Preprocessor.cpp

    r574 r575  
    194194        environment->GetStringValue("ViewCells.type", viewCellsStr); 
    195195 
    196         int initialSamples = 0; 
    197          
    198         if (strcmp(viewCellsStr, "kdTree") == 0) 
    199         { 
    200                 mViewCellsManager = new KdViewCellsManager(mKdTree); 
    201         } 
    202         else if (strcmp(viewCellsStr, "bspTree") == 0) 
    203         { 
    204                 mBspTree = new BspTree(); 
    205  
    206                 Debug << "view cell type: Bsp" << endl; 
    207  
    208                 mViewCellsManager = new BspViewCellsManager(mBspTree); 
    209         } 
    210         else if (strcmp(viewCellsStr, "vspBspTree") == 0) 
    211         { 
    212                 mVspBspTree = new VspBspTree(); 
    213  
    214                 Debug << "view cell type: VspBsp" << endl; 
    215  
    216                 mViewCellsManager = new VspBspViewCellsManager(mVspBspTree); 
    217         } 
    218         else if (strcmp(viewCellsStr, "vspKdTree") == 0) 
    219         { 
    220                 mVspKdTree = new VspKdTree();            
    221          
    222                 mViewCellsManager = new VspKdViewCellsManager(mVspKdTree); 
    223         } 
    224         else if (strcmp(viewCellsStr, "sceneDependent") == 0) 
    225         { 
    226                 //TODO 
    227                 mBspTree = new BspTree(); 
    228  
    229                 Debug << "view cell type: Bsp" << endl; 
    230                  
    231                 mViewCellsManager = new BspViewCellsManager(mBspTree); 
    232         } 
    233         else 
    234         { 
    235                 cerr<<"Wrong view cells type" << viewCellsStr << endl; 
    236                 exit(1); 
    237         } 
     196        mViewCellsManager = CreateViewCellsManager(viewCellsStr); 
    238197 
    239198        float objRenderCost = 0, vcOverhead = 0, moveSpeed = 0; 
     
    272231 
    273232        return true; 
     233} 
     234 
     235 
     236ViewCellsManager *Preprocessor::CreateViewCellsManager(const char *name) 
     237{ 
     238        if (strcmp(name, "kdTree") == 0) 
     239        { 
     240                mViewCellsManager = new KdViewCellsManager(mKdTree); 
     241        } 
     242        else if (strcmp(name, "bspTree") == 0) 
     243        { 
     244                mBspTree = new BspTree(); 
     245 
     246                Debug << "view cell type: Bsp" << endl; 
     247 
     248                mViewCellsManager = new BspViewCellsManager(mBspTree); 
     249        } 
     250        else if (strcmp(name, "vspBspTree") == 0) 
     251        { 
     252                mVspBspTree = new VspBspTree(); 
     253 
     254                Debug << "view cell type: VspBsp" << endl; 
     255 
     256                mViewCellsManager = new VspBspViewCellsManager(mVspBspTree); 
     257        } 
     258        else if (strcmp(name, "vspKdTree") == 0) 
     259        { 
     260                mVspKdTree = new VspKdTree();            
     261         
     262                mViewCellsManager = new VspKdViewCellsManager(mVspKdTree); 
     263        } 
     264        else if (strcmp(name, "sceneDependent") == 0) 
     265        { 
     266                //TODO 
     267                mBspTree = new BspTree(); 
     268 
     269                Debug << "view cell type: Bsp" << endl; 
     270                 
     271                mViewCellsManager = new BspViewCellsManager(mBspTree); 
     272        } 
     273        else 
     274        { 
     275                cerr<<"Wrong view cells type" << name << endl; 
     276                exit(1); 
     277        } 
     278 
     279        return mViewCellsManager; 
    274280} 
    275281 
Note: See TracChangeset for help on using the changeset viewer.