Cocos Creator v1.6.0 Beta Releases (Updated with rc.1)

Cocos Creator v1.6.0-rc.1 Release:

Highlight Features

  • Upgrade the JSB engine to SpiderMonkey v52 and binding layer code, a substantial increase in Android platform performance
  • Game preview using bundle-free script compilation mode, regardless of the number of scripts included in the project, the compilation process can be done in 2 seconds.
  • Parse and cache BMFont data during asset import phase, results in a significant increase in the speed of the runtime instantiation of bmfont.
  • Replace websocket library on iOS platform with facebook/SocketRocket, to solve most of the iOS platform-specific disconnection and connectivity issues
  • When building Web platform, can choose to add an MD5 string to the output asset file name to resolve the problem that the client can not correctly update the cached assets.

Changelog

v1.6.0-rc.1(google translated)

  • [JSB] Improve setTimeout, setInterval implementation
  • [Engine] When creating a new Label render object, use the object pool instead of new
  • [Properties] After the repair of the Properties query timed out, the panel stopped the status of the node until the node was restarted until the node was restarted
  • [Engine] Fixing a problem when using the LabelOutline on a native platform to cause a crash
  • [Properties] There is a problem with removeAttributes 'when the multi-select component is repaired

v1.6.0-beta.6

  • [Audio] [Breaking] Fixed audioEngine.stop will trigger a problem with the finish event callback issue. Now setFinishCallback sets the callback only at the end of the natural play

  • [Engine] Fixed compatibility issues using TypeScript with JSB

  • [BMFont] Improved behavior loading BMFont assets with multiple textures, eliminating errors in indexing textures

  • [Label] Improve the performance instantiating TTF fonts

  • [AssetDB] Fixed the problem that the texture assets in JPG format can not be deleted or renamed

  • [Particle] Fixed issue that particle asset can not be exported when the file property is null

  • [Editor] Fixed error too many open files when there are too many scripts in the project

  • [Editor] Fixed an issue where the editor could not load the raw asset dependencies through url.

  • [Tiledmap] Fixed the problem that the editor could not load the TSX resource correctly

  • [Engine] Fixed cc.game.restart () call will cause crash on native and web platforms issue

  • [Engine] When running game preview, more debugging information is added when switching the scene. Including scene asset uuid and the time taken to initialize each step

  • [Physics] Fixed the crash caused by the use of the destroy method when using Joint

  • [Audio] Fixed an issue where volume was set to 0 incorrectly under certain circumstances

  • [Editor] Fixed an error when creating a ToggleGroup component

  • [Physics] Added the enabledAccumulator option to the PhysicsManager to provide a fixed-time physical update

  • [Engine] Fixed an issue with the editor that may cause loading particle assets failed

  • [BMFont] Fixed the problem of clicking useSystemFont on Label component using BMFont may create 2 Labels

  • [Build] Fixed the problem where settings.js are not compressed when building a non-debug version

  • [Properties] Fixed the problem clicking on the script asset field of the component that can not jump to the location of the script in Assets panel

  • [Editor] Fixed problems with Possible EventEmitter memory leak detected may occur when entering scene edit mode

  • [Spine] Fixed an issue where the animation might not play correctly after using the addAnimation of spine on native platforms

  • [Engine] Upgrade the gulp-uglify to v3 for compiling JavaScript engine. If you use your own custom engine, you need to synchronize the engine repo’s package.json and install the latest dependencies.

  • [Build] Fixed issue when the building project, all the textures under the directory of the particle system plist will be forcibly exported. Also fixed the asset uuid referenced in the particle plist does not match the compressed uuid issue.

  • [Engine] Fixed tint action also changed alpha, resulting the synchronization of color from sgNode to Node will set color.a to not 255 problem

  • [Physics] Before, when adding a polygon collider, a vertex collider will be created according to the image. Now we disable the vertex creation by default. If user needs it, she can generate a vertex by clicking the button

  • [Particle] Fixed the endColorVar property not shown issue.

  • [Properties] Fixed problems that nested array items cannot be displayed within the script

  • [Build] Fixed the problem that some components can not get the assets reference correctly when md5 cache is enabled during building

  • [Build] Fixed the problem that rebuilding assets will also trigger a full compilation for Android build.

  • [Tiledmap] Fixed Tiledmap can not correctly be culled by camera problem

  • [Action] Fixed issue when the callFunc target is null or undefined, jsb :: Object will still go to bind proxy

  • [Animation] Optimizes frame animation performance

  • [Store] Improved extension store download experience, added detailed information when installation or decompression process failed to complete. Use the expansion package name as the download file name.

  • [Store] Extension Store Product Description Supports markdown format

  • [Tiledmap] Fixed issue that when the exit scene, the camera can not clear Tiledmap sgNode

  • [Tiledmap] Turn on DepthTest to make the tiledmap Z axis take effect

  • [Store] Improved extended store experience

  • [Editor] Fixed the inconsistency of script loading order in editor

  • [Preferences] Added tooltips to the preferences panel

  • [Engine] Get webgl errors only in preview and debug mode to reduce release performance loss

  • [Engine] Fixed the color value of color.fromHEX output incorrectly issue

  • [Engine] Fixed issue that registering multiple schedule to a component will make unschedule report error.

  • [Engine] Fixed XMLHttpRequest timeout can not be set problem

  • [Engine] Fixed the z value of particles and MotionStreak render object set incorrectly issue

