欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

“粉末游戏“碰撞检测

程序员文章站 2024-03-16 16:36:04
...

以前,我想要做一个"粉末游戏",就是一堆粉末,但是,我发现,比如说你有100个粉末,那么你要进行数千次检测,这对于CPU来说是一个极大的负担,所以我提出了一种新的碰撞检测(虽然我感觉已经有人比我先提出了…),姑且就叫他映射表碰撞检测吧…
简单来说就是把每个粉末的位置都放到一个数组中,这样检测是否撞到别的就容易许多。

//记录位置
struct dot
{
    int x,y;
};
//创建数组
bool table[100][100];
vector<dot> dot_list;
//加入
for(int i = 0;i < dot_list.size();i++)
{
    dot d = dot_list.at(i);
    table[d.y][d.x] = true;
}
//检测
bool fun(int i)
{
    dot d = dot_list.at(i);
    if(table[d.y + 1][d.x] == true)
    return true;
    return false;
}
相关标签: 笔记