描述
开 本: 16开纸 张: 胶版纸包 装: 平装是否套装: 否国际标准书号ISBN: 9787030434340
编辑推荐
《Box2D物理游戏编程》适合零基础、想继续深入学习Box2D物理游戏开发的读者,可作为游戏开发人员的参考书,也可用作高等院校相关专业的教学用书。
内容简介
《Box2D物理游戏编程》系统地梳理学习Box2D物理游戏编程的各个知识点,并通过图解、问答、举例等形式深入浅出地讲解初学者觉得晦涩难懂的概念、术语。后,通过大量的游戏效果模拟,直截了当地介绍相关知识点的实际应用,这些游戏包括《愤怒的小鸟》《叫醒盒子》《超越重力》《星星大盗》《割绳子》等。
《Box2D物理游戏编程》基于Box2D 2.3.0进行讲解,内容包含b2WheelJoint、b2MotorJoint、SetTangentSpeed、Raycast等网络上相对较少的教程,是目前为止市面上全面、详细的Box2D教程。
《Box2D物理游戏编程》基于Box2D 2.3.0进行讲解,内容包含b2WheelJoint、b2MotorJoint、SetTangentSpeed、Raycast等网络上相对较少的教程,是目前为止市面上全面、详细的Box2D教程。
目 录
第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.3.1 圆形
2.3.2 矩形
2.4 b2DebugDraw调试视图
2.5 小结
第3章 刚体属性详解
3.1 b2BodyDef
3.1.1 状态类属性
3.1.2 角度、角速度类属性
3.1.3 坐标、速度类属性
3.1.4 其他属性
3.2 b2FixtureDef
3.2.1 物质特性类属性
3.2.2 碰撞属性
3.2.3 形状
3.2.4 其他属性
3.3 小结
第4章 刚体操作
4.1 LDEasyBox2D工具包
4.2 CreateFixture
4.3 CreateFixture2
4.4 DestroyFixture
4.5 ApplyForce
4.6 Applylmpulse
4.7 ApplyTorque
4.8 GetLocalXXX、GetWorldXXX
4.9 GetMCISS
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
5.2.1 GetFixtureA()和
GetFixtureB()
5.2.2 GetManiFold()
5.2.3 GetWorldManifold()
5.2.4 isTouching()
5.2.5 SetEnabled()和
IsEnabled()
5.2.6 SetSensor()和IsSensor()
5.2.7 SetFriction()
5.2.8 SetRestitution()
5.2.9 SetTangentSpeed()
5.3 b2ContactListener
碰撞侦听器
5.4 游戏中的碰撞处理
5.4.1 万有引力
5.4.2 小鸟冲量
5.4.3 单边平台
5.4.4 碰撞粘贴
5.5 小结
第6章 关节
6.1 认识Box2D关节
6.2 b2MouseJoint鼠标关节
6.3 b2PrismaticJoint位移关节
6.4 b2LineJoint线段关节
6.5 b2RevoIuteJo_nf旋转关节
6.6 b2DistanceJo_nf距离关节
6.7 b2WeldJoint粘贴关节
6.8 b2PuIleyJoint滑轮关节
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 柔体
8.1.1 知识点
8.1.2 简单的柔体
8.1.3 柔体库LiquidFun
8.2 浮力
8.2.1 知识点
8.2.2 水的浮力
8.2.3 水的阻力
8.3 刚体切割
8.3.1 知识点
8.3.2 切割的实现
8.4 关节碰撞
8.4.1 知识点
8.4.2 关节的碰撞与折弯
8.4.3 回摆的处理
8.4.4 游戏交互
8.4.5 完美的绳索
8.5 小结
附录 向量运算
A.1 Box2D中的向量
A.2 AddW
A.3 SubtractW
A.4 Normalize
A.5 NegativeSelf
A.6 Distance
A.7 MuI
A.7.1 MulFV
A.7.2 MulQV
A.7.3 MuIMV
A.7.4 MuIX
A.8 Cross
A.8.1 CFossW
A.8.2 CrossFV
A.8.3 CrossVF
A.9 Dot
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.3.1 圆形
2.3.2 矩形
2.4 b2DebugDraw调试视图
2.5 小结
第3章 刚体属性详解
3.1 b2BodyDef
3.1.1 状态类属性
3.1.2 角度、角速度类属性
3.1.3 坐标、速度类属性
3.1.4 其他属性
3.2 b2FixtureDef
3.2.1 物质特性类属性
3.2.2 碰撞属性
3.2.3 形状
3.2.4 其他属性
3.3 小结
第4章 刚体操作
4.1 LDEasyBox2D工具包
4.2 CreateFixture
4.3 CreateFixture2
4.4 DestroyFixture
4.5 ApplyForce
4.6 Applylmpulse
4.7 ApplyTorque
4.8 GetLocalXXX、GetWorldXXX
4.9 GetMCISS
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
5.2.1 GetFixtureA()和
GetFixtureB()
5.2.2 GetManiFold()
5.2.3 GetWorldManifold()
5.2.4 isTouching()
5.2.5 SetEnabled()和
IsEnabled()
5.2.6 SetSensor()和IsSensor()
5.2.7 SetFriction()
5.2.8 SetRestitution()
5.2.9 SetTangentSpeed()
5.3 b2ContactListener
碰撞侦听器
5.4 游戏中的碰撞处理
5.4.1 万有引力
5.4.2 小鸟冲量
5.4.3 单边平台
5.4.4 碰撞粘贴
5.5 小结
第6章 关节
6.1 认识Box2D关节
6.2 b2MouseJoint鼠标关节
6.3 b2PrismaticJoint位移关节
6.4 b2LineJoint线段关节
6.5 b2RevoIuteJo_nf旋转关节
6.6 b2DistanceJo_nf距离关节
6.7 b2WeldJoint粘贴关节
6.8 b2PuIleyJoint滑轮关节
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 柔体
8.1.1 知识点
8.1.2 简单的柔体
8.1.3 柔体库LiquidFun
8.2 浮力
8.2.1 知识点
8.2.2 水的浮力
8.2.3 水的阻力
8.3 刚体切割
8.3.1 知识点
8.3.2 切割的实现
8.4 关节碰撞
8.4.1 知识点
8.4.2 关节的碰撞与折弯
8.4.3 回摆的处理
8.4.4 游戏交互
8.4.5 完美的绳索
8.5 小结
附录 向量运算
A.1 Box2D中的向量
A.2 AddW
A.3 SubtractW
A.4 Normalize
A.5 NegativeSelf
A.6 Distance
A.7 MuI
A.7.1 MulFV
A.7.2 MulQV
A.7.3 MuIMV
A.7.4 MuIX
A.8 Cross
A.8.1 CFossW
A.8.2 CrossFV
A.8.3 CrossVF
A.9 Dot
在线试读
评论
还没有评论。