12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697989910010110210310410510610710810911011111211311411511611711811912012112212312412512612712812913013113213313413513613713813914014114214314414514614714814915015115215315415515615715815916016116216316416516616716816917017117217317417517617717817918018118218318418518618718818919019119219319419519619719819920020120220320420520620720820921021121221321421521621721821922022122222322422522622722822923023123223323423523623723823924024124224324424524624724824925025125225325425525625725825926026126226326426526626726826927027127227327427527627727827928028128228328428528628728828929029129229329429529629729829930030130230330430530630730830931031131231331431531631731831932032132232332432532632732832933033133233333433533633733833934034134234334434534634734834935035135235335435535635735835936036136236336436536636736836937037137237337437537637737837938038138238338438538638738838939039139239339439539639739839940040140240340440540640740840941041141241341441541641741841942042142242342442542642742842943043143243343443543643743843944044144244344444544644744844945045145245345445545645745845946046146246346446546646746846947047147247347447547647747847948048148248348448548648748848949049149249349449549649749849950050150250350450550650750850951051151251351451551651751851952052152252352452552652752852953053153253353453553653753853954054154254354454554654754854955055155255355455555655755855956056156256356456556656756856957057157257357457557657757857958058158258358458558658758858959059159259359459559659759859960060160260360460560660760860961061161261361461561661761861962062162262362462562662762862963063163263363463563663763863964064164264364464564664764864965065165265365465565665765865966066166266366466566666766866967067167267367467567667767867968068168268368468568668768868969069169269369469569669769869970070170270370470570670770870971071171271371471571671771871972072172272372472572672772872973073173273373473573673773873974074174274374474574674774874975075175275375475575675775875976076176276376476576676776876977077177277377477577677777877978078178278378478578678778878979079179279379479579679779879980080180280380480580680780880981081181281381481581681781881982082182282382482582682782882983083183283383483583683783883984084184284384484584684784884985085185285385485585685785885986086186286386486586686786886987087187287387487587687787887988088188288388488588688788888989089189289389489589689789889990090190290390490590690790890991091191291391491591691791891992092192292392492592692792892993093193293393493593693793893994094194294394494594694794894995095195295395495595695795895996096196296396496596696796896997097197297397497597697797897998098198298398498598698798898999099199299399499599699799899910001001100210031004100510061007100810091010101110121013101410151016101710181019102010211022102310241025102610271028102910301031103210331034103510361037103810391040104110421043104410451046104710481049105010511052105310541055105610571058105910601061106210631064106510661067106810691070107110721073107410751076107710781079108010811082108310841085108610871088108910901091109210931094109510961097109810991100110111021103110411051106110711081109111011111112111311141115111611171118111911201121112211231124112511261127112811291130113111321133113411351136113711381139114011411142114311441145114611471148114911501151115211531154115511561157115811591160116111621163116411651166116711681169117011711172117311741175117611771178117911801181118211831184118511861187118811891190119111921193119411951196119711981199120012011202120312041205120612071208120912101211121212131214121512161217121812191220122112221223122412251226122712281229123012311232123312341235123612371238123912401241124212431244124512461247124812491250125112521253125412551256125712581259126012611262126312641265126612671268126912701271127212731274127512761277127812791280128112821283128412851286128712881289129012911292129312941295129612971298129913001301130213031304130513061307130813091310131113121313131413151316131713181319132013211322132313241325132613271328132913301331133213331334133513361337133813391340134113421343134413451346134713481349135013511352135313541355135613571358135913601361136213631364136513661367136813691370137113721373137413751376137713781379138013811382138313841385138613871388138913901391139213931394139513961397139813991400140114021403140414051406140714081409141014111412141314141415141614171418141914201421142214231424142514261427142814291430143114321433143414351436143714381439144014411442144314441445144614471448144914501451145214531454145514561457145814591460146114621463146414651466146714681469147014711472147314741475147614771478147914801481148214831484148514861487148814891490149114921493149414951496149714981499150015011502150315041505150615071508150915101511151215131514151515161517151815191520152115221523152415251526152715281529153015311532153315341535153615371538153915401541154215431544154515461547154815491550155115521553155415551556155715581559156015611562156315641565156615671568156915701571157215731574157515761577157815791580158115821583158415851586158715881589159015911592159315941595159615971598159916001601160216031604160516061607160816091610161116121613161416151616161716181619162016211622162316241625162616271628162916301631163216331634163516361637163816391640164116421643164416451646164716481649165016511652165316541655165616571658165916601661166216631664166516661667166816691670167116721673167416751676167716781679168016811682168316841685168616871688168916901691169216931694169516961697169816991700170117021703170417051706170717081709171017111712171317141715171617171718171917201721172217231724172517261727172817291730173117321733173417351736173717381739174017411742174317441745174617471748174917501751175217531754175517561757175817591760176117621763176417651766176717681769177017711772177317741775177617771778177917801781178217831784178517861787178817891790179117921793179417951796179717981799180018011802180318041805180618071808180918101811181218131814181518161817181818191820182118221823182418251826182718281829183018311832183318341835183618371838183918401841184218431844184518461847184818491850185118521853185418551856185718581859186018611862186318641865186618671868186918701871187218731874187518761877187818791880188118821883188418851886188718881889189018911892189318941895189618971898189919001901190219031904190519061907190819091910191119121913191419151916191719181919192019211922192319241925192619271928192919301931193219331934193519361937193819391940194119421943194419451946194719481949195019511952195319541955195619571958195919601961196219631964196519661967196819691970197119721973197419751976197719781979198019811982198319841985198619871988198919901991199219931994199519961997199819992000200120022003200420052006200720082009201020112012201320142015201620172018201920202021202220232024202520262027202820292030203120322033203420352036203720382039204020412042204320442045204620472048204920502051205220532054205520562057205820592060206120622063206420652066206720682069207020712072207320742075207620772078207920802081208220832084208520862087208820892090209120922093209420952096209720982099210021012102210321042105210621072108210921102111211221132114211521162117211821192120212121222123212421252126212721282129213021312132213321342135213621372138213921402141214221432144214521462147214821492150215121522153215421552156215721582159216021612162216321642165216621672168216921702171217221732174217521762177217821792180218121822183218421852186218721882189219021912192219321942195219621972198219922002201220222032204220522062207220822092210221122122213221422152216221722182219222022212222222322242225222622272228222922302231223222332234223522362237223822392240224122422243224422452246224722482249225022512252225322542255225622572258225922602261226222632264226522662267226822692270227122722273227422752276227722782279228022812282228322842285 |
- 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] Andorid: 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_* valuse, add default Proguard Config for cocos
- [REFINE] Android: remove ant project
- [REFINE] Android: update NDK from r14 to r16
- [REFINE] Andorid: 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 stensil 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 doesn’t 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 don’t 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 can’t 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
|