Canbitwell Products

Yuri'Blog +[基于冲量物理实时模拟] [碰撞检测]
posts - 12, comments - 10, trackbacks - 0, articles - 1
   :: 首页 :: 新随笔 :: 联系 :: 订阅 订阅 :: 管理

2007年7月1日

     摘要: 无万向锁,旋转绝对自由。就是不好控制BTW:这是渲染引擎部件之一。CCamera可以用于设置RenderTarget,而CViewerCamera则是给用户3D漫游用的publicclassCCamera{Matrix4x4mViewMatrix,mProjMatrix;protectedVectormPosition;protectedQuaternionmOri;protectedVector... 阅读全文

posted @ 2007-07-01 22:32 Yuri 阅读(222) | 评论 (0)编辑

1.向量积可以用以下替换:

这样解包含刚体角运动的冲量方程时就简单了。

[不断完善ing]

posted @ 2007-07-01 21:58 Yuri 阅读(50) | 评论 (0)编辑

1.在一个模拟步长中,如果两个刚体之间有相向加速,那么碰撞(单点碰撞):

用公式:


以下内容已被证明不正确:

计算法向冲量
若碰撞处理参数取的是先于碰撞的:冲量不够
碰撞处理参数取的是后于碰撞的:冲量稍大
减小模拟步长可以缓解这个问题,或者你能精确找到碰撞时间最好,积分到那个时刻,处理碰撞。
或者懒一点,碰撞处理参数取后于碰撞的,尽管冲量稍大,但也不至于第一个造成 缓慢相互穿透。




2.一个物理帧(供参考):

求解碰撞(包括动摩擦和静摩擦)

计算外力

求解接触[约束](包括动摩擦和静摩擦)

积分

3.接触处理由外力决定

4.

我考虑我应该用t0时刻的惯性矩来求解碰撞 ,并且求解接触时预算新的惯性矩,这样对吗?

求解碰撞的时候,任何事情都是“现在”发生的。就对于接触处理,你必须做一个状态预算。所以冲量方程应该像这样:

pn = 1 / (n(t0)^T * K(t0) * n(t0)) * 1/h * dn(t0+h) * n(t0)

所以,惯性矩总是t0时刻的。

 

[不断完善ing]

posted @ 2007-07-01 21:54 Yuri 阅读(45) | 评论 (0)编辑


非标准物理重心,以前每次都是简化了模型,让物理重心和几何重心一样,这次一般化,物理重心由以下式子可算出

演示视频中的小球的重心靠下(下方密度较大),所以它像个不倒翁一样晃……

如果一开始产生的水平分速度再大点,那么小球就应该会一快一慢的滚动起来 ,然后滚出地面,掉下去。。

posted @ 2007-07-01 21:25 Yuri 阅读(153) | 评论 (0)编辑