axmol/CHANGELOG

2377 lines
169 KiB
Plaintext
Raw Normal View History

adxe-1.0 ??
2021-12-17 11:54:45 +08:00
- [HIGHLIGHT] Implement Windows WebView using WebView2 Edge Chromium, thanks to @rh101
- [HIGHLIGHT] Windows x64 build support
- [HIGHLIGHT] Support custom texture atlas formats, thanks to @rh101
- [HIGHLIGHT] Downloader realtime md5 checksum calculation support
- [HIGHLIGHT] Decompress astc parallel support
- [HIGHLIGHT] Reimplement HttpClient based on yasio for concurrent http request support
- [HIGHLIGHT] Improve Lua RTTI performance and less memory cost
- [HIGHLIGHT] Virtual File System support, thanks to @rh101
- [HIGHLIGHT] Refactor lua loader, speed up 30%+
- [HIGHLIGHT] Update plainlua version to 5.4.3
- [HIGHLIGHT] Use Openal-Soft for all platform
- [HIGHLIGHT] Refactor UserDefault with mio, speed up 100x+
- [HIGHLIGHT] Implement all .wav formats supported by Openal-Soft, such as MS-ADPCM, ADPCM
- [HIGHLIGHT] Use modern GL loader Glad
- [HIGHLIGHT] Google angle renderer backend support
- [HIGHLIGHT] Update codebase to C++ 17 standard
- [HIGHLIGHT] Remove tinyxml2
- [HIGHLIGHT] Use fast pugixml
- [HIGHLIGHT] Spine-3.6~4.0 support
- [HIGHLIGHT] ASTC 4x4/6x6/8x8 support (if hardware decoder not present, use software decoder)
- [HIGHLIGHT] ETC2 RGB/RGBA support (if hardware decoder not present, use software decoder)
- [HIGHLIGHT] ImGui integrated for PC platforms
- [HIGHLIGHT] Extension FairyGUI support
- [HIGHLIGHT] Use curl for transferring data with URL syntax
- [HIGHLIGHT] Modularize all optional extension, move from engine core to folder extensions
- [HIGHLIGHT] Improve thirdparty libs building, 99% of them build from sources or github actions with latest toolchain, see also: `adxeproject/buildware`
- [HIGHLIGHT] Add new API `Director::setChildrenIndexerEnabled` for speed up getChildByTag & getChildByName support
- [HIGHLIGHT] Add new API `FontFreeType::setStreamParsingEnabled` for stream parsing support, it's very useful for reduce memory cost when load large .ttf font file
- [HIGHLIGHT] Remove all unnecessary `std::nothrow` stubs
- [NEW] Add int64_t/uint64_t support for `cocos2d::Value`
- [FIX] Fix uniform location mismatch when more than 1 spine with different shaders
- [FIX] Fix imgui draw frame cause afterimage when game scene nothing to draw
- [FIX] Set global Z value of label debug layer to be the same as the parent label to fix display issue
- [FIX] Use TTF scaled metrics to calculate line height, thanks to @rh101
- [FIX] Fix Memory leak in ShaderModuleGL::getErrorLog(), thanks to @Xrysnow
- [FIX] Fix console output text encoding for win32
- [FIX] Fix charset process for fontName on win32
- [FIX] Fix Crash on ParticleBatchNode::updateProgramStateTexture()
- [FIX] Fix Crash on SpriteBatchNode::appendChild when CC_SPRITE_DEBUG_DRAW==1
- [FIX] Fix Lua can't get `unsigned char` or `unsigned int` values of `ValueMap`
- [FIX] Fix crash on AudioEngine::end after the `Director` was destroyed
- [FIX] Fix font atlas will leak when it does not exist in the atlas cache, thanks to @rh101
- [FIX] Fix ScrollView shows incorrect position in vertical direction some time, thanks to @wzhengsen
- [REFINE] CCValue move construct and assign with std::string support
- [REFINE] Improve windows dev workflow, use working directory instead copy resources to build binary directory
- [REFINE] Add lua debug project file to lua project template
- [REFINE] Remove lua 64bit spec search path, since we can compile compatible bytecode for both plainlua and luajit
- [REFINE] Put stats labels to safe origin to make sure we can see it integral at some mobile device
- [REFINE] Improve cmake scripts
- [REFINE] Replace deprecated repo `jcenter` with `mavenCentral`
- [REFINE] Lua-5.4 compatible
- [REFINE] Improve cmdline-tools
- [REFINE] Ensure label underline node has the same global Z value as the label node to fix visibility issue when global Z is not 0
- [REFINE] Improve android astc support check
- [REFINE] Improve the "Physics part" (#379), thanks to @aismann
- [REFINE] Rename command line to to `adxe`
- [REFINE] Update imgui to 1.84 WIP
- [REFINE] Rename thirdparty folder `external` to `thirdparty`
- [REFINE] Building plainlua as dll on windows always for debugger happy to debug app quickly
- [REFINE] Fix some audio test case can't hear sound
- [REFINE] Avoid OS_WINDOWS conflict with system macro
- [REFINE] Update OpenSSL to v3.0.1
- [REFINE] Update FreeType to latest
- [REFINE] Use Freetype SDF render when label distance field enabled
- [REFINE] Always enable string pooling for msvc on cmake
- [REFINE] Change DrawNode api color parameters from `Color4F` to low `Color4B`
- [REFINE] Improve DrawNode GC allocs
cocos2d-x-4.0 Dec.3 2019
2019-11-23 20:27:39 +08:00
[HIGHLIGHT] Support metal
[HIGHLIGHT] Use CMake for all platforms
[REFINE] Update glfw to 3.3
[REFINE] Update minizip to 1.2
[CHANGE] remove deprecated functions
[CHANGE] remove h5 engine and JSB
[CHANGE] remove tiff
[CHANGE] remove `experimental` namespace
[FIX] system font can not work correctly on macOS 15
[FIX] TextField can not work if using system input to get Chinese characters with iOS13
[FIX] UIWebView uses WKWebView instead
[FIX] VideoPlayer uses AVPlayerController instead
[FX] lua crashes on 64it devcices
2019-11-23 20:27:39 +08:00
cocos2d-x-3.17 May.21 2018
[HIGHLIGHT] Android: support Android Studio 3.0, NDK 16
[HIGHLIGHT] iOS: support full screen for iPhone X and uses Storyboard for launch screen
[HIGHLIGHT] 3rd: upgrade Spine runtime to v3.6.39
[HIGHLIGHT] 3rd: upgrade GLFW to 3.2.1
[HIGHLIGHT] CMake support all platforms, and support prebuilt engine libs
[NEW] Engine: multisampling support
[NEW] Label: support non-breaking characters
[NEW] Label: support belarusian language
[NEW] UI: add blend function for Text
[NEW] UI: add ScrollView API to stop overall scroll
[NEW] iOS: add auto hide home indicator for iPhone X
[NEW] iOS: provides an interface for getting SafeArea
[NEW] Android: add one more android return button types
[REFINE] Engine: support reading object.rotation attribute in TMX
[REFINE] Engine: make the sort behavior is same on 32bit and 64bit
[REFINE] Engine: static analize fixes
[REFINE] Engine: improve comments in ccConfig.h, JniHelper.h
[REFINE] Engine: remove plugin submodule
[REFINE] Engine: improve StringUtils::format implementation
[REFINE] Label: don't count spaces at the end of line as part of the line width
[REFENE] UI: partial cursor support with system font in TextField
[REFINE] UI: support BMFont in TextField
[REFINE] UI: improve EditBox on win32 platform
[REFINE] UI: RichText improvements, get the real height by automatically customize ContentSize, refactor split algorithm
[REFINE] UI: remove autorelease mark from UIWebViewWrapper and manage memory manually
[REFINE] Lua: implementation conversion Lua table to ObjC Dictionary
[REFINE] Lua: improve loader, support standerd Lua package require
[REFINE] Web: upgrade Spine Javascript runtime to v3.6.39
[REFINE] Windows: speed up build by supporting precompiled header
[REFINE] Windows: remove Visual Studio 2013 support
[REFINE] Windows: Windows 10 update compiler to PlatformToolset v141
[REFINE] iOS: uses Images.xcassets instead of several icon png files
[REFINE] Android: support Android Studio 3.0.0, switch to libc++, simplify PROP_* values, add default Proguard Config for cocos
[REFINE] Android: remove ant project
[REFINE] Android: update NDK from r14 to r16
[REFINE] Android: improve Android.mk, not have to set NDK_MODULE_PATH in project settings
[REFINE] Android: detail comments for cddandroidAndroidJavaEngine.h, Cocos2dxSound.java
[REFINE] Linux: provide prebuilt version of GLFW
[REFINE] cocos console: remove ant build support
[REFINE] cocos console: support building release APK without key information
[REFINE] 3rd: remove Visual Studio 2013 libs
[REFINE] 3rd: remove Android armeabi libs since it is deprecated and will be removed in r17
[REFINE] 3rd: rebuild all Android libs with clang in ndk-r16
[REFINE] 3rd: cmake build support for partial libs
[REFENE] 3rd: update Box2D to latest commit f655c603ba9d83
[REFINE] 3rd: use prebuilt Box2D
[FIX] Engine: capture image loses quality when using RenderTexture
[FIX] Engine: RenderTexture DepthAndStencil issue on Android
[FIX] Engine: race condition resulting in deadlock infrequently in TextureCache
[FIX] Engine: CCConsole.cpp compile error with C++17 and clang
[FIX] Engine: TrianglesCommand hashing technique doesn't take padding into account
[FIX] Engine: default GLView bit depth is too low on desktop
[FIX] Engine: cocos2d::log va_list re-use bug
[FIX] Engine: cocos2d::Image::saveImageToPNG saves image in wrong PNG format
[FIX] Engine: CameraBackgroundColorBrush cannot use alpha
[FIX] Engine: crash in Allocator if there are no allocated pages
[FIX] Engine: crash when the UserDefault.xml file is empty
[FIX] Engine: memory leak in ObjectFactory destroyInstance, UserDefault::deleteValueForKey
[FIX] Engine: replace ptr_fun with lambda, fix compile error with C++17 and clang
[FIX] Engine: fix some warning issues
[FIX] Label: memory leak when using TTF labels
[FIX] Label: memory leak in FontFreeType::create
[FIX] Label: Non-TTF Label Shadow issue, make it follow Label opacity
[FIX] UI: RichText issue caused by Label when its string is very long
[FIX] UI: EditBox right padding error
[FIX] UI: win32 EditBox has wrong scale factor
[FIX] UI: TableView button click event not response when the button is a cell
[FIX] UI: correct bugs with cursor in TextField
[FIX] UI: Android EditBox use 'setSelection' error when the text beyond the border
[FIX] UI: iOS EditBox will penetrate the underlying UI event
[FIX] UI: use setTextColor for EditBox placeholder
[FIX] UI: returning UNKNOWN event for return type key SEARCH/SEND in EditBox
[FIX] UI: crash when call TextFieldTTF::setCursorFromPoint
[FIX] UI: ListView, avoid of type overflow while list size calculation
[FIX] Audio: miss return value of onWavClose function
[FIX] Audio: wrong header include in mp3reader.cpp, apple/AudioEngine-inl.h
[FIX] Audio: wrong status check in apple/AudioDecoder.mm
[FIX] Lua: should set listener to null when unregister spine event handler
[FIX] Lua: event condition bugs on ParticleTest.lua
[FIX] JSB: some memory leaks and crashes
[FIX] JSB: miss GetterSetter define for the placeHolder of TextField
[FIX] Web: out-of-date submodule commmit of cocos2d-html5 repo
[FIX] Web: bugs for Performance Test for Spine on WebGL
[FIX] iOS: fix bug about delayed creation UIWebView on iOS
[FIX] Andorid: infinite loop when counting text lines on Android in some situations
[FIX] Android: crash when network error message is too long
[FIX] Android: JniHelper no longer thread safe
[FIX] Android: proguard-rules.pro error for tests project
[FIX] Andorid: some violations about I/O operation on UI thread, which may lead to ANR
[FIX] Android: AppAcitivity is recreated which causes crash
[FIX] Android: Emulator blank screen 0x501 and 0x502 problems
[FIX] Android: Emulator stencil fix
[FIX] Android: Fix endian detection (node render order)
[FIX] Android: issue with not stable 60 fps
[FIX] Android: issue with accelerometer on Android on reverse landscape/portrait
[FIX] WinRT: fix keyBoard bug when input chinese
[FIX] cocos console: fix archive issue with Xcode 9
cocos2d-x-3.16 Oct.9 2017
[NEW] Add RadialGradientLayer
[NEW] Web: Add GLProgramState and upgrade web shader usage APIs
[REFINE] 3rd: use prebuilt bullet
[REFINE] CameraBackgroundBrush: use VAO/VBO to improve performance
[REFINE] Color4F: add arithmentic operators
[REFINE] LayerMultiplex: add `LayerMultiplex::switch(int, bool)` to not clean up previous layer after switching to a new layer
[REFINE] ListView: add padding options
[REFINE] FileUtils: add more async functions
[REFINE] ImageView: add `ImageView::setBlendFunc()` to change blend function
[REFINE] PageView: allow customizing opacity of indicator nodes
[REFINE] ParticleSystem: add `ParticleSystem::setSourcePositionCompatible(bool)` to set source position instead of position
[REFINE] RichText: image tag supports sprite frame
[REFINE] RichText: support horizontal alignment
[REFINE] ScrollView: add `ScrollView::setSwallowTouches(bool)`
[REFINE] ScrollView: dispatch more useful events and add more getters
[REFINE] Spine: support ETC1
[REFINE] WebView: can set opacity
[REFINE] Android: update to support Android Studio 2.3.3
[REFINE] Android: add `Cocos2dxActivity.setEnableVirtualButton(boolean)` to control whether the hide virtual button or not
[REFINE] iOS: more stable delta time between frames
[REFINE] Engine: fix many warning issues
[REFINE] Engine: exclude fps image in release mode
[REFINE] Engine: add function for calculating md5 hash from Data
[REFINE] Windows 10 metro mode, Windows Phone and Tizen are not supported
[REFINE] Web: Text wrapping supports more languages
[REFINE] Web: upgrade Spine to v3.5.35 and support Spine skeleton batching
[REFINE] Web: improve Editbox user experience
[REFINE] Web: improve screen adaptation for games inside iframe
[REFINE] Web: use imagePool to reduce image cache memory usage in WebGL mode
[REFINE] Web: ParticleSystem: Mark changeColor only if needed
[REFINE] Web: use default scheduler to control action manager
[REFINE] Web: remove accelerometer event listener by default
[REFINE] Web: use arraybuffer responseType in BinaryLoader
[FIX] Application: openURL() can not open URLs that have `&` character on linux
[FIX] Audio: may crash if play, stop frequently on Mac/Android
[FIX] Audio: may crash if switch to background with effect playing and switch to foreground again on Android
[FIX] Audio: may freeze app on iOS/Mac
[FIX] Audio: may crash if have multiple audio tracks running at the same time and frequently call `_play2d(AudioCache *cache, int audioID)` on iOS/Mac
[FIX] Audio: can not mute audio while a ring or a call is comming on Android
[FIX] Audio: audio loops get evently cut
[FIX] Button: scale9 effect may wrong
[FIX] Director: will dispatch `EVENT_BEFORE_DRAW` before drawing a frame
[FIX] Downloader: task may be suspend and not been executed on Android
[FIX] Downloader: may crash if downloading large file on iOS/Mac
[FIX] EditBox: may not show cursor and input text on Android
[FIX] EditBox: may not show any character when type on keyboard on Android
[FIX] EditBox: fix spacing and alignment on Windows
[FIX] EditBox: text is larger and mis-aligned on Android
[FIX] EventDispatcher: `pauseEventListenersForTarget()` can not work correctly if invoked in event callback
[FIX] FileUtils: `listFiles` and `listFilesRecursively` can not work correctly if the path include unicode charater on Windows
[FIX] FileUtils: getFileSize() always return -1 on Android
[FIX] FontAtlas: may cause crash when back from background on Android
[FIX] FontAtlas: memory leak in `FontAtlas::prepareLetterDefinitions()`
[FIX] HttpClient: may cause crash if used in non network environment on Android
[FIX] ImageView: scale9 effect may wrong
[FIX] Label: line height is reset when call `FontAtlasCache::purgeCachedData()`
[FIX] Label: memory leak in `Label::setFontAtlas()`
[FIX] Label: wrong effect of shrink overflow clamp on iOS
[FIX] Physics: crash if calling `PhysicsWorld::setDebugDrawMask(false)` right after `Scene::initWithPhysics()`
[FIX] Scheduler: can not work correctly if reschedule with same key in callback
[FIX] Sprite: `Sprite::setTexture()` will reset program state
[FIX] Studio: revert Studio reader and flatbuffer
[FIX] TextField: crash when text exceeds content with enabled cursor
[FIX] Transition: TransitionCrossFade is darker than it should
[FIX] Widget: wrong layout in scaled widget
[FIX] Android: app will crash at the first time launching by clicking app icon
[FIX] Android: compiling error built with Android Studio for x86
[FIX] Android: can not creat EGL context if the device doesn't support 24bit depth buffer
[FIX] Android: may stop response to touch event
[FIX] Android: can not use previous OBB file when APK version changed
[FIX] iOS: can not use cocos console compile and run in release mode on iOS with Xcode 8.3+
[FIX] iOS: FileUtils will cause compiling error on iOS 11
[FIX] Desktop: `GLViewImpl::getMonitorSize()` may return zero
[FIX] Apple: may crash if there are more than 10 touches
[FIX] JSB: add chipmunk binding for `cpSpace::segmentQuery()`
[FIX] JSB: XMLHTTPRequest memory leak if CC_ENABLE_GC_FOR_NATIVE_OBJECTS is enabled
[FIX] JSB: WebView doesn't support https
[FIX] Lua: export `cocos2d::utils::findChild()`
[FIX] Lua: LuaObjcBridge return wrong type when return type is bool
[FIX] Lua: will crash if lua file is encrypted and it has BOM header
[FIX] Lua: iskindof() return wrong result
[FIX] Lua: crash if run on iOS simulator with Xcode 8.0+
[FIX] Web: memory leak in action manager
[FIX] Web: local resources loading failed
[FIX] Web: infinite call stack in ArmatureWebGLRenderCmd
[FIX] Web: label stroke effect
[FIX] Web: ProgressTimer vertex is not updated when changing transform
[FIX] Web: DrawNode canvas displayedOpacity rendering
cocos2d-x-3.15.1 May.27 2017
[REFINE] Add optimization codes for huawei devices
cocos2d-x-3.15 Apr.21 2017
[NEW] Full support of Android Studio, can use Android Studio to edit, compile and debug C++ codes
[NEW] Audio Engine: use `tremolo` to decode audio files to be more adaptable to Android devices and improve performance on Android
[NEW] WebSockets and SocketIO supports SSL
[NEW] WebSockets: add methods to get url and server selected protocol
[NEW] Add `utils::getFileMD5Hash()`
[REFINE] EventDispatcher: use `std::stable_sort()` to sort nodes and listeners
[REFINE] FileUtils: add async version of common methods
[REFINE] Label: full unicode support
[REFINE] Renderer: enable VAO by default on Android
[REFINE] Renderer: use std::stable_sort() to sort commands
[REFINE] Scheduler: `unscheduleAll()` will unschedule selectors that scheduled with `performFunctionInCocosThread()`
[REFINE] SpriteFrameCache: avoid load frames if they are already loaded
[REFENE] Texfield: not use auto correction on iOS now
[REFINE] TextureCache: allow to unbind asynchronous texture loading callback with a custom key
[REFINE] WebSockets: each connection will create a virtual host
[REFINE] WebView: can clean cached data
[REFINE] WebSockets: allow self-assign certification
[REFINE] 3rd: update OpenSSL to v1.1.0
[REFINE] 3rd: update flatbuffer to v1.5
[REFINE] 3rd: Update Spine runtime to v3.5.35
[REFINE] Remove support for Windows 8.1 store and phone
[REFINE] Remove 32-bit linux support
[FIX] Action: spawn action may be invoked more times than specified
[FIX] Audio engine: can not play audios in the callback set in `AudioEngine::setFinishedCallback()` on iOS, Mac and win32
[FIX] Audio engine: crash if uncache audios in finish callback on Android
[FIX] Audio engine: crash if playing very small mp3 audios on Android
[FIX] Audio engine: may crash if repeat doing `play -> stop` on iOS and Mac
[FIX] Audio engine: play2d may still wait 2 seconds if preload is too fast
[FIX] Audio engine: preload many audios may cause crash on devices that use Samsung Exynos CPU
[FIX] Application: `openURL()` return wrong valueo on Linux
[FIX] Core: out scene's `onEnterTransitionDidFinish` is not triggered if using transition scene with `Director::runWithScene()`
[FIX] CheckBox: can receive touch up event that is released far from it
[FIX] Downloader: is not thread safe and may cause rondom crash on Android
[FIX] DrawNode: can't change opacity
[FIX] GLProgram: memory leak
[FIX] HttpClient: may crash on Android 4.2
[FIX] Label: ttf font line wrap
[FIX] Label: wrong effect if ttf font line gap is not 0
[FIX] Label: memory leak with ttf font
[FIX] Label: call `disableEffect()` many times will compress the label to one character
[FIX] Mesh: enable depth write by default
[FIX] Node: calling `reorderChild()` does not update touch lister with scene graph priority
[FIX] PageView: `getCurrentPageIndex()` returns -1 when created and haven't scrolled
[FIX] Physics2d: can not apply velocity to kinematic bodies
[FIX] Scheduler: an unscheduled selector may be invoked many times
[FIX] Scheduler: selector is not moved in time
[FIX] Simple Audio Engine: `unloadEffect()` doesn't work on Android 5.0.1 devices
[FIX] Simple Audio Engine: `ConcurrentModificationException`
[FIX] SokcetIO: use wrong default port for connection
[FIX] Sprite: texture and shader lost after restore from background on Android if using ETC1
[FIX] WebSockets: memory leak
[FIX] WebSockets: doesn't parse url correctly
[FIX] WebSockets: may crash in random
[FIX] Vec4: error logic of operator '<'
[FIX] Android: accelerometer uses wrong time accuracy
[FIX] iOS: may crashed if multiple OpenGL ES contexts coexist
[FIX] Windows: bad performance
[FIX] Windows: link error when compiling in release mode
[FIX] Lua: content after '\0' of a string is cut off when passing a string to C++ or vice versa
[FIX] Lua: lua_cocos2dx_Widget_addTouchEventListener crashed
[FIX] Lua: can not get binary data from file
[FIX] JSB: XMLHttpRequest supports notifying progression
[FIX] JSB: invoke `jsb.reflection.callStaticMethod` many times will cause `JNI max table=512` exception on Android
[FIX] Others: `download_deps.py` depends on git command
cocos2d-x-3.14.1 Jan.19 2017
[FIX] May crash if using `Scene::createWithPhysics()` to create a scene and physics3d camera is not set
[FIX] May have link error because of glfw conflict on Linux
[FIX] Sprite: created from sprite frame with polygon information can not work correctly
[FIX] Lua: link error with VS2015
[FIX] Lua: compiling error if using `cocos compile/run -p android --android-studio` on Android
coocs2d-x-3.14 Dec 22 2016
[NEW] Add Spine binary file format support
[NEW] Action: add a method to get the number of actions running in a given node with specific tag
[NEW] Action: new actions: ResizeBy and ResizeTo
[NEW] Button: can set title label
[NEW] Can disable multi touch on Android
[NEW] EventDispatcher: Add hasEventListener to check listener existance
[NEW] EditBox: add horizontal text alignment
[NEW] EventDispatcher: added `hasEvent()` to check if an event is added
[NEW] Sprite: support slice9 feature
[NEW] Slider: add methods to get _slidBallNormalRenderer
[NEW] Desktop: add a method to toggle between fullscreen and windowed
[NEW] Desktop: add events for window resize, focus and unfocus
[NEW] Mac: supports game controller
[NEW] JSB: add cc.sys.now() and perfromance.now(), the last one is more accurate
[NEW] Lua: add cc.vec3 functions: add, sub and dot
[NEW] Lua: use luajit 2.1.0-beta2
[NEW] Web: Add cc.CONCURRENCY_HTTP_REQUEST_COUNT to control max concurrent task count for XMLHttpRequest
[REFINE] Add NDEBUG for cpp template Xcode project
[REFINE] DrawNode: support float line width
[REFINE] EditBoxDelegate: add reason for edit end
[REFINE] Improve XML parse performance
[REFINE] Make batch capacity resizing more efficiently
[REFINE] PageView: support custom scrollToPage time
[REFINE] Lua: cc.Ray:intersects addtionally returns the distance
[REFINE] Mac: system font enhancement
[REFINE] Linux: build shared lib with -fPIC
[REFINE] Android: use SharedPreferences.apply() to store data
[REFINE] JSB: Increase default JS heap to 32 mb
[REFINE] JSB: Support more system languages
[REFINE] JSB: Direct log/error for better understantding problems
[REFINE] JSB: Separate FinalizeHook for ref objects and non ref objects
[REFINE] Web: Improve overall node construction performance
[REFINE] Web: Improve overall loading process performance
[REFINE] Web: Reduce overall memory usage
[REFINE] Web: Made cc.LabelBMFont and cc.LabelAtlas support texture packing and auto batching
[REFINE] Web: Reimplement a much faster ccui.Scale9Sprite
[REFINE] Web: Reimplement a much faster cc.DrawNode WebGL renderer
[REFINE] Web: Use stack to avoid recursive call in transform, onEnter, onExit etc, reduce call stack depth
[FIX] AsstsManagerEx: project.manifest may be downloaded twice
[FIX] AudioEngine: can not play large ogg file
[FIX] AudioEngine: may have noise if playing mp3 files on iOS/Mac OS X
[FIX] AudioEngine: can not play effect/music entirely on iOS and Mac
[FIX] ClippingNode: effect is wrong if threshold is set to a value not equal to 1 first then set to 1
[FIX] Compiling error if `USE_STD_UNORDERED_MAP == 0`
[FIX] ControlSwitch::create() may cause crash
[FIX] Downloader: may crash if it is released before finishing downloading task
[FIX] EditBox: fix single line and multiline text alighment, now single line will be center and multiline will be top align vertically by default
[FIX] EditBox: placeholder font not being set corretly for multiline text field on iOS
[FIX] EditBox: doesn't show text on Mac OS 10.12
[FIX] EditBox: multiline overflow bounds of box
[FIX] FastTilemap: wrong effect when content scale factor is not 1
[FIX] FontFreeType: crash in destructor
[FIX] ImageView: wrong effect of using loadtexture() to load a ETC1 texture with alpha support
[FIX] Label: wrong blending effect of outline
[FIX] Label: some labels may not been shown
[FIX] Label: may crash when label string is empty an the overflow is shrink
[FIX] Label: possible memory leak when font size is 0
[FIX] MenuItemSprite: MenuItemSprite::unselected() on a disabled item show wrong image
[FIX] Node: the effect of setRotation+setSkewX is wrong
[FIX] Physics3d: effect of debug draw is wrong
[FIX] Renderer: indices count may overflow when drawing batching triangle commands which causes unexpected effect
[FIX] RenderTexture: Sprite3D is not shown
[FIX] TileMap: hexagonal map fails on TMXTiledMap::getTileAt()
[FIX] TMXMapInfo: tileGid may overflow when using horizontal flip
[FIX] TriangleCommand: triangle commands can't do batching when the glprogram using custom shader with custom uniforms
[FIX] UI: label atlas and BMFont rendering issue with ETC1 texture format
[FIX] 3D: small .mtl files are not loaded
[FIX] 3D: Sprite3D::getMesh() may cause crash if it doesn't have any mesh
[FIX] 3D: wrong Skybox fov
[FIX] 3D: Sprite3D can't release its texture
[FIX] AssetsManagerEx: Fail to decompress when sub directory is not created
[FIX] ScrollView: crash of scroll to top or left
[FIX] SoketIO: memory leak
[FIX] iOS: Vibrate effect can not work in not silent mode
[FIX] iOS: view size got with landscape orientation if run on iOS 7 and ealier
[FIX] iOS: iOS 9 OpengGL error
[FIX] iOS: if a scene includes 3d model with light and ListView may cause crash
[FIX] Android: cause compiling error with android-19 or lower
[FIX] Android: RapidJason crashes in release mode
[FIX] Android: may not pause background music after game enters background
[FIX] Android: adapt to Android pixel
[FIX] Android: MessageBox inverted parames
[FIX] Android: cause deadlock if preload the same file more than 3 times in preload callback
[FIX] Android: WebView: base url can not work
[FIX] Android: may crash if `AudioEngineManager.getProperty(PROPERTY_OUTPUT_FRAMES_PER_BUFFER)` returns null
[FIX] Mac: Downloader can not access https website
[FIX] Win32: fix crash caused by `Helper::getSubStringOfUTF8String()` in debug mode
[FIX] Linux: FMOD issue
[FIX] Linux: Application::openURL can not work
[FIX] Desktop: crash upon exit when NotificationNode exists
[FIX] Spine: color bug
[FIX] Console: doesn't support `--ap` parameter
[FIX] Lua: result of radian2angle is wrong
[FIX] Lua: iskindof_ doesn't work correctly
[FIX] Lua: new lua project crashes compiling with VS2015 release mode
[FIX] Lua: ComponentLua doesn't support binary code
[FIX] JSB: `jsb.addRoot is not a function` error caused by cc.GLProgramState.setUniformCallback
[FIX] JSB: Fix spine TrackEntry conversion crash issue
[FIX] JSB: Fix CallbackWrapper and FunctionWrapper crash during deallocation in new memory model
[FIX] JSB: Fix event object memory issue by manually bind EventDispatcher::addCustomEventListener
[FIX] JSB: Fix chipmunk crash issues when using setDefaultCollisionHandler
[FIX] JSB: Fix compilation issues when COCOS_DEBUG = 2
[FIX] JSB: Unify function name of Texture2D::releaseTexture
[FIX] Web: Fix spine blend function inconsistency between web and jsb
[FIX] Web: Fix particle system load from plist generated by x-studio365
[FIX] Web: Fix doEnumerateRecursive(node, name, callback) always return undefined issue
[FIX] Web: Change bright style on 'setEnabled' call of ccui.Widget
[FIX] Web: Fix Editbox can't input in full screen mode
[FIX] Web: Fix texture issue on some Android devices by always set vertexAttribPointer
[FIX] Web: Make xhr ontimeout callback work on all browsers
[FIX] Web: Fix clear color not normalized issue
[FIX] Web: Fix clipping node rendering issue when alphaThreshold = 1
[FIX] Web: Fix nested scroll view rendering issue
[FIX] Web: Make orderDirty flag properly set for node
[FIX] Web: Fix ccui.Slider gray state not available issue
cocos2d-x-3.13.1 Sep 13 2016
[FIX] Label color broken
[FIX] application will crash in debug mode if don't specify a design resolution
[FIX] application may crash if coming from background by clicking application icon on Android
[FIX] AudioEngine can not play audio if the audio lies outside APK on Android
[FIX] AudioEngine::stop() will trigger `finish` callback on Android
[FIX] application will crash if using SimpleAudioEngine or new AudioEngine to play audio on Android 2.3.x
[FIX] object.setString() has not effect if passing a number on JSB
cocos2d-x-3.13 Aug 22 2016
[HIGHLIGHT] add VR plugin
[HIGHLIGHT] support ETC1 alpha channel
[HIGHLIGHT] fix AudioEngine performance for Android 4.2+
[HIGHLIGHT] improve canvas renderer performance with dirty region
[HIGHLIGHT] add Andorid arm-64 support
[HIGHLIGHT] use luajit for Android arm-64
[HIGHLIGHT] switch to use gcc 4.9
[HIGHLIGHT] upgrade CURL to 7.50.0
[HIGHLIGHT] upgrade Spine to 3.4
[HIGHLIGHT] upgrade glfw to 3.2
[NEW] add `Configuration::supportsMapBuffer()`
[NEW] support hexagonal tile maps
[NEW] add `ListView::setScrollDuration()`
[NEW] implement `SimpleAudioEngine::willPlayBackgroundMusic()` on Android
[NEW] implement `AudioEngine::preload()` on Android
[NEW] add `cc.Node['.classname']` to get class name for tolua C++ class in lua
[NEW] support direct load in web engine to show scene without loading all resources, resources will be loaded asynchronously
[NEW] add `cc.view.setOrientation` API to force orientation in web browser
[REFINE] move back to use gcc 4.9 on Android to fix some crash bugs
[REFINE] optimize Node sorting speed for 64-bit
[REFINE] using `chrono::steady_clock()` instread of gettimeofday for FPS calculation
[REFINE] use `fstat` instead of `fseek` and `ftell` for performance to read file content
[REFINE] use std::string reference instead of char* for `utils::findChild()`
[REFINE] make `MotionStreak` _maxPoints framerate independent
[REFINE] support utf-8 bom lua script
[REFINE] can show utf-8 characters in MessageBox and lua log on win32
[REFINE] improve stability of new WebGL renderer provided in v3.12
[REFINE] update js auto binding settings with new ndk version
[REFINE] improve evalString implementation which was rely on deprecated API
[REFINE] improve js bindings code quality by merging part of cocos2d-x-lite repo
[REFINE] sources path in sourcemap of web engine are now relative
[FIX] `GLProgram::link()` only check result in debug mode or WinRT
[FIX] PageView::clone() misses cloing some member variables
[FIX] potential crash of `AudioEngine::uncache()`
[FIX] websocket receives package size > 1023 error
[FIX] the color of underline is different from the text color
[FIX] memory leak in `MenuItemToggle::create()`
[FIX] crash after removing a physics body right after adding it
[FIX] SpriteBatchNode crash if CC_SPRITE_DEBUG_DRAW is enabled
[FIX] memory leak in `Data::move()`
[FIX] crash in `EaseExpoentialOut::clone()`
[FIX] buffer over-read in `GLProgram::updateUniformLocation()`
[FIX] `dirty` variable incorrectly reset with a multiple camera setup causing drawing issues on Sprite
[FIX] fix label text formatter right alignment
[FIX] `bsd_signal` link error on Android
[FIX] crash while decoding small MP3 file on Android
[FIX] `AppDelegate::applicationWillEnterForeground()` is invoked at launch on Android
[FIX] fix `relocation overflow in R_ARM_THM_CALL` on Android
[FIX] navigation bar doesn't hide if show and dismiss keyboard on Android
[FIX] `utils::getTimeInMilliseconds()` may return wrong value on Android
[FiX] link error that `bsd_sinal` is not defined if building with API level 21+ and uses libwebsockets on Android
[FIX] compiling error with Android 6.0(API 23)
[FIX] music is not resumed when app is reactived on iOS
[FIX] random crash in `alGenBuffers` at startup on iOS
[FIX] can not play audio if uncache and play audio many times on iOS
[FIX] `Text::create()` crash if it contains invalid string on iOS
[FIX] `FileUtils::removeDirectory()` can not work on all platforms except iOS and Mac
[FIX] can not compile cocos2d-x on Mac OS X 10.10 and lower
[FIX] new js project link error on linux
[FIX] AudioEngine can not play large ogg file on Windows
[FIX] design resolution broken after minimize on desk platforms
[FIX] can not get the `backClicked` in lua
[FIX] `cc.convertColor` issue in lua
[FIX] browser version detection
[FIX] compiling error with `cocos gen-libs`
[FIX] spine track entry can circle reference each other
[FIX] global object can leak during restart in JSB
[FIX] progress timer nested sprite can't change color in Canvas
[FIX] layout refresh issue in web engine
[FIX] dom element position synchronization issue in web engine
[FIX] armature position shake when parent node move in web engine
[FIX] rendering issue for Armature using sprite as display in bone in web engine
[FIX] Scale9Sprite GRAY state isn't correct in WebGL
[FIX] touch startPoint can be overwrote in web engine
[FIX] syncStatus transform dirty flag isn't resetting in web engine
cocos2d-x-3.12 Jul 06 2016
[HIGHLIGHT] add VR support
[HIGHLIGHT] add Tizen support
[HIGHLIGHT] fix Android performance issue
[HIGHLIGHT] Web engine performance improved in WebGL mode
[HIGHLIGHT] support obb extension on Android
[NEW] Core: add `utils::findChild()`
[NEW] Core: add CSV format support to tile maps
[NEW] Core: add `FileUtils::getContents()`
[NEW] Core: cocos2d::Value supports unsigned
[NEW] Particle: add feature to pause/resume particle emitter
[NEW] Platform: support Windows 10 UWP x64
[NEW] UI: add clamp and shrunk feature for system fonts, currently only support iOS, Android and Mac
[NEW] UI: make ListView select item programmatically
[NEW] UI: add `EditBox::InputFlag::LOWERCASE_ALL_CHARACTERS` to lowercase characters
[NEW] UI: add `setBounce()` to WebView
[NEW] Web: refactor TMXLayer renderers
[NEW] Web: can force orientation in mobile browser
[NEW] Web: support high resolution TTF Label on retina display
[REFINE] Android: use clang instead of gcc to compile codes
[REFINE] Android: hide virtual button by default
[REFINE] Android: set music volume control as default
[REFINE] Android: usage clang insteand of gcc to compile codes
[REFINE] Audio: catch `IllegalStateException` exception to avoid crash when playing background music with SimpleAudioEngine on Android
[REFINE] Core: fix many warnings
[REFINE] Core: move StringUtils functions from deprecated header file to ccUTF8.h
[REFINE] Core: FontFNT will ignore chars that exceeds 65535 and print a warning information
[REFINE] Core: `Node::ignoreAnchorPointForPosition()` is deprecated and add `Node::setIgnoreAnchorPointForPosition()`
[REFINE] Core: allow inherit from platform FileUitils
[REFINE] Core: add optional alpha parameter to Color4B and Color4F
[REFINE] Core: Follow action can accept horizontal and vertical offset
[REFINE] Core: TMXXMLParse parse `id` element
[REFINE] Lua: rename all member functions named `end()` to `endLua()`
[REFINE] JSB: make selectedSprite opitional in MenuItemSprite
[REFINE] JSB: return null if read failed in `js_cocos2dx_CCFileUtils_getDataFromFile()`
[REFINE] Template: iOS tempalte is refined to make cocos2d-x game scene work better with other UIView
[REFINE] Template: remove `build_native.sh`
[REFINE] Template: ARC support on iOS and Mac OS
[REFINE] UI: TTF and BMFont label wrap mode will automanytically changed to char wrap mode when label's width is less than word's boundary
[REFINE] UI: UIWidget adds missing properties for clone
[REFINE] UI: UIScrollBar caches the texture created with base64 encoded images
[REFINE] UI: EditBox now prints lowercase letters by default
[REFINE] UI: enable WebView's local storage on Android
[REFINE] UI: improve EditBox implementation on WinRT
[REFINE] UI: make PageView indicator more tunable
[REFINE] UI: make PageView page turning event time tweak configurable
[REFINE] UI: RichText is improved: add effect of outline, shadow and glow; catch the event of open url; ability to extend tags; add anchor of image tag
[REFINE] 3D: skeleton animation is more efficient when two animations switch frequently
[REFINE] 3rd party: update webp to 0.5.0
[REFINE] Web: improve basic types to reduce memory usage
[REFINE] Web: Show line number in console statements
[REFINE] Web: Cache base64 image of PageViewIndicator and ScrollViewBar
[REFINE] Web: Pass error in cc.AsyncPool in onEnd callback
[REFINE] Web: Separate ccui.ListView event callback from ccui.ScrollView for its own events
[FIX] Android: fix compiling error if using NDK r11+
[FIX] Android: package name is `libcocos2dx` instead of application name if building with Android Studio
[FIX] Audio: AudioEngine can not work if the file path contains not ascii code on iOS
[FIX] Audio: SimpleAudioEngine::playEffect() doesn't work correctly on Linux
[FIX] AssetsManager: can not work
[FIX] AssetsManagerEx: use manifestUrl from remote version
[FIX] Core: `FileUtils::writeValueMap()` will crash on iOS if it contains `Value::Type::None` type element
[FIX] Core: `ClippgNode::setStencil()` may cause assert error if it is invoked before
[FIX] Core: `TextureCache::addImageAsync()` doesn't set pixel format corretly
[FIX] Core: `GL::SetBlending()` doesn't set dst correctly
[FIX] Core: vertex z can not work correctly if window size changed on desktop platforms
[FIX] Core: use `std::isnan()` instead of `isnan()` to fix compiling errors on some Linux platforms
[FIX] Core: crash on windows when using PolygonInfo
[FIX] Core: fix `libpng error: CgBI: unhandled critical chunk` error with Xcode 7.3
[FIX] Core: EXC_BAD_ACCESS random crash caused by reallocation of shared indices memory
[FIX] Core: memory leak of `utils::captureScreen()` on iOS and Mac OS
[FIX] Core: assert error if remove an event listener twice at the same time
[FIX] Core: FileUtils::getValueMapFromFile() returns wrong value if it is a number with scientific notation on Android
[FIX] Core: UIGrayScale shader is not reloaded when reloading shaders
[FIX] Core: `SpriteFrame::clone()` doesn't clone polygonInfo
[FIX] Core: `FileUtils::createDirectory()` fails on Mac OS with sandbox
[FIX] Core: `cocos2d::Value` operator overloading of comparison `==` returns wrong value in case Type::VECTOR
[FIX] Core: wrong content size if minisize
[FIX] Core: can not have a class named `Game` on Windows
[FIX] Core: crash if load bad image on Windows
[FIX] Core: custom shader uniforms and attributes do not have effect in DrawNode
[FIX] Core: blend mode doesn't work with animated sprite
[FIX] Core: `FileUtils::removeDirectory()` can not work correctly when the path is not end of `/` on iOS and Mac
[FIX] JSB: fix some bugs related with JSB debegger
[FIX] JSB: scheduler callback target lost
[FIX] JSB: missing scroll widgets constants
[FIX] JSB: if obj is undefined or null then attempt to access obj.__nativeObj leads to incorrect behavior
[FIX] JSB: use `require()` to require the same script twice may crash
[FIX] Lua: lua function is not invoked when error happens in websocket
[FIX] Network: HttpClient Content-type limitation on iOS
[FIX] Network: downloader crash when storage path contains spaces
[FIX] Network: SocketIO crash on reconnect
[FIX] Physics: PhysicsBody damping doesn't wrok
[FIX] UI: EditBox may cause `java.lang.IndexOutOfBoundsException` exception on Android
[FIX] UI: TextFieldTTF doesn't show password correctly
[FIX] UI: RichText crash on Windows
[FIX] UI: EditBox can not use custom font on Android
[FIX] UI: can not use TTF font on Android
[FIX] RenderTexture: `setOpacity()` has not effect
[FIX] 3D: `Sprite3D::createNode()` may not work correctly with particular model data
[FIX] Web: `getParentToNodeTransform` doesn't return result
[FIX] Web: remote image without extension in url can't be loaded as image
[FIX] Web: nested clipping nodes rendering issue in WebGL render mode
[FIX] Web: IMEDispatcher can't work in mobile Chrome
cocos2d-x-3.11.1 May 27 2016
[HIGHLIGHT] Supports IPv6-only network
[FIX] Fix `cocos gen-libs` compiling issue
cocos2d-x-3.11 May 11 2016
[HIGHLIGHT] Physics: upgrade chipmunk to v7.0.1
[HIGHLIGHT] JS: new memory model, don't have to use retain/release in JS
[HIGHLIGHT] Curl: upgrade to v7.48
[HIGHLIGHT] OpenSSL: upgrade to 1.0.2g
[HIGHLIGHT] JS: can use Firefox 30+ and VSCode to debug cocos2d-x JSB programs
[NEW] JS: web console is enabled debugging JSB projects via firefox
[NEW] UI: add a setter for touch total time threshold in ScrollView
[NEW] UI: add ability to get font family
[NEW] UI: add xml support in RichText
[NEW] UI: add ability to stop auto scrolling in ScrollView
[NEW] UI: EditBox supports multiline on Mac
[NEW] UI: Scale9Sprite allows to set custom shaders
[NEW] UI: ImageView allows to set custom shaders
[NEW] UI: TextFiled supports cursor
[NEW] FileUtils: add missing getFileSize() for winrt
[NEW] Network: close websocket connection by dispatching a resetDirector event
[NEW] Tool: cmake supports on Android
[REFINE] Network: upgrated to latest libwebsockets, add more callbacks and bugs fixed
[REFINE] Network: replace char* with std::string in HttpRequest
[REFINE] Renderer: TriangleCommand and QuadCommand are merged
[REFINE] 2D: SpriteFrameCache takes pixelFormat into account if specified
[REFINE] UI: let ScrollView swallow touch events by default
[REFINE] JSB: make selectedSprite optional
[FIX] JS: firefox v30+ can not debug cocos2d-x JSB projects
[FIX] UI: can not get event when PageView was turning
[FIX] UI: bitmap font sizes are not loaded from binary .fnt files
[FIX] UI: some fonts were rendered incorreclty
[FIX] Action: TargetedAction::isDone() always return false
[FIX] Action: Repeat: will run actions more than speicific times, instant action will run one frame later
[FIX] 2D: drawing in incorrect app state on iOS
[FIX] Platform: FileUtils::getValueVectorFromFile() returns wrong value on iOS and Mac
[FIX] Network: downloader crashed when storage path contains spaces on iOS
[FIX] Network: downloader may crash on Android
[FIX] HTTPAsyncConnection: crash when custom SSL certification is set on iOS
[FIX] AssetsManagerEX: will stuck at UPDATING forever if last task fails
[FIX] AssetsManagerEX: may repeatly update some assets and cause file write conflict
[FIX] Lua: fix display.wrapScene()
cocos2d-x-3.10 Jan 11 2016
[HIGHLIGHT] UI: Rewrite Scale9Sprite and improve the scale9sprite performance and reduce memory consumption.
[HIGHLIGHT] UI: Change PageView to derive from ListView.
[NEW] Core: Added Application::getVersion() to get the app version.
[NEW] UI: Add PageView indicator.
[NEW] UI: Label add three Overflow type to new label, see release note for more information.
[NEW] UI: UIText::clone supports clone the text effect.
[NEW] Label: Add methods to query label effect state.
[NEW] UI: UIRichText support the new line element.
[REFINE] 3rd party: WebP loading improvements WebP loaded as premultiplied alpha if it has.
[REFINE] UI: Slider `setCapInsetProgressBarRebderer` change to `setCapInsetProgressBarRenderer`.
[REFINE] UI: RichText support new line element.
[REFINE] UI: Set focus to Widget when touched.
[REFINE] 3D: Change char* to string in Terrain.
[REFINE] Studio: Merge Studio ActionTimeLine change back into engine.
[REFINE] Studio: Merge Studio changes for compatible withe 32bit Mac System.
[REFINE] Studio: Merge Studio changes for lua-binding, js-binding and simulator.
[REFINE] Mac: Make engine compatible for 32bit Mac.
[REFINE] 3rd party: WebP loading improvements WebP loaded as premultiplied alpha if it has.
[REFINE] Audio: AudioEngine on Linux replace the original SimpleAudioEngine with a new version of FMOD, now AudioEngine support all platforms!
[REFINE] IOS: Add virtual keyword for some render related function.
[REFINE] UI: Fixes boring deprecated warning in HttpRequest.
[REFINE] Network: Fix Downloader bug on iOS & Android platform.
[REFINE] Studio: Fix deprecation warning in SkeletonRenderer.
[REFINE] JS: Add js test case for fix, improve template.
[REFINE] Network: Permit http access to cocos2d-x.org in test projects on iOS.
[REFINE] Network: Crash when removing a remotely downloaded image from texture cache in js-binding.
[REFINE] Win10: WinRT project update version to v3.10.
[REFINE] Console: Add quiet option for Cocos Toolkit.
[REFINE] JS: New GC model for js-binding.
[REFINE] Doc: Fix typos in documentation and comments.
[REFINE] UI: update controlButton size calculate with new Scale9Sprite logic.
[REFINE] Win10: Added missing _USRJSSTATIC preprocessor define for ARM builds.
[REFINE] JS: Added ccvector_to / ccmap_to converted to new js-binding API.
[REFINE] UI: Slider misprint fix.
[FIX] Network: fix possible websocket crash in its destructor.
[FIX] Core: Fix premultiplyAlpha for mipmaps and compressed textures.
[FIX] UI: Fix Scale9sprite rendering error when content size smaller than the sum of leftInset and rightInset.
[FIX] Win32: Fix EditBox crash when removing an EditBox in a scheduler.
[FIX] Android: Fix cannot add view to mFrameLayout when extends Cocos2dxActivity.
[FIX] 2D: Fixed actionNode set at wrong position bug.
[FIX] 3D: Fix the movement of PUParticle lags one frame.
[FIX] UI: Fix the wront argument of setPlaceholderFontName in EditBox.
[FIX] UI: Fix EditBox editBoxEditingDidEnd may use the original text after change the text of EditBox in user script.
[FIX] Audio: Fix `FinishCallback` never be called in Windows.
[FIX] UI: Fix Layout stencil clipping nested with Clipping Node rendering issue.
[FIX] UI: Keyboard doesn't hide when click the screen outside of EditBox on iOS platform.
[FIX] UI: Fix a fatal bug in EditBox implement on Windows platform.
[FIX] UI: Fix edit box setPlaceholderFontName and scale font size issue.
[FIX] Core: Fix memory leak when initWithImage() failed.
[FIX] Network: CCDownloader on iOS is broken in v3.9 js-binding.
[FIX] JS: Bindings fixes for Menu, Sprite and Label.
[FIX] Studio: Remove weak reference in ActionNode.
[FIX] UI: shouldStartLoading method should return value to js in js-binding.
[FIX] UI: Fix scrollview render error.
[FIX] JS: Fix win32 js project crash issue.
[FIX] UI: Button touch doesn't work with scale9 enabled.
[FIX] JS: Fix evalString doesn't return result issue.
[FIX] JS: Fix ComponentJS proxy management issue in JSB.
[FIX] Android: Fix include in cocos network module.
[FIX] Network: Fix web socket crash.
[FIX] UI: Fix TextField missing default password style text setting.
[TEST] S9SpriteTest: Scale9Sprite fade actions with cascade opacity.
[TEST] Web: Remove default focus block from UIFocusTestVertical.
[TEST] Lua: Fix pageViewTest Horizontal scroll won't work in Lua-test.
cocos2d-x-3.9 November.09 2015
[NEW] Label: Added line spacing/leading feature to Label.
[NEW] ListView: Added APIs to scroll to specific item in list.
[NEW] ListView: Added APIs to get an item in specific position like center, leftmost, rightmost, topmost and bottommost.
[NEW] ListView: Added a feature for magnetic scrolling.
[NEW] Animate: Added ActionTimeline::setAnimationEndCallBack and ActionTimeline::addFrameEndCallFunc.
[NEW] Animate: Added CSLoader::createNodeWithVisibleSize, CSLoader::createNodeWithVisibleSize and moved "ui::Helper::DoLayout" into them.
[NEW] Studio: Added Light3D support for Cocos Studio.
[NEW] Platform: Added the missing CURL support to the Windows 10 UWP version.
[NEW] Platform: Added UIEditBox support on linux platform.
[REFINE] 3D: Added non-null checks in PUScriptCompiler::visit before dereferencing.
[REFINE] 3D: Refined SkyboxBrush by making the shader parameter take effect at once.
[REFINE] Label: Changed label font size type to float to support high precision when font size is small.
[REFINE] ListView: Fixed an issue that list view's Magnetic::CENTER is not working well when non-bounceable.
[REFINE] ListView: Added feature of jumping to a specific item in list view.
[REFINE] Sprite: Added "a unsupport image format!" log when creating a sprite in CCImage.cpp.
[REFINE] ScrollView: Merge logics of Scroll View for scroll by inertia and auto scroll into one.
[REFINE] Animate: Moved initialization of image to an appropriate location, because it always called twice in SpriteFrameCache::addSpriteFramesWithFile().
[REFINE] Simulator: Changed the size of startFlag to 13.
[REFINE] Simulator: Show Node and Skeleton in the middle of the simulator.
[REFINE] Simulator: Removed screen direction check in simulator to avoid render error.
[REFINE] Pysics: Refined components to improve physics performance.
[REFINE] UI: Refined ComponentContainer to improve performance.
[REFINE] UI: EventListenerMouse will dispatch EventMouse events.
[REFINE] OpenGL: Added check for glfwCreateWindow.
[REFINE] Platform: Fixed a crash on xiaomi2 if Cocos2d-x is built as a dynamic library.
[REFINE] Platform: Updated libcococs2d name to v3.9 on WinRT platforms.
[REFINE] Platform: Added some support for mouse on WinRT. Include: Show/Hide mouse cursor; Mouse event implemented similar Desktop version; Left button send mouse event and touch; Support other mouse button and scroll wheel.
[REFINE] Platform: Correct the convertion between unicode and utf8 on WinRT.
[REFINE] Platform: Improved EditBox implement on Win32 platform.
[REFINE] JS: Add jsb.fileUtils.writeDataToFile().
[REFINE] JS: Set js templates Mac target platform from null to 10.7.
[REFINE] JS: Removed the static define of variable in headfile of ScriptingCore.
[REFINE] Lua: Added AssetsManagerEx constants UPDATE_FAILED and ERROR_DECOMPRESS in Lua.
[REFINE] Lua / JS: Refined lua/js binding tool.
[REFINE] I/O: Refined AssetsManagerEx unzipping by using async.
[REFINE] Web: Improved logic of jsb_boot.js to sync with the web engine behavior.
[REFINE] Web: Sync with CCBoot for web.
[REFINE] Build: Fixed various compiler warnings on Xcode 7.
[REFINE] Build: Fixed Wformat-security warning on Xcode.
[REFINE] Build: Fixed a compile error in __LayerRGBA.
[REFINE] Tool: Added tools for generating documents automatically.
[REFINE] Doc: Clean up the code of setRect() function.
[REFINE] Doc: Fixed a minor typo and renamed INTIAL_CAPS_ALL_CHARACTERS to INITIAL_CAPS_ALL_CHARACTERS in UIEditBox.
[FIX] 3D: Fixed a bug that obb did not rotate with Sprite3d.
[FIX] 3D: Corrected spot light init value.
[FIX] 3D: Added the missing CCMotionStreak3D files.
[FIX] 3D: Fixed a bug in CCPhysics3DComponent.cpp that oldBool is set with a wrong value.
[FIX] 3D: Fixed shader light parameter bug that caused for that all the mesh share light parameter.
[FIX] Sprite: Fixed a bug that CC_SPRITE_DEBUG_DRAW did nothing in Cocos2d-x.
[FIX] Button: Fixed an issue that when image size of variable button status texture are different, Helper::restrictCapInsetRect result may stop the pressed & disabled status picture from loading.
[FIX] Font: Fixed a crash bug in destructor of FontFreeType.
[FIX] Label: Removed scale factor for label shadow.
[FIX] Label: Added missing override keyword.
[FIX] LoadingBar: Fixed a crash bug in LoadingBar.
[FIX] ScrollView: Removed ScrollView::_innerContainer pointer copy.
[FIX] Particle: Fixed a bug of nomalize_point which caused particle rendering error.
[FIX] Tilemap: Fixed a TMXLayer bug: When using float values (for example the actual position of the character) to get the current tile, the wrong tile is sometimes/usually returned.
[FIX] Animate: Fixed a crash bug when csb file is broken.
[FIX] Animate: Fixed a bug that a same frame index is inserted after animation speed is scaled.
[FIX] Animate: Fixed bug in v1.6 that bone animation crashed when performing getBoneAtPoint(0,0).
[FIX] Animate: Fixed crash when recall a cached timeline after scene exited.
[FIX] Animate: Fixed debug-config crash if a FrameBuffer has no RenderTargetDepthStencil.
[FIX] UI: Fixed an image bug caused by the _hasPremultipliedAlpha field.
[FIX] UI: Added missing getChildByTag<>() API.
[FIX] UI: Fixed a bug in Widget::isClippingParentContainsPoint: _hittedByCamera may be null.
[FIX] UI: Fixed a bug that cocos2d::Map may cause Dangling Pointers when inserting Ref Object which already exist in the Map.
[FIX] UI: Fixed a bug in Scheduler which may case Force Close.
[FIX] OpenGL: Fixed a bug of ui::WebView callback operate in OpenGL.
[FIX] Performance: Fixed a bug that NotificationNode was not entered and exited.
[FIX] Renderer: Fixed a bug that Material::clone failed to set the parent correctly.
[FIX] Simulator: Fixed a bug that when scene was set to a very large size(eg. 2048x1536), the simulator window was out of screen.
[FIX] Simulator: Fixed a compilation issue about simulator on Android x86.
[FIX] Skeleton: Removed redundant interface in CCSkeletonNode.
[FIX] Studio: Fixed a bug about Cocos Studio GUItest that MoveBy vertical direction under lua test project cannot scroll back to page 1 from page 2.
[FIX] Studio: Hide menu "cocostudio 2.1" for JSON exported from Cocos Studio 2.x is not supported in CocoStudio 1.6.
[FIX] Studio: Fixed bug that when create project from template, the app name of android-studio project is not changed.
[FIX] Platform: Fixed a bug that Android activity destroyed after reopening the app.
[FIX] Platform: Fixed a crash bug of AudioPlayer in Win32.
[FIX] Platform: Fixed an error about Chinese input in textfield with specific IME on Android.
[FIX] Platform: Fixed missing image asset in Win10 UWP manifest.
[FIX] Platform: Fixed Windows 10 UWP app manifest by correcting image asset paths.
[FIX] Platform: Fixed a bug that FileUtils::GetFileSize can't treat multi-char path.
[FIX] Platform: Fixed a bug of loading pluginx lib when compile Android with --compile-script flag.
[FIX] Platform: Fixed a crash bug caused by integer overflow in Device::getTextureDataForText on iOS.
[FIX] Platform: Fixed the broken v3 Win10 UWP build by removing CCComponentPhysics2d files from the libcocos2d project.
[FIX] Platform: Fixed travis-scripts/before-install.sh.
[FIX] Platform: Fixed a bug in FileUtilsWin32::removeDirectory when the file begins with ".".
[FIX] Platform: Corrected the keyboard codes for Desktop and WinRT.
[FIX] JS: Fixed a freeze bug of playing animation in JS projects.
[FIX] JS: Fixed build_native for JS default template.
[FIX] JS: Fixed wrong number of param in Place and RotateTo.
[FIX] Lua: Fixed a bug of luabinding enumerateChildren.
[FIX] Web: Fixed wrong callback setting for webview:setOnDidFailLoading in Lua.
[FIX] Web: Fixed life control for XMLHttpRequest.
[FIX] Web: Fixed WebView lua-bind method name.
[FIX] Build: Fixed msbuild by removing incorrect AppxBundle properties from project.
[FIX] Build: Fixed the Enable_Bitcode compile error on Xcode 7.
[FIX] Build: Fixed compile error for new project created by template.
[FIX] Changed some delete operations to be deletions of arrays where applicable.
[FIX] Changed some "free" operations to "delete" where memory was allocated with "new"."
[FIX] Revert "remove CCClippingRectangleNode transform error support.".
[TEST] 3D: Fixed a bug that lua Scene3DTest "back" button did not work.
[TEST] Button: Added a testcase of Button opacity settings.
[TEST] PageView: Fixed a bug that UIPageViewVerticalTest in cpp-test failed to scroll back to page 1.
[TEST] Particle: Fixed a bug that particle test under lua has different display effects in different platforms.
[TEST] Scale9Sprite: Added a test case of opacity/color cascade for Scale9Sprite.
[TEST] Scale9Sprite: Added testcase for s9sprite action.
[TEST] ScrollView: Added testcase for multiple items in ScrollView.
[TEST] SliderBar: Fixed bug of slider bar that it doesn't refresh percentage value under project cpp-test.
[TEST] SliderBar: Fixed a crash bug in "Scheduler->Scheduler ttimeScale Test" when drag slider to left then click the middle of slider bar.
[TEST] Animate: Added custom spine skeletonAnimation testcase.
[TEST] UI: Added DrawLabel Mode testcase.
[TEST] UI: Fixed a bug that Node:Text Input test in cpp-tests touch detection is wrong.
[TEST] UI: Improved UItestcase modification to make it user friendly.
[TEST] Physics: Fixed a bug that quickly click mouse in "41:Node:Physics -> 6:joints" in cpp-test may cause program crash.
[TEST] Studio: Fixed a crash bug of Cocos Studio 3d test under lua test project.
[TEST] Platform: Solved the crash of performance-tests on Windows.
[TEST] Debug: Fixed a bug that RefPtr test wasn't executed even in debug build.
[TEST] JS: Fixed crash bug when click "remove ui" in "native test-JSBExtendTest" under project js-test.
[TEST] JS: Updated testcase in js-test to show notificationNode to runAction.
cocos2d-x-3.8.1 September.17 2015
[HIGHLIGHT] platform: Supported Xcode 7 for iOS 9 deployment
cocos2d-x-3.8 final September.6 2015
cocos2d-x-3.8 rc0 August.26 2015
cocos2d-x-3.8 beta0 August.14 2015
[HIGHLIGHT] 3D: Added 3d physics collider
[HIGHLIGHT] 3D: Supported setting camera background brushes with color/depth/skybox
[HIGHLIGHT] 3D: Added key frame event Callback in Animate3D
[HIGHLIGHT] FileUtils: Added a set of file writing APIs: writeStringToFile, writeDataToFile, writeValueMapToFile, writeValueVectorToFile
[HIGHLIGHT] UI: Refined UI system
[HIGHLIGHT] UI: Added RadioButton widget (JSB/Lua ready)
[HIGHLIGHT] UI: Reimplemented and enhanced EditBox on Android: display cursor; support copy, cut, paste and select actions; support multi-line input; pretty adjustment when virtual keyboard shown
[HIGHLIGHT] JS: Bound new AudioEngine in JSB
[HIGHLIGHT] JS: Merged JSB test project into cocos2d test project
[HIGHLIGHT] network: Upgrade SocketIO support to v1.x
[HIGHLIGHT] tools: Optimize Bindings Generator
[HIGHLIGHT] Label: Added HANYI FullType font support
[NEW] 3D: Added light map support in Terrain
[NEW] UI: Added ScrollViewBar for displaying a scroll bar at the side of ScrollView (JSB/Lua ready)
[NEW] UI: Enhanced ScrollView with easing out scrolling
[NEW] UI: Added PageView vertical scroll support
[NEW] UI: Added PageView::JumpToPage API
[NEW] UI: Added a setter for line width in DrawNode
[NEW] Action: Permitted setting bitwise flags to action
[NEW] Animate: Added Animate's getCurrentFrameIndex function
[NEW] FileUtils: Added FileUtils::getFileExtension for getting file's extension name
[NEW] Device: Added vibrate support to enable vibration for a duration
[NEW] audio: AudioEngine supported audio preloading
[NEW] UserDefault: Supported removing key pairs from UserDefault
[NEW] spine: Supported Spine runtime 2.3 (Both native and web engine)
[NEW] JS: Added auto binding for BlendFuncFrame
[NEW] console: Supported new portrait projects from templates
[NEW] console: Moved the framework-compile tools into cocos2d-console
[NEW] framework: Support generate prebuilt libs of engine with debug mode
[NEW] Supported Xcode 7
[REFINE] 3D: Supported composite 2D/3D scene by moving UI and camera far away
[REFINE] 3D: Improved Particle3D performance
[REFINE] 3D: Made SkyBox not transparent
[REFINE] 3D: Enable depth write for SkyBox
[REFINE] 3D: Enable depth write for transparent object
[REFINE] 3D: Set depth test function of Skybox brush to always
[REFINE] renderer: Enabled blending all the time for 2D render queue
[REFINE] Director: Made types to handle time consistent by modifing setAnimationInterval argument from double to float
[REFINE] Sprite: Made Sprite::setTexture accept nullptr as parameter
[REFINE] TextureCache: Made addImageAsync function thread safe
[REFINE] Label: Improved code readability
[REFINE] Label: Supported adding child nodes in Label
[REFINE] Label: Refine the implementation about text layout and support debug draw
[REFINE] Label: Supported auto batch with bitmap font or char map
[REFINE] UI: Improved Slider's precision
[REFINE] UI: Made Label and Text share the same fontSize type
[REFINE] UI: Reduced memory usage in Text
[REFINE] UI: Refined scroll event dispatching for ScrollView
[REFINE] UI: Made EditBox::setFontSize not rely on font name property
[REFINE] UI: Made viewport constructor more compile friendly
[REFINE] UI: Improved event handling in TextField
[REFINE] studio: Avoid CSLoader from openning csb file multiple times with fopen
[REFINE] studio: Added BlendFrame support to Skeleton Animation
[REFINE] studio: Enabled blendfunc cascade to the skin of BoneNode
[REFINE] studio: Update reader with parse logic for valid attribute of SkyBox
[REFINE] FileUtils: Remove old path while adding existing search path
[REFINE] Device: Implemented Device::getDPI for Mac
[REFINE] network: Refine NSLog in HttpAsynConnection in release mode
[REFINE] network: Fixed a problem where WebSocket messages may pile up
[REFINE] utils: Made utils::captureScreen saving file in another thread to improve the performance
[REFINE] 3rd party: Update Nibiru SDK to 2.6
[REFINE] platform: Correct all usage of unicode version winapi in FileUtils for win32
[REFINE] JS: Supported new construction for 3d classes in JS
[REFINE] JS: Automatically add extend to need to extend classes in bindings generator
[REFINE] JS: Made UI classes safely extendable in JSB
[REFINE] JS: Improved NodeGrid binding
[REFINE] JS: Refine performance for Cocos Studio JSON parser for 2.x
[REFINE] JS: Made binding functions accept null in JS and convert to nullptr
[REFINE] web: Avoid re-bake the content when the parent node's position get changed
[REFINE] web: Solved repeat loading same resource issue when parsing cocos studio project
[REFINE] web: Added GameNodeObjectData and GameLayerObjectData in JSON parser
[REFINE] web: Updated skeleton animation to the latest version
[REFINE] web: Optimized resources automatic loading in JSON parser
[REFINE] web: Avoid cc.loader resource loading being terminated while encounter errors
[REFINE] web: Throw new Error object instead of error message string
[REFINE] web: Move setDepthTest to renderer
[REFINE] web: Added BlendFuncFrame parser
[REFINE] web: Permitted webp image loading on Chrome
[REFINE] web: Suspended the video player when the browser is minimized
[REFINE] framework: Optimized the lua & js templates
[REFINE] simulator: Made Node, Skeleton needs shown in the middle of the simulator window
[REFINE] Removed EMSCRIPTEN support
[REFINE] Added template project daily build in Jenkins-ci
[REFINE] Removed unused tool gen-prebuilt
[REFINE] Removed deprecated API in templates
[FIX] 3D: Fixed Effect3DOutline issue when the Sprite3D is mirrored
[FIX] 3D: Fixed issue that Sprite3D::getAABBRecursively does not get AABB of Nodes with Sprite3d children
[FIX] 3D: Fixed Menu unusable in 3D scene
[FIX] renderer: UI component can't click correctly by moving UI and camera far away of origin
[FIX] renderer: ListView in Camera with custom mask isn't visible
[FIX] renderer: Temporary fix for Sprite/Label/FastTMX auto-culling failure
[FIX] renderer: Fixed shader issue by reloading shader when light number changed
[FIX] Scheduler: Fixed timer's delta time is error when interval equals to zero
[FIX] Scheduler: Fixed Pause/Resume act incorrectly
[FIX] Scheduler: Fixed the callback will be executed multiple times if the value of delay parameter equal zero
[FIX] Node: Fixed issue that euler angle is NaN when update Euler angle from quaternion and asin value is not between -1 and 1 by accident
[FIX] Scene: Fixed bug that can't add custom member to Scene subclass
[FIX] Sprite: Fixed some warnings and a related bug in CCSprite
[FIX] AutoPolygon: Fixed copy construct & assignment operator memory leakage
[FIX] SpriteBatchNode: Touch screen might cause rendering order disorder when the screen have numerous sprites
[FIX] SpriteBatchNode: Fixed SpriteBatchNode doesn't support setFlipped
[FIX] event: Fixed EventDispatcher wrong dispatch order bug
[FIX] event: Fixed EventListenerKeyboard.onKeyPressed not firing for back button on Android
[FIX] FileUtils: Fixed bug that FileUtils::isDirectoryExist result is not correct on Android while using relative path in 'assets'
[FIX] Action: Fixed bug that CCTargetedAction executes callback twice
[FIX] audio: Fixed playing new audio after stopping an incessant(loop) audio may fail on MAC/iOS
[FIX] audio: Fixed bug that playing audio may fail(error code:-1) on iOS
[FIX] audio: Fixed AudioEngine possible crash on iOS/Mac while playing multiply audio
[FIX] Label: Fixed rendering LabelTTF characters as black boxes on Android by ensuring atlases are purged before resetting
[FIX] Label: Fixed bug that characters are displayed incorrectly with "dark roast.ttf" font
[FIX] Label: Fixed opacity setting is invalid with bitmap font
[FIX] Label: Fixed the color of letter will be overridden by fade action
[FIX] Label: Fixed Label with some specific font is cropped
[FIX] Label: Fixed the content size of Label is incorrect with GLOW effect
[FIX] Label: Fixed spaces is lost if label created with Fingerpop.ttf
[FIX] Label: Fixed Label::getLetter(index)->setVisible(true) cause rendering duplicate letters
[FIX] Label: Fixed Label::setGlobalZOrder invalid issue if label create with system font
[FIX] UI: Fixed issue that Slider::addEventListener doesn't respect the button pressed and button release event
[FIX] UI: Fixed bug that UI component can't be clicked correctly by moving UI and camera far away of origin
[FIX] UI: Fixed inertial scrolling for CCScrollView
[FIX] UI: Fixed bug that ListView::getCurSelectedIndex may cause out of range issue
[FIX] UI: Fixed PageView scrollToPage bug and the curPageIndex bug
[FIX] UI: Fixed game scene displays wrongly while clicking EditBox
[FIX] UI: Fixed RichText layout cause infinite loop issue
[FIX] UI: Fixed formarRenderers in RichText doesnt update container size
[FIX] UI: Fixed TextField hitTest not working as expected issue
[FIX] UI: Fixed Widget::setHighlighted does not work after setBright
[FIX] UI: Fixed Button touch doesn't work with setScale9Enabled
[FIX] UI: Fixed calculation error of Layout viewing area's clipping position in SCISSOR mode
[FIX] UI: Fixed logic error in isMaxLengthEnabled handling invoked by TextField::setString
[FIX] UI: Fixed improper touch intercept event propagation in UI system
[FIX] UI: Fixed EditBox input maxLength for Chinese character issue on iOS
[FIX] UI: Fixed EditBox turning black when soft keyboard hiding
[FIX] UI: Fixed scrollview innerContainer initial position error
[FIX] UI: Fixed issue that Slider create function is not taking account of res type (TextureResType)
[FIX] Scale9Sprite: Fixed Scale9Sprite default capInset bug
[FIX] Scale9Sprite: Fixed issue that Scale9Sprite draw extra 1 pixel when creating from spritesheet
[FIX] studio: Removed "using namespace cocos2d" from CCFrame.h
[FIX] studio: Fixed the SkyBox display error while parsed from editor files
[FIX] studio: Fixed userCamera flag error while parsing old version exported files
[FIX] studio: Fixed GameNode3DReader parse failed error
[FIX] studio: Fixed crash when loading cocostudio json files with null or empty fontName
[FIX] studio: Fixed bug that setColor works on a whole armature, but not on an individual bone
[FIX] studio: Fixed object size error while data is error
[FIX] studio: Fixed issue that bone's color and opacity cannot cascade to bone
[FIX] studio: Fixed issue that bone can be see by other cameras
[FIX] ClippingNode: Removed CCClippingRectangleNode transform error support
[FIX] spine: Fixed the position of debug draw of bones is incorrect
[FIX] spine: Fixed memory leak caused by SkeletonRenderer::initialize
[FIX] network: Fixed Downloader::getHeader failure on win32
[FIX] AssetsManagerEx: Fix AssetsManager crash by protecting Downloader with shared_ptr
[FIX] RenderTexture: Fixed RenderTexture switch foreground to background issue
[FIX] Physics: Fixed circle shape debug draw incorrect issue
[FIX] Physics: Fix transform issue of PhysicsSprite itself and its children
[FIX] tilemap: Fixed small errors in the function TMXXMLParser::getRectForGID
[FIX] tilemap: Fixed crash caused by creating TMX object when related image file is missing or broken
[FIX] effect: Fixed PageTurn3D effect abnormal
[FIX] ProgressTimer: Fixed SpriteProgressToRadialMidpointChanged bug
[FIX] log: Fixed crash on Windows if passing string more than 16kb to cocos2d::log
[FIX] utils: Fixed utils::captureScreen bug while using multiple camera
[FIX] JS: Fixed issue of iOS/JS reflection `callStaticMethod` with bool arg
[FIX] JS: Fixed Objective-C JS reflection bug while using callStaticMethod() with bool argument
[FIX] JS: Fixed issue that subclass of ccui.Widget which overwrote onEnter will cause infinite recursion
[FIX] JS: Fixed Node color property can not be used issue
[FIX] JS: Fixed issue that SocketIO events dont get fired when compile mode set to release
[FIX] JS: Added the conversion for tmxTileFlags to fix TMXLayer::tileFlagsAt binding issue
[FIX] JS: Fixed jsval_to_int and jsval_to_uint issue on 64 bit system
[FIX] Lua: Fixed onTouch begin don't return value
[FIX] Lua: Fixed memory leak in LuaMinXmlHttpRequest
[FIX] Lua: Fixed checkbox Lua bindings issue
[FIX] Lua: Fixed logic issue in cc.pIsSegmentIntersect
[FIX] platform: Fixed issue that getStringUTFChars can not passing emotion from java to c++ on Android
[FIX] platform: Fixed bug that paused game will be awaked by the Clock on Android
[FIX] platform: Fixed bug that Cocos2dxHelper won't be initialized after activity recreate
[FIX] platform: Fixed clipping node doesn't work on Android 5.0
[FIX] platform: Fixed blur shader compliant on win8 universal
[FIX] platform: Fixed the error when compiling android project with release mode on Windows
[FIX] platform: Fixed issue that depth/stencil buffers attributes are ignored on iOS
[FIX] platform: Fixed engine crash because of wrong initialisation on some android device
[FIX] platform: Removed unneeded protocol for AppController on iOS
[FIX] platform: Fixed link errors in release mode on win32
[FIX] platform: Fixed Windows 10 UWP and WP8.1 app certification issue
[FIX] platform: Fixed Android app occasionally freeze issue caused by Cocos2dxRenderer.nativeOnResume() is not called when the activity is resumed
[FIX] web: Fixed a bug that VideoPlayer remove event throw error
[FIX] web: Fixed Armature position error in studio JSON parser
[FIX] web: Fixed default clearColor error in director
[FIX] web: Fixed rotation value parsing error in the timeline parser
[FIX] web: Fixed a bug that nested animation may be affected by outer animation
[FIX] web: Made LabelAtlas ignoring invalid characters and updating correctly the content size
[FIX] web: Fixed a bug that VideoPlayer remove event throw error
[FIX] web: Fixed a bug that cc.director.setNotificationNode(null) doesn't take effect
[FIX] web: Fixed texture rect update issue while changing sprite frame
[FIX] web: Fixed effect issue in ActionGrid and NodeGrid
[FIX] web: Fixed logic issue in Menu's _onTouchCancelled function
[FIX] web: Fixed MenuItem crash when normal image is null
[FIX] web: Fixed CCTouch's startPoint unset issue
[FIX] web: Fixed incomplete fadeout effects
[FIX] web: Fixed issue that return value of cc.screen.fullScreen is not boolean
[FIX] web: Fixed a bug that SkeletonNode is not drawing children
[TEST] 3D: Avoid to trigger touch event multiple times in Physics3D Test and Physics3D Constraint Test
[TEST] 3D: Fixed Sprite3D test background to foreground bug
[TEST] renderer: Added auto culling test case
[TEST] renderer: Fixed material parsing test on wp8.1
[TEST] OpenGL: Fixed shader-basic and OpenGL testcase 'center' uniform error
[TEST] OpenGL: Fixed ShaderRetroEffect random crash issue
[TEST] OpenGL: Fixed offset on retina screen in shaderTest
[TEST] OpenGL: Fixed shader test crash on android device
[TEST] OpenGL: Fixed retro effect pos bug in ShaderTest
[TEST] UI: Improved UIScene testcase
[TEST] studio: Fixed cocostudio 3d test crash on mobile platform
[TEST] studio: Added blendfunc Frame test case for skeleton animation
[TEST] spine: Fixed bug that spine animition can't be rendered in Scene3DTest
[TEST] tilemap: Fixed the problem that white frame didn't move as map did in JSB TMXOrthoObjectsTest
[TEST] JS: Fixed Button position error in UIPageViewTest
[TEST] web: Rewrote testcase for stencil depth mask in RenderTextureTest
[TEST] web: Improved renderTexture stencilDepth test
[TEST] web: Fixed abnormal effects in effectsTest
[TEST] web: Fixed invisiable testcase of effects
cocos2d-x-3.7.1 August.12 2015
[HIGHLIGHT] studio: Added new skeleton animation support and csb parser for cocos v2.3.2 beta
[HIGHLIGHT] studio: Added new skeleton animation support and JSON parser in the web engine
[HIGHLIGHT] studio: Added Skybox csb/JSON parser for cocos v2.3.2 beta
[NEW] Node: Added getNodeToParentTransform with selected ancestor
[NEW] studio: Parsed Touch/Click/Event callback in JSON parser
[NEW] web: Added cc.director.setClearColor and support transparent background
[REFINE] Widget: Synchronize enable state and bright state for Widget
[REFINE] studio: Optimized JSON parser's performance by removing audio play
[REFINE] studio: Optimized editor related extension data to a component instead of hosting in _userObject
[REFINE] studio: Updated Game3DNodeReader & UserCameraReader
[REFINE] Label: Remove file error notice label from TextBMFontReader
[REFINE] JSB: Add firefox remote debugger support in JS templates
[REFINE] web: Improved color/opacity manipulations in MenuItems
[FIX] Scene: Fixed Scene can't be inherited with std::vector members
[FIX] Sprite: Fixed a compile error when CC_SPRITE_DEBUG_DRAW is on
[FIX] Label: Fixed creation fail if the font(TTF) contains a non-unicode charmap
[FIX] Label: Fixed LabelAtlas rendering error for invalid characters and characters out of boundaries
[FIX] Label: Fixed Mac system font crash issue
[FIX] platform: Fixed building with system prebuilt libs on Linux
[FIX] studio: Fixed ccs.Skin construction issue in JSON parser
[FIX] studio: Fixed Particle3d crash while reading file with error
[FIX] studio: Fixed parser crash when sprite 3d resource isn't correct
[FIX] UI: Fixed CheckBox issue that _isSelected state is updated after event processing callbacks
[FIX] JSB: Fixed JSON parser issue that 3d particle can not be displayed
[FIX] web: Fixed an issue that loading process won't trigger callback problem
[FIX] web: Fixed a bug where not resetting cc.Audio._ignoreEnded when replaying a sound caused it to stay in a "playing" state
[FIX] web: cc.ScrollView and cc.TableView: added check for parent visibility in onTouchBegan method
[FIX] web: Fixed TurnPageDown effect
[FIX] web: Fixed Cocos Studio parser issue that all elements are missing while the timeline action contains rotation
cocos2d-x-3.7final July.21 2015
[REFINE] JS: Improve manual binding code for `retain`, `release`, `onEnter`, `onExit`, `onEnterTransitionDidFinish` and `onExitTransitionDidStart`
[REFINE] web: Add compatible Uint16Array defintion
[FIX] Scale9Sprite: Fixed Scale9Sprite gray state issue while `setCapInsets` called
[FIX] studio: Fixed parser issue by checking texture existance
[FIX] studio: Fixed Armature parser issue
[FIX] JS: Fixed cleanup overriding issue in JS that it will cause `too much recursion` error
[FIX] web: Fixed url check regular expression not supporting localhost issue
[FIX] web: Fixed issue that sprite doesn't update texture rect correctly in some condition
cocos2d-x-3.7rc1 July.14 2015
[REFINE] framework: Used msbuild to generating engine prebuilt libs on win32.
[REFINE] 3d: Used shader with normal while creating mesh with normals
[REFINE] 3d: Set default 3d animation quality to low
[REFINE] web: Improved localStorage warning when disabled
[FIX] studio: Fixed percentage setting won't take effect when UISlider's background resource set to null
[FIX] studio: Fixed a bug that SingleNode's color isn't set
[FIX] studio: Fixed child nodes can't be rendered when particle and TiledMap as parent and their resource have been removed from disk
[FIX] studio: Fixed a bug of JSON parser that texture address is wrong
[FIX] studio: Fixed a bug that drawLine & drawPoints don't apply blend function in parser
[FIX] studio: Fixed a bug that check box front cross texture will expand to normal size when change status between normal and disable frequently
[FIX] studio: Fixed a bug that normal texture won't show when slider set to disable mode then clean slider ball disable texture
[FIX] 3d: Fixed obj loading failed on windows
[FIX] 3d: Fixed clipping node does not work for Sprite3D
[FIX] platform: Fixed js template run error on linux
[FIX] Tilemap: Fixed CCTMXXMLParser code negligence
[FIX] JS: Fixed constant value error for ccui.Layout.BACKGROUND_IMAGE_ZORDER
[FIX] JS: Fixed XMLHttpRequest can't be retain in JSB
[FIX] JS: Added cc.path.mainFileName
[FIX] JS: Fixed issue that override cleanup function in JS can't get invoked during node detaching
[FIX] JS: Fixed cc.loader notification issue with image asynchonous loading
[FIX] web: Fixed MenuItems' color/opacity setter issue with child nodes
[FIX] web: Fixed page view's layout issue for JSON parser
[FIX] web: Add ttc loader and prevent the pure digital fonts is invalid
[FIX] web: Fixed Float32Array initialization
[FIX] web: Fixed a bug that layout background is missing
[FIX] web: Fixed a bug that ObjectExtensionData miss setCustomProperty and getCustomProperty function
cocos2d-x-3.7rc0 July.1 2015
[HIGHLIGHT] core: Added Material system (JS/Lua ready)
[HIGHLIGHT] 3d: Added Physics3d support (JS/Lua ready)
[HIGHLIGHT] 3d: Added NavMesh support (JS/Lua ready)
[HIGHLIGHT] Scale9Sprite: Added Android 9-patch image support (JS/Lua ready)
[HIGHLIGHT] sprite: Supported polygon sprite with AutoPolygon generator (JS/Lua ready)
[HIGHLIGHT] platform: Added Windows 10.0 Universal App(UWP) support
[HIGHLIGHT] platform: Add Samsung Enhanced API on Android for cocos, please refer to the release note for more details
[HIGHLIGHT] C++: Added Android Studio support
[HIGHLIGHT] JS: Merged JSB and web engine into Cocos2d-x for a All-in-one engine
[HIGHLIGHT] JS: Added `ccui.VideoPlayer` and `ccui.WebView` for iOS/Android/Web
[HIGHLIGHT] console: Supported build & run Android Studio project with cocos console
[NEW] C++: Added ActionFloat
[NEW] C++: Supported physical keyboard on WinRT
[NEW] FileUtils: checked filename case characters on windows
[NEW] FileUitls: added supporting loading files that which file path include utf-8 characters
[NEW] PhysicsShape: added sensor property
[NEW] Sprite: used triangle command
[NEW] 3d: Added `getFarPlane` and `getNearPlane` in `Camera` class
[NEW] 3d: Added opengl version project/unproject function in camera
[NEW] ui: button add BMFont title support
[NEW] ui: TextField add `getTextColor`, `getTextHorizontalAlignment` and `getTextVerticalAlignment` API
[NEW] ui: Reduce memory consumption of a few UI widgets.
[NEW] audio: added support on WP8.1, now it supports wav format
[NEW] audio: Added MP3 support to winrt audio
[NEW] audio: Added OGG support to winrt audio
[NEW] 3rd: updated rapidjson to v1.0.2
[NEW] web: SIMD.js optimization for kazmath functions (from Intel)
[NEW] web: The json loader of Cocos Studio will automatically load dependencies resources
[NEW] Framework: Added Cocos Framework compilation script tool (used by Cocos)
[NEW] Simulator: Added Cocos Simulator project (used by Cocos)
[REFINE] core: Use quaternion instead of euler angle in `Camera::lookAt`
[REFINE] platform: Differentiated Windows Phone Application and Windows Store Application with `Application::getTargetPlatform`
[REFINE] platform: Improved UserDefault's robustness on Android, now the converting behavior is the same as iOS platform
[REFINE] platform: Added debug flag -Wextra to linux CMakeFile
[REFINE] audio: Permitted to play large ogg files on windows
[REFINE] ui: Use inch for childFocusCancelOffset in UIScrollView
[REFINE] 3d: Improved `Terrain::getIntersectionPoint` by calculating the intersection with triangles
[REFINE] Label: Improve rendering of letter's inner shapes when outline is used
[REFINE] console: Built engine with `LOCAL_ARM_MODE=arm` when building JS projects for android
[REFINE] web: Deleted the redundant variables defined and log informations in ccui.RichText
[REFINE] web: Allowed timeline animations with only one frame
[REFINE] web: Improved property declaration of cc.Texture2D
[FIX] core: Fixed `Director::setClearColor` has no effect bug
[FIX] platform: Fixed VideoPlayer on Android ignore search paths
[FIX] platform: Fixed crash while using s3tc on Nexus 9 (Android 5.0.1)
[FIX] platform: Fixed Application may be created more than once on Android
[FIX] platform: Fixed the Windows 8.1 Universal Apps crash when there is no audio device
[FIX] platform: Fixed android background and foreground switching bug with VertexAttributeBinding
[FIX] platform: Fixed warning "Service Intent must be explicit" on Android
[FIX] studio: Fixed ActionNode memory leaks
[FIX] studio: Fixed CocoLoader destructor memory release bug
[FIX] studio: Fixed cocos studio json reader's bug in percentage mode
[FIX] studio: Fixed rapidjson assert error in cocos studio module
[FIX] network: Win32 CURL doesn't support zlib
[FIX] network: Fixed memory leak of HttpClient on iOS and Mac platform
[FIX] audio: Fixed program may freeze if `AudioEngine::stop` or `AudioEngine::stopAll()` is invoked frequently on Android
[FIX] audio: Fixed a freezing crash in Windows 10 with the new audio engine when pressing stop after play
[FIX] audio: Fixed audio can't resume if it is interrupted by an incoming phone call
[FIX] audio: Fixed `SimpleAudioEngine::playEffect` lagged on Android 5.0.x
[FIX] audio: Fixed `SimpleAudioEngine` may cause application to crash on Android 5.0.x
[FIX] audio: Fixed thread safety problem on Android
[FIX] audio: Added guard to audio engine pointer in `SimpleAudioEngine::end`
[FIX] ui: Text scale factor is wrong with multiline text
[FIX] 3d: skybox can't move to other position except origin point in world space
[FIX] 3d: terrain can't move to other position except origin point in world space
[FIX] 3d: Fixed Terrain lod computing bugs
[FIX] 3d: Fixed clipping node not working for Sprite3D
[FIX] 3rd: Fixed PIE link error on iOS caused by libpng and libtiff
[FIX] 3rd: Fixed iOS libtiff 32bit header file error
[FIX] AssetsManager: crashed issue
[FIX] EaseRateAction: no way to create an `EaseRateAction` instance
[FIX] Label: Fixed compile error when enabling CC_ENABLE_BOX2D_INTEGRATION
[FIX] Label: crashed if invoking `setString(text` after `getLetter(letterIndex)` and `letterIndex` is greater than the length of text
[FIX] Label: position is wrong if label content is changed after invoking `getLetter(letterIndex)`
[FIX] Label: shadow effect cause OpenGL error on iOS
[FIX] Label: outline effect doesn't match characters well
[FIX] Label: Fixed system font label line height calculation is wrong on Android.
[FIX] Label: Fixed IllegalArgumentException on Android 2.3.x
[FIX] Label: Fixed line wrap error without space.
[FIX] Label: The texture of character have not cropped if character cross the axis-aligned bounding-box
[FIX] Label: Fixed the top of character's texture may be tailored if enable outline effect
[FIX] ProgressTimer: `setSprite()` doesn't take effect
[FIX] Sprite3D: setGLProgram() does not work
[FIX] Sprite3D: transition breaks when there is a Sprite3D in the scene
[FIX] Terrain: terrain is on top of particles, particles can not be seen
[FIX] TextureCache: unbindImageAsync failed to unbind all asynchronous callback for a specified bound image
[FIX] TileMap: crashed if a layer contains nothing
[FIX] WebView: memory leak on iOS
[FIX] WebView: Fixed crash on Android
[FIX] WebView: crashed if url contains illegal characters on Android
[FIX] Lua: luaLoadChunksFromZip should just remove .lua or .luac extension
[FIX] Lua: Added some skipped create functions for Sprite
[FIX] Lua: Fixed some lua test case bugs
[FIX] JS: Enabled touches support for Windows 8.1 platform
[FIX] JS: Fixed keyboard support for Windows Phone 8.1 platform
[FIX] web: Fixed positionType error of particle system in timeline parser
[FIX] web: Fixed setAnimationName issue while the property is undefined in timeline parser
[FIX] web: Fixed `cc.TMXObjectGroup#objectNamed` not returning the result bug
[FIX] web: Fixed TransitionSlideX callback sequence issue
[FIX] web: Fixed issue in music end event
[FIX] web: Fixed bug that LayerColor's color will disappear when update transform after being baked
[FIX] web: Fixed `inverse` function bug of `cc.math.Matrix4`
[FIX] web: Fixed the webaudio's invalid loop attribute bug for chrome 42
[FIX] web: Fixed crash when character not found into BMP font
[FIX] web: Fixed spine's js parser issue by avoid NaN duration
[FIX] web: Fixed LabelTTF multiline detection
[FIX] web: Fixed issue in ccui.Widget#getScale
[FIX] web: Fixed texture is not updated in some cases
[FIX] web: PlayMusic should not use the search path (timeline 2.x)
[FIX] web: Fixed bug of loading path of resources
[FIX] web: Premultiply texture's alpha for png by default to fix Cocos Studio render issues
[FIX] web: Fixed cache update issue of Layout after bake
[FIX] web: Fixed isBaked returning undefined issue
[FIX] web: Made CCProgressTimerCanvasRenderCmd to properly show colorized sprites
[FIX] web: Fixed attributes being reset issue while baked cache canvas' size changed
[FIX] web: Fixed texture does not rotate bug of ccui.LoadingBar
[FIX] web: Fixed color not being set issue in timeline parser
[FIX] web: Fixed custom easing animation bug
[FIX] web: Fixed return empty texture2d bug when adding image with same url multiple times
[FIX] web: Fixed actiontimeline can not step to last frame issue when loop play
[FIX] web: Fixed the prompt can not be used in iOS wechat 6.2
[FIX] web: Fixed restoring of sprite's color issue
[FIX] web: Fixed Uint8Array initialize issue
[FIX] web: Fixed cc.TextFieldTTF Delegate memory leaks
[FIX] web: Fixed sorted result is wrong in cc.eventManager (_sortEventListenersOfSceneGraphPriorityDes)
[FIX] web: Fixed BinaryLoader issue on IE11
[FIX] web: Fixed the sprite's texture bug when frequently change the color
[FIX] web: Fixed an issue that action will result in automatic termination
[FIX] web: Fixed ScrollView initWithViewSize issue
cocos2d-x-3.6 Apr.30 2015
[NEW] 3rd: update chipmunk to v 6.2.2 on Windows 8.1 Universal App
[NEW] 3rd: update freetype to v 2.5.5 on Windows 8.1 Universal App
[NEW] C++: Added SpritePolygon
[NEW] Label: added LabelEffect::ALL which can be used in disableEffect(LabelEffect) to disable all effects
[NEW] Lua-binding: binded ui:WebView and added corresponidng test case
[NEW] MathUtil: added `MathUtil::lerp()`
[NEW] UserDefault: added `UserDefault::setDelegate()`
[NEW] Vec2: added `Vec2::setZero()`
[NEW] Vec3: added `Vec3::lerp()`
[NEW] WP8: remove WP8 support because Angle don't support WP8 any more
[NEW] WP8.1: added back button support
[FIX] Animate3D: modify `Animate3D::setHighQuality()` Animate3D::setQuality(), add a new animation quality type none which means that will not update animation to the bone, it is useful when the Sprite3D is out of the screen, it can safe a lot of cpu time.
[FIX] AnimationCurve: memory leak
[FIX] Bundle3D: memory leak when failed to load file
[FIX] HttpClient: memory leak on iOS
[FIX] JNI: JNI illegal start byte error which causes crashing error on Android 5.0
[FIX] PUParticleSystem3D: refactoring create function using initWithXXX
[FIX] UI:VideoPlayer: crashed when playing streamed MP4 file on iOS
[FIX] VideoPlayer: can not play videos on Android v2.3.x
cocos2d-x-3.6beta0 Apr.14 2015
[NEW] 3rd: update Spine runtime to v2.1.25
[NEW] MotionStreak: add `MotionStreak::getStroke()` and `MotionStreak::setStroke()`
[NEW] Rect: added `Rect::intersectsCircle()`
[NEW] UI:Text: add `Text::disableEffect(LabelEffect)` to disable a specific effect
[FIX] 3rd: link error on VS2012 caused by libpng
[FIX] Label: position is wrong if it is visited by a new camera
[FIX] Particle3D: crash on clone
[FIX] Particle3D: "make local" now working correctly. "Make local" is a properties that toggles particle coordination between local and global.
[FIX] Particle3D: particle rotation now no longer stacks up on each other
[FIX] Particle3D: Ribbon Trail now positions correctly
[FIX] Physics: rigid body's rotation is wrong if it is attatched to a node which rotation is not 0
[FIX] Renderer: RenderQueue command buffer optimizing
[FIX] UI:Button: use too much memory
[FIX] UI:Text: content size is wrong after setting outline effect
cocos2d-x-3.6alpha0 Apr.8 2015
[NEW] 3D: added texturecube support
[NEW] 3D: added skybox support
[NEW] 3D: added node animation support
[NEW] 3D: added terrian support
[NEW] 3rd: updated libcurl to v7.4 on all supported platforms except WP8/WP8.1 universal
[NEW] 3rd: updated chipmunk to v6.2.2
[NEW] 3rd: updated openssl to v1.0.11
[NEW] 3rd: updated freetype to v2.5.5
[NEW] 3rd: updated png to v1.6.16 on all supported platforms except WP8/WP8.1 universal because it is not needed on these two platforms
[NEW] Animate3D: added `Animate3D::setHighQuality()` to set animation quality
[NEW] Label: added disableEffect()
[NEW] Lua-binding: used luajit arm64 version on iOS 64-bit devices
[NEW] Sprite3D: getAABBRecursively return own aabb combining childeren's
[NEW] Vec3: added `Vec3::add(float, float, float)` and `Vec3::setZero()`
[FIX] Audio: memory leak
[FIX] Audio: crashed on iOS 5.1.1
[FIX] C++: lag issue if `Director::setContentScaleFactor` is called frequently
[FIX] C++: CDT builder is enabled by default in cpp template on Android
[FIX] Label: shadow color is incorrect
[FIX] MenuItem: crash if `MenuItem::onExit` is called multiple times
[FIX] Particle3D: particles' rotation affect particle system's rotation
[FIX] Sprite3D: memory leak
[FIX] Vec3: use inline function to improve performance
[FIX] WebView: loadHTMLString() can not work if it is invoked in the same frame of creating a webview on iOS
cocos2d-x-3.5 Mar.23 2015
[NEW] EditBox: support Color4B
[FIX] AutoRelasePool: memory leak if adding an element into pool when releasing auto release pool
[FIX] EditBox: have a 100 bytes input limit on windows
[FIX] FileUtils: getWritablePath() does not return correct writable path on Mac & Windows
[FIX] HttpAsynConnection: can not get error content if response code less than 200 or response code greater or equal than 300
[FIX] HttpResponse: reference count error causes assert error
[FIX] Label: stroke color of system font is incorrect on iOS
cocos2d-x-3.5rc0 Mar.13 2015
[NEW] CocosStudio: add callback when loading a CSB file
[NEW] Particle3D: more Particle Universe features are supported, add observers and event handlers
[FIX] Billboard: fix bug on transparent Billboard because of transparent queue
[FIX] Bundle: bug that create bundle with empty path
[FIX] Camera: camera is detroyed unexpectedly when call removeAllChildren
[FIX] C++: use console in `build/build_native.sh`
[FIX] Label: position is wrong if it is visited by a new camera
[FIX] MotionStreak: can not work with MoveTo and MoveBy
[FIX] MoveTo: disable reverse() because it is meaningless
[FIX] Particle3D: to make path shorter, rename Particle Universe folder to PU, and files CCPUParticle3DXXX to CCPUXXX to fix compiling error on WP8
[FIX] Particle3D: `loadMaterialsFromSearchPaths` bug on linux platform
[FIX] Sprite3D: fix bug on transparent 3D Sprite because of transparent queue
cocos2d-x-3.5beta0 Feb.27 2015
[NEW] Added Particle3D
[NEW] C++: add Romanian language support
[FIX] Audio: audio can not resume if it is interrupted, and back from background
[FIX] Cocos Studio UI: setCameraMask does not work for the Cocos Studio UI
[FIX] C++: compiling error when using CC_USE_CULLING
[FIX] Label: texture size of string has unexpected padding on iOS 7 and upper version
[FIX] HttpClient: if the request data is started by a null character, it does not fill http body
[FIX] HttpClient: memory leak on iOS
[FIX] Sprite3D: `getAttachNode()` will fail when there is no bone with name
cocos2d-x-3.4 Jan.30 2015
[FIX] Animate3D: `setSpeed` has not effect if `Animate3D` is used in Sequence
[FIX] C++: will crash if built with armeabi-v7a enabled on Android devices that with armeabi-v7a architecture but doesn't support NEON instructions
[FIX] C++: may crash if VAO is not supported
[FIX] EditBox: content is not clipped correctly on windows
[FIX] GLProgram: will cause crash on some devices that don't support more than 8 atrributes
[FIX] HttpClient: not set response code when connecting failed on Android
[FIX] Label: alpha channel of text color of system font has not effect
[FIX] Label: use int for dimensions that will lose the precision
[FIX] Label: labels will become white block after resume from background on some Android devices, such as xiaomi3
[FIX] Label: improved parsing performance of bitmap font
[FIX] Label: can not display `&` if using system font on windows
[FIX] Lua-binding:studio-support: AnimationInfo is not binded
[FIX] New audio: not close file descriptor leads to that may causes game freeze if playing two many times(may be more than 1000) on Android
[FIX] Node: anchor point has not effect to rotation, it always rotate along (0, 0)
[FIX] Physics integration: Scale9Sprite can't run `Move` action and `Scale` action if used physical scene
[FIX] SpriteFrameCache: `addSpriteFramesWithFil`e may crash if plist file doesn't exist
[FIX] Sprite3D: material files (.mtl) are not loaded for any object when creating from an .obj file
[FIX] UI::ImageView: rendered content size is wrong if `ignoreSize` is true and `Scale9` is not enabled
[FIX] UI::Slider: when scale9 is enabled, the progress bar's rendering height is wrong
[FIX] UI:Scale9Sprite: some position information will be lost when toggling `Scale9` state
[FIX] UI::TextField: will get wrong event message if clicking `TextField` twice
[FIX] UI::TextField: result of `getContentSize` is wrong if it is invoked in insert or delete event callback
[FIX] UI::WebView: base URL can not work
cocos2d-x-3.4rc1 Jan.15 2015
[NEW] C++: added CC_USE_CULLING macro to control if enable auto culling or not
[NEW] FileUtils::fullPathForFilename will return empty string when file can not be found
[NEW] VertexBuffer&IndexBuffer: allow setting usage(GL_STATIC_DRAW or GL_DYNAMIC_DRAW) in create method
[NEW] Renderer: 3D rendering support for 2d objects
[FIX] DrawNode: fix random crash because of init opengl buffer wrongly
[FIX] DrawNode: drawPoints() can not set ponit size
[FIX] EventDispatcher: crash if adding/removing event listeners and dispatching event in event callback function
[FIX] GLProgramState: may cause GL_INVALID_VALUE error at start up on Android
[FIX] LUA: 0x80000000 can not be converted by lua_tonumber correctly on some devices
[FIX] PhysicsBody: can't get correct position in the same frame of adding PhysicsBody to PhysicsWorld
[FIX] UI: fix crash when navigation controller is null
cocos2d-x-3.4rc0 Jan.9 2015
[NEW] 3rd: update libcurl to v7.39
[NEW] 3rd: update luajit to v2.0.3
[FIX] C++: crash when run clang static analyzer in Xcode
[FIX] DrawNode: can not set color when DrawPoints, wrong behavior of drawRect
[FIX] FileUtils: getData() can't get data from file when file was using by other application on windows
[FIX] FileUtils: getData() will cause memory leak if file size is 0 on windows
[FIX] GLProgram: when there is a shader compile error in shader, it will crash on windows
[FIX] GLProgramState: Assert error because uniforms and attribute is not refreshed when come to foreground on android
[FIX] HttpClient: http requests will be lost in immediately mode on iOS
[FIX] JumpTo: can not be applied more than once
[FIX] Label: may cause infinite loop if using system font on Android
[FIX] Particle: GL_INVALID_OPERATION error because VAO and VBOs is not reset when come to foreground on android
[FIX] Physics integration: physics body is not still after disabling gravitational force by PhysicsBody::setGravityEnable()
[FIX] Sprite3DTest: Sprite3DUVAnimationTest, Sprite3DFakeShadowTest, Sprite3DLightMapTest, Sprite3DBasicToonShaderTest will crash on android when switch to foreground from background
[FIX] Template: multiple dex files define error on Android if using Eclipse to build new generated application
[FIX] VideoPlayer: can not play video if passing path returned from FileUtils::fullPathForFilename() on Android
[FIX] WP8: compiling error on ARM architecture
cocos2d-x-3.4beta0 Dec.31 2014
[NEW] 3D: support frustum culling
[NEW] Action: MoveTo and MoveBy support Vec3
[NEW] Allocator: add custom allocator support, global, default, fixed block, object pool
[NEW] Application: added Turkish and Ukrainian language support
[NEW] UI:LoadingBar: add TextureResType to LoadingBar's create method
[NEW] Director: add setClearColor() to set clear values for the color buffers
[NEW] Node: rotation representation using quaternion
[NEW] UI: Added new layout functionality for Cocos Studio, keeps widget margins a fixed set and adjusts the widget size according to the margins.
[NEW] UI: Add gray shader to ui::Button, ui::CheckBox and ui::Slider when the disable state resources are not provided
[NEW] UI: Modify the default behavior when ui::Button, ui::CheckBox and ui::Slider's selected state resources are not provided, the new behavior is scale the normal state texture when the selected state texture are missing.
[NEW] 3rd party libraries: Add prebuilt version of libcurl to Mac and upgrade iOS,Android,Mac and Win32 libcurl to 7.39.0.
[NEW] Replace network module implementation from libcurl to system network API on IOS and Android
[FIX] ui::Button: fix setTitleColor calls method setColor instead of setTextColor of title label.
[FIX] AssetsManagerEx: Fix assetManager can't download file on Win32
[FIX] FileUtils: WebP format with alpha channel displayed wrong
[FIX] Label: content size of Label is incorrect if the string is set to empty string
[FIX] GLProgramState: fix assert error caused by outdated uniform and attribute cache
cocos2d-x-3.3 Dec.12 2014
[FIX] Billboard: allow billboard rotate along z axis
[FIX] Bundle3D: create aabb for mesh whose aabb does not exist (user custom mesh)
[FIX] EditBox: text position and move animation error on iPhone6 Plus
[FIX] FileUtils: createDirectory(): doesn't invoke closedir() after opendir on platforms other than WP8/WinRT/Windows
cocos2d-x-3.3-rc2 Dec.5 2014
[FIX] C++: use 100% of one core on Windows
[FIX] Label: when a label is added to a invisible parent node, app will crash if switching from background
[FIX] Label: label will not be shown when using system font on Mac
[FIX] Studio reader: replace protocol buffer with flatbuffer
cocos2d-x-3.3-rc1 Nov.29 2014
[NEW] Vec2: added greater than operator
[NEW] Tools: Updated cocos console to v1.4 (from 1.2)
[NEW] WP8: Win8.1 universal app support
[FIX] Audio: `SimpleAudioEngine::sharedEngine()->playBackgroundMusic()` crashed freezen on Lollipop(Android5.0)
[FIX] Button: when the dimension of button title is larger than the button, button will scale to fit the dimension of the button title
[FIX] Button: when the dimension of button title is larger than the button, button will scale to fit the dimension of the button title
[FIX] Camera: does not work correctly when the up is not (0, 1, 0)
[FIX] Director: Uses a low-pass filter to diplay the FPS
[FIX] DrawNode: drawPoint() may cause crash
[FIX] EventKeyboard: can not check right Shift, right Ctrl and right ALT
[FIX] GLProgramCache: doesn't release old program with the same key before adding a new one
[FIX] GLProgramState: enabled GLProgramState restoring on render recreated on WP8
[FIX] Label: label shifting when outline feature enabled
[FIX] Label: when applying additionalKerning to a Label that displays a string with only 1 character, the character is shifted
[FIX] Label: display incompletely with multiline text with outline feature enabled
[FIX] Label: crash if using BMFont but missing corresponding png file
[FIX] Lua: logical error in luaval_to_quaternion
[FIX] New audio: can not loop on Android 2.3.x
[FIX] Random: CCRANDOM_0_1() and CCRANDOM_MINUS_1_1() can be seeded using std::srand(seed)
[FIX] Scale9Sprite: will be flipped if both flipX and flipY are false
[FIX] Scale9Sprite: if scale and flip property are set at the same time, the result would be wrong
[FIX] Scene: setScale() doesn't work as expected
[FIX] Sprite3D: did not create attached sprite from cache
[FIX] Tests: Sprite Performance Test automation works as expected
[FIX] UI: Text: invoke ignoreContentAdatpSize(false) will cause wrong effect
[FIX] VideoPlayer: showed in wrong place on Android v2.3.x
[FIX] WebView: showed in wrong place on Android v2.3.x
[FIX] WP: back key behaviour and Director::getInstance()->end() works not correctly
[FIX] Lua-binding: XmlHttpRequest would truncate binary data
cocos2d-x-3.3-rc0 Oct.21 2014
[NEW] 3d: added light support: direction light, point light, spot light and ambient light
[NEW] Added ClippingRectangleNode
[NEW] Added AssetsManagerEx, which is more powerful than AssetsManager
[NEW] Added a test case of sprite lamp effect
[NEW] Animate3D: can create with start frame and end frame
[NEW] Audio: new audio supports Mac OS X and Windows
[NEW] Application: added openUrl()
[NEW] Armature: added getOffsetPoints()
[NEW] Lua-binding: added Camera3DTest ,BillBoradTest
[NEW] Node: schedule/unschedule lambda functions
[NEW] Rect: added merge()
[NEW] Spine: update to 2.0.18
[NEW] TileMap: added staggered tile map support
[NEW] Utils: added getCascadeBoundingBox()
[NEW] WP8: enabled screen orientation change handling
[FIX] Accelerometer: using Accelerometer will freeze app and then crash on WP8
[FIX] Application: getCurrentLanguageCode() always return empty string
[FIX] Action: kRepeatForever macro superseded by CC_REPEAT_FOREVER macro
[FIX] C++: remove armv7s in VALID_ARCHS for Xcode projects
[FIX] Cocos Studio reader: UI animation playing crash if GUI JSON file is loaded again
[FIX] Cocos Studio reader: improvement ImageViewReader don't necessary loadTexture when imageFilePath is empty
[FIX] EditBox: view rendered in wrong position if click EditBox on iOS 8
[FIX] FileUtils: can not remove files/directory on iOS devices
[FIX] GLProgram: crashed on some Android devices that do not support more than 8 attributes
[FIX] Label: getStringNumLines() may returns wrong result if label is dirty
[FIX] Label: can not change opacity if using FNT font
[FIX] Label: endless loop if not using system font, and constrained length is less than one character width
[FIX] LabelAtlas: opacity do not change when setting parent's opacity
[FIX] Lua-bindings: may crash if passing two-dimensional table from lua to c++
[FIX] New audio: can not play audio after playing some times on Android
[FIX] Node: macro scheduler_selector() superseded by CC_SCHEDULER_SELECTOR(). The same is true for the other schedule_ macros
[FIX] Node: unscheduleAllSelectors() deprecated in favor of unscheudleAllCallbacks()
[FIX] Node: crashed if remove/add child too quickly when using integrated physics
[FIX] TextFieldTTF: will get wrong characters if using Chinese input method on WP8
[FIX] TextureCache: memory leak in reloadTexture()
[FIX] UI: Button: button remains gray when releasing it, this issue only happened if enable scale9 and only has one texture
[FIX] UI: Button: when creating a button with a title only, button content size is not immediately updated
[FIX] UI: EditBox: setMaxLength is invalid on mac
cocos2d-x-3.3-beta0 Sep.20 2014
[NEW] 3d: added `BillBoard`
[NEW] ActionManager: added removeAllActionsByTag()
[NEW] Audio: added new audio system for iOS and Android
[FIX] DrawNode: has as many functions as `DrawPrimitive`
[NEW] GLViewProtocol: added getAllTouches()
[NEW] Node: added stopAllActionsByTag()
[NEW] PhysicsWorld: add setSubsteps() and getSubsteps()
[NEW] Renderer: added TriangleCommand
[NEW] UI: added `WebView` on iOS and Android
[FIX] C++: CMake works for Mac builds
[FIX] C++: Reorganized cocos2d/platform folder. Easier to add new platforms
[FIX] EditBox: moved to ui:EditBox
[FIX] External: ScrollView: scroll view hidden picks up the touch events
[FIX] FastTileMap: change indices to short because not all devices support int indices which will prevent drawing tilemap
[FIX] FileUtils: can not create and delete directory on wp8
[FIX] HttpClient: condition variable sleep on unrelated mutex
[FIX] Image: optimize decompress jpg data
[FIX] Label: outline effect may be wrong if outline width is big and font size is big too
[FIX] MenuItem: memory leak if using menu_selector
[FIX] MeshCommand: generate wrong meterial id which will cause problem that only first mesh is drawn
[FIX] Node: create unneeded temple `Vec2` object in `setPosition(int, int)`, `setPositionX()` and `setPositionY()`
[FIX] Node: skew effect is wrong
[FIX] Node: setNormalizedPosition can not take effect if parent position is not changed
[FIX] TextureAtlas: may crash if only drawing part of it
[FIX] UI: Button: a button can not be touched if it only contains title
[FIX] UI: Button: title can not be scaled if a button is scaled
cocos2d-x-3.3alpha0 Aug.28 2014
[NEW] 3D: Added Camera, AABB, OBB and Ray
[NEW] 3D: Added better reskin model support
[NEW] Core: c++11 random support
[NEW] Core: Using `(std::notrow)` for all the `new` statements
[NEW] Desktop: Added support for applicationDidEnterBackground / applicationWillEnterForeground on desktop
[NEW] Device: added setKeepScreenOn() for iOS and Android
[NEW] EventMouse: support getDelta, getDeltaX, getDeltaY functions
[NEW] FileUtils: add isDirectoryExist(), createDirectory(), removeDirectory(), removeFile(), renameFile(), getFileSize()
[NEW] FileUtilsApple: allow setting bundle to use in file utils on iOS and Mac OS X
[NEW] Image: support of software PVRTC v1 decompression
[NEW] Lua-binding: added release_print that can print log even in release mode
[NEW] Physics Integration: can invoke update in demand
[NEW] Renderer: Added primitive and render primitive command, support passing point, line and triangle data
[NEW] Renderer: Added method for custom precompiled shader program loading on WP8
[NEW] Renderer: Added consistent way to set GL context attributes
[NEW] RenderTexture: add a call back function for saveToFile()
[NEW] RotateTo: added 3D rotation support
[NEW] ScrollView: added `setMinScale()` and `setMaxScale()`
[NEW] Sprite3D: added setCullFace() and setCullFaceEnabled()
[NEW] Sprite3D: added getBoundingBox() and getAABB()
[NEW] SpriteFrameCache: load from plist file content data
[NEW] utils: added gettime()
[NEW] UI: Added UIScale9Sprite
[NEW] UI: ui::Button: support customize how much zoom scale is when pressing a button
[NEW] UI: ui::PageView: added `customScrollThreshold`, could determine the swipe distance to trigger a PageView scroll event
[NEW] UI: ui::TextField: support utf8
[NEW] UI: ui::TextField: support set color and placeholder color
[NEW] UI: ui::Widget: support swallowing touch events
[NEW] Text: added getter and setter for TextColor
[FIX] EditBox: font size is not scaled when GLview is scaled on Mac OS X
[FIX] EditBox: began/end events not work
[FIX] Label: can not set charmap after it is created
[FIX] Label: setTextColor does not have any effect on Mac OS X
[FIX] Label: result of LabelTTF::getBoundingBox() is wrong
[FIX] Label: can not set outline color correctly if using system font on iOS
[FIX] Label: character edge will be cut a little if character size is small
[FIX] LabelBMFont: result of LabelBMFont::getBoundingBox() is wrong
[FIX] ListView: can not insert an item in specific position, it is added at bottom
[FIX] LoadingBar: position is changed if changing direction
[FIX] ParticleSystem: effect is wrong if scene scaled
[FIX] ParticleSystemQuad: setTotalParticles() can't set a value larger than initialized value
[FIX] PhysicsBody: return wrong bitmask
[FIX] Scale9Sprite: new added sprite will be hidden
[FIX] Slider: if the UISlider is faded, the slide ball won't fade together
[FIX] Sprite: will turn black if opacity is set other than 255 and be added into SpriteBatchNode
[FIX] TableView: can handle touch event though its parents are invisible
[FIX] TextField: can not use backspace to delete a character
[FIX] Widget: may crash if remove itself in touch call back function
[FIX] Widget: not support cascaded opacity and cascaded color by default
[FIX] VideoPlayer: memory leak on iOS
[FIX] VideoPlayer: video frame size is not calculated correctly on iOS
[FIX] VideoPlayer: video player not showing on iOS if it's not in FullScreen mode
[FIX] Others: can not import java library shift by engine correctly when using Eclispe on Android
[FIX] Others: optimize FPS control algorithm on Android
[FIX] Lua-binding: replace dynamic_cast to std::is_base_of in object_to_luaval
[3rd] fbx-conv: complex FBX model support which is useful for reskin, multiple meshes and multiple materials support
cocos2d-x-3.2 Jul.17 2014
[NEW] Node: added getChildByName method for get a node that can be cast to Type T
[NEW] FileUtils: could add search path and resolution order path in front
[FIX] Animation3D: getOrCreate is deprecated and replaced with Animation3D::create
[FIX] Animate3D: setSpeed() accept negative value, which means play reverse, getPlayback and setPlayBack are deprecated
[FIX] EditBox: can not set/get text in password mode on Mac OS X
[FIX] Game Controller: joystick y value inversed on iOS
[FIX] GLView: cursor position is not correct if design resolution is different from device resolution
[FIX] Label: color can not be set correctly if using system font on iOS
[FIX] LabelTTF: may lost chinese characters on linux
[FIX] Lua-binding: support UIVideoPlayer
[FIX] Node: setRotation3D not work based on anchor point
[FIX] Node: modify regular of enumerateChildren, now it just searchs its children
[FIX] Physics integration: body shape will be wrong when using negative value to scale
[FIX] ScrollViewDelegate: make the scrollView delegate methods optional
[FIX] Setup.py: will crash on windows because of checking `zsh`
[FIX] SpriteBatchNode: opacity can not work
[FIX] Sprite3D: may crash on Android if playing animation and replace Scene after come from background
[FIX] UIwidget: opacity is wrong when replace texture
[FIX] UIRichText: will crash when using utf8 string and the length exceed specified length
[FIX] UIText: can not wrap words automatically
[FIX] UITextField: keyboard can not hide if touching space outside of keyboard
[FIX] UITextField: can not wrap words automatically
[FIX] UIVideoPlayer: can not exit full screen mode on Android
[FIX] Others: don't release singleton objects correctly that are needed in the whole game, which will be treated
as memory leak when using VLD.
[FIX] Others: compiling error when building for iOS 64-bit devices with Xcode6 beta3
cocos2d-x-3.2rc0 Jul.7 2014
[NEW] FastTMXTiledMap: added fast tmx, which is much more faster for static tiled map
[NEW] GLProgramState: can use uniform location to get/set uniform values
[NEW] HttpClient: added sendImmediate()
[NEW] Label: support setting line height and additional kerning of label that not using system font
[NEW] Lua-binding: Animation3D supported
[NEW] Lua-binding: UIEditor test cases added
[NEW] Lua-binding: UI focus test cases added
[NEW] Node: added getName(), setName(), getChildByName(), enumerateChildren()
and addChild(Node* node, int localZOrder, const std::string &name)
[NEW] Node: physical body supports rotation
[NEW] Sprite3D: support c3b binary format
[NEW] utils: added findChildren() to find all children by name
[NEW] Value: added operator == !=
[FIX] Armature: blend func has no effect
[FIX] Armature: crashed when remove armature in frame event
[FIX] Animation3D: doesn't load original pose, which leads to wrong effect if not playing animation
[FIX] Animation3D: animation for unskined bones lost
[FIX] FileUtils: getStringFromFile may return a unterminated string
[FIX] Lua-binding: Sequence:create will cause drop-dead issue
[FIX] Lua-binding: lua-tests cant be loaded on 64 bits iOS devices and Linux
[FIX] Node: Node::setScale(float) may not work properly
[FIX] Physics integration: child node can move with its father
[FIX] Physics integration: support scale
[FIX] Sprite3D: 20% performance improved, simplify shader, use VAO and batch draw
[FIX] Studio support: NodeReader may cause crash
[FIX] UIButton: doesn't support TTF font
[FIX] UIButton: `getTitleColor()` doesn't equal to the value set by `setTitleColor()`
[FIX] UIListView: addEventListener can not work
[FIX] UIListView: element position is changed a little when you click and up a list view without move
[FIX] UIListView: element will respond to item_end event when end of scrolling a list view
[FIX] UIVideo: crash when try to remove videoView(STATE_PLAYBACK_COMPLETED) on android
[FIX] WP8: crash of utils::captureScreen()
cocos2d-x-3.2-alpha0 Jun.17 2014
[NEW] Console: add a command to show engine version
[NEW] Node: added setter/getter for NormalizedPosition(). Allows to set positions in normalized values (between 0 and 1)
[NEW] Scene: Added createWithSize() method
[NEW] TextField: added getStringLength()
[NEW] TextureCache: added unbindImageAsync() and unbindAllImageAsync()
[NEW] utils: added captureScreen()
[NEW] UIText: added shadow, outline, glow filter support
[NEW] Sprite3D: support 3d animation
[NEW] Animation3D: 3d animation
[FIX] Application.mk: not output debug message in release mode on Android
[FIX] Android: 3d model will be black when coming from background
[FIX] Android: don't trigger EVENT_COME_TO_BACKGROUND event when go to background
[FIX] Cocos2dxGLSurfaceView.java: prevent flickering when opening another activity
[FIX] Director: Director->convertToUI() returns wrong value.
[FIX] GLProgram: not abort if shader compilation fails, just return false.
[FIX] GLProgramState: sampler can not be changed
[FIX] Image: Set jpeg save quality to 90
[FIX] Image: premultiply alpha when loading png file to resolve black border issue
[FIX] Label: label is unsharp if it's created by smaller font
[FIX] Label: Label's display may go bonkers if invoking Label::setString() with outline feature enabled
[FIX] Label: don't release cached texture in time
[FIX] Label: calculated height of multi-line string was incorrect on iOS
[FIX] Lua-binding: compiling error on release mode
[FIX] Lua-binding: Add xxtea encrypt support
[FIX] Node: setPhysicsBody() can not work correctly if it is added to a Node
[FIX] Node: state of _transformUpdated, _transformDirty and _inverseDirty are wrong in setParent()
[FIX] Node: _orderOfArrival is set to 0 after visit
[FIX] Other: link error with Xcode 6 when building with 32-bit architecture
[FIX] RenderTexture: saveToFile() lost alpha channel
[FIX] Repeat: will run one more over in rare situations
[FIX] Scale9Sprite: support culling
[FIX] Schedule: schedulePerFrame() can not be called twice
[FIX] ShaderTest: 7 times performance improved of blur effect
[FIX] SpriteFrameCache: fix memory leak
[FIX] Texture2D: use image's pixel format to create texture
[FIX] TextureCache: addImageAsync() may repeatedly generate Image for the same image file
[FIX] WP8: will restart if app goes to background, then touches icon to go to foreground
[FIX] WP8: will be black if: 1. 3rd pops up a view; 2. go to background; 3. come to foreground
[FIX] WP8: project name of new project created by console is wrong
[FIX] WP8: missing texture after app switch
[3RD] curl: will crash if use https request on iOS simulator
[3RD] curl: update OpenSSL to v1.0.1h
cocos2d-x-3.1.1 May.31 2014
[FIX] GLProgramState: restores states after coming from background
cocos2d-x-3.1 May.24 2014
[FIX] EventKeyboard::KeyCode: key code for back button changed from KEY_BACKSPACE to KEY_ESCAPE
[FIX] Label: may crash when using outline effect
[FIX] Label: using outline and invoking 'Director::setContentScaleFactor' cause label show nothing
[FIX] ProgressTo: will start from 0 when it reaches 100
[FIX] Physics integration: may crashes if remove bodies at physics contact callback
[FIX] UIWidget: copyProperties() lost copy some properties
[FIX] WP8: orientation is not correct when it is set to portrait
[FIX] WP8: fix for precompiled shaders and precompiled headers
[FIX] WP8: template supports orientation
cocos2d-x-3.1-rc0 May.18 2014
[NEW] Cocos2dxActivity: Adds a virtual method to load native libraries.
[NEW] Directory Structure: reorder some files within the cocos/ folder
[NEW] Sprite3D: a node that renders 3d models
[NEW] EditBox: support secure input on Mac
[FIX] ControlButton: cascade opacity and color error
[FIX] Director: twice calling of onExit
[FIX] Math: Vector2->Vec2, Vector3->Vec3, Vector4->Vec4, Matrix->Mat4
[FIX] GLProgram: uniform CC_Texture0 is pre-defined by cocos2d. MUST NOT be defined in shaders
[FIX] GLProgramState: Supports multitexturing
[FIX] Studio:ActionObject: correct TotalTime of ActionObject
[FIX] Studio: FrameData::copy doesn't copy `isTween` property
cocos2d-x-3.1-alpha1 May.9 2014
[NEW] Animate: Dispatch a custom event after an animation frame is displayed
[NEW] GLProgram: Easy to customize uniforms and attributes by using the new class GLProgramState
[NEW] Template: cpp project support Eclipse c++ project
[NEW] UI: add navigation support
[NEW] UI: add a widget to play video
[NEW] VS: support VS 2013
[FIX] Audio: pause sound automatically when go to background on Android
[FIX] Director: remove keepData and releaseData
[FIX] Label: label is unsharp if it's created by system font with small size on iOS & Mac OS X
[FIX] Label: Label created with system font is still visible when its opacity is 0
[FIX] Label: Label created with system font havs black border on WP8/WINRT
[FIX] Lua: A potential crash in the bindings of sp.SkeletonAnimation.setAnimation
[FIX] Lua: Lua template should fail to launch on lua error
[FIX] ParticleSystem: Particles can be created without a texture
[FIX] ParticleSystem: yFlippedCoord behavior fixed.
Added cocos2d/tools/particle to fix particles that were based on the old (broken) behaviour
[FIX] Setup.py: Added SDK / NDK detection based on PATH
[FIX] UIText: support TTF
[FIX] Value: all types share the same union to reduce memory usage
cocos2d-x-3.1-alpha0 May.1 2014
[NEW] Android: Adds support for get response when Activity's onActivityResult is triggered
[NEW] Core: Adds RefPtr<T> smart pointer support
[NEW] Label: supports auto-culling
[NEW] Math: New unified math library that supersedes Kazmath, CCGeometry and CCAffine*
[NEW] Test: Adds a sample for making a outline sprite by using a custom shader
[FIX] Application: Application::run returns wrong value on Mac platform
[FIX] Build scripts: Improved cmake files for Linux, and Android.mk for Android
[FIX] Image: saveToImage may cause memory leak
[FIX] Lua: cc.pGetAngle may return wrong value
[FIX] Network: HttpRequest uses std::function as callback
[FIX] Particle: The effect of particle loaded from CocosBuilder is incorrectly
[FIX] ParticleSystem: particle direction in verticality is opposite when "configName" has value and "yCoordFlipped" is -1
[FIX] Physics: PhysicsSprite's transform couldn't be updated
[FIX] Value: default value changed to false
[FIX] WP8: Some bug fixes
cocos2d-x-3.0 Apr.23 2014
[NEW] Lua: add `RichText` test cases
[NEW] EditBox: Added missing Text Font and Placeholder feature for Mac platform
[FIX] cocos console: Zipalign the apk generated with release mode
[FIX] Director: Application crashes on closing if CC_ENABLE_CACHE_TEXTURE_DATA is enabled
[FIX] Image: memoery leak
[FIX] Image: crashes when save a jpg file
[FIX] Lua: 'EditBox' can't response 'changed','ended' and 'return' event on Windows
[FIX] Lua: new project will crash on iOS 5.1 devices
[FIX] Others: compiling error when CC_LABELBMFONT_DEBUG_DRAW or CC_LABELATLAS_DEBUG_DRAW is enabled
[3rd] libcurl: support ssl again on iOS
cocos2d-x-3.0rc2 Apr.15 2014
[NEW] Event: Adds `EventListener::setEnabled/isEnabled` to support enable/disable event listeners
[NEW] GLView: Added createWithFullscreen overloaded method for selecting monitor and setting video mode
[FIX] Android: Cocos2dxHelper.runOnGLThread() can't work
[FIX] Animation: Added 'loops' parameter to Animation::createWithSpriteFrames
[FIX] Audio: can not resume after pausing on windows
[FIX] Audio: stopalleffect lead to stop background music on WP8
[FIX] Audio: play effect may lead to memory leak on WP8
[FIX] CocoStudio: Potential crash in SceneReader::createNodeWithSceneFile
[FIX] Control: ControlButton can't swallow touch event
[FIX] Event: Removing and re-adding an event listener will trigger an assert
[FIX] Event: A potential crash when unregistering listener right after its registration
[FIX] Event: EventDispatcher::setDirtyForNode doesn't consider node's children
[FIX] FileUtils: 'isFileExist' doesn't consider SearchPaths and ResolutionOrders
[FIX] Image: The result of 'malloc' is incompatible with type 'unsigned char *' in Image::saveImageToPNG
[FIX] JNI: doesn't cache classloader which may cause crash on Android devices with 4.2 or upper version
[FIX] Network: HTTPClient reports 2xx status codes as errors
[FIX] Lua: Added ScriptHandlerMgr::destroyInstance to avoid memory leak
[FIX] Physics: Skips one frame when delta time is equal to zero
[FIX] Physics: PhysicsShapeEdgeChain::init() always return false
[FIX] Setup: Force updating environment variables in setup.py
[FIX] Value: A potential memory leak in value's default constructor
cocos2d-x-3.0rc1 April.2 2014
[NEW] Application: Adds getCurrentLanguageCode() which returns iso 639-1 language code
[NEW] cocos2d::extension::ScrollView: Elastic bounce back effect support
[NEW] Constructor: Added CC_CONSTRUCTOR_ACCESS macro to re-define constructor/initXXX methods to 'public' access.
[NEW] Label: Added new methods 'set(Anti)AliasTexParameters' for enabling/disabling antialias
[FIX] Android: Reloaded texture is not shown if it has the mipmap
[FIX] Android: Application may become black at first time entering on some devices
[FIX] Audio: Stopped music could also be resumed on iOS
[FIX] CCBReader: Wrong logic in CCBAnimationManager::moveAnimationsFromNode
[FIX] CocoStudio: ActionObject memory leak in ActionManagerEx::initWithDictionary
[FIX] Console: initialize some variables that are not initilized in destructor
[FIX] Console: refactor 'upload' command, encode file with base64, detach 'upload' from main loop
[FIX] EventDispatcher: Potential crashes in EventDispatcher while using SceneGraphPriroity listeners
[FIX] FileUtils: addSearchResolutionsOrder doesn't check whether there is a 'slash' at the end of path
[FIX] FileUtils: Boolean value could not be written to specified plist file
[FIX] GLView: Can't receive touchEnded event when mouse up outside of window on desktop platforms
[FIX] Image: Some functions and variables in Image class is private, it should be protected
[FIX] Label: Crash if label's type is STRING_TEXTURE and label->sortAllChildren is called
[FIX] Label: Display incorrect of multi-line label if invoking 'getLetter'
[FIX] Label: Default Anchor point isn't in middle and shadow offset doesn't consider contentScaleFactor
[FIX] Label: Label's color is incorrect if it's created by font name
[FIX] Label: Missing letters if using old LabelTTF and running on iPhone 64bit simulator(device)
[FIX] Label: Refactor implementation of label's shadow
[FIX] Label: Stroke was not 'outside stroke' for Label which is generated by 'Font name'
[FIX] Label: Wrong logic in Label::setFontAtlas
[FIX] Label: Read file more than once for label created by different font size
[FIX] Label: Getting wrong rectangle by LabelTTF(LabelBMFont)::getBoundingBox.
[FIX] Label: Possible crash if invoking FontAtlasCache::purgeCachedData
[FIX] LuaBinding: Adds `addCustomHandler` in the ScriptHandlerMgr
[FIX] LuaBinding: Upgrading LuaSocket to the latest version
[FIX] Menu: Added missed scaleZ feature in ScaleTo and ScaleBy.
[FIX] Network: Implements 'SIODelegate::fireEventToScript' method to integrate JSB event handling with the original native code.
[FIX] Network: WebsocketTest crashes on win32, mutex varible may be deleted while it's still locked
[FIX] ParticleSystem: Particle will stop animating if it was removed and re-added to another node
[FIX] ParticleSystem: Set particle visible to false then set to true cause crashes
[FIX] Physics: Incorrect function invocation in PhysicsBody::setAngularVelocityLimit
[FIX] Physics: PhysicsBody::setGravityEnable doesn't work correctly sometimes
[FIX] Physics: PhysicsBody moves randomly when switch foreground/background
[FIX] Physics: Refactors PhysicsDebugDraw
[FIX] Tests: Memory leak in CocosDenshionTest
[FIX] Texture2D: Support to update partial texture
[FIX] Tools: The apk generated with release mode in cocos-console can't be installed
[FIX] UI: Widget::addNode is confused, need to add ProtectedNode to remove addNode API.
[FIX] UI: Adding HBox, VBox layouts, refactoring 'doLayout' function
[3RD] Chipmunk: Upgraded to v6.2.1
[3RD] libwebsockets: Upgraded to v1.23
cocos2d-x-3.0rc0 March.14 2014
[All]
[NEW] Action: RotateBy supports 3D rotations
[NEW] Bindings: Using python to automatically generate script bindings
[NEW] ccConfig.h: removed support for CC_TEXTURE_ATLAS_USE_TRIANGLE_STRIP
[NEW] Console: Added command: 'autotest run|main|next|back|restart'.
[NEW] Console: Added 'resolution', 'projection' commands. Improved API
[NEW] Console: Added more commands: director resume|pause|stopanimation|startanimation.
[NEW] Console: Added command: 'touch tap|swipe' to simulating touch events.
[NEW] Console: Added command: 'upload filename filesize' to upload a file to writable path.
[NEW] Director: Displays 'Vertices drawn' in the stats. Useful to measure performance.
[NEW] GLProgram: initWithVertexShaderByteArray() -> initWithByteArrays()
[NEW] GLProgram: initWithVertexShaderFilename()a -> initWithFilenames()
[NEW] GLProgram: addAttribute() -> bindAttributeLocation()
[NEW] Label: can custom shadow and outline size
[NEW] Label: LabelTTF was re-implemented as a wrapper of Label
[NEW] Node: Added set/get Position3D() and set/get Rotation3D()
[NEW] Node: Calculates rotation X and Y correctly.
[NEW] Node: set/get VertexZ() -> set/get PositionZ()
[NEW] Node: setRotationX() -> setRotationSkewX()
[NEW] Node: setRotationY() -> setRotationSkewY()
[NEW] Node: visit() and draw() new arguments: Renderer, parentTransform, and whether or not the parentTransform has changed since the last frame
[NEW] Language: Added Dutch support
[NEW] Sprite: Added auto-culling support. Performance increased in about 100% when many sprites are outside the screen
[NEW] Setup.sh: added script to set up environment needed for cocos2d-x
[NEW] Scheduler: Added new API [ schedule(std::function, ...), schedule(member_func, ...) ], deprecated the old API [ scheduleSelector(member_func, ...) ]
[FIX] Action: FadeIn and FadeOut behaviours is incorrect if it doesn't start from an edge value( 0 or 255)
[FIX] Array: crash when invoking initWithObjects()
[FIX] Action: Merge cocostudio/CCActionXxx to CCAction
[FIX] Bindings: Adds a macro to disable inserting script binding relevant codes
[FIX] Bindings: Supports 'setTimeout' and 'setInterval' in JSB
[FIX] Bindngs: Exposes the missing data structures of Spine to JS
[FIX] Bindings: cc.BuilderReader.load( path, null, parentSize ); was not allowed
[FIX] Console: crashes on Windows
[FIX] ControlButton: Crash if it was removed from parent in its callback
[FIX] CocoStudio: Logical error in 'TriggerObj::detect()'
[FIX] Director: Crash if invoking Director::end() on WINDOWS
[FIX] Director: setAnimationInterval has not effect on Mac
[FIX] EditBox: position would not be updated if its parent's position changed
[FIX] EditBox: Voice recognition input would cause crash on ios7
[FIX] EGLView: renamed to GLView, no longer a singleton, easier to customize
[FIX] EventDispatcher: removeAllEventListeners() remove event listeners used internally, make textures not reload on Android when come from background
[FIX] EventDispatcher: dispatchEventToListeners() causes "out of range" exception
[FIX] Image: s3tc compressed textures with no mipmaps fail to be loaded
[FIX] Label: A string which only contains CJK characters can't make a line-break when it's needed
[FIX] Label: Character would not be aligned on the baseline when label using distance field
[FIX] Label: Color and opacity can't take effect
[FIX] Label: Font size passed to new Label didn't consider 'contentScaleFactor'
[FIX] Label: loading custom fonts from ttf file fails on windows
[FIX] Label: LabelAtlas::setColor takes no effect
[FIX] MotionStreak: Added unimplemented position getter/setter
[FIX] Node: setAdditionalTransform receives a pointer and not a const reference
[FIX] Node: setRotation() moves opposite when node has a physics body
[FIX] Node: Can not use Node::setPhysicsBody to reset a physics body
[FIX] Object: Object -> Ref, and remove unneeded functions
[FIX] Other: Removes samples except testcpp|testjavascript|testlua. Moves sample games to `cocos2d/samples` repo
[FIX] Physics integration: Improves physical performance
[FIX] Physics integration: PhysicsContact::_contactData may be double freed.
[FIX] Physics integration: PhysicsShapeBox::getSize returns wrong value.
[FIX] ParticleSystemQuad: setTotalParticles() can not set a value larger than initialized value
[FIX] Renderer: Expand textureID bit from 18bits to 32bits. Resolves probably crash on Linux / Android
[FIX] RenderTexture: save screen with RenderTexture got unexpected result
[FIX] RenderTexture: saveToFile() can't write png file correctly
[FIX] Spine: spine::Skeleton would not be updated after being re-added to scene
[FIX] Sprite: not work as expected when CC_SPRITE_DEBUG_DRAW is 1
[FIX] Scheduler: Thread deadlock if new functions are added in callback of Scheduler:: performFunctionInCocosThread
[FIX] Tests: EditBoxText crashes on Win32 when being clicked many times
[FIX] Tests: ChipmunkTest bounding box for debugging couldn't be shown
[FIX] Tests: CocoStudioGuiTest/LabelBMFontTest crashes
[FIX] Tests: Particle test/AddAndRemove test crashes
[FIX] Tests: RenderTextureTest not drawn when coming from background
[FIX] Tests: LabelTTFMultiline show nothing on mac
[FIX] Timer::cancel always call Director::getInstance()->getScheduler() even in another Scheduler
[FIX] Tests: Potential crash by switching repeatly between HttpClientTest, WebSocketTest, SocketIOTest
[FIX] Tests: State is changed to RESUME when game comes back to foreground if pause button was clicked in Interval Test
[FIX] TMXLayer: Removing child from TMXLayer may cause crash
[FIX] TMXObjectGroup: Object values (x, y, width and height) from TMXObjectGroup are incorrect
[FIX] TMXXMLParser: Refactored the codes of parsing pure xml layer format for tilemap
[FIX] TMXXMLParser: 'y' value is parsed incorrectly
[FIX] UI: Changes namespace from 'cocos2d::gui' to 'cocos2d::ui'.
[FIX] UI: Supports RichText
[FIX] Vector: Object which isn't in Vector would also be released when invoking Vector::eraseObject.
[FIX] Websocket: Potential crash when websocket connection closes.
[FIX] Websocket: No callback is invoked when websocket connection fails
[FIX] Xcode 5.1: Added Xcode 5.1 to build arm64 version, but can not require socket module in lua, will fix it soon
[3RD] Kazmath: Upgraded to latest version of Kazmath
cocos2d-x-3.0beta2 Jan.24 2014
[All]
[NEW] Full screen support for desktop platforms.
[NEW] Adds performance test for EventDispatcher.
[NEW] Adds performance test for Containers(Vector<>, Array, Map<K,V>, Dictionary).
[NEW] DrawNode supports to draw triangle, quad bezier, cubic bezier.
[NEW] Console: added the 'textures', 'fileutils dump' and 'config' commands
[NEW] GLCache: glActiveTexture() is cached with GL::activeTexture(). All code MUST call the cached version in order to work correctly
[NEW] Label: Uses a struct of TTF configuration for Label::createWithTTF to reduce parameters and make this interface more easily to use.
[NEW] Label: Integrates LabelAtlas into new Label.
[NEW] Node: Added `setGlobalZOrder()`. Useful to change the Node's render order. Node::setZOrder() -> Node::setLocalZOrder()
[NEW] Renderer: Added BatchCommand. This command is not "batchable" with other commands, but improves performance in about 10%
[FIX] event->stopPropagation can't work for EventListenerTouchAllAtOnce.
[FIX] Uses unified `desktop/CCEGLView.h/cpp` for desktop platforms (windows, mac, linux).
[FIX] Bindings-generator supports Windows again and remove dependency of LLVM since we only need binary(libclang.so/dll).
[FIX] Removes unused files for MAC platform after using glfw3 to create opengl context.
[FIX] Wrong arithmetic of child's position in ParallaxNode::addChild()
[FIX] CocoStudio: TestColliderDetector in ArmatureTest can't work.
[FIX] CocoStudio: The order of transform calculation in Skin::getNodeToWorldTransform() is incorrect.
[FIX] Crash if file doesn't exist when using FileUtils::getStringFromFile.
[FIX] If setting a shorter string than before while using LabelAtlas, the effect will be wrong.
[FIX] Label: Memory leak in FontFreeType::createFontAtlas().
[FIX] Label: Crash when using unknown characters.
[FIX] Label: Missing line breaks and wrong alignment.
[FIX] Label: Corrupt looking characters and incorrect spacing between characters
[FIX] Label: Label:color and opacity settings are invalid afeter these these properties changed: 1)text content changed 2)align style changed 3)max line width limited
[FIX] Label: Crash when using unknown characters
[FIX] Console: log(format, va_args) is private to prevent possible resolution errors
[FIX] Configuration: dumpInfo() -> getInfo()
[FIX] ControlSlider doesn't support to set selected thumb sprite.
[FIX] ControlButton doesn't support to set scale ratio of touchdown state.
[FIX] Particles: Crash was triggered if there is not `textureFileName`section in particle plist file.
[FIX] Renderer: Uses a float as key with only the depth. Viewport, opaque are not needed now
[FIX] Renderer Performance Fix: QuadCommand::init() does not copy the Quads, it only store a reference making the code faster
[FIX] Renderer Performance Fix: Sprite and SpriteBatchNode (and subclasses) has much better performance
[FIX] Renderer Performance Fix: When note using VAO, call glBufferData() instead of glBufferSubData().
[FIX] Renderer Performance Fix: Doesn't sort z=0 elements. It also uses sort() instead of stable_sort() for z!=0.
[FIX] Sprite: removed _hasChildren optimization. It uses !_children.empty() now which is super fast as well
[FIX] Tests: Sprites Performance Test has 4 new tests
[FIX] TextureCache: getTextureForKey and removeTextureForKey work as expected
[FIX] TextureCache: dumpCachedTextureInfo() -> getCachedTextureInfo()
[FIX] Websocket doesn't support send/receive data which larger than 4096 bytes.
[FIX] Object: Remove _retainCount
[FIX] ParallaxNode: Coordinate of Sprite may be wrong after being added into ParallaxNode
[FIX] Crash if there is not `textureFileName`section in particle plist file
[FIX] Websocket cannot send/receive more than 4096 bytes data
[FIX] TextureCache::addImageAsync can't load first image
[FIX] ControlSlider: Can not set "selected thumb sprite"
[FIX] ControlSlider: Can not set "scale ratio"
[FIX] Crash when loading tga format image
[FIX] Keyboard pressed events are being repeatedly fired before keyboard is released
[Android]
[FIX] Background music can't be resumed when back from foreground
[FIX] ANR (Application Not Responding) appears on android 2.3 when pressing hardware button.
[lua binding]
[NEW] Can bind classes that have the same class names but different namesapces
[FIX] Use EventDispatcher to update some test cases
[FIX] sp.SkeletonAnimation:registerScriptHandler should not override cc.Node:registerScriptHandler
[javascript binding]
[NEW] Bind SAXParser
[FIX] Pure JS class that wants to inherite from cc.Class will trigger an irrelevant log
[FIX] Mac and iOS Simulator should also use SpiderMonkey which was built in RELEASE mode
[FIX] Crash when running JSB projects on iOS device in DEBUG mode
[FIX] Crash when Firefox connects to JSB application on Mac platform.
[Desktop]
[NEW] Support fullscreen
[Linux]
[FIX] "Testing empty labels" in LabelTest crashes.
[Mac]
[FIX] Removes unused files after using glfw3 to create opengl context
[Win32]
[FIX] Compiling error when using x64 target
[FIX] Tests: TestCpp works with CMake
[FIX] Bindings-generator supports Windows again and remove dependency of LLVM since it only needs binary of libclang
cocos2d-x-3.0beta Jan.7 2014
[All]
[NEW] New label: shadow, outline, glow support
[NEW] AngelCode binary file format support for LabelBMFont
[NEW] New spine runtime support
[NEW] Add templated containers, such as `cocos2d::Map<>` and `cocos2d::Vector<>`
[NEW] TextureCache::addImageAsync() uses std::function<> as call back
[NEW] Namespace changed: network -> cocos2d::network, gui -> cocos2d::gui
[NEW] Added more CocoStudioSceneTest samples.
[NEW] Added UnitTest for Vector<T>, Map<K, V>, Value.
[NEW] AngelCode binary file format support for LabelBMFont.
[NEW] New renderer: Scene graph and Renderer are decoupled now.
[NEW] Upgrated Box2D to 2.3.0
[NEW] SChedule::performFunctionInCocosThread()
[NEW] Added tga format support again.
[NEW] Adds UnitTest for Template container and Value class
[FIX] A Logic error in ControlUtils::RectUnion.
[FIX] Bug fixes for Armature, use Vector<T>, Map<K, V> instead of Array, Dictionary.
[FIX] Used c++11 range loop(highest performance) instead of other types of loop.
[FIX] Removed most hungarian notations.
[FIX] Merged NodeRGBA to Node.
[FIX] Potential hash collision fix.
[FIX] Updates spine runtime to the latest version.
[FIX] Uses `const std::string&` instead of `const char*`.
[FIX] LabelBMFont string can't be shown integrally.
[FIX] Deprecates FileUtils::getFileData, adds FileUtils::getStringFromFile/getDataFromFile.
[FIX] GUI refactoring: Removes UI prefix, Widget is inherited from Node, uses new containers(Vector<T>, Map<K,V>).
[FIX] String itself is also modified in `String::componentsSeparatedByString`.
[FIX] Sprites with PhysicsBody move to a wrong position when game resume from background.
[FIX] Crash if connection breaks during download using AssetManager.
[FIX] OpenAL context isn't destroyed correctly on mac and ios.
[FIX] Useless conversion in ScrollView::onTouchBegan.
[FIX] Two memory leak fixes in EventDispatcher::removeEventListener(s).
[FIX] CCTMXMap doesn't support TMX files reference external TSX files
[FIX] Logical error in `CallFuncN::clone()`
[FIX] Child's opacity will not be changed when its parent's cascadeOpacityEnabled was set to true and opacity was changed
[FIX] Disallow copy and assign for Scene Graph + Actions objects
[FIX] XMLHttpRequest receives wrong binary array
[FIX] XMLHttpRequest.status needs to be assigned even when connection fails
[FIX] TextureCache::addImageAsync may load a image even it is loaded in GL thread
[FIX] EventCustom shouldn't use std::hash to generate unique ID, because the result is not unique
[FIX] CC_USE_PHYSICS is actually impossible to turn it off
[FIX] Crash if connection breaks during download using AssetManager
[FIX] Project_creator supports creating project at any folder and supports UI
[Android]
[NEW] build/android-build.sh: add supporting to generate .apk file
[NEW] Bindings-generator supports to bind 'unsigned long'.
[FIX] XMLHttpRequest receives wrong binary array.
[FIX] 'Test Frame Event' of TestJavascript/CocoStudioArmatureTest Crashes.
[FIX] UserDefault::getDoubleForKey() doesn't pass default value to Java.
[iOS]
[FIX] Infinite loop in UserDefault's destructor
[Windows]
[NEW] CMake support for windows.
[Bindings]
[NEW] Support CocoStudio v1.2
[NEW] Adds spine JS binding support.
[FIX] Don't bind override functions for JSB and LuaBining since they aren't needed at all.
[FIX] The order of onEnter and onExit is wrong.
[FIX] The setBlendFunc method of some classes wasn't exposed to LUA.
[FIX] Bindings-generator doesn't support 'unsigned long'
[FIX] Potential hash collision by using typeid(T).hash_code() in JSB and LuaBinding
[Lua binding]
[NEW] New label support
[NEW] Physcis integrated support
[NEW] EventDispatcher support
[FIX] CallFuncND + auto remove lua test case have no effect
[FIX] Lua gc will cause correcsponding c++ object been released
[FIX] Some lua manual binding functions don't remove unneeded element in the lua stack
[FIX] The setBlendFunc method of some classes wasn't exposed to LUA
[Javascript binding]
[FIX] `onEnter` event is triggered after children's `onEnter` event
cocos2d-x-3.0alpha1 Nov.19 2013
[all platforms]
[DOC] Added RELEASE_NOTES and CODING_STYLE.md files
[FIX] Texture: use CCLOG to log when a texture is being decoded in software
[FIX] Spine: fix memory leaks
[FIX] fixed a memory leak in XMLHTTPRequest.cpp
[FIX] removeSpriteFramesFromFile() crashes if file doesn't exist.
[FIX] Avoid unnecessary object duplication for Scale9Sprite.
[FIX] create_project.py does not rename/replace template projects completely.
[FIX] Could not set next animation in CCBAnimationCompleted callback.
[FIX] The Node's anchor point was changed after being added to ScrollView.
[FIX] Refactored and improved EventDispatcher.
[FIX] EventListeners can't be removed sometimes.
[FIX] When parsing XML using TinyXML, the data size has to be specified.
[FIX] Parameter type: const char* -> const string&
[FIX] Armature: many bug fixed, add more samples, add function to skip some frames when playing animation
[FIX] Configuration of VAO in runtime
[FIX] Webp Test Crashes.
[FIX] TransitionScenePageTurn: z fighting
[FIX] AssetsManager: Adding test whether the file directory exists when uncompressing file entry,if does not exist then create directory
[FIX] CCBReader: To set anchor point to 0,0 when loading Scale9Sprite
[FIX] OpenGL Error 502 in Hole Demo
[FIX] AssetsManager: downloading progress is not synchronized with actual download
[FIX] SpriteFrameCache: memory leak when loading a plist file
[FIX] removeSpriteFramesFromFile() crashes if file doesn't exist
[FIX] EditBox: can't click the area that outside of keyboard to close keyboard
[FIX] CCBReader: can not set next animation in AnimationCompleted callback
[FIX] Node's anchor point was changed after being added to ScrollView
[FIX] EventDispather: refactor method and fix some bugs
[FIX] EventListner: cann't be removed sometimes
[FIX] UserDefault: didn't set data size when parsing XML using TinyXML
[FIX] Webp test crashed
[FIX] CCHttpClient: The subthread of CCHttpClient interrupts main thread if timeout signal comes.
[NEW] Arm64 support.
[NEW] Added Mouse Support For Desktop Platforms.
[NEW] Point: Adds ANCHOR_XXX constants like ANCHOR_MIDDLE, ANCHOR_TOP_RIGHT, etc.
[NEW] Sprite: Override setScale(float scaleX, float scaleY)
[NEW] External: added | operator for Control::EventType
[NEW] Android & iOS screen size change support
[NEW] GLProgram: setUniformLocationWithMatrix2fv, setUniformLocationWithMatrix3fv
[NEW] Color[3|4][B|F]: comparable and explicit convertible
[NEW] Contorl::EventType add | operation
[NEW] Performance Test: Sprite drawing
[NEW] Adjusted folder structure
[NEW] Added tools to simplify upgrading game codes from v2.x to v3.x
[FIX] Added virtual destructors on Interfaces
[Android]
[FIX] Added EGL_RENDERABLE_TYPE to OpenGL attributes
[FIX] Fixed application will crash when pause and resume.
[FIX] Clear NoSuchMethodError Exception when JniHelper fails to find method id
[FIX] Fixed crash when backging from background
[FIX] LabelTTF: crashed when setting dimension input height value less than the height of the font and the input width value is 0
[FIX] Changed data type of 'char' to signed as default
[NEW] Added xlargeScreens="true" to supports-screens
[NEW] Added build/android-build.py to build all Android samples, and remove all build_native.sh/cmd
[NEW] Added build_native.py to build template projects, and remove build_native.sh/cmd
[NEW] Added Cocos2dxHelper.runOnGLThread(Runnable) again
[NEW] Added support for orientation changed
[NEW] Disabled CDT Builder on Eclipse
[Mac]
[FIX] Removed unused CCLOG() from GL initialization
[FIX] HttpClientTest: crash
[iOS]
[FIX] Can't click the area that outside of keyboard to close keyboard when using EditBox.
[NEW] Added support for orientation changed
[Linux]
[NEW] Used CMake to build linux projects.
[FIX] Closed X display after getting DPI on Linux.
[Win32]
[FIX] Last test case of OpenglTest crashed
[Desktop]
[FIX] Trigger onKeyReleased only after the key has been released.
[NEW] Added mouse support
[Javascript binding]
[FIX] Fixed a memory leak in ScriptingCore::runScript()
[FIX] sys.localStorage.getItem() does not support non-ascii string.
[FIX] cc.Scheduler.schedule(target, func) without repeat argument couldn't repeat schedule forever on device.
[FIX] CCBReader can't play sequence automatically in JSB.
[FIX] Wrong convention to jsval in cccolor4f_to_jsval and cccolor3b_to_jsval
[FIX] sys.localStorage: doesn't support non-ascii string
[FIX] BuilderReader: can't play sequence automatically
[FIX] Wrong conversion to javal in cccolor4f_to_jsval and cccolor3b_to_jsval
[NEW] main.js -> cocos2d-jsb.js
[NEW] Remote debugging using Firefox, "step into" can not work
[NEW] Added binding for Node::setScale(float, float)
[NEW] Impvoved armature binding
[NEW] Added CocoStudio releated binding codes: gui, scene parser, and add corresponding samples
[Lua Binding]
[NEW] Added Armature lua binding and added test samples.
[NEW] Added LuaObjectBridge & LuaJavaBridge to simplify invoking objective-c codes and java codes from lua
[NEW] Added CocoStudio releated binding codes: gui, scene parser, and add corresponding samples
[NEW] Added AssetsManager binding and corresponding sample
[NEW] Added XMLHttpRequest lua binding and corresponding sample
cocos2d-x-3.0alpha0 @Sep.19 2013
[all platforms]
[FIX] TargetAction::reverse() works as expected
[FIX] Fixed crash in OpenGLTest
[FIX] Fixed logic when passing an empty std::vector to WebSocket::init()
[FIX] Fixed crash in ParticleSystemQuad due to improper deletion of VBO and VAO
[FIX] Point::isSegmentIntersect() returns correct value
[FIX] Improved UTF8 response code in XmlHttpRequest
[FIX] Observers with the same target and name but different sender are the same observer in NotificationCenter
[NEW] Added ATITC format support
[NEW] Better integration with physics engine
[NEW] New Event Dispatcher: supports Keybaord, Touches, Accelerometer, Custom events. Added Tests as well
[NEW] New Label code: Faster and more efficient than previous code
[NEW] Added S3TC support
[NEW] Added a method to get duration of timeline for CCBAnimationManager class
[NEW] Array is compatible with STL containers.
[3RD] Upgraded SpiderMonkey to Firefox v23
[Android]
[FIX] Fixed When lock screen or entering background and resume the application textures from pvr.ccz file become black
[FIX] Fixed Stroke font color
[NEW] Uses Native Activity
[iOS]
[FIX] Status bar can be hidden on iOS 7
[FIX] Added iOS7 icons to templates and tests
[Mac OS X]
[NEW] iOS and Mac tempaltes were merged into one single Xcode project file.
[NEW] Added Lua template
[JavaScript bindings]
[FIX] CCBReader is able to set properties to owner if 'owner var' is setted
[FIX] Fixed crash when extending cc.ScrollView in JS
[FIX] cc.registerTargettedDelegate supports pure js object as its target
[FIX] Fixed memory leak in the binding glue code of cc.FileUtils.getStringFromFile(getByteArrayFromFile)
[NEW] Added bindigns for Sprite::getDisplayFrame(), ControlButton callback and RemoveSelf
[Lua bindings]
[NEW] Bind Sprite::getDisplayFrame()
cocos2d-x-3.0alpha0-pre @Jul.30 2013
[all platforms]
[FIX] #2124: Image::initWithImageFileThreadSafe is not thread safe
[FIX] #2230: Node::onEnterTransitionDidFinish was called twice when a node is added in Node::onEnter
[FIX] #2237: calculation offset in font rendering
[FIX] #2303: missing precision when getting strokeColor and fontFillColor
[FIX] #2312: WebSocket can not parse url like "ws://domain.com/websocket