功能预告:Creator 1.5物理引擎集成
2017.03.13 by cocos
版本更新

很多人问,Creator里面怎么做碰撞检测?标准答案是用1.2版开始提供的Collider碰撞组件

但这终究只是碰撞检测,如果想要做复杂的物理效果,就需要等下个版本1.5里面集成的物理引擎了。

在Creator 1.5里面,我们将会把Box2D集成到编辑器里,大家今后可以方便快捷的拖拖拽拽、进行各种物理属性编辑啦!

image_1489375934-164201
image_1489375935-880975

而对于每帧回调里不得不编码的部分,我们在大部分物理组件的API里保留了Box2D原API风格,方便本已熟悉Box2D的朋友上手。

更方便的是,之前Cocos2d-x + Box2D开发中,经常需要关注从物理世界到Cocos2d世界的坐标转换。而Cocos Creator的物理集成则能够实现自动转换,大家只需关注熟悉的像素坐标即可。

比如,通过设置对RigidBody的力,我们可以模拟一个不同的重力系统。

gravity-radial-%e4%b8%8b%e5%8d%883-25-06

v1.5 版本的物理系统也添加了很多组件供使用。

  • 支持Joint 类型 :

- Disance Joint

- Motor Joint

- Prismatic Joint

- Revolute Joint

- Rope Joint

- Weld Joint

- Wheel Joint

  • 支持Collider 类型 :

- Polygon Collider

- Chain Collider

- Box Collider

- Circle Collider

  • 支持RigidBody 类型 :

 - Static

 - Dymanic

 - Kinematic

 - Animated

Polygon Collider和Chain Collider都支持在编辑器中根据Sprite组件提供的图片自动识别轮廓、并创建顶点,这样能够极大地提高开发效率。如果Polygon Collider的顶点连接成凹边形,它还会自动分割顶点为多个凸边形。

auto-polygon-%e4%b8%8b%e5%8d%883-14-57

额外支持的Animated类型是为了通过动画控制RigidBody而设定。

animated-%e4%b8%8b%e5%8d%883-14-55

物理系统支持的回调方式和之前Collisiton System回调方式基本一致。不过物理系统的回调包含更多信息,用户可以借此基础开发更多酷炫的产品。

1  获取碰撞点

manifold-%e4%b8%8b%e5%8d%883-25-06

2  通过回调设置是否启用contact,可以很容易做到One-Side-Platform

one-side-platform-%e4%b8%8b%e5%8d%883-25-06

同时物理系统也支持了raycast快速查找物体

ray-cast-reflection-%e4%b8%8b%e5%8d%883-25-06

最后再放两个Demo

blob-%e4%b8%8b%e5%8d%883-14-58
arrow-%e4%b8%8b%e5%8d%883-14-56

功能预告就先放送到这儿啦,别急,Cocos Creator v1.5还在研发当中。对于v1.5 版本,你们是否有更多的期待或者是宝贵的建议呢,欢迎留言共同探讨!