伙计们!我在处理游戏对象(其他尺寸)的碰撞时遇到问题。我的算法是:
for (Array<GameObject*>::iterator it = objects.begin(); it != objects.end(); it++)
{
RECT objRect = (*it)->GetBoundingBox();
for (Array<GameObject*>::iterator it2 = object.begin(); it2 != object.end(); it2++)
{
RECT objRect2 = (*it2)->GetBoundingBox();
IntersectRectangles(objRect, objRect2);
}
}
是的,这很好用。但它的工作非常缓慢。我有一个想法(只检查附近的对象到对象),但这意味着越来越多的迭代。也许存在更好的方法?