游戏开发论坛

 找回密码
 立即注册
搜索
查看: 2010|回复: 4

请问两个圆的斜碰撞检测如何设计

[复制链接]

10

主题

21

帖子

28

积分

注册会员

Rank: 2

积分
28
发表于 2009-9-17 12:30:00 | 显示全部楼层 |阅读模式
圆A撞圆B,当圆A的速度方向与两圆圆心连线夹角为0度时,这个很容易.
但如果夹角不为0.那应该用什么方法去设计,我正在做一个模拟电玩城那种桌面冰球的游戏,因为圆盘是在"气床"上运动的,所以摩擦可忽略,只在碰撞到桌子边缘和碰到我们握着的"把手"时会有能量损失.

11

主题

650

帖子

651

积分

高级会员

Rank: 4

积分
651
发表于 2009-9-17 14:44:00 | 显示全部楼层

Re:请问两个圆的斜碰撞检测如何设计

我有些不懂。。两个圆 “斜碰”和“直碰”有何区别。。无非是就圆心距离等于两球半径之和时就碰撞了。。。

就算按你说的。。。难道你不会把速度分为两个垂直的速度么
这不是初中的么……

11

主题

650

帖子

651

积分

高级会员

Rank: 4

积分
651
发表于 2009-9-17 14:48:00 | 显示全部楼层

Re:请问两个圆的斜碰撞检测如何设计

啊。。莫非你是在说三维空间里两个圆?那就无视2楼吧

32

主题

235

帖子

235

积分

中级会员

Rank: 3Rank: 3

积分
235
发表于 2009-9-17 15:36:00 | 显示全部楼层

Re:请问两个圆的斜碰撞检测如何设计

用勾股定理。三维空间里先检测某一轴投影下的圆,如果重合再检测垂直刚才轴的投影下的圆,再次重合碰撞成立。

0

主题

8

帖子

10

积分

新手上路

Rank: 1

积分
10
发表于 2009-9-19 01:18:00 | 显示全部楼层

Re: 请问两个圆的斜碰撞检测如何设计

以其中一个圆盘作为参考系就可以简化问题了,碰撞前后的总动量等于碰撞前另一圆盘相对参考系的动量。
如果不考虑圆盘旋转,只考虑动能损失,就可以计算出碰撞后的速度了(相对于参考系),然后再将速度转化为相对大地的。
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

作品发布|文章投稿|广告合作|关于本站|游戏开发论坛 ( 闽ICP备17032699号-3 )

GMT+8, 2025-6-20 13:03

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表