cocos2dx3.x中使用物理引擎还是挺方便的

世界杯期间做个接地气的

平时创建场景

改成

这样的场景就是带物理世界的场景了

设置重力

声明层

声明一个函数,作用是点一下屏幕在当前位置丢下一个足球

声明一个触摸监听器,并和层绑定

创建物理世界边界

层添加到场景里

这样就算完成了,点一下出现一个足球还会和其他足球碰撞

错误代码如下

此时layer1被释放

经检查setContainer发现里面有一句this->removeAllChildrenWithCleanUp(true)

把layer1和layer2的添加顺序置换后问题消失

在实现运动中,常常需要实现一些加速度或者减速度的效果

Cocos2d-X引擎为我们提供了相应的实现接口,这样就不用再用原来的公式计算方法来实现加减速度的效果.

Ease系列的方法改变了运动的速度,但是并没有改变总体时间.如果整个动作持续5s,那么整个时间仍然会持续5s.

这些动作可以分成三类:

  • In actions:action(开始的时候加速)
  • Out action:action(结束的时候加速)
  • InOut actions:action(开始呵结束的时候加速)

CCActionEase有很多子类,根据不同的缓冲公式来模拟加减速过程.缓冲动作的具体内容如下:

  1. 指数缓冲:分别为CCEaseExponentialIn,CCEaseExponentialOut,CCEaseExponentialInOut
  2. 赛因缓冲:分别为CCEaseSineIn,CCEaseSineOut,CCEaseSineInOut
  3. 跳跃缓冲:分别为CCEaseBounceIn,CCEaseBounceOut,CCEaseBounceInOut
  4. 弹性缓冲:分别为CCEaseElasticIn,CCEaseElasticOut,CCEaseElasticInOut
  5. 回震缓冲:分别为CCEaseBackIn,CCEaseBackOut,CCEaseBackInOut

原文http://cn.quick-x.com/?p=1539 是基于quick-x的

为了方便在我们工程中使用,我把它写成了cocos2dx的,并增加了吞噬事件的开关

 

 

BUG表现为,cocos2dx的工程下,在能输入文字的地方,点击iOS键盘上的"话筒"按钮,进行听写,此时APP直接崩溃

 

解决方法:

在CCDirectorCaller.mm文件里修改 doCaller方法

 

添加头文件

 

 

再次实验后问题消失

环境:cocos2dx 2.1rc0-x-2.1.4
ios7.0.6

https://github.com/boyu0/cocos2d-x/commit/c3778d8123537f0e991e98c2d89d3e577e3120f1

编辑器

Sublime Text 3
令人爱不释手的编辑器,强大的插件系统,可以令其变身成IDE
Cocos Code IDE
触控官方的IDE,1.x基于Eclipse的LDT插件修改,比较笨重,经常菊花,2.x基于IDEA修改,然而已经弃坑
好处是可以Debug

资源管理

TexturePacker
节省图片占用大小,优化内存占用,减少渲染次数

GlyphDesigner (Mac Only)
无需庞大的PS,轻松做出漂亮的美术字

TiledMap
强大的瓦片地图编辑器,支持平面和斜45度角的瓦片地图

场景编辑器

CocosBuilder (Mac Only开源)
cocos2d-iphone时代的场景编辑器,比较顺手好用

Cocos Studio
触控旗下的场景编辑器,功能强大,与版本结合紧密

文档工具

Dash
文档查看工具,这个工具是越来越强大,目前支持查看不同版本的文档