《Box2D物理游戏编程初学者指南》源文件!

1 图书资源

本书相关资源

2 图书简介

出版啦,出版啦,《Box2D物理游戏编程初学者指南》出版啦!

不信,你看!

Box2D_ads

感谢大家对拉登大叔Box2D物理教程的支持,也是在大家的支持之下,我斗胆有了将教程整理出书的想法。

基于ladeng6666.com原有的教程,加之国内外优秀的文章,我将Box2D的各方面知识点,由简到繁的进行了融汇贯通。经过了近半年的努力,终于完成了《Box2D物理游戏编程基础》的编写。

如果你对本书感兴趣,想进一步了解,不妨下载前3章试读章节(已上传至我的微盘),看看这本书是否符合你的口味。

《Box2D物理游戏编程基础》试读样章,点击下载

实际上,书中的内容基于本站教程优化了很多,也是我毛遂自荐向大家极力推荐的Box2D教程书籍,原因主要总结如下:

  1. 书中摒弃了本站教程中相对口语化的文字,阅读起来根据“朗朗上口”。
  2. 每一节的知识点都通过实际的示例进行了动态的讲解,让读者可以视觉直接感受“晦涩难懂”的专业词语和API。
  3. 书中通过大量的游戏效果,直截了当的介绍相关知识点的实际应用,这些游戏包括:《愤怒的小鸟(Angry Bird)》、《叫醒盒子(Wake up the Box)》、《超越重力(Beyond Gravity)》、《星星大盗(Swindler)》、《神奇的阿力(Amazing Alex)》、《99砖块之巫师学院大师(99 bricks wizard academy)》、《图腾破坏神》、《割绳子(Cut The Rope)》等等
  4. 书中的知识点基于Box2D 2.3.0进行讲解,内容包含如b2RopeJoint、b2WheelJoint、b2MotorJoint、SetTangentSpeed等网络上相对较少的教程。

可以说是截止到该博文发布,市面上最全面、最详细的Box2D教程。

样章的版面没有进行细致的整理,大家先凑合着看,相信正式的出版后,肯定能带来更好的阅读体验。既然都下载了,不妨也顺便关注我的微博@ladeng6666,我会尽力为大家带来更多更好的物理引擎教程,希望大家能够继续关注我的网站和微博,再次感谢各位网友支持!

下面是书中的几个游戏示例,点击图片查看动态效果

b2WheelJoint

b2WheelJoint关节制作的小车,左右键控制小车前后移动,ZX键控制小车前倾后仰,向下键刹车

swindler

Swindler游戏原型,看下上下键收放绳索,左右键旋转舞台

beyondGravity

Beyond Gravity游戏原型,点击鼠标是矩形在两个原型之间跳跃

联系作者

公众号:拉小登 | 微博:拉登Dony | B站:拉小登Excel

43 Replies to “《Box2D物理游戏编程初学者指南》源文件!”

  1. 你好呀,谢谢你的分享,我有两个问题:
    1. 工程文件用什么导入? Flash Builder 吗? 怎么会每章都有个.DS_Store文件?在工程下会有个[source path] lib文件夹,但是它读不出来要import的东西呀?
    2. 前3章试读章节?请问你的网盘链接是?

  2. Hi修拉:谢谢你的关注,我在微博里已经回复了你的问题,具体如下:
    1.是flash builder的AS项目文件。.DS_Store是我在Mac上创建的项目,自动生成的,没用,可以删除。lib里的类库,需要在项目文件的属性中导入。2.试读章节连接,请打开文中的连接查看。或点击 http://vdisk.weibo.com/u/1274726127

  3. 已经下载看了,谢谢!提一些感想吧:
    1. 祝贺你当上了父亲
    2. 由于google被封了,很多资料找不到,你写的书还是比较适合入门的。但是我觉得写作水平跟黑羽的《AS3殿堂之路》比起来,还是有一段差距,我认为你需要改改再出版。只看PDF不够呀,我还得看你的《牛顿的苹果》学起

  4. 主要增加了RopeJoint、WheelJoint等多个关节、增加了b2Contact在碰撞时修改弹性系数、摩擦力的功能,增加了碰撞面切向速度的API等等,晚上我们整理一下,发个文章出来

  5. 噢,我记错了,不是《牛顿的苹果》,而是《掉落的苹果》。我说几点我的看法:
    1. 文件命名:一般来说,名字开始的那几个字母根能让人理解和记忆,为了让读者一看这个as是关于什么的,~demo会比Whatis~要好

    2. 缺乏手打代码的训练:我是PDF跟网上的教程结合来看,光看PDF还不是很理解。工程里有各个flash展示了各种属性的不同,但在前三章里缺乏这些属性是怎么使用的例子,只是一些文字上的讲述。而网上的教程有这个功能的完整代码。虽然下载有源文件,但一些简单的功能应该独立的把整个代码写进书中。

    3. 不宜一开始就封装好LDEasyBody。我觉得刚开始还是把基础打好,代码该些几行就写够。而在最后用2~3章说明一个大的项目这么做很麻烦,可以把creatWorld(), creatBody() … 封装起来,结合一些小案例,比如愤怒的小鸟之类的。(我本来是有AS3基础的,但你从第一章就用了LDEasyBody,我还真不知所以然

  6. 感谢关注,Nape引擎的书籍整理已经列入我今年的工作计划中了,请关注我的微博@ladeng6666,届时我会在微博上发布最新消息,谢谢!

  7. 书买了,写得非常不错,详细易懂,介绍中没有吹牛。试着学了一些,比较顺利,但是现在有一个很大的问题,每次我在updateWorld方法中使用遍历刚体:
    for(var bb:b2Body = this.world.GetBodyList();bb;bb.GetNext()){
    ……
    }
    每次发布就程序没有响应了,是不是运算量太大,导致算不过来?那也不应该啊,我的电脑8核的啊,如果这都算不过来,那???
    忘拉登能给解决方案!(我不用GetBodyList()的遍历,其它变通方法没问题)

  8. 你可以试着将var bb:b2Body = this.world.GetBodyList();放在for循环外面。另外for循环的第3个参数应该不对,将其改为bb = bb.GetNext()后,再试着编译一下面,看看有没有改善!

  9. 谢谢拉登,问题已经解决,就出在bb = bb.GetNext()身上。我再追问一个问题,用什么方法来更好的高效模拟水流?AS3中

回复 翼飞

您的电子邮箱地址不会被公开。 必填项已用*标注