C++(SDL2)中的碰撞函数.如何传递存储在不同向量中的两个结构

Collision function in c++(SDL2). How do I pass two structs stored in separate vectors?

本文关键字:向量 两个 结构 何传递 碰撞 SDL2 函数 存储 C++      更新时间:2023-10-16

我正在复制突破。球是存储在矢量中的结构,就像敌人结构一样。我遵循的教程(http://headerphile.com/sdl2/sdl2-part-5-collision-detection/)仅给出了使用播放器矩形检查它的示例。我想知道这是否可以通过检查与球结构的碰撞来修改为我的要求。

任何帮助,不胜感激。

干杯。

bool CheckEnemyCollisions()
{
    for (const auto &p : enemies)
    {
        if (CheckCollision(p.pos, playerPos))
            return true;
    }
    return false;
}

问题解决了。将结构中的两个矩形添加到函数中:

bool CheckEnemyCollisions()
{
    for (const auto &p : enemies)
    {
        for (const auto &c : ball)
        if (CheckCollision(p.pos, c.pos ))
            return true;
    }
   return false;
}