
Box2D
文章平均质量分 87
Flood_Dragon
勇者无所畏惧 强者自强不息
展开
-
刚体的上衣——b2BodyDef.userData
在前面的教程中,我们学会了如何创建矩形刚体、圆形刚体和静止不动的刚体。但是学了那么久,看到的总是些小框框,没有任何的图形,我相信,这个肯定满足不了你。那么今天我们就来学习一下如何给刚体穿上"皇帝的上衣"。在创建"刚体需求"时(如果你对"刚体需求"不是了解,请参考"掉落的苹果——b2Body"),可以通过userData属性给刚体准备一套'衣服",这套"衣服"通常是A转载 2013-06-19 18:57:44 · 1410 阅读 · 0 评论 -
Box2dの学习资料整理与收集
[工具]http://www.box2dflash.org/ http://code.google.com/p/box2dflash/ 类库[工具]http://cn.ziddu.com/download/551165/Box2D_User_Manual_CN.pdf.html Box2D用户手册[工具]http://cn.zidd转载 2013-06-23 15:21:44 · 1123 阅读 · 0 评论 -
从Box2D 2.0.1到Box2D 2.1a
之前@依然低调白和@ヤ牵、迩右手(张小勇)同学都跟我说过,我的教程用的是Box2D2.0.1版本的,不是最新的版本,建议我更新成最新的Box2D 2.1a版。很感谢两位同学建议。今天我们就开始学习Box2D 2.1a,而且后续的Box2D都会用Box2D 2.1a版本。和学习Box2D 2.0.1一样,我还是创建b2Body刚体开始,我继续使用掉落的苹果——b2Body里的实例,同转载 2013-06-20 13:45:50 · 862 阅读 · 0 评论 -
创建圆形Box2D边界
在让刚体听我的——ApplyForce、ApplyImpulse、SetLinearVelocity一节中,来自天地会的sxl001问道如何创建圆形的边界(Round Boundary),好吧,我用这个教程来回答他。实际上Box2D中没有专门创建圆弧的API (b2CircleDef创建的是实体圆形不是圆弧),所以试图寻找这样一个API的同学就放弃吧。结束了?坑爹啊!哈哈,既然转载 2013-06-20 13:42:16 · 1292 阅读 · 0 评论 -
Box2D创建圆角刚体
上次我们讨论了如何创建一个多边形刚体,终于摆脱了简单的矩形和圆形,又上了一个台阶。这不,刚学会走,有人就想跑了。天地会的xiaopang125同学前两天问我如何创建一个圆角刚体,我用创建多边形刚体教程里的组合法实现了这个效果:点击舞台任意位置,创建圆角刚体代码除了下面创建圆角刚体的函数之外,与创建多边形刚体里的基本一致。下面的代码我已经做了详细的注释,就不再赘述了。转载 2013-06-20 13:36:05 · 873 阅读 · 0 评论 -
Box2D多边形刚体
在前面的教程中,我们学会了创建矩形刚体、圆形刚体,但是现实生活中的物体是各式各样的,所以本节我们来学习一下如何创建一个多边形刚体。Box2D创建多边形刚体有两种方法,我把他们分别叫做组合法和原生法。下面我来详细看看这两种方法的具体实现过程。一、组合法顾名思义,就是用多个刚体(这里我知道是我们学过的矩形和圆形刚体)组合成的一个整体,有点像我们小时候看的六神合体的感觉,呵呵。转载 2013-06-20 13:21:24 · 1831 阅读 · 0 评论 -
让刚体听我的——ApplyForce、ApplyImpulse、SetLinearVelocity
对于大部分游戏来说,允许玩家控制游戏对象,是个非常基本的特性。而到目前为止,在学到的Box2D技巧中,创建了刚体之后,我们只能眼睁睁的看着它自由落体。我想,你肯定迫不及待的想“占有”它了,别急,今天我们就来学习一下,如何让刚体听我们的。Box2D中控制一个刚体,让它乖乖的听我们的话,有三种方法:ApplyForce、ApplyImpulse和SetLinearVelocity。它们都是b2转载 2013-06-20 13:15:24 · 1584 阅读 · 0 评论 -
Box2D简单封装(2.1a版)
/** * CHANGE LOG * >>5.0 2012-10-20<< * 增加pixelPerMeter静态属性,便于缩放屏幕时,修改像素和米的转换关系 * >>4.0<< * 添加getBodyAtMouse方法 * 添加startDragBody方法 * 添加stopDragBody方法 * >>3.0<< * 添加createPolygon方法 * 添加转载 2013-06-20 14:01:28 · 1203 阅读 · 0 评论 -
运行时创建多边形刚体
学习了信手绘制线条刚体,你有没有想过信手绘制多边形刚体呢?"当然了,你不是在上一篇教程中说过了吗?快快说来!!"是的,正如我说说的,这是重力大师里可以绘制的对象之一。在之前的Box2D多边形刚体教程中。我们学会了用组合法和原生法创建多边形。谈到运行时创建多边形刚体,你会选择哪种方法呢?如果是原生法,恭喜你,我们想到一块去了。借一步讲话,我给你细细道来。原生法绘制多边形刚体还记得转载 2013-06-20 14:58:27 · 1261 阅读 · 0 评论 -
信手绘制线条刚体
来自天地会的wkyjoey同学问道如何做一个重力大师游戏(如下图)。这里要特意表示一下歉意,最近一直忙于工作,没有及时更新教程。对于重力大师游戏,试玩之后,不难发现,我们在运行时可以创建的刚体有两种,线条刚体和多边形刚体。今天我们来一起研究一下线条刚体的创建。多边形刚体会在下次教程中讨论。 这里我们要绘制的线条不是直线而是曲线,所以简单的矩形刚体无法实现这个效果。在转载 2013-06-20 14:50:42 · 1138 阅读 · 0 评论 -
让刚体听我的——鼠标拖动Box2D刚体
在前面我们学习了键盘+ApplyForce、ApplyImpulse和SetLinearVelocity来控制刚体运动。今天我们学习一下用 MouseJointDef 实现鼠标拖动刚体运动。鼠标拖动刚体运动,这在Flash中实现起来是非常简单的:鼠标按下之后,调用startDrag()方法,这样对象就会跟随鼠标移动;鼠标弹起后,调用stopDrag()方法,停止拖动。听起来确实转载 2013-06-20 15:50:14 · 1700 阅读 · 0 评论 -
Box2D多边形刚体贴图
在前面的刚体的上衣教程中,我们学会了简单的刚体贴图,确实非常简单,只需要根据b2Body刚体的坐标和角度实时更新userData的坐标和角度就可以了。那么多边形刚体贴图呢?放心啦,没你想象的那么复杂,和简单刚体的贴图方法是一样一样的,重点是如何绘制和多边形刚体一样的图形,很幸运,我们在用drawPath自由绘制图形中已经学会了,结合运行时创建多边形刚体,我们可以轻松给多边形刚体啦(如果你还转载 2013-06-20 15:03:59 · 2005 阅读 · 0 评论 -
在运行时创建刚体
首先要感谢Emanuele Feronato给我们分享那么多精品教程,我的文章灵感也都是来自他的博客。在"掉落的苹果——b2Body"和"创建圆形刚体"中,我们学会了如果创建矩形和圆形刚体。今天我们来看看如何在运行时创建这些刚体!首先,我们来看一下效果,在舞台任意位置按下并拖动鼠标,松开鼠标后可以创建一个矩形刚体。在创建按下鼠标前按下空格键,可以创建一个圆形刚体。packa转载 2013-06-19 16:38:23 · 759 阅读 · 0 评论 -
创建静止不动的刚体
在"掉落的苹果——b2Body"中,有一个地面,它是静止不动的,不随刚体下落(废话,地面掉落那是地震!)。我想特别说明一下静止固定刚体的创建方法。在Box2D中,刚体是否为静止不动,由"形状需求"b2ShapeDef决定。具体的讲,质量density为0的刚体就是静止不动的。12345678转载 2013-06-19 16:31:36 · 1346 阅读 · 0 评论 -
掉落的苹果——b2Body刚体
上一节中,我们认识了Box2D世界,学习了它的创建方法。今天我们一起来扮演牛顿,认识一下Box2D世界中掉落的苹果。在开始之前,我们想先说明两个内容:1. Box2D中的计量单位是米在Box2D中的计量单位是米m,而不是Flash中的像素px,在布置坐标时,要进行一个转换,1米=30个像素。所以Box2D中(a,b)点对于Flash中的(a*30,b*30)的位置,或者说Flash中的转载 2013-06-19 15:42:27 · 1055 阅读 · 0 评论 -
认识Box2D世界
前两天,emanueleferonato在它的博客6周岁之际,发布了自己的Top文章,其中有7篇是关于Box2D的,由此可见Box2D的市场需求是很大的。作为专业的AS3游戏业余爱好者,我义不容辞的开始学习Box2D,希望能跟大家共同进步。其实Box2D的教程已经很多了,不过对于我这个菜鸟来说,看着看着就困了,还是按照我菜鸟思路来吧。首先认识一下Box2D世界——b2wor转载 2013-06-19 15:34:33 · 1115 阅读 · 0 评论 -
Box2D简单封装
认识了Box2D世界,学习了刚体的创建,细细回想一下,总感觉Box2D的创建过程稍有繁琐,每每都要创建世界、环境、重力、刚体需求、形状需求...等等。能不能再简单点?在下面的LDEasyBox2D中,我把这些基本固定不变的创建过程封装到了一个静态类中:package{ import Box2D.Collision.b2AABB; import Box2D.Collision.转载 2013-06-19 19:02:57 · 1184 阅读 · 0 评论 -
初识Box2D关节b2Joint
在让刚体听我的-鼠标控制中,我们学会了鼠标拖动Box2D刚体,另外我还提到了关节,那么今天我们就来讨论一下Box2D的b2Joint关节类。在医学上,骨与骨之间连接的地方称为关节。在Box2D中,刚体与刚体之间连接的线段叫做关节,不难理解吧。实际上,刚体可以看做是骨头,不过医学上的骨头都是同轴的,也就是说,它们都围着同一点旋转,不信看看你自己的手腕、膝盖、手指,哈哈。如果你发现自己转载 2013-06-23 14:04:04 · 1992 阅读 · 0 评论