游戏开发中的数学和物理算法(6):圆和球的碰撞检测
2009-01-14 13:57
621 查看
1.圆的碰撞检测
圆的碰撞条件:
当两个圆相切或者相交时,我们认为两个圆应该开始发生碰撞。
[b]两球之间的碰撞
bool CollisionBetweenSphere(sphere s1,sphere s2)
{
bool hit;
float distanceOfCenter=sqrt(pow((s1.center.x-s2.center.x),2)+
pow((s1.center.y-s2.center.y),2)+
pow((s1.center.z-s2.center.z),2));
float distanceOfRadius=s1.radius+s2.radius;
if(distanceOfCenter<=distanceOfRadius)
{
hit=true;
}
else
{
hit=false;
}
return hit;
}
圆的碰撞条件:
当两个圆相切或者相交时,我们认为两个圆应该开始发生碰撞。
[b]两球之间的碰撞
bool CollisionBetweenSphere(sphere s1,sphere s2)
{
bool hit;
float distanceOfCenter=sqrt(pow((s1.center.x-s2.center.x),2)+
pow((s1.center.y-s2.center.y),2)+
pow((s1.center.z-s2.center.z),2));
float distanceOfRadius=s1.radius+s2.radius;
if(distanceOfCenter<=distanceOfRadius)
{
hit=true;
}
else
{
hit=false;
}
return hit;
}
相关文章推荐
- 游戏开发中的数学和物理算法(6):圆和球的碰撞检测
- 游戏开发中的数学和物理算法(6):圆和球的碰撞检测
- [Game] 游戏开发中的数学和物理算法:圆和球的碰撞检测
- 游戏开发中的数学和物理算法(6):圆和球的碰撞检测
- 游戏开发中的数学和物理算法(6):圆和球的碰撞检测
- 游戏开发中的数学和物理算法(3):点之间的距离
- Swift开发Sprite Kit游戏实践(三):物理推力与碰撞检测
- 游戏开发中的数学和物理算法(13):点积和叉积
- 游戏开发中的数学和物理算法 2
- 游戏开发中的数学和物理算法(3):点之间的距离
- 游戏开发中的数学和物理算法(18):缩放
- 游戏开发中的数学和物理算法(3):点之间的距离
- 游戏开发中的数学和物理算法(4):抛物线
- 游戏开发中的数学和物理算法(13):点积和叉积
- 游戏开发中的数学和物理算法(13):点积和叉积
- 游戏开发中的数学和物理算法(8):三角函数
- 游戏开发中的数学和物理算法(14):矩阵的相等和转置
- 游戏开发中的数学和物理算法3
- android游戏物理引擎开发——碰撞检测(三)
- 游戏开发中的数学和物理算法(8):三角函数