单数月份,又进入丧心病狂的同时更新两个版本的季节了,1.2.x 偏重提升稳定性,1.3.0 会有大的新功能加入,也包括新模块的 bug 修复,请大家根据自己项目的进展阶段来选择。
1.3.0 版本特别说明
- 从 1.3.0 版本开始,Windows版使用64位架构构建,不再支持32位操作系统,敬请谅解
- 测试 1.3.0 版本后如果回退到 1.2.x 版本,会遇到
TypeError: Cannot read property 'length' of undefined
的错误,这是由于我们升级了面板架构导致不能向前兼容面板布局设置文件。找到用户目录下的%USERPROFILE/.CocosCreator/local
文件夹并删掉重启即可解决。
请大家使用测试版时一定要注意备份好自己的项目!
Cocos Creator v1.3.0-rc.1 内测版发布:
改动列表
v1.3.0-rc.1
- [Build] 修复了合图尺寸比较大的时候 windows 上可能会出现卡死现象
- [Build] 修复了构建 Android 和 iOS 原生工程时,无法正确保持屏幕朝向的问题
- [Build] 构建项目时增加用户保存场景提示
- [Engine] 修复了ScriptingCore::evalString 接口不可用的问题
- [Engine] 修复了预览当前场景时,通过
cc.director.getScene().name
获取当前场景的名字为空的问题 - [Engine] MobileDetect 调试功能完善,打开 PC 微信时也可以查看调试面板
- [Engine] 加入触摸点超时设置,用于解决微信 x5 内核上手指移出屏幕时不能正确触发 touchcancel 事件造成后续无法交互的问题,如果需要保留长时间静止的触摸点,需要手动修改超时的时长设置
- [Engine] 支持 webp 格式的图片资源导入和使用,支持自动打包图集时输出 webp 格式的资源
- [Engine] 优化 JSB 上
enabled
切换时的执行效率 - [Editor] 修复了导入大量大图资源(4096x2048+)时,编辑器启动可能卡死的问题
- [Editor] 在使用自定义 JavaScript 引擎时,如果没有正确经过构建过程,会在编辑器启动时弹窗提示
- [Assets] 修复了 Spine,Tilemap 等有图片依赖的资源在导入时获取依赖时机不正确导致的报错问题
- [Prefab] 进入 Prefab 编辑状态时,如果在 Prefab 根节点之外创建了其他节点,在保存 Prefab 时会显示警告,根节点外的节点将无法被保存。
- [Prefab] 修复了自动关联的 prefab 进行嵌套后,会导致场景无法打开的问题
- [Preference] 修复了自定义模拟器分辨率时分辨率下拉菜单显示错误的问题,修复设置横竖屏时,无法保存设置修改的问题
- [Preference] 修复了原生引擎配置不正确时,报错导致整个偏好设置面板显示错误的问题
- [Label] 在读取位图字体 fnt 资源时自动处理可能的BOM文件头,保证资源正常读取加载
- [Audio] 解决了动态加载的声音资源可能会无法播放,或播放一段时间后自动停止的随机问题
- [Animation] 修复了非动画播放状态下暂停和恢复动画的回调事件也会触发的问题
- [PageView]
autoScrollEndedEpsilon
属性改名为pageTurningEventTiming
,并采用 node.on 的方式来注册父类的事件。注意: 对于已经使用 1.3 beta 版本的的 PageView 组件的用户,需要删除组件,并重新添加组件。 - [ScrollView] 添加 this.node 上的一系列事件,方便开发者通过代码方式注册事件
- [ScrollView] 修复了 windows 桌面平台使用鼠标滚轮滚动 Scrollview 时奔溃的问题
- [Toggle] 支持 node.on 的方式注册父类(Button)事件,注意: 对于已经使用 1.3 beta 版本的的 Toggle 组件的用户,需要删除组件,并重新添加组件。
- [Label] 修复了 LabelOutline 组件适配 TTF 字体时颜色错误的问题
v1.3.0-beta.8
- [Build] Android 平台增加 API Level 选择菜单,根据用户指定的 SDK 目录下的 platforms 中的内容列出可选的 API Level,并且在构建时自动修改相关的设置
- [Build] 当引擎路径中有空格时,构建时会给出正确的错误信息
- [Installer] Windows 安装包里增加了自动安装 Visual Studio 2015 的安装选项
- [Editor] 第三方脚本导入为插件后,如果其中含有 ES6 语法,发布时添加报错提示
- [Prefab] 修复自动同步的 prefab 进行嵌套后,会导致场景无法打开的问题
- [VideoPlayer] 添加
META_LOADED
,CLICKED
和READY_TO_PLAY
事件。现在 toggle visible 会暂停视频播放,并且在视频控件不可见的情况下面不能播放视频。同时,统一 web 和 jsb 的 video 的表现。 - [Tilemap] 修复通过 cc.TiledLayer.getTileAt() 获取的 tile 节点,调用 setVisible(false) 在 canvas 渲染模式下无效的问题。
- [PageView] 修改 scrollToPage 方法的第二个参数类型为 float,用户可以自己选择滑动所需要的时间,如果不填默认为 0.3, 0 表示立即跳转
- [Graphics] 修复了在 canvas 下需要调用两次 clear 才能清除掉绘制的内容的问题
- [Widget] 修复了属性检查器中的
top
和bottom
复选框消失的问题 - [Collider] 修复了在节点上新增一个 Circle Collider 组件就会一直报错的问题
- [RichText] 修复斜体文字的边缘部分会被截断的问题,使用对象池来减少富文本构建过程中的 memory footprint
- [Component] 新增一个生命周期回调
resetInEditor
,这个方法只在第一次添加组件时调用(如果是场景重新载入,这个方法不会被调用)。另外这个方法也会在点击组件菜单的 reset 后调用。 - [Component] 为 cc.Component.EventHandler 添加传参,目前只允许传入一个 string 参数
v1.3.0-beta.7
- [Label] 修复了模式为 Resize Height 的 Label 文字内容设为空后再添加内容换行也不会生效的问题
- [Label] 修复了在 Node 非激活状态下添加 Label 组件,导致 debounce 函数 warning 报错的问题
- [Build] 修复了 Windows 平台上构建项目时有几率出现卡死的问题
- [Build] 修复了构建出的 Android Studio 项目生成的 application 名称错误问题
- [EditBox] 新增 setFocus,stayOnTop 属性,当 stayOnTop 为 true 则,可以通过设置 tabIndex 来控件 Tab 键的 focus 行为。在微信的 iframe 里使用 EditBox 时,需要把 stayOnTop 属性设置为 true
- [EditBox] 修改了 maxLength 属性的行为,当设置为 0 时禁止用户输入,当设置为 -1 时不限制最大输入字符长度
- [Animation] 修复了从指定帧开始播放动画,前面的帧事件还会被回调的问题
- [PageView] 添加
setAutoScrollStopEpsilon
API 和 AutoScrollStopEpsilon 属性来控制 PageView 在用户滑动后结束自动滚动的时机 - [Editor] 在脚本资源勾选了
导入为插件
的情况下增加是否在原生或 Web 平台生效的选项 - [Package] 修复了无法正确 watch 用户插件的改动问题,现在可以在编辑器打开的状态下随意修改用户插件并立刻获得刷新
- [Assets] 优化了图集中的 SpriteFrame 资源缩略图标的渲染逻辑,解决了部分资源较多项目打开过程中可能卡死的问题
1.3.0-beta.6
- [Doc] Creator 的手册文档已经开源,英文文档比起中文版还欠缺很多内容,欢迎大家一起进行勘误、补完、翻译 https://github.com/cocos-creator/creator-docs
- [DB] 添加 dragonBones 组件,支持 DragonBones 格式的骨骼动画
- [Engine] EventManager 现在会继承 EventTarget,并支持用 cc.systemEvent.on / once / off 来注册或取消注册系统事件,之前需要用 eventListener 来监听的键盘和重力感应事件现在可以统一用
on
off
注册和取消了。 - [Engine] 重构 cc.Loader,支持每次 Load 独立的队列和更好的进度信息,解决了资源循环依赖时重复加载的问题和有几率出现同步回调的问题
- [Engine] 提供 Loader 每个加载任务独立的 context,解决运行时合并后的 JSON 对象没办法自动释放的问题
- [Editor] 使用全新的图形处理库,解决了导入过大图片(8192x8192)时会报错的问题,并且提高了图像处理速度
- [Editor] 修复了当项目中所有图片都进入自动图集时会导致构建失败的问题
- [Build] 为 binary 模板添加 Android Studio 支持
- [Assets] 在导入 custom asset 出错时,提供更明确的提示信息
- [Dashboard] 修复了选择
打开其他项目
后取消,出现的项目不合法报错提示 - [Node Tree] 修复了新建节点时,无法正确显示节点的高亮选中状态问题
- [Node Library] 为控件库补完了 1.2 以来新增的控件类型
- [EditBox] 修复通过 prefab 方式实例化后直接设置 placeholder 报错问题
- [TiledMap] 修复了当使用不同的地图资源重复初始化同一个 TiledMap 组件时会遇到的报错问题
- [TiledMap] 修复了原生引擎中移动地图可能会出现接缝的问题
- [TiledMap] 修复了 TiledLayer 的 setTileGID 接口在传入参数不足时可能产生错误的问题
1.3.0-beta.3
- [Component] 增加 Slider 滑动条控件
- [Component] 增加 Toggle 和 Toggle Group 控件
- [Build] 增加使用命令行构建项目的功能
- [Tilemap] 支持支持 ObjectGroup 的显示
- [Button] 当 button 的 interactable 设为 false 时,如果没有设置相应的 disable 状态,会自动将 normal 状态的贴图变灰显示
- [Animation] 修复了动画事件回调中调用 play 无效的问题
- [Collider] 修复了在 onCollisionEnter 中修改 node 的 group 无法正确更新的问题
- [Build] 修复了在 Mac 系统当项目资源很多时,构建可能会报错 too many open files 的问题
- [Engine] 移除了用 loadRes 加载 json 资源时
No need to release non-cached asset
的警告 - [Build] 修复了脚本放在 resources 目录下时,构建会报错的问题
- [Widget] 修复了 CCWidgetManager 在 Scrollview 大小改变时出现 _widget 报错问题
- [Engine] 修复了构建到 Web 平台合并资源 json 后仍然有可能出现多次请求的问题
- [Scene] 修复了保存场景会导致层级管理器里节点折叠状态重置的问题
- [Scene] 修复了在场景中持续预览粒子一段时间后,再平移场景视图会严重卡顿的问题
- [Scene] 修复了场景变化后关闭 creator 窗口,弹出的保存确认对话框里选择「取消」,依然会关闭 creator 的问题
- [Graphics] 修复了未定义属性的 get/set 警告
- [Prefab] 修复了自动同步 Prefab 的各种显示问题
- [Action] 修复了
cc.flipX
在原生平台会引起崩溃的问题 - [Editor] 修复了按
Cmd/Ctrl + Q
关闭窗口时会引起报错的问题
1.3.0-beta.2
- [PageView] 新增翻页容器组件
- [Atlas] 增加自动打包图集功能,需要在存放碎图的文件夹新建一个
自动图集配置
资源,之后就会在构建阶段将碎图自动生成合图进入打包。 - [Build] 增加了命令行构建功能,详情请查阅文档的
跨平台发布游戏->命令行发布项目
一节 - [Spine] 在 Skeleton 组件上增加了
premultipliedAlpha
处理预乘图像,当图片的透明区域出现色块时需要关闭该选项,当图片的半透明区域颜色变黑时需要启用该选项 - [Spine] 升级 spine runtime 库,支持 3.x 版本的 spine,修复了图像混合模式显示问题,支持 triangle 渲染命令
- [Scene] 修复场景变化后关闭 creator 窗口,弹出的保存确认对话框里选择「取消」,依然会关闭 creator 的问题
- [Button] 新增 Scale Transition,添加重置 button size 到 target 节点尺寸的按钮
- [Build] 修复了构建面板中设置的屏幕朝向在 Web 平台第一次启动时不生效的问题
- [Build] 选择 android 平台时的 keystore 密码现在会用密码格式显示
- [Editor] 修复了项目设置面板里设置的初始运行场景,在使用模拟器运行时不会生效的问题
- [Editor] 修复了 windows 平台经常会遇到 undo/redo 操作失灵的问题
- [Editor] 增加了命令行参数
--mount
来指定外部资源路径。(可以通过多个 --mount 参数来 mount 多个路径,参数值可以为绝对路径或者相对于工程的相对路径)增加命令行参数--writable
来指定是否可以修改保存外部资源路径里的文件。 - [Editor] 修复了 Sliced Sprite 在编辑器切分时无法在场景中预览最新效果的问题
- [RichText] 增加
<br/>
标签来换行 - [ScrollView] 将桌面平台的鼠标滚轮操作修改为更符合 Windows 操作系统习惯的滚动方式
- [Properties] 修复了属性类型和已绑定数据不符时,不会正确显示报错信息和 reset 按钮的问题
- [JSB] 重构了 JS-binding 的接口,提升了稳定性,绑定 API 现在和 cocos2d-x 3.13 保持一致
- [Engine] 修复了 grayscale shader 无法使用的问题
- [Audio] 升级声音引擎到 New AudioEngine,解决了之前一些声音播放的兼容性问题
- [Audio] 由 Loader 管理 Audio 的内存,让 loader 可以完全释放 Audio 资源
- [Audio] 修复了 AudioSource 组件在切换场景后还会继续播放的问题
- [Graphics] 修复了当用户添加 graphics 组件时,会重置自身节点的 Size 为 0 的问题
- [TileMap] 修复当 tmx 文件中使用了 tsx 文件时,可能会遇到显示错乱的问题
1.3.0-beta.1
- [Build] 为了更好的兼容低版本用户的安卓机型,现在已将 Android API Level 的要求改回为 android-10,所以需要用户的 Android SDK 的 platform 目录中包括
android-10
的 SDK 包,点击下载 - [RichText] 增加了富文本组件的支持,使用 bbcode 格式的标签写法,目前支持颜色,字号,加粗,斜体,下线划和点击事件
- [Inspector] 修复了 tooltip 在 array 和 object 属性上不显示的问题
- [Console] 在 clear error 的时候现在不会清除编译失败的报错条目
- [Assets] 为图集中的 SpriteFrame 资源增加了缩略图标显示
- [Inspector] 修复了 reset node 操作无效的问题
- [Editor] 修复了使用撤销命令还原一个值为 null 的属性时不会触发场景变化的问题
- [Editor] 修复了 Undo 对象删除操作耗时比较高时,updateAnimatingInEditMode 会报错的问题
- [Assets] 修复了导入大量资源时,有可能重复触发 compile 操作的问题
- [Assets] 资源管理器搜索栏增加搜索 uuid 的功能,输入
u: xxxxx
即可通过 uuid 进行搜索 - [Assets] 在资源管理器里的资源右键菜单中增加「查找使用」功能,可以过滤出所有引用该资源的其他资源(包括场景和 prefab)
- [TiledMap] 增加了 ObjectGroup 显示的支持
- [TiledMap] 修复了删除 Tiledmap 节点后再 undo 无法显示的问题
- [Engine] 在所有平台限制 downloader 最大并发数,避免同时加载过多资源时的报错
有任何内测版问题请在本楼内反馈
后续内测版本会在顶楼持续更新。谢谢大家的支持。