std::vector<std::pair<THybridBv*, THybridBv*>> collideHybridBvPair;
std::map<THybridBv*, std::vector<THybridBv*>> collide_list;

for(auto bvs : hybrid_bvh.collideHybridBvPair)
{
	collide_list[bvs.first].push_back(bvs.second);
}

for (auto bvs : collide_list)
{
	printf("bv0 id : %d", bvs.first->id);
}

 

매번 실행시 bv0 id가 다른 결과가 나옴.

 

collideHybridBvPair 바로 접근 시 당연히 순서가 제대로 나오는걸로 봐서, map 삽입시 b+tree였나? 거기서 순서가 뒤바뀌는거 같음.

 

아직 원인파악 못함.

Posted by 딕스트라