版本
版本介绍
功能增强
- 新增动画状态机 Marionette,支持状态切换、子状态机、Blend Tree 等角色动画必要功能
- 动画编辑器支持标准贝塞尔曲线缓动预设,点击选中曲线片段后点击曲线预设即可应用
- 新增矩形工具(Rect Gizmo)的智能对齐功能
- 支持粒子发射器剔除,支持离线自动计算,也支持手动调整(RenderCulling 模块)
- 支持粒子朝向和节点朝向统一
- 支持开发者自定义宏配置
- 支持 RenderTexture 的 wrap mode,filter 等参数
- 构建支持外部开发者注册自定义纹理压缩处理工具,详情请参考自定义纹理压缩文档
- 支持 application.ejs 构建模板(需求来自论坛反馈支持)
- Mac / iOS 平台构建添加 “跳过 Xcode 工程更新” 选项, 避免覆盖对工程文件的修改
- 新增 input 模块,未来将替代
systemEvent
,具体参考文档 - 在
EventMouse
和EventTouch
上支持preventSwallow
属性,支持事件穿透派发:event.preventSwallow = true;
- 新增 Octree 空间管理加速结构,优化了视锥剔除性能,可在场景 inspector 中开启
- 新增 GPU Occlusion Query 剔除(默认关闭)
root.pipeline.setOcclusionQueryEnabled(true);
- 地形模块支持自动 LOD
- RenderTexture 添加 readPixels 接口
- 支持 @requireComponent 传入数组
- 新增接口 JsbBridge 简化调用 Java 代码和 ObjC 代码的使用,参考展示用例
光照模型和渲染优化
- 支持自动生成环境贴图卷积图用于漫反射计算
手动设置环境光 vs 自动生成漫反射卷积图
- 支持 HDR 和 LDR 渲染切换(在场景节点 Skybox 配置中)
关闭 HDR vs 开启 HDR
- 支持 IBL 采样降噪(standard 材质中勾选 USE REFLECTION DENOISE)
开启 Denoise vs 关闭 Denoise
- 修复半透明物体的光照和阴影计算
- 更准确的 Gamma Correction
- 优化雾效,将计算迁移到 Fragment Shader 中,保障正确的雾效过渡
渲染管线强化
- 前向和延迟渲染管线均基于 FrameGraph 和 subpass 重构
v3.4 延迟管线 Frame Graph
- 延迟管线使用 Clustered Light Culling 优化动态光源计算性能,可在移动端支持同屏数百个动态光源(麒麟 990 芯片在 Sponza 场景运行 1000 盏动态光源可达到 40 fps)
- 延迟管线支持 FXAA 抗锯齿
- 延迟管线支持简易 Bloom 后处理特效
- 延迟管线在原生平台支持 SSPR 后处理特效(针对平面使用 builtin-reflection-deferred effect)
版本更新记录
120701 更新
- 回退 UI 缓存优化(对于静态场景优化明显,但适用范围较窄,且很难维护)
- 解决 112701 引起的 Label 显示问题和 Spine/DB 更新问题
- 修复 bugs
112701 更新
UI 合批和缓存优化,对于更新频度不高的场景有大幅度提升- 构建支持跳过 cmake 构建,不覆盖 Xcode 工程
- 修复 bugs
112414 更新
- 修复社区反馈性能下降问题(原生平台)
- 修复 Occlusion Query 对 Web 平台的性能影响(默认关闭)
- 修复各种反馈 bug 和测试 bug
111112 更新
- 前向管线回退离屏渲染流程,修复前向管线渲染问题,避免和 3.5/3.6 的管线重构冲突
- 取消 Bloom
- 取消 resolutionScale 设置
- 取消 FXAA
- 社区反馈 bug 修复
111601 更新
- 社区反馈 bug 修复
- 补回 ForwardStage 遗漏的 profiler 渲染代码,避免左下角调试信息丢失