v1.6.0-beta.3

  • [Build] Fix TTF font not loaded correctly when built with md5 filename suffix issue.
  • [Action] Fixed callFunc crash when created with primitive data type parameters
  • [Engine] Fixed DebugInfos not included in JSB engine source issue
  • [Engine] Fixed director event missing before update issue
  • [Engine] Increase default max batch vertex count (improvement)
  • [Animation] Fixed error when the sample property is modified
  • [Editor] Fixed the problem that the Sprite Editor window may be stuck when editing the spriteFrame in edit plist
  • [Properties] Fix event-prop can not specify tooltip problem

v1.6.0-beta.2

  • [Properties] Allows multiple selection of nodes to modify properties in bulk in the Properties panel
  • [Spine] supports batch processing of Spine between multiple bones
  • [Component] Add cc.BlockInputEvents component to provide easy UI events blocking control
  • [Action] Improve ActionManager to resolve errors when deleting action in update process
  • [Build] Fixed lower version of Xcode undefined symbol: NSStreamNetworkServiceTypeCallSignaling compilation failure when compiling iOS / Mac project
  • [Tiledmap] Fixed TiledMap on native platform When using getPropertiesForGID
  • [Editor] Fixed error with third party library loading can not find module for path: undefined
  • [Audio] Fixed the crash when multiple tracks are played and frequently called _play2d (AudioCache * cache, int audioID).
  • [Engine] Fixed error with evalstring if function return void issue.
  • [Engine] Fix Spidermonkey v52 to create TypedArray crash on iOS emulator
  • [Editor] Fixed “Can not read property ‘_prefab’ of null” when the scene is saved
  • [Properties] Fixed when the component attribute is changed from the array type to the normal type, the Properties panel does not automatically reset and refresh issue.
  • [Properties] Fixed the problem of previewing the Markdown file in the Properties panel.
  • [Build] Fixed on windows platform build the web when using md5 cache error.
  • [Editor] Make sure essential panels cannot be popped and closed, including Scene, Assets and Node tree.
  • [Editor] Fixed renaming TS scripts will create a duplication with the old name issue.
  • [Component] Fixed the error when adding the SpriteDistortion component to the node that contains the rendering component
  • [Editor] Fixed property decorator in the new version of VSCode will error
  • [Engine] Unified scheduler in the web and native function signature, you must use 6 parameters or 4 parameters for it to work correctly.
  • [Audio] Fixed in some versions of IE 11 setting currentTime will report error when the audio hasn’t finish loading。
  • [Engine] Fixed setContentSize on Mask node has no effect issue.
  • [Editor] Fixed the problem when exporting a scene with many assets dependencies may cause stuck.
  • [Engine] Fixed potential crash after WebSocket.close and send onclose event after onerror is received
  • [TypeScript] upgrades the built-in typescript compiler to version 2.4
  • [Build] Fixed some project may get stuck when building-raw-assets
  • [Audio] Fixed AudioSource initialization when loading sound operation may cause sound playback to stop the problem

