Cocos Creator v2.1.1 正式发布,新增 3D 场景编辑、摄像机预览和光照系统

2019.4.30 产品动态 by cocos

自从 Cocos Creator 2.1.0 发布以来,我们收到了来自用户大量的宝贵建议。根据之前公布的计划,我们会持续加快对 v2.1 系列的迭代,以便尽快消化用户们的建议。同时为了防止这些改动影响到老项目的稳定性,我们仅推荐有 3D 需求的项目升级到 v2.1,其它项目可以继续使用 v2.0,等到 v2.2 发布后再同时升级上来。

本次 v2.1.1 的升级主要支持了 3D 场景编辑摄像机预览光照系统,同时也合并了最新 2.0.x 的有关改动。

下载链接:https://www.cocos.com/creator

What’s New

支持 3D 场景编辑

场景编辑器允许一键切换至 3D 编辑模式,方便对 3D 对象、摄像机、灯光进行编辑。详见文档《3D 场景》

新增游戏预览面板

新增了独立的预览面板,能够在场景编辑的过程中直观地预览摄像机看到的画面。面板打开方式:主菜单 → 面板 → 游戏预览,预览面板可置于独立窗口,也可拖进编辑器主窗口。

新增 3D 光照和阴影

新增了 Light 组件,用于在场景中布置光源,还可结合MeshRenderer 设置阴影效果。详见文档《光源组件参考》

升级 EditBox 组件

现在用户可以单独设置 Text Label、Placeholder Label 和 Background 节点,变得更加灵活和简单,也更符合组件化的开发方式。详见文档《EditBox 组件参考》

新增文字阴影渲染组件

新增了 LabelShadow 组件,用于给 Label 组件添加阴影效果,和 LabelOutline 用法类似。详见文档《Label 组件参考》

支持动态创建 3D Primitive 模型

添加了 cc.primitive 模块,用于在运行时动态创建 3D 模型,如 box、cone、cylinder、plane 等。详见文档《基础 3D 物体》

集成材质系统(Beta)

加入了材质系统的支持,允许用户创建 Material 和 Effect(Shader)资源类型。需注意的是,目前的材质系统主要是提供给引擎内部使用,仅供开发者预览。我们计划在 2.1.2 就对材质系统进行大幅度升级,届时此版本的材质将无法升级到 2.1.2。

编辑器改进

  • 新增快捷键 Ctrl/Cmd + Shift + F,用于将当前选中节点对齐到场景编辑器所在视角。
  • 在场景编辑器中点选时,允许同时按住 Ctrl/Cmd 进行多选
  • 完善针对自定义引擎的容错处理,避免编辑器启动失败
  • 提升资源管理器在超大工程下的搜索性能
  • 添加菜单“文件 – 在新窗口中打开项目”,用于支持在 Mac 上同时开启多个工程
  • 当组件未定义 enabled 相关联的生命周期函数的时候,隐藏组件的 enabled 勾选按钮
  • 升级 TypeScript 版本到 3.3.3333

引擎改进

  • 让 cc.Vec3 能够兼容 cc.Vec2 的相关 API
  • 改善了 Label 在编辑器及不同浏览器上的定位准确性(感谢”大城小胖”提供建议)
  • 优化 3D 骨骼动画性能和体积
  • 原生平台默认启用 cc.macro.CLEANUP_IMAGE_CACHE 标记,以减少纹理内存占用
  • 原生平台自动校验当前设备最大支持的纹理尺寸
  • 添加微信小游戏XMLHttpRequest timeout 事件的支持 [#87]
  • 新增 cc.sys.HUAWEI_GAME 枚举,用于判断当前是否是华为快游戏平台
  • 优化 Android 5 系统的 WebView 兼容性
  • VideoPlayer 设为静音时,允许 iOS 浏览器自动播放

Bug Fixes

编辑器修复列表

  • 修复在 BuildResults.getNativeAssetPath 可能获取不到贴图路径的问题
  • 修复移除动画编辑器正在编辑的动画帧导致的报错
  • 修复反复进入 Prefab 编辑模式时会出现的 object already destroyed 警告

引擎修复列表

  • 修复当组件未定义 onEnable 时 enabledInHierarchy 始终为 false 的问题
  • 修复 ToggleGroup 所在节点的 active 为 false 的时候未完全禁用的问题
  • 修复 Label 的 opacity 未生效的问题
  • 修复 Slider 的锚点设置会影响点击的问题 [#4163]
  • 修复粒子系统播放完后,隐藏节点再显示会出现残留粒子的问题 [#4243]
  • 修复粒子系统的粒子数量过多时可能导致的内存泄露问题 [#4256]
  • 修复原生平台资源下载XMLHttpRequest、WebSocketSocketIO 请求结束后有可能崩溃的问题 [#1721] [#1716]
  • 修复原生平台上 XMLHttpRequest 可能因为超时引发崩溃的问题 [#1724]
  • 修复原生平台在电信网络下通过 IPV6 加载(微信头像)文件可能失败的问题 [#1713]
  • 修复原生平台 OpenGL 绘制报错 [#4017]
  • 修复原生平台 Label 渲染系统文字时可能有黑边的问题 [#130]
  • 修正 Android 平台上音频文件不在 OBB 时无法加载的问题 [#1611]
  • 修复 Android 平台在引擎初始化完成之前收到 touch 事件可能引起崩溃的问题 [#1715]
  • 修复 Windows 平台窗口从最小化还原时可能的报错 [#129]
  • 修复 Windows 平台关闭窗口时出现的报错 [#1732]
  • 修复在浏览器上音量设置为 0 无效的问题
  • 修复 3D 项目不兼容微信小游戏开放数据域的问题
  • 修复 3D 模型的骨骼穿透问题 [#4188]

REMOVED

  • 移除了 CoffeeScript 脚本的创建入口。CoffeeScript 脚本目前仍可以手动创建,我们计划在 v3.0 移除对 CoffeeScript 的完整支持。

后续版本计划

  • 2.0.x
    • 持续优化性能和提升稳定性
    • 支持更多的小游戏平台
  • 2.2.0
    • 优化自动图集
    • 增强压缩纹理支持
    • 进一步优化 EditBox 的平台兼容性
    • 支持骨骼动画资源延迟加载
    • 优化小游戏平台构建流程
  • 2.3.0
    • 大幅优化原生平台基础渲染性能
    • 大幅优化 TiledMap 支持
  • 2.3.x
    • 支持 3D 物理系统和碰撞检测
    • 将 2.1.1 添加的材质系统由实验版升级为正式版

(版本计划仅供参考,最终版本内容及发布顺序请以实际为准)

以上就是 Cocos Creator v2.1.1 的更新说明,各位开发者可进入官网下载。在下载、升级和使用过程中遇到任何问题,欢迎移步至 Cocos 社区同我们反馈交流噢!