当前位置:   article > 正文

【Cocos2d-x】物理引擎使用入门_cocos2dx 物理引擎 动态刚体

cocos2dx 物理引擎 动态刚体

相关概念


什么是物理引擎?


科学模型:科学研究中对事物的合理简化。

物理引擎是一个计算机程序模拟牛顿力学模型,使用质量、速度、摩擦力和空气阻力等变量。
可以用来预测这种不同情况下的效果。它主要用在科学模拟和电子游戏中。

一般,物理引擎只负责物理计算,而不进行画面渲染。


关于box2d


Box2D是一款免费的开源二维物理引擎,由Erin Catto使用C++编写。它已被用于蜡笔物理学、愤怒的小鸟、地狱边境等游戏的开发。

Cocos2d-x本身已经集成box2d。

以上解释来自维基百科


Box2D中文手册下载地址:http://pan.baidu.com/s/1o63MI
Box2D源码下载:https://code.google.com/p/box2d/downloads/list

Box2D首页:http://box2d.org/


刚体(body)


在box2d中物体即刚体。

刚体就是坚硬的物体,碰撞不会产生形变。


物体的类型有以下3种:
静态物体:碰撞不会移动。质量为0。如:边界、墙。
动态物体:碰撞会移动。
平台物体:一直保持某一种运动的物体,如电梯会一直保持上下移动。


形状(shape)


依附于刚体的2D碰撞几何结构,形状具有摩擦(friction)和恢复(restitution)的材料性质。


在Box2D中主要有以下两种形状:
1.圆形
2.多边形
一个刚体的形状,可以是由多个形状组合而成。比如:人,头是圆形,手、脚、身体都是矩形。


约束(constraint)


一个约束(constraint)就是消除物体自由度的物理连接。在 2D 中,一个物体有 3 个自由度。如果我们把一个物体钉在墙上(像摆锤那样),那我们就把它约束到了墙上,而且此物体就只能绕着这个钉子旋转,所以这个约束消除了它 2 个自由度。

接触约束(contact constraint)
一个防止刚体穿透,以及用于模拟摩擦(friction)和恢复(restitution)的特殊约束。你永远都不必创建一个接触约束,它们会自动被 Box2D 创建。


关节(joint)


它是一种用于把两个或多个物体固定到一起的约束。Box2D 支持的关节类型有:旋转,棱柱,距离等等。关节可以支持限制(limits)和马达(motors)。


关节限制(joint limit)
一个关节限制(joint limit)限定了一个关节的运动范围。例如人类的胳膊肘只能做某一范围角度的运
动。


关节马达(joint motor)
一个关节马达能依照关节的自由度来驱动所连接的物体。例如,你可以使用一个马达来驱动一个肘的
旋转。


夹具(fixture)


刚体物理信息(如:类型、密度系数、摩擦系数)的封装。

一个刚体可以具有多个夹具

声明:本文内容由网友自发贡献,转载请注明出处:【wpsshop博客】
推荐阅读
相关标签
  

闽ICP备14008679号