torsdag, oktober 04, 2007

Quad/BSP hybrid

Så har vi implementeret vores Quadtree/BSPtree hybrid. Vi har ikke testet den da vi ikke har noget at bruge den på endnu men den compiler og sprænger ikke i luften nå vi bruger bruger den i vores spil. Hybriden er bruger vores Quadtree og BSPtree builders fra sidste uge og er lavet således:


QuadNode* QuadBSPHybridBuilder::Build(ISceneNode& node) {
QuadNode* qn = qtb.Build(node);
qn->Accept(*this);
return qn;
}

void QuadBSPHybridBuilder::VisitQuadNode(QuadNode* node) {

GeometryNode* gn = node->GetLeafs();
if (gn != NULL) {
BSPNode* bn = btb.Build(*gn);
node->RemoveNode(gn);
node->AddNode(bn);
} else {
node->VisitSubNodes(*this);
}
}


Og hvis der er nogen der skriver af så får I SMÆK! ;-)~~~

Ingen kommentarer: