同步更新:Github Wiki
我在学习 chipmunk 物理引擎的过程中,感觉到了明显的困难。估计很大可能是受限于我的英文水平和物理知识了。于是特开此帖,记录学习过程中遇到的物理专业术语。内容不断更新。
- segment 线段
- box 矩形
- circle 圆形
- polygon (通常缩写 poly) 多边形
- moment 转动惯量
- body 物体
- shape 形状
- vector (通常缩写 vect) 向量、矢量,在 chipmunk 中还用来表示点的坐标(因为向量和坐标都是x和y)
- vertex (通常缩写 vert) 顶点(多边形的),我已华丽丽地与 vect 混淆
- area 面积
- elasticity 弹性、弹性系数
- friction 摩擦力、摩擦系数
segment 线段
在 chipmunk 中,一般使用线段来建造墙壁。
线段也可以有面积,chipmunk 提供一个 function :
1 | /** |
以上代码是从 chipmunk 的源代码取出来的(代码里的注释是我加的)。从源代码看,chipmunk 把线段的两端当成了圆,所以 r 是两端的圆的半径。
moment 转动惯量
https://zh.wikipedia.org/wiki/%E8%BD%89%E5%8B%95%E6%85%A3%E9%87%8F
https://www.zhihu.com/question/24218339
转动惯量是一个物体对于其旋转运动的惯性大小的量度。
chipmunk 在创建物体(Body)的时候需要指定转动惯量。
1 | /** |
chipmunk 提供了计算物体转动惯量的 function,一般而言套用公式就好了。
圆形/圆环的转动惯量:
1 | /** |
矩形的转动惯量:
1 | /** |
线段的转动惯量:
1 | /** |
多边形的转动惯量:
1 | /** |
todo: 尚未清楚如果不套用公式,自己指定转动惯量的话,会有些什么有趣的效果。
vector 向量、矢量
在 chipmunk 中,向量是个类/对象。
1 | /** |
由于坐标点和向量都是 x 和 y 值,所以 chipmunk 也把这个向量用作坐标点的表示。
持续更新中…