摘要: box2d中的物理世界,即b2World类就是一个包含了各种物体(body,物理体,或者叫刚体),固定附着物(fixture,形状与物理体的绑定物)以及各种约束体(比如关节),并使其在当中完成各种交互的这样一个集合体.这个世界可能存在重力,所以,在创建这个世界的时候我们需要传一个描述重力的二维向量(v2对象),当然这取决于你的视角设定,也许你是做的横版游戏,这样的确需要一个重力.如果是顶视图,那可能就不需要重力了.var gravity:V2=new V2(0,10);var world:b2World=new b2World(gravity);然后世界定期需要刷新//刷新时间粒度var st 阅读全文
posted @ 2013-10-23 15:26 awodefeng 阅读(464) 评论(0) 推荐(0) 编辑
摘要: 物理引擎通过为刚性物体赋予真实的物理属性的方式来计算运动、旋转和碰撞反映。为每个游戏使用物理引擎并不是完全必要的—简单的“牛顿”物理(比如加速和 减速)也可以在一定程度上通过编程或编写脚本来实现。然而,当游戏需要比较复杂的物体碰撞、滚动、滑动或者弹跳的时候(比如赛车类游戏或者保龄球游戏), 通过编程的方法就比较困难了。那么着时候使用物理系统可以为游戏带来一些很明显的优点:1)更加真实的对现实世界的模拟,以牛顿力学为基础的游戏效果。 a) 游戏中的精灵们运动起来更真实:相互碰撞,自由下落等各种效果更加真实。 b) 玩家操作起来随机性增大,物理碰撞决定他操作的效果。游戏体验增强。2) 系统化的碰撞 阅读全文
posted @ 2013-10-23 09:12 awodefeng 阅读(411) 评论(0) 推荐(0) 编辑
摘要: 在游戏中我们经常要加入物理碰撞等和物理有关的内容,在游戏中加入物理引擎可以使我们的游戏更加真实,为玩家展示一个更真实的世界,cocos2d-x支持两个物理引擎Box2d和Chipmunk,本文介绍box2d。Box2D是用可移植的C++来写成的。引擎中定义的大部分类型都有b2前缀,可以把它和我们游戏中的其他元素区分开来。Box2d中有很多概念。1.刚体即是物理学中的质点,只有位置,没有大小,它又可以区分为以下几类静态刚体:静态刚体没有质量,没有速度,只可以手动来改变他的位置棱柱刚体:棱柱刚体没有质量,但是可以有速度,可以自己更新位置动态刚体:动态刚体有质量也有速度物理引擎需要首先定义一个描述类 阅读全文
posted @ 2013-10-23 08:35 awodefeng 阅读(293) 评论(0) 推荐(0) 编辑