axmol/docs/RELEASE_NOTES.md

6.1 KiB

Table of Contents generated with DocToc

Cocos2d-x 3.12 Release Notes

Misc Information

Requirements

Runtime Requirements

  • Android 2.3.3 or newer
  • iOS 5.0 or newer
  • OS X 10.7 or newer
  • Windows 7 or newer
  • Windows Phone 8.1
  • Windows 10 UWP
  • Linux Ubuntu 14.04 or newer
  • Mordern browsers and IE 9+ (On mobile platforms, only iOS and Android 5 activated WebGL support)

Compiler Requirements

  • Xcode 5.1 or newer for iOS or Mac
  • gcc 4.9 or newer for Linux
  • ndk-r10c for Android
  • Visual Studio 2013 or newer for Windows (win32)
  • Visual Studio 2013 update4 or newer for Windows 8.1 universal Apps
  • Visual Studio 2015 or newer and Windows 10.0 (build 10074 or higher) for Windows 10.0 UWP Apps

How to run tests

Cocos Console

You can use Cocos Console command line tool to run the test cases on almost all supported platforms.

In console application:

// Enter cpp test folder
cd tests/cpp-tests
// Or enter js test folder
cd tests/js-tests
// Or enter lua test folder
cd tests/lua-tests

// Compile or run test case
cocos compile -p ios|mac|android|win32|win8_1|metro|web -m debug|release
cocos run -p ios|mac|android|win32|win8_1|metro|web -m debug|release

For example, if you want to run cpp test in release mode on Android, you can use the following command:

cocos run -p android -m release

Mac OSX & iOS

You can run the samples by:

  • Open cocos2d-x/build folder, open cocos2d_test.xcodeproj
  • Select cpp-tests, lua-tests, js-tests for iOS or OS X target in scheme toolbar
  • Click run button

Android

You can run the samples by either using the command-line or Eclipse:

Using command line: Perform the following steps:

$ cd cocos2d-x
$ ./setup.py
$ cd build
$ ./android-build.py cpp-empty-test -p 10
$ adb install cocos2d-x/tests/cpp-empty-test/proj.android/bin/CppEmptyTest-debug.apk

Then click item on Android device to run tests. Available value of -p is the API level, cocos2d-x supports from level 10.

Using Eclipse: Perform the following steps:

$ cd cocos2d-x
$ ./setup.py
$ cd build
$ ./android-build.py cpp-empty-test -p 10

Next:

  • Import cocos2d-x Android project into Eclipse, the path used to import is cocos/2d/platform/android
  • Import cpp-empty-test Android project into Eclipse, the path used to import is tests/cpp-empty-test/proj.android
  • Build cpp-empty-test Android project and run

Windows

You can run the samples by:

  • For win32 project, enter cocos2d-x/build, and open cocos2d-win32.sln
  • For win 8.1 project, enter cocos2d-x/build, and open cocos2d-win8.1-universal.sln
  • For win 10 project, enter cocos2d-x/build, and open cocos2d-win10.sln
  • Select running target
  • Click run button

Linux

You can run the samples by:

$ cd cocos2d-x/build
$ ./install-deps-linux.sh
$ cd ../..

Next:

$ mkdir build
$ cd build
$ cmake ../cocos2d-x
$ make -j4

Then run:

$ cd bin/cpp-empty-test
$ ./cpp-empty-test

How to start a new game

Use the cocos console app to create a new game:

cocos new -l cpp|js|lua MyNewGame

v3.12

Highlights

  • add VR support
  • add Tizen support
  • improve Android performance issue
  • improve web engine performance in WebGL mode
  • support Android obb extension
  • use clang instead of gcc on Android

The main features in detail of Cocos2d-x v3.12

VR support

TBD

Tizen support

TBD

improve Android performance

We found cocos2d-x has performance on some Android devices. It is because cocos2d-x creates a big map buffer by default and fill the map buffer with actual data, which is less then map buffer size. On some Android devices, it will transfer as many data as the map buffer size which causes performance issue.

More detail information and discussion can refer to the issue.

improve web engine performance in WebGL mode

Web engine performance in WebGL mode is obviously improved in this version. The rendering performance, cpu usage and memory usage are optimized.

rendering peformance

cpu-usage

memory-usage

use clang on Android

As google deprecated gcc since NDK r11, so cocos2d-x changes to use clang too. And we suggest using latest NDK version if possible.

Other changes

You can also take a look at the full changelog.