Cocos2d-x 3.12 버전이 릴리즈 되었네요.
다음 링크는 깃헙에 있는 변경사항 링크입니다.
https://github.com/cocos2d/cocos2d-x/blob/v3/CHANGELOG
업데이트 사항은 다음과 같습니다.
[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
영어로 되어있긴하지만 주요 업데이트 내용은 다음과 같습니다.
1. VR 지원
2. 타이젠 지원
3. 안드로이드 성능 이슈 해결
4. 웹 엔진 성능 WebGL mode로 향상
5. obb extension 안드로이드 지원
그 외 새로 추가된 메서드, 이슈 해결 관련 목록이네요
천천히 읽어보고 추가할 내용있으면 추가해서 다시 작성해보겠습니다.
즐거운 개발 되시길 바랍니다.