Since the release of Cocos Creator 2.1.0, we have received a lot of valuable suggestions from users. Based on previously announced plans, we will continue to speed up the iteration of the v2.1 series to implement user suggestions as quickly as possible. At the same time, in order to prevent these changes from affecting the stability of old projects, we only recommend upgrading projects with 3D requirements to v2.1. Other projects can continue to use v2.0, and wait until v2.2 is released before upgrading. This v2.1.1 upgrade mainly supports 3D scene editing, camera preview, lighting system, and also incorporates the latest 2.0.x changes.
Support 3D scene editing
The Scene Editor allows you to switch to 3D editing mode with one click, making it easy to edit 3D objects, cameras, and lights. See the 3D Scenes document 1 for details.
Add game preview panel
A separate preview panel has been added to visually preview the images seen by the camera during scene editing. Panel Open: Main Menu → Panel → Game Preview, the preview panel can be placed in a separate window or dragged into the main editor window.
Add 3D lighting and shadows
A Light component has been added to lay out lights in the scene, and a shadow effect can be set in conjunction with MeshRenderer. See the Light Source Component Reference documentation.
Upgraded EditBox component
Now, developers can set the Text Label, Placeholder Label and Background nodes separately, making them more flexible, simple, and more in line with the component development. See the EditBox Component Reference documentation.
Add text shadow rendering component
A new LabelShadow component has been added to add a shadow effect to the Label component, similar to the LabelOutline usage. See the Label Component Reference documentation.
Support for dynamically creating 3D Primitive models
cc.primitive module to dynamically create 3D models at runtime, including: box, cone, cylinder, plane, etc. See the Basic 3D Objects documentation.
Integrated Material System (Beta)
Added support for material systems, allowing users to create Material and Effect (Shader) resource types. It should be noted that the current material system is mainly provided to the internal use of the engine and is only for developer preview. We plan to upgrade the material system in v2.1.2, however it will not be back-ported to this version.
- Added shortcut
Ctrl/Cmd + Shift + Fto align the currently selected node to the perspective of the scene editor.
- When you click in the scene editor, you can hold down
Ctrl/Cmdfor multiple selections at the same time.
- Improve fault tolerance processing for custom engines to avoid editor startup failure
- Improve the search performance of the resource manager under very large projects
- Add menu File -> Open project in new window to support simultaneous opening of multiple projects on Mac
- Hide the component’s
enabledcheckbox when the component does not define the
enabledassociated lifecycle function
- Upgrade the TypeScript version to 3.3.3333
cc.Vec3compatible with related APIs of
- Improved Label positioning accuracy in the editor and on different browsers (thanks to “Dacheng Xiaopeng” for advice)
- Optimization 3D skeletal animation performance and volume
cc.macro.CLEANUP_IMAGE_CACHEflag is enabled by default on the native platform to reduce texture memory usage
- Native platform automatically verifies the maximum supported texture size of the current device
- Add WeChat Mini game XMLHttpRequest support for timeout event [#87]
cc.sys.HUAWEI_GAMEenumeration to determine if it is currently Huawei’s fast game platform
- Optimized Android 5 system’s WebView compatibility
- Allow iOS browser to play automatically when VideoPlayer is muted
Editor Fix List
- Fixed an issue where
BuildResults.getNativeAssetPathmight not get the texture path
- Fixed removal animation editor error message caused by the animation frame being edited
- Fixed an object already destroyed warning that appears when you repeatedly enter Prefab edit mode
Engine Repair List
- Fixed an issue where
enabledInHierarchyis always false when the component does not define
- Fixed an issue where ToggleGroup is not fully disabled when the active node is false
- Fix Label’s opacity is not working
- Fix Slider’s anchor settings will affect clicks [#4163]
- Fix Particle System after playing, hide the node and display the problem of residual particles [#4243]
- Fixed a memory leak issue that could be caused by too many particles in the particle system[#4256]
- Fix native platform resources Download, XMLHttpRequest, WebSocket, SocketIO possible crash after request [#1721] [#1716]
- Fix native platform XMLHttpRequest may crash due to timeout [#1724]
- Fix native platform loading via IPV6 under the telecom network (WeChat avatar) file may fail [[#1713]] (https://github.com/cocos-creator/cocos2d-x-lite/pull/1715)
- Fix native platform OpenGL draw error #4017
- Fix native platform Label there may be black border issues when rendering system text [#130]
- Fixed an issue where the audio file on the Android platform could not be loaded when it was not in OBB[#1611]
- Fixed an issue where the Android platform received a touch event before the engine initialization was completed could cause a crash [#1715]
- Fix Windows platform window may report an error when minimizing restore [#129]
- Fixed Windows platform error when opening window [#1732]
- Fixed an issue where the volume setting to 0 is invalid on Browser
- Fix 3D Project incompatibleWeChat game Open Data Domain issue
- Fix 3D model bone penetration problem [#4188]
- Removed the creation entry for the CoffeeScript script. CoffeeScript scripts can still be created manually, and we plan to remove full support for CoffeeScript in v3.0.
Follow-up version plan
(The version plan is for reference only, the final version content and release order are subject to actual conditions)
- Continuously optimize performance and improve stability
- Support for more small game platforms
- Optimized Auto Atlas
- Enhanced compression texture support
- Further optimize the platform compatibility of the EditBox
- Support skeletal animation resource lazy loading
- Optimize the small game platform build process
- Greatly optimize native platform base rendering performance
- Greatly optimized TiledMap support
- Support for 3D physical systems and collision detection
- Upgrade the material system added in 2.1.1 from the experimental version to the official version