2015-01-15 08:59:03 +08:00
<!-- START doctoc generated TOC please keep comment here to allow auto update -->
<!-- DON'T EDIT THIS SECTION, INSTEAD RE - RUN doctoc TO UPDATE -->
**Table of Contents** *generated with [DocToc](https://github.com/thlorenz/doctoc)*
2016-06-27 13:37:38 +08:00
- [Cocos2d-x 3.12 Release Notes ](#cocos2d-x-312-release-notes )
2015-01-15 08:59:03 +08:00
- [Misc Information ](#misc-information )
- [Requirements ](#requirements )
- [Runtime Requirements ](#runtime-requirements )
- [Compiler Requirements ](#compiler-requirements )
- [How to run tests ](#how-to-run-tests )
2015-07-01 18:44:15 +08:00
- [Cocos Console ](#cocos-console )
2015-01-15 08:59:03 +08:00
- [Mac OSX & iOS ](#mac-osx-&-ios )
- [Android ](#android )
- [Windows ](#windows )
- [Linux ](#linux )
- [How to start a new game ](#how-to-start-a-new-game )
2016-06-27 13:37:38 +08:00
- [v3.12 ](#v312 )
- [Highlights ](#highlights )
- [The main features in detail of Cocos2d-x v3.12 ](#the-main-features-in-detail-of-cocos2d-x-v312 )
- [VR support ](#vr-support )
- [Tizen support ](#tizen-support )
- [improve Android performance ](#improve-android-performance )
- [improve web engine performance in WebGL mode ](#improve-web-engine-performance-in-webgl-mode )
2016-07-01 17:21:26 +08:00
- [Use clang on Android ](#use-clang-on-android )
2015-08-24 09:40:59 +08:00
- [Other changes ](#other-changes )
2015-01-15 08:59:03 +08:00
<!-- END doctoc generated TOC please keep comment here to allow auto update -->
2016-06-27 13:37:38 +08:00
# Cocos2d-x 3.12 Release Notes #
2015-07-01 18:44:15 +08:00
2014-01-07 08:23:06 +08:00
# Misc Information
2015-03-13 17:18:29 +08:00
* [Full Changelog ](https://github.com/cocos2d/cocos2d-x/blob/v3/CHANGELOG )
2014-01-07 08:23:06 +08:00
# Requirements
## Runtime Requirements
2016-07-06 14:39:40 +08:00
* Android 2.3.3+
2014-01-07 08:23:06 +08:00
* iOS 5.0 or newer
* OS X 10.7 or newer
* Windows 7 or newer
2015-04-29 13:39:04 +08:00
* Windows Phone 8.1
2015-08-24 09:40:59 +08:00
* Windows 10 UWP
2014-07-06 20:53:17 +08:00
* Linux Ubuntu 14.04 or newer
2016-07-07 22:59:57 +08:00
* Modern browsers and IE 9+ (On mobile platforms, only iOS and Android 5 activated WebGL support)
2014-01-07 08:23:06 +08:00
## Compiler Requirements
2014-07-16 11:26:21 +08:00
* Xcode 5.1 or newer for iOS or Mac
2014-07-06 20:53:17 +08:00
* gcc 4.9 or newer for Linux
2016-07-06 14:39:40 +08:00
* ndk-r11+ for Android
2015-07-15 14:11:59 +08:00
* Visual Studio 2013 or newer for Windows (win32)
2015-08-12 13:02:35 +08:00
* Visual Studio 2013 update4 or newer for Windows 8.1 universal Apps
2016-04-29 03:17:55 +08:00
* Visual Studio 2015 or newer and Windows 10.0 (build 10074 or higher) for Windows 10.0 UWP Apps
2014-01-07 08:23:06 +08:00
2014-04-21 14:50:27 +08:00
## How to run tests
2014-03-04 18:15:30 +08:00
2015-07-01 18:44:15 +08:00
### Cocos Console
You can use [Cocos Console ](www.cocos2d-x.org/wiki/Cocos2d-console ) command line tool to run the test cases on almost all supported platforms.
In console application:
```
// Enter cpp test folder
2015-07-14 08:44:44 +08:00
cd tests/cpp-tests
2015-07-01 18:44:15 +08:00
// Or enter js test folder
2015-07-14 08:44:44 +08:00
cd tests/js-tests
2015-07-01 18:44:15 +08:00
// 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
```
2014-03-04 18:15:30 +08:00
### Mac OSX & iOS
2016-04-29 03:17:55 +08:00
You can run the samples by:
2014-03-04 18:15:30 +08:00
2016-04-29 03:17:55 +08:00
* 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
2014-03-04 18:15:30 +08:00
### Android
2016-04-29 03:17:55 +08:00
You can run the samples by either using the command-line or Eclipse:
2014-03-04 18:15:30 +08:00
2014-03-07 08:37:33 +08:00
**Using command line:**
2016-04-29 03:17:55 +08:00
Perform the following steps:
2014-03-04 18:15:30 +08:00
2015-01-06 09:55:44 +08:00
$ 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
2015-01-15 06:51:42 +08:00
2016-07-06 22:15:56 +08:00
Then click item on Android device to run tests. Available value of `-p` is the API level, Cocos2d-x supports from level 10.
2014-03-04 18:15:30 +08:00
2014-03-07 08:37:33 +08:00
**Using Eclipse:**
2016-04-29 03:17:55 +08:00
Perform the following steps:
2014-03-04 18:15:30 +08:00
2015-01-06 09:55:44 +08:00
$ cd cocos2d-x
$ ./setup.py
$ cd build
$ ./android-build.py cpp-empty-test -p 10
2015-01-15 06:51:42 +08:00
2016-04-29 03:17:55 +08:00
Next:
2014-03-04 18:15:30 +08:00
2016-07-06 22:15:56 +08:00
* Import Cocos2d-x Android project into Eclipse, the path used to import is __cocos/2d/platform/android__
2016-04-29 03:17:55 +08:00
* Import `cpp-empty-test` Android project into Eclipse, the path used to import is __tests/cpp-empty-test/proj.android__
2014-03-14 15:01:11 +08:00
* Build `cpp-empty-test` Android project and run
2014-03-04 18:15:30 +08:00
### Windows
2016-04-29 03:17:55 +08:00
You can run the samples by:
2014-03-04 18:15:30 +08:00
2016-04-29 03:17:55 +08:00
* 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__
2015-07-01 18:44:15 +08:00
* Select running target
2014-03-04 18:15:30 +08:00
* Click run button
### Linux
2016-04-29 03:17:55 +08:00
You can run the samples by:
2014-03-04 18:15:30 +08:00
2015-01-06 09:55:44 +08:00
$ cd cocos2d-x/build
$ ./install-deps-linux.sh
$ cd ../..
2015-01-15 06:51:42 +08:00
2016-04-29 03:17:55 +08:00
Next:
2014-03-04 18:15:30 +08:00
2015-01-06 09:55:44 +08:00
$ mkdir build
$ cd build
$ cmake ../cocos2d-x
$ make -j4
2015-01-15 06:51:42 +08:00
2016-04-29 03:17:55 +08:00
Then run:
2014-03-04 18:15:30 +08:00
2015-01-06 09:55:44 +08:00
$ cd bin/cpp-empty-test
$ ./cpp-empty-test
2015-01-15 06:51:42 +08:00
2014-03-06 14:44:33 +08:00
## How to start a new game
2016-04-29 03:17:55 +08:00
Use the __cocos__ console app to create a new game:
2014-12-31 18:15:27 +08:00
2015-04-01 16:40:40 +08:00
```
2015-08-24 09:40:59 +08:00
cocos new -l cpp|js|lua MyNewGame
2015-04-01 16:40:40 +08:00
```
2015-03-13 15:08:09 +08:00
2016-06-27 13:37:38 +08:00
# v3.12
2015-04-22 14:59:22 +08:00
2016-06-27 13:37:38 +08:00
## Highlights
2015-08-24 09:40:59 +08:00
2016-07-01 17:21:26 +08:00
* add VR support in experimental
2016-06-27 13:37:38 +08:00
* add Tizen support
* improve Android performance issue
* improve web engine performance in WebGL mode
* support Android obb extension
2016-07-06 14:40:25 +08:00
* use clang instead of gcc on Android, use NDK r11+
2015-11-06 18:38:09 +08:00
2016-06-27 13:37:38 +08:00
## The main features in detail of Cocos2d-x v3.12
2015-11-06 18:38:09 +08:00
2016-06-27 13:37:38 +08:00
### VR support
2016-07-06 22:15:56 +08:00
VR Support is now available! Currently there is support for __Google Cardboard__ , __Oculus Rift__ , __Samsung Gear__ and __Deepoon E2__ . Also provided is a *generic* __VR__ renderer to help with testing. It should not be used to trust deploying a production __VR__ game. In usual Cocos2d-x fashion it is very easy to get started with an easy to understand API. Read our chapter in the [Programmers Guide ](http://cocos2d-x.org/docs/programmers-guide/vr/index.html ) for more information.
2015-11-06 18:38:09 +08:00
2016-06-27 13:37:38 +08:00
### Tizen support
2016-06-29 04:55:59 +08:00
You can now develop for the __Tizen__ mobile platform. The latest __2.4__ SDK is supported. Tizen development uses it's own uniqie IDE as well as a simulator for testing applications. For setup instructions please read our [documentation ](http://cocos2d-x.org/docs/installation/Tizen/ ).
2016-05-04 11:54:38 +08:00
2016-07-06 22:15:56 +08:00
### Improve Android performance
2016-05-04 11:54:38 +08:00
2016-07-06 22:15:56 +08:00
Thank you to our users for helping diagnose performance issues on some Android devices. It is because Cocos2d-x creates a big map buffer by default and fills the map buffer with actual data, which is less than the map buffer size. On some Android devices, it will transfer as much data as the map buffer size which causes performance issue.
2016-05-04 11:54:38 +08:00
2016-06-27 13:37:38 +08:00
More detail information and discussion can refer to [the issue ](https://github.com/cocos2d/cocos2d-x/issues/15652 ).
2016-05-16 14:01:55 +08:00
2016-07-06 22:15:56 +08:00
### Improve web engine performance in WebGL mode
2016-05-16 14:01:55 +08:00
2016-07-06 18:02:25 +08:00
The web engine is receiving a big performance upgrade. The WebGL renderer have been completely refactored from the ground up. This means improved rendering and a reduced memory footprint.
2016-06-28 17:21:43 +08:00
2016-07-07 22:59:57 +08:00
![rendering performance ](https://raw.githubusercontent.com/minggo/Pictures/master/web-performance-improve/adverage-time-per-frame.png )
2016-06-28 17:21:43 +08:00
![cpu-usage ](https://raw.githubusercontent.com/minggo/Pictures/master/web-performance-improve/cpu-usage.png )
![memory-usage ](https://raw.githubusercontent.com/minggo/Pictures/master/web-performance-improve/memory-usage.png )
2016-05-16 14:01:55 +08:00
2016-06-29 04:55:59 +08:00
### Use clang on Android
2016-07-06 22:15:56 +08:00
[Google deprecated gcc starting in NDK r11 ](https://developer.android.com/ndk/downloads/revision_history.html ), Cocos2d-x now uses clang. We suggest using the NDK r11c.
2016-07-06 14:35:15 +08:00
We found an issue that, if using NDKr 10c + clang, then `Node::enumerateChildren()` will crash on Android.
2016-07-06 22:15:56 +08:00
2016-04-27 15:01:02 +08:00
## Other changes
2016-06-29 04:55:59 +08:00
View our [full changelog ](https://github.com/cocos2d/cocos2d-x/blob/v3/CHANGELOG ).