自 Cocos Creator 2.1.0 发布以来,经过半年时间更新迭代,版本现已趋于稳定,目前 2.1 的新增用户已经占据主流。因此我们计划减少 2.0 版本的后续维护力度,将分散的精力集中投入到引擎后续的发展中,力争将 Cocos Creator 打造成更加专注、开放、健康的开源平台。
本次更新的 v2.1.3 版本,旨在优化体验和修复缺陷,建议所有开发中的 v2.0、v2.1 项目升级。
[参考链接]可点击[阅读原文]进入下载页查看
详细改动说明如下
What's New
支持 iOS 13
为了支持即将发布的 iOS 13 操作系统,我们将 iOS 原生平台上的 VideoPlayer 底层实现由 MPMoviePlayerController 替换为了 AVPlayerContoller [#1831],同时将 WebView 底层由 UIWebView 替换为了 WKWebView [#1837]。
支持 vivo 小游戏分包加载
随着小游戏的玩法越来越丰富,开发者对于扩大包大小的需求越来越强烈,所以 vivo 小游戏提供了分包加载这一功能。所谓的分包加载,就是把游戏内容按一定规则拆分为几个包,在首次启动时先下载必要的包,这个必要的包我们称为「主包」,开发者可以在主包内触发其它分包的下载,从而把首次启动的下载耗时分散到游戏运行中。详细说明请参考[分包加载]。
Release Notes
Improvements
- 为组件的 onLoad, start, update, lateUpdate 函数添加容错,更好地应对用户脚本抛出的异常[#4941]
- 在编辑器中预览粒子时,将同步播放当前节点下的子节点中的粒子,方便美术查看效果
- 完善拖动资源到场景中进行创建的行为
- 在属性检查器中添加图片是否可以动态合图的选项 Packable,用于解决自定义 shader 获取不到原始 UV 的问题,详见[Texture:packable]
- 允许在资源编辑器中双击打开 json 资源
- 导入 plist 图集时默认将贴图类型设为 RAW
- 在属性检查器中增加 Vec4 类型支持
- 改善部分 creator.d.ts 类型提示
- 优化 Label 的 SHRINK 动态布局,同时支持了 CHAR 模式[#5223]
- 避免多次调用 Texture2D.update 时的性能开销[#5198]
- 在 Android 上将 V8 升级到了 7.5
- VideoPlayer 适配到了微信小游戏
Editor
- 修复从 v2.0 升级上来后,AnimationClip 中的旋转数据会丢失的问题
- 修复从 v2.0 升级上来后,场景和 Prefab 中的节点在特定角度下的旋转值会丢失的问题
- 修复某些机器上打开项目一直停在“正在导入资源,请稍候”界面的问题
- 修复项目构建后压缩纹理可能会缺失的问题(感谢 xu.lidong)
- 修复压缩纹理配置 Quality 为 100,打包无法输出图片文件的问题
- 修复脚本移动或重命名后可能会报错的问题
- 修复动画编辑器设置节点 z 值无效的问题
- 优化了 动画编辑器 在组件、资源等状态发生变化时的错误处理
- 修复场景编辑器中 gizmo 位置不对的问题
- 修复节点旋转无法 undo 的问题
- 修复属性检查器设置 Camera 的 Rect 无效的问题 [#5294]
- 修复某些情况下场景或 Prefab 数据出错后,场景无法正常打开的问题
- 修复 RichText 或 Label 组件在编辑器中填入的文本被自动换行后,有可能会在行首生成一个空格的问题
- 修复层级管理器和资源管理器合并到同一个面板时,内容显示不全的问题
Engine
- 修复场景延迟加载资源会导致 3D 模型无法显示的问题[#5071]
- 修复某些 3D 骨骼动画渲染不全的问题 [#5349]
- 修复引擎初始化时可能出现 "requestAnimFrame" 相关报错的问题 [#5248]
- 修复动态合图在特定情况下会导致纹理边缘像素异常的问题(感谢 unace)[#5242]
- 修复 Animation 的 “stop” 和 “lastframe” 在特定情况下不触发的问题[#5246]
- 修复加载带有 WebView 的场景,在场景切换后的首帧会屏幕会闪一下的问题[#5106]
- 修复 Label 文本置空之后仍会显示的问题[#5266] [#5284]
- 修复带 LabelOutline 组件时,Label 的 Overflow 设为 SHRINK 或 CLAMP,CacheMode 设为 CHAR 的时候,节点的尺寸不正确的问题[#5145]
- 修复 RichText 文本自动换行后可能会丢失空格符的问题[#5116]
- 修复 Sprite 组件不支持 MESH 模式的问题[#5195]
- 修复 ScrollView、PageView 启用惯性回弹(elastic)后可能在滑动超出边界后无法回弹的问题[#4894]
- 修复 ScrollView 的 ScrollBar 异常显示的问题[#5249]
- 修复 Layout scale 小于 1 的时候效果不对的问题[#5074]
- 修复 PhysicsCollider 组件所在节点在运行时修改 node 的 group 属性可能会报错的问题(感谢 HengHuH)[#4949]
- 修复引擎内置资源有可能被用户误释放的问题[#4915]
- 修复大量渲染节点增删时可能导致内存泄露的问题[#5025]
- 修复调用 node 的 targetOff 方法可能无效的问题[#5052]
- 修复同时播放的 audio 实例超过 32 后,audio 实例有可能被错误销毁的问题[#5097]
- 修复粒子在 Free 模式下坐标计算错误的问题[#5320]
Native
- 修复原生平台上的 Label 内存泄露问题[#1783] [#1786]
- 修复在 Android 部分机型上,EditBox 字体默认为白色的问题[#1778]
- 修复在 Mac 和 Windows 上,当 EditBox 处于输入状态字符重叠的问题[#146]
- 修复 iOS 上 EditBox 输入 emoji 时可能会导致崩溃的问题[#1798]
- 修复原生平台上 Canvas 适配模式为 SHOW_ALL 时,EditBox 输入框位置异常的问题 [#162]
- 修复 Android 上在通知中心显示时锁屏,音频不会暂停的问题[#1788]
- 修复 Android 上屏幕亮屏时,程序如果在后台仍会播放音频的问题[#1785]
- 修复原生平台从后台切前台会自动播放已暂停音频的问题[#145]
- 修复在原生平台上修改 Spine/DragonBones 材质时,节点位置出错的问题[#148]
- 修复在原生平台上 Spine/DragonBones 的 opacity 第一帧不正确的问题[#148]
- 修复 VideoPlayer 在 iOS 上全屏后无法返回的问题[#1800]
- 修复 VideoPlayer 在 Android 上播放时锁屏再进入会卡死的问题[#1811]
- 修复 cc.sys.languageCode 在 Android 上无法获取完整语言地区码的问[#1784]
- 修复在 Mac 平台,插件脚本初始化时调用 cc.game.setFrameRate() 失败的问题[#5261]
Web
- 完善对 IE11 的支持(Improve support for IE11)[#5033]
- 修复在 Edge 浏览器上点击 EditBox 的清除按钮(浏览器自带的),不会触发 input 事件的问题[#5088]
- 修复 EditBox 在输入过程中文本大小未能随 Node 进行缩放的问题[#5088]
- 修复 Edge 和百度浏览器上不能播放音频的问题[#4910]
- 修复桌面端 Chrome 和 Safari 上音频可能无法播放的问题[#4991]
- 修复桌面端 UC 浏览器播放 WebAudio 会报错的问题[#5048]
- 修复游戏运行于 Crosswalk 时 音频 调用 setTargetAtTime 产生的报错[#5281]
Mini Game
- 修复小游戏开放域中的图集不支持旋转的问题[#4325]
- 修复在 OPPO、vivo、华为、即刻玩平台上文本下方可能被裁剪掉的问题 [#5303]
- 升级了小米快游戏构建程序,修复了找不到 pem 资源的问题 [#22]
DEPRECATIONS
- 废弃了 Node 上的 convertToWorldSpace 函数,请改用 convertToWorldSpaceAR
- 废弃了 Node 上的 convertToNodeSpace 函数,请改用 convertToNodeSpaceAR
- 完善摄像机的坐标转换 API
- getCameraToWorldPoint 改为 getScreenToWorldPoint 并且支持 3D Camera
- getWorldToCameraPoint 改为 getWorldToScreenPoint 并且支持 3D Camera
- getCameraToWorldMatrix 改为 getScreenToWorldMatrix2D,只支持 2D Camera
- getWorldToCameraMatrix 改为 getWorldToScreenMatrix2D,只支持 2D Camera
BREAKING CHANGES
- 标准化小米快游戏重力感应返回的数值,和其它平台的返回值保持一致。此版本返回的值相比旧版本将会除以 10。
- 移除了 Texture2D 上的 setMipmap 接口,请改为直接设置 genMipmaps 属性
以上就是 Cocos Creator v2.1.3 的更新内容!请前往 Cocos 官网下载更新:
https://www.cocos.com/creator