9RIA-ladeng6666 发表于 2018-2-5 17:09:57

【9RIA—ladeng6666】—【Box2D物理游戏编程基础】试读

转载:9RIA游戏开发者社区(天地会)
作者:ladeng6666(拉登大叔)
作者博客:http://www.ladeng6666.com/blog/


【Box2D系列教程-导航帖】—拉登大叔出品(总贴)


传送门:http://bbs.9ria.com/thread-432833-1-1.html
当当购买地址:http://product.dangdang.com/23671478.html
京东购买地址:http://item.jd.com/1510384569.html
配套源文件地址:http://www.ladeng6666.com/blog/2 ... e-design-via-box2d/
读者讨论群:334059644。
拉登大叔为你细心讲解!欢迎大家选购!谢谢支持!



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

基于ladeng6666.com原有的教程,加之国内外优秀的文章,我将Box2D的各方面知识点,由简到繁的进行了融汇贯通。经过了近半年的努力,终于完成了《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教程,目前该书在出版社的审校过程中,预计明年年初出版,以下是《Box2D物理游戏编程基础》的目录,大家先睹为快:


前言         
   A.1 是否需要物理知识   
   A.2 适用对象   
   A.3 需要什么   
   A.4 阅读规范   
1 认识Box2D世界         
   1.1 什么是Box2D引擎   
   1.2 创建Box2D世界   
          1.2.1 重力   
          1.2.2 创建世界   
   1.3 开启Box2D模拟   
   1.4 小结   
2.认识刚体         
   2.1 什么是刚体   
   2.2创建刚体   
   2.3 认识刚体形状   
          圆形
          矩形
   2.4 b2DebugDraw调试视图   
   2.5小结   
3.刚体属性详解         
   3.1 b2BodyDef   
          状态类属性
          角度、角速度类属性
          坐标、速度类属性
          其他属性
   3.2 b2FixtureDef   
          物质特性类属性
          碰撞属性
          形状
          其他属性
   3.3 小结   
4.刚体操作         
   4.1 LDEasyBox2D工具包   
   4.2 CreateFixture   
   4.3 CreateFixture2   
   4.4 DestroyFixture   
   4.5 ApplyForce   
   4.6 ApplyImpulse   
   4.7 ApplyTorque   
   4.8 GetLocalXXX、GetWorldXXX   
   4.9 GetMass   
   4.10 SetMassData   
   4.11 Split   
   4.12 GetAABB   
   4.13 QueryAABB   
   4.14 QueryShape   
   4.15 RayCast   
   4.16 小结   
5.碰撞处理         
   5.1 认识碰撞   
   5.2 b2Contact   
          GetFixtureA()和GetFixtureB()
          GetManiFold()
          GetWorldManifold()
          isTouching()
          SetEnabled()和IsEnabled()
          SetSensor()和IsSensor()
          SetFriction()
          SetRestitution()
          SetTangentSpeed()
   5.3 b2ContactListener碰撞侦听器   
   5.4 游戏中的碰撞处理   
          万有引力
          小鸟冲量
          单边平台
          碰撞粘贴
   5.5 小结   
6.关节         
   6.1 认识Box2D关节   
   6.2 b2MouseJoint鼠标关节   
   6.3 b2PrismaticJoint位移关节   
   6.4 b2LineJoint线段关节   
   6.5 b2RevoluteJoint旋转关节   
   6.6 b2DistanceJoint距离关节   
   6.7 b2WeldJoint粘贴关节   
   6.8 b2PulleyJoint滑轮关节   
   6.9 b2FrictionJoint 摩擦关节   
   6.10 b2GearJoint 齿轮关节   
   6.11 b2WheelJoint中轴关节   
   6.12 b2RopeJoint绳索关节   
   6.13 b2MotorJoint马达关节   
   6.14 综合示例   
   6.15 小结   
7.Box2D工具         
   7.1 PhysicsEditor   
   7.2 RUBE   
   7.3 b2Separator   
   7.4 小结   
8. 游戏中的Box2D应用         
   8.1 柔体   
          相关知识点
          简单的柔体
          柔体库LiquidFun
   8.2 浮力   
          相关知识点
          水的浮力
          水的阻力
   8.3 刚体切割   
          相关知识点
          切割的实现
   8.4 关节碰撞   
          相关知识点
          关节的碰撞与折弯
          回摆的处理
          游戏交互
          完美的绳索
   8.5 小结   
附录:向量运算         
   A.1 Box2D中的向量   
   A.2 AddVV   
   A.3 SubtractVV   
   A.4 Normalize   
   A.5 NegativeSelf   
   A.6 Distance   
   A.7 Mul   
          MulFV
          MulQV
          MulMV
          MulX
   A.8 Cross   
   CrossVV   
   CrossFV   
   CrossVF   
   A.9 Dot


如果你对本书感兴趣,想进一步了解,不妨下载前3章试读章节(已上传至我的微盘),看看这本书是否符合你的口味。
《Box2D物理游戏编程基础》试读样章下载


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


下面是书中的几个游戏示例,点击图片查看动态效果
attach://798.swfb2WheelJoint关节制作的小车,左右键控制小车前后移动,上下键控制小车前倾后仰

attach://799.swfSwindler游戏原型,看下上下键收放绳索,左右键旋转舞台

attach://800.swf
Beyond Gravity游戏原型,点击鼠标是矩形在两个原型之间跳跃

页: [1]
查看完整版本: 【9RIA—ladeng6666】—【Box2D物理游戏编程基础】试读

感谢所有支持论坛的朋友:下面展示最新的5位赞助和充值的朋友……更多赞助和充值朋友的信息,请查看:永远的感谢名单

SGlW(66139)、 anghuo(841)、 whdsyes(255)、 longxia(60904)、 囫囵吞澡(58054)

下面展示总排行榜的前3名(T1-T3)和今年排行榜的前3名的朋友(C1-C3)……更多信息,请查看:总排行榜今年排行榜

T1. fhqu1462(969)、 T2. lwlpluto(14232)、 T3. 1367926921(962)  |  C1. anghuo(147)、 C2. fdisker(27945)、 C3. 囫囵吞澡(58054)