请大家使用测试版时一定要注意备份好自己的项目!
Cocos Creator v1.5.0-beta.5.1 内测版发布:
Cocos Creator v1.5.0-beta.4.1 内测版发布:
重点功能
- 整合 box2d 物理引擎,请下载专用范例 Physics Example 进行测试
- 增加外部编译命令,有三种工作流程
- [VS Code] 主菜单里的 「开发者->VS Code 工作流->添加编译任务」,在 VS Code 里通过快速打开输入框输入
task compile
即可触发脚本导入和编译(需要安装 cURL) - Preview 网页里增加了
Recompile
按钮,按下之后就会导入和编译脚本更新 - 使用其他脚本编辑工具的,请手动添加任务,访问
http://localhost:7456/update-db
即可触发脚本导入和编译
- [VS Code] 主菜单里的 「开发者->VS Code 工作流->添加编译任务」,在 VS Code 里通过快速打开输入框输入
- TypeScript 初步支持,请直接使用资源管理器的创建菜单创建 TS 文件模板,并参考模板中的装饰器来声明属性
- Camera 组件支持,Camera 组件可以添加在任意节点上,然后通过指定 target,来规定哪些节点将会通过 Camera 来决定渲染位置。如果需要卷屏,只需要修改 camera 所在节点的世界坐标位置。
改动列表
v1.5.0-beta.5.1
- [Engine] 优化了 web 平台加载引擎时的反序列化和下载资源操作,本地预览时场景加载速度提升 38% (远程加载资源时仍需考虑连接速度的瓶颈,实际提升可能低于这个数字)
- [Label] 重构了 Label 在 windows 桌面平台的实现,解决以下问题:
- 自动换行,Shrink 等文字排版效果无效
- 单行文本框输入内容时显示为多行
- 文本框输入时只会显示前面几个字符
- 多行文本框输入时文字无法置顶对齐
- [AssetManager] 修复中断热更新后重启会失败,以及重启后重新更新无效的问题
- [Animation] 修复将 Animation 所在节点移出节点树后再调用节点的 destroy 操作时,Animator 对象内存可能泄露的问题
- [Animation] 修复在动画编辑模式下新增 component 并且编辑会造成报错的问题
- [Animation] 修复在设置 uuid 为空的 asset 的时候,会引起报错的问题
- [Physics] 支持 rigidbody.getJointList 接口,获取刚体关联的关节列表
- [TypeScript] 修复空文件编译时会引起报错的问题
- [Editor] 修复首次保存场景时取消保存文件时会报错的问题
- [Builder] 在插件中可注册构建和编译完成时的回调
function func (options, cb) { setTimeout(cb, 3000); } // 在 main process 中注册 // 目前只有 build-finished 和 compile-finished 消息可注册 Editor.Builder.on('build-finished', func); Editor.Builder.on('compile-finished', func);
- [WebView] 修复 webview 在 ios 浏览器上面显示大小不正确的问题
- [Label] 修复 bmfont 切换字体时,spaceX 属性失效的问题。
- [ScrollView] 修复惯性滚动回弹不到初始位置的问题,修复脚本中执行
removeFromParent
,然后再添加到节点树后无法滚动的问题
v1.5.0-beta.4.1
- [Editor] 修复 JavaScript 脚本文件无法正确产生 sourcemap 的问题
- [Engine] 修复对部分 UI 节点调用 removeFromParent() 后卸载场景时,UI 对象的 cleanup 函数不会被调用,导致原生平台上 ui 控件的内存无法被清除的问题。
- [VideoPlayer] 修复在 iOS 10 系统的 web 平台无法播放视频的问题
- [VideoPlayer] 在 toggle visibility 的时候,不再移除 dom,而只是修改 visibility
v1.5.0-beta.4
- [EditBox] 重构了输入框在 windows 桌面平台的实现,直接在游戏界面里输入文字,不再需要弹出对话框
- [EditBox] 改进 EditBox 在 Android 平台上的兼容性问题:修复第一次点击输入框时可能无法弹出键盘的问题;修复输入前后字体大小不统一的问题;修复切换输入框的单行和多行,对齐方式不正确的问题。
- [Engine] 修复在 onLoad 中禁用节点时有可能导致后续的 onLoad 没触发的问题
- [Engine] 修复模拟器加载不了 TypeScript 组件的问题
- [Engine] 修复当 Scale9Sprite 的 width 或 height 为 0,并且使用 sliced 模式的时候,会导致数据计算出错的问题
- [Editor] 修复 Color 的 alpha 为 0 时会被反序列成 255 的问题
- [ParticleSystem] 修复使用动画编辑器编辑粒子位置的时候出错的问题
- [Animation] 修复 animation delay 设置无效的问题
- [Physics] 修复 polygon collider 自动生成顶点功能失效的问题
- [TypeScript] 修复 VS Code 中无法在 typescript 脚本中断点的问题
- [Assets] 修复创建 Prefab 时可能出现
TypeError: s.canAddChild is not a function at assets-tree._onDropAreaMove
的错误 - [Build] 修复使用 binary 模板构建和编译 window 和 android 平台时可能出现的编译失败错误
v1.5.0-beta.3
- [TypeScript] 完善了引擎 API 提示功能,添加函数默认参数提示
- [Engine] 在 cc.Node 上添加
pauseAllActions
和resumeAllActions
接口 - [Engine] 在 cc.Node 上添加
pauseSystemEvents
和resumeSystemEvents
接口 - [Engine] 升级 C++ 引擎的 Audio 和 Network 相关代码库,和 cocos2d-x 3.15 同步
- [BMFont] 修复导入的字体文件中贴图所在路径是绝对路径时导入会报错的问题
- [Properties] 修复颜色拾取器总是显示黑色的问题
- [ProjectSettings] 修复更新分组后,节点属性面板无法及时更新的问题
- [Label] 修复 iOS 平台 shrink 模式下面文字显示不全的问题
- [Label] 使用系统字体时可使用
fontFamily
属性指定字体类型 - [Editor] 修复修改场景后未手动保存场景,直接进行重新加载场景会出现报错的现象
- [Toggle] 修改了 Toggle 组件发送事件的时机,在其他 toggle 的状态改变之后才会发送事件
- [Toggle] 在 isChecked 时现在会设置目标节点的 active 而不是设置目标节点的 Sprite.enabled
- [ToggleGroup] 现在在需要启用时候才调用
addToggle
- [Build] 修复有些情况下构建时选择
内联所有 SpriteFrame
后构建文件数量增多的问题 - [Build] 支持使用 Android Studio 2.3+ 和 Build Tools 25 构建安卓项目
- [Build] 修复 windows 上 AutoAtlas 没有正确生成 spriteFrame 信息到
settings.js
的问题 - [Physics]
- fixed physics box collider when scale is negative
- fixed physics polygon collider offset calculation
- add tiled map culling flag to macro
- should invert manifold normal when selfCollider not equal to colliderA
- update joint api doc
- support offset of PhysicsCircleCollider
- [Engine] 优化引擎加载时间,比原来快了 30%
- [Editor] 增加导入导出项目资源功能,从主菜单的
文件
中可以打开导入导出界面 - [EditBox] 修复
textChanged
事件回调次数在真机上面不正确 - [EditBox] 修复在
textChanged
事件中修改 string 属性时原生平台会显示文字重影的问题 - [Label] 修复 BMFont 在原生平台上会造成内存泄露的问题
- [ScrollView] 修复滚动到边界的事件在设置回弹后可能发送多次的问题
- [ProjectSettings] 修复项目设置中模拟器横竖屏设置无效的问题
- [Preferences] 修复偏好设置->原生开发环境,未指定 javascript 或 cocos2d-x 引擎路径时仍可保存设置的问题。
- [AssetManager] 在进度回调中添加更多进度信息,包括:总字节数,已下载字节数,总文件数,已下载文件数,是否是从续传恢复。
- [AssetManager] 修复
setVersionCompareHandle
在init
过程中无法生效的问题 - [AssetManager] 支持动态创建 manifest 文件,并手动加载本地和远程 manifest
- [Engine] 修复了动态加载 Prefab 后,调用 cc.loader.release 不能正确释放 prefab 引用资源的问题
- [VideoPlayer] 为 iOS 平台增加嵌入式播放(inline)功能
- [Preview] 更换了 web 平台预览时 FPS 显示的方式,增加更多调试信息
v1.5.0-beta.2
- [Editor] 修复在部分 windows 系统无法打开编辑器的问题,修复 mac 系统上出现乱码报错的问题
- [Scene] 修改场景自动释放属性时会报错 “active” is not defined in the Scene
- [Scene] 修复改变场景编辑器面板大小时,场景渲染错位的问题
- [Engine] 修复使用 LabelAtlas 字体资源的场景延迟加载会闪退
- [Camera] 在 canvas 模式下给出不支持提示
- [Render] 将
cc.macro.FIX_ARTIFACTS_BY_STRECHING_TEXEL
改回 0 来修复贴图周围像素会被切掉的问题,但这个修改会导致 tiledmap 在缩放和平移时可能产生黑边,需要在生成 tiledmap 贴图时对每个格子进行一像素的拓边(如果使用 shoebox 生成贴图,需要将 extrude 设为 1,padding 设为 2) - [Particle] 修复粒子组件设置了自动释放时出现报错的问题
- [TypeScript] 修复 ts 脚本的 sourcemap 无法加载的问题
- [TypeScript] 修复在原生平台运行 TS 脚本时报错
ReferenceError: __extends is not defined
的问题 - [Editor] 修复切换布局时报错的问题
v1.5.0-beta.1
- [Physics] 支持 box2d 物理引擎
- [Camera] 增加 Camera 组件
- [Scripting] 初步支持 TypeScript
- [Animation] 修复使用 cc.instantiate 克隆带动画节点时,动画的 playOnLoad 不生效的问题
- [Engine] CCClass 里的 editor 字段添加 executionOrder 字段用于控制脚本执行顺序
- [Editor] 属性检查器里预览大尺寸代码文件时只显示一部分,改善浏览大尺寸文件时的编辑器性能
- [Engine] 修复原生平台使用相对路径加载 tmx 文件引用的贴图时报错的问题
- [Assets] 修复 sub-meta 导入失败时并没有显示报错信息的问题
- [Build] 修复使用 binary 或 link 模板编译 android 工程会有 warning 的问题
- [Editor] 导入为插件的脚本资源添加选项「在编辑器里加载」,用于标记部分插件脚本在编辑器免加载,来提高场景打开的效率
- [Build] 原生平台打包时,会把 Atlas 里的 spriteFrame 资源合并成一个 json
- [Prefab] 在 Prefab 资源上也增加资源延迟加载选项
- [Engine] 修复 Sprite 组件激活前 capInsets 设置无效的问题
- [Editor] 为所有项目脚本默认导出所有 CCClass
- [Editor] 自定义引擎路径加载失败时,报错并尝试使用内置引擎
- [Engine] cc.loader.loadResAll 已更名为 loadResDir,增加 loadResArray 接口,用于传入相同类型的资源 url 数组
- [Engine] 修复 EventHandler 组件里的 customEventData 在脚本中赋值为 0 无效的问题
- [Editor] 修复修改场景后退出编辑器,弹出保存提示时无法正确保存场景或取消退出的问题
- [Editor] 在预览服务器增加
update-db
接口,通过预览网页或外部命令访问此接口就可以在不激活编辑器窗口的情况下编译脚本和更新资源。 - [Assets] 在资源的右键菜单增加「打开 Library 中的资源」选项
- [Prefab] 修复自动同步 prefab 引用了其他 prefab 资源时,保存场景时报错的问题
- [AutoAtlas] 修复在 assets 目录下创建 AutoAtlas 后,resources 里的 spriteframe 信息没有被添加到 settings.js 中的问题
- [Build] 修复命令行构建时,如果预览网页没有关掉的话会报错的问题
- [Editor] 资源管理器里点击大尺寸代码文件时,只会在属性检查器显示部分文件内容,大大优化展示速度和避免卡死问题。
- [Engine] CCClass 里的 editor 字段添加 executionOrder 字段用于控制脚本执行顺序
- [Engine] 优化 DOM Image 内存使用,在 handleLoadedTexture 后删除 dom image,并用对象池复用 dom image 来降低 memory footprint
请大家参考更改描述进行测试,更详细的文档和使用范例之后会发布出来。
相关讨论请回复到本帖下,谢谢大家!