axmol/docs/RELEASE_NOTES.md

3.0 KiB

Table of Contents generated with DocToc

Cocos2d-x 3.14 Release Notes

Misc Information

v3.14

New features

  • Adds Spine binary file format support
  • Uses luajit 2.1.0-beta2 for all platforms
  • Adds new actions: ResizeBy and ResizeTo
  • Can disable multi-touch on Android
  • Sprite supports slice9 feature
  • Action adds a method to get the number of actions running on a given node with specific tag
  • Can set Button's title label
  • EditBox adds horizontal text alignment
  • Supports game controller on Mac

Features in detail

Uses luajit 2.1.0-beta2 for all platforms

In previous versions it was not convenient to generate luajit 64bit bytecode. You need to generate the bytecode in real devices, which means you should generate luajit 64bit bytecode on iOS 64bit devices.

Now, you can generate luajit 64bit bytecode on Mac OS X, Windows or Linux, this means a change in how to use luajit for all platforms. If you use the cocos command with -m release, it will generate bytecode automatically, and it will put 64bit bytecode into the 64-bit folder. One exception is that, it doesn't generate luajit bytecode on Linux, we don't know whether to generate 32-bit or 64-bit byte codes. You should generate luajit bytecode yourself by using cocos luacompile command. Please refer to the help information of cocos luacompile -h for detailed usage.

The generated bytecodes architecture are:

Platform generate 32bit luajit bytecode generate 64bit luajit bytecode
iOS yes yes
Android yes if APP_ABI not only includes arm64-v8a, such as APP_ABI := arm64-v8a yes if APP_ABI includes arm64-v8a
Mac not yes
Windows yes no
Linux no no

Sprite supports slice9 feature

Sprite now supports slice9 features. Example:

auto sprite = Sprite::create(...);
// set center rect
// the origin is top-left
sprite->setCenterRectNormalized(Rect(x, y, width, heigh));

More detailed information please refer to the comments of Sprite::setCenterNormalized().

Known issues

lua projects will crash on iOS simulator if using Xcode 8.2+. The issue is caused by luajit. We think it is a bug in Xcode because there it works using Xcode 8.1 or a lower version.

We can not fix it in v3.14, you can track this issue for detailed progress.