往昔
1
你可能会忘记那快乐的时刻,
被我们在爱之亭榭下埋没?
对着那冰冷的实体,我们铺下
不是青苔,而是叶子和鲜花。
呵,鲜花是失去的快乐,
叶子是希望,还依然留贮。
2
你可忘了那逝去的?它可有
一些幽灵,会出来替它复仇!
它有记忆,会把心变为坟墓,
还有悔恨,溜进精神的浓雾
会对你阴沉地低声说:
快乐一旦消失,就是痛苦。
1818年
P.B.雪莱
THE PAST
1
Wilt thou forget the happy hours
Which we buried in Love's sweet bowers,
Heaping over their corpses cold
Blossoms and leaves, instead...
注:此文章翻译自Box2D v2.2.0用户手册,仅供学习参考。
Erin Catto的GDC教程:http://code.google.com/p/box2d/downloads/list
Collision Detection in interactive 3D Environments, Gino van den Bergen, 2004
Real-Time Collision Detection, Christer Ericson, 2005
注:此文章翻译自Box2D v2.2.0用户手册,仅供学习参考。
Box2D使用了一些近似值来模拟刚体的物理效果。这就带来了一些限制。
下面是当前的一些限制:
叠加一些重物体到很轻的物体上面会不稳定。当质量比例超过10:1的时候稳定性会下降。
被连接器连接的物体链,轻物体吊着重物体容易被拉伸。比如说,一个很重的球拉着一个很轻的球可能就会不稳定。当质量比超过10:1的时候稳定性就会降低。
通常还有0.5cm的间隙就可以检测到碰撞。
持续碰撞不能处理连接器。所以你可能会看到连接器上快速移动的物体可能会拉伸。
注:此文章翻译自Box2D v2.2.0用户手册,仅供学习参考。
你可以实现b2DebugDraw类来获得更细致的物理世界。这里有一些可用的实体:
形状轮廓(shape outlines)
连接器连接(joint connectivity)
broad-phase算法的轴对称包围盒(AABBs)(broad-phase axis-aligned bounding boxes)
质心(center of mass)
这是绘制物理实体的首选方法,比直接访问数据要好很多。原因是大部分所需的数据属于内部数据并且由子类来改变。
testbed使用调试绘图(debug draw)和接触监听器(contact liste...
注:此文章翻译自Box2D v2.2.0用户手册,仅供学习参考。
11.1 隐式销毁(Implicit Destruction)
Box2D没有使用引用计数。如果你销毁了一个物体那就真的消失了。通过指针来销毁物体,此指针将会变成未定义状态。换句话说,程序有可能面临崩溃。为了帮助定位这些问题,为了更好的调试这些指针,内存管理将这种情况下的指针填充了FDFDFDFD信息。在一些场景中,这可以更简单的帮助你发现问题。
如果你销毁一个Box2D实体,需要确保所有对象移除了此实体的引用。对于单个引用实体来说这很简单。如果你有多个引用,你或许会考虑封装一个原始指针句柄类(handle class)。
通常使用B...