- Timestamp:
- 02/17/07 22:48:12 (17 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
GTP/trunk/Lib/Vis/OnlineCullingCHC/OGRE/include/OgreBoundingBoxConverter.h
r2115 r2123 217 217 218 218 // we are only interested in scene entities 219 if (mo->getMovableType() != "Entity") 219 if ((mo->getMovableType() != "Entity") && 220 (mo->getMovableType() != "ManualObject")) 220 221 continue; 221 222 … … 237 238 } 238 239 240 static void AddToObjects(EntityContainer *entites, 241 GtpVisibilityPreprocessor::ObjectContainer &objects, 242 const int id) 243 { 244 // TODO: can actually just put single objects into pvs with same id, 245 // this can be sorted out later!! 246 #if 0 247 EntityContainer::const_iterator eit, eit_end = entryObjects.end(); 248 249 for (eit = entryObjects.begin(); eit != eit_end; ++ eit) 250 { 251 Entity *ent = *eit; 252 253 // warning: multiple ids possible 254 OgreMeshInstance *omi = new OgreMeshInstance(ent); 255 omi->SetId(id); 256 objects.push_back(omi); 257 } 258 259 delete entryObjects; 260 261 #else 262 263 EngineIntersectable *entry = new EngineIntersectable(entites); 264 265 entry->SetId(id); 266 objects.push_back(entry); 267 #endif 268 } 269 239 270 #if USE_KD_PVS 240 271 //------------------------------------------------------------------------- … … 255 286 OgreTypeConverter::ConvertToOgre(pbox); 256 287 257 EntityContainer entryObjects;288 EntityContainer *entryObjects = new EntityContainer(); 258 289 259 290 // find all objects that intersect the bounding box 260 FindIntersectingObjects(box, entryObjects); 261 262 // TODO: can actually just put single objects into pvs with same id, 263 // this can be sorted out later!! 264 #if 1 265 EntityContainer::const_iterator eit, eit_end = entryObjects.end(); 266 267 for (eit = entryObjects.begin(); eit != eit_end; ++ eit) 268 { 269 Entity *ent = *eit; 270 271 // warning: multiple ids possible 272 OgreMeshInstance *omi = new OgreMeshInstance(ent); 273 omi->SetId(id); 274 objects.push_back(omi); 275 } 276 #else 277 EngineIntersectable *entry = 278 new EngineIntersectable(entryObjects); 279 280 entry->SetId(id); 281 objects.push_back(entry); 282 #endif 291 FindIntersectingObjects(box, *entryObjects); 292 293 AddToObjects(entryObjects, objects, id); 283 294 } 284 295
Note: See TracChangeset
for help on using the changeset viewer.