v1.6.0-beta.1

  • [Editor] Preview games will no longer needs all project scripts to be bundled, thus increasing compilation time drastically for large project. The debug configuration of the VSCode needs to be updated via developer menu.
  • [Editor] Remove the built-in code editor, the default application for opening text file will be used.
  • [Engine] Adds the cc.Node.insertChild interface to insert nodes to a specific location at a certain level.
  • [Engine] Fixed when using loadResDir the assets sorted inconsistently issue.
  • [Engine] Fixed Mask component’s IMAGE_STENCIL mode not working when the scene is checked for async asset loading.
  • [Engine] supports the use of CC_BUILD and CC_DEBUG precompiled macros in the project
  • [Build] Add option to insert eruda debug interface when you build for Web platform.
  • [Engine] Remove the engine module ZipUilils and TiledMap after build (to reduce the core packet size)
  • [Build] Compress and merge the asset uuid to optimize the volume of the settings.js asset index file.
  • [Label] Optimize BMFont parsing speed, the current BMFont analysis directly in the editor when the import is complete, do not need to run-time parsing.
  • [Label] Split setFontFileOrFamily forsetFontFamily and setFontAsset
  • [Engine] Adds an object pool for SGLabel, reduces memory overhead and improves deserialization efficiency.
  • [Engine] Use SocketRocket third-party library instead of the original iOS WebSocket implementation
    • The API of SocketRocket is easy for use, it’s all asynchronous API.
    • No need to deal with thread communications, it’s wrapped inside SocketRocket.
    • Network status change will not make connection closed, it just seems there is not any status change.
    • Locking screen will trigger an error while libwebsockets or bsd socket will not.
    • Do not depend on openssl library which is a little big
    • Do not need to use a local CA root certificate (curl ca file is over 2MB) for wss connection
    • Do not trigger signal pipe while closing wss connection
    • Easy to integrate SocketRocket to current WebSocket implementation
  • [AnySDK] Support the construction of the dynamic add AnySDK dependencies, the default project does not contain AnySDK code.
  • [PageView] Add new property pageTurningSpeed
  • [RichText] Fixed a problem when disabling RichText the click event will not get unregistered issue.
  • [ProjectSettings] Add ‘select all’ checkbox for engine module tab.
  • [Render] By default, dirty region rendering optimization is disabled. It can be enabled by setting cc.renderer.enableDirtyRegion (true).
  • [Build] Add the md5Cache option to the web build panel to add md5 encoding for the resource file name to update the client resource cache correctly.

Please make sure to backup your project before trying out beta release versions!

Please discuss any issue regarding v1.6.0 beta version in this thread. Thanks!

9 Likes

Great!!! Thanks!

Bug at v1.6.0_beta.3

ParticleSystem missing End Colour Var property

Awesome !
I wait for c++ and compelet typescript
Good job
Lovely 2d engine

Please add support for themes in editor. I never liked the cocos creator theme since beginning as much as the features of it. IMHO, good themes can easily make editor look premium and attracting other people to try it atleast. :slight_smile:

hi
today i installed 1.6.3 beta
i added a typescript in empty project everything was fine!
when i change the name from NewScript to Hero
i got bug

no action filter or goes focus in Assets view anymore when click it

Customizable theme is planned.

Fixed in next release.

1 Like

request for save and restore View Layout
it will be good for Portrait and Landscape Scene View for development

If you have modified panel layouts it will be saved and restored automatically.

1 Like

fix done, will be repaired in the next version.

Using auto atlas in project even with max height, max width of 1024 will have such error on web build:

Note: Same configuration works on v1.5.2

Build web-mobile release mode will stuck at cut-engine for sometime before build continues. Is this normal?

Cut-engine phase is to build engine bundle according to module configuration in Project Settings. It’s a big bundle so normally will take a while. But once you’ve done building and don’t modify module configuration it will skip that phase for future builds.

1 Like

Fixed in next release

When there’s an invalid import, project will fail to start up. Using v1.5.2 would still start up the editor and prompt error, but v1.6.0-beta.3 wouldn’t even open. Could be reproduced by importing an invalid script:

import SomethingNotValid from 'SomethingNotValid';

When we use es6 class syntax on our custom classes. Editor will complain such warning:

ctor of CCClass 'undefined' should not accept any arguments.

Sample es6 class:

class Rectangle {
  constructor(height, width) {
    this.height = height;
    this.width = width;
  }
}

What does these mean?

Introduced global variable while editing: i
Introduced global variable while editing: l