1
我想做一个算法来处理两个包围盒(我的播放器和一些固体对象)之间的碰撞,而不使用sf :: Rect与SFML提供的相交。现在,我这是怎么检测实际碰撞:包围盒碰撞检测算法
if (obstacle.GetPosition().x < p.getPlayerPosition().x + p.getPlayerSize().x &&
obstacle.GetPosition().x + obstacle.GetSize().x > p.getPlayerPosition().x &&
obstacle.GetPosition().y < p.getPlayerPosition().y + p.getPlayerSize().x &&
obstacle.GetSize().y + obstacle.GetPosition().y > p.getPlayerPosition().y)
{
// Collision
}
不过,我还需要弄清楚其上的障碍四边玩家碰撞,这样我就可以设置正确的玩家位置。有没有人有任何想法如何做到这一点尽可能简单和有效?