Cocos Creator 3.8.5 正式发布,更小更快更多平台!
在 Cocos Creator 3.8.5 版本中,我们做了新一轮的优化。
在加载速度、代码裁剪、平台增强等多方面做了优化,提升了开发者体验和游戏性能。
希望能够助 Cocos 开发者们的产品更上一层楼。
一、加载速度优化
1、WASM 模块延迟加载
在早期版本中,Cocos Creator 在打包时就支持了 WASM 模块分离,使 WASM 模块可以放入分包之中,不占用主包包体。

在 3.8.5 版本中,我们支持 WASM 模块延迟加载,这对使用了 Box2D、Spine、Bullet 等 WASM 库的游戏非常有帮助。用户只需要在使用相关功能之前,调用下面的API函数,加载对应的 WASM 库即可。
loadWasmModuleBox2D
loadWasmModuleSpine
loadWasmModuleBullet
loadWasmModulePhysics
这样一来,开发者就可以控制 WASM 的加载时机,使 WASM 模块的加载不占用首屏时间,大大缩短玩家首次进入游戏的加载时长。
2、代码裁剪
在 Cocos Creator 3.8.5 中,引擎内部采取了多种方案组合,降低 2D 项目包体大小。
移除 web 平台 gfx 层无用的代码
构建引擎代码支持"内联枚举"功能
Spine 模块包体优化,体积相比 v3.8.4 缩减 40% 左右
显示声明 ts 类的构造函数,避免生成无用代码
我们还会继续努力,确保纯 2D 项目的包体与 2.x 项目持平,同时尽可能减少 3D 项目。
二、CRP 管线优化

v3.8.4 提供的可定制管线 CRP-Customizable Render Pipeline 受到了许多开发者的欢迎,同时我们也收到了非常多的反馈。在 v3.8.5 版本中,我们优化了若干反馈,并对管线进一步加强。
在 v3.8.5 中,我们完善了景深(DOF)等后期效果,自定义后效支持组件式添加,也进一步优化了性能和内存占用。
CRP 会在易用性、效果、性能和内存占用等方面持续优化,最终成为项目开发的主流选择。
三、平台增强
1、鸿蒙 NEXT

Cocos Creator 3.8.5 提供了华为完全自主研发的鸿蒙 NEXT 操作系统的发布支持,开发者通过发布面板即可一键发布到鸿蒙 NEXT 平台。
2、Google Play

Cocos Creator 3.8.5 提供了一键发布到 Google Play 的能力。与普通的 Android 发布相比有一些差异和便捷特性。
一键激活 ADPF(Android Dynamic Performance Framework),这是一个动态性能优化框架,可以更好地提升游戏的散热表现和CPU性能。
默认渲染后端为 VULKAN
可以配置应用程序图标
3、咪咕小游戏

Cocos Creator 3.8.5 支持一键发布到咪咕小游戏,并在发布时配置相关参数。

2024年,结合自身资源和行业趋势,咪咕游戏开始打造 “双特色” 游戏分发平台。启动了全新的小游戏合作政策:60% 分成,零投入、免费流量推广扶持等。开发者们可以多多关注。
四、编辑器提升

1、启动速度优化
Cocos Creator 3.8.5 中,我们优化了启动时的资源编译方案,项目启动速度提升约 30% 左右,后面我们还会继续优化启动速度,节省开发者项目启动时间。
2、升级 Electron

Electron 升级到 v31.3.1,使编辑器可以享受到新版 NodeJS 的增益,不仅能够提升性能,插件开发者们还可以使用新版 NodeJS v20.15 的 API 和特性。
3、场景编辑器点选规则优化
3.8.5 中,我们优化了场景编辑器中物体点选规则,当同一个区域物体较多时,会优先选中较近的物体。
4、属性检查器支持 Prefab 预览

5、属性检查器支持 Spine 预览

五、一些重要问题修复
Node 的 position/rotation/scale 等设置方法改回和 v3.8.3 一样的方式。
修复构建时自动图集压缩纹理后还保留原图的问题。
修复 Box2D 在 Contract 回调函数内销毁节点会崩溃的问题。
修复热更新文件很多时,会造成UI页面卡主的问题。
Prefab 中会记录无用的 Mesh 数据。
iOS ETC 压缩格式,使用 Mac 压缩后透明度不对。
自动合图的纹理填充率变低,导致 UI Drawcall 增加。
六、v3.8.6 预告

Cocos Creator v3.8.6 版本的迭代将继续聚焦于优化包体大小和加载速度,增强对 Spine 和 Box2D 的支持,提升编辑器易用性等。

感谢大家对 Cocos Creator 的支持与信任,让我们一起创造更多优秀的作品!
相关文章:

Cocos Creator 3.8.5 正式发布,更小更快更多平台!
在 Cocos Creator 3.8.5 版本中,我们做了新一轮的优化。 在加载速度、代码裁剪、平台增强等多方面做了优化,提升了开发者体验和游戏性能。 希望能够助 Cocos 开发者们的产品更上一层楼。 一、加载速度优化 1、WASM 模块延迟加载 在早期版本中,…...

Python中构建终端应用界面利器——Blessed模块
在现代开发中,命令行应用已经不再仅仅是一个简单的文本输入输出工具。随着需求的复杂化和用户体验的重视,终端界面也逐渐成为一个不可忽视的设计环节。 如果你曾经尝试过开发终端UI,可能对传统的 print() 或者 input() 函数感到不满足&#…...

Android 15 状态栏闹钟图标不显示问题修复
Android 15 状态栏闹钟图标不显示问题修复 问题描述 在 Android 15 系统中,发现即使设置了闹钟,状态栏也不会显示闹钟图标。这个问题影响了用户及时查看闹钟状态的体验。 问题分析 通过查看 SystemUI 的配置文件,发现在 frameworks/base/packages/SystemUI/res/values/conf…...

数据采集背后的效率革命:如何优化你的爬虫性能
在爬虫技术日益发展的今天,性能优化成为提升数据采集效率的关键。面对日益复杂的网页结构和庞大的数据量,高效的爬虫能够显著降低运行时间和资源成本。本文将围绕爬虫性能优化的核心方法展开讨论,并通过实例对比多进程、多线程以及普通爬取的…...

【Compose multiplatform教程06】用IDEA编译Compose Multiplatform常见问题
当我们从Kotlin Multiplatform Wizard | JetBrains 下载ComposeMultiplatform项目时 会遇到无法正常编译/运行的情况,一般网页和桌面是可以正常编译的, 我这里着重解决如下问题 1:Gradle版本不兼容或者Gradle连接超时 2:JDK版本不兼容 3:Gradle依赖库连…...

《计算机组成及汇编语言原理》阅读笔记:p128-p132
《计算机组成及汇编语言原理》学习第 10 天,p128-p132 总结,总计 5 页。 一、技术总结 1.8088 organization and architecture 8088处理器是16位电脑,寄存器是16位,数据总线(data bus)是8位,地址总线是20位。 (1)g…...

使用 OpenCV 在图像中添加文字
在图像处理任务中,我们经常需要将文本添加到图像中。OpenCV 提供了 cv2.putText() 函数,可以很方便地在图像上绘制文本,支持多种字体、颜色、大小和位置等参数。 本文将详细介绍如何使用 OpenCV 在图像中添加文字,介绍 cv2.putTe…...

实现某海外大型车企(T)Cabin Wi-Fi 需求的概述 - 4
大家好,我是Q,邮箱:1042484520qq.com。 今天我们在上几讲的基础上再扩展下 Cabin Wi-Fi 的功能需求,讲讲如何使能 5G TCU Wi-Fi STA Bridge 模式。 参考: 实现某海外大型车企(T)Cabin Wi-Fi 需求…...

Linux系统:内核态与用户态的深层思考
背景: 我们学习Linux的系统调用经常会遇到一个概念:“内核态和用户态的切换”,一般人只会告诉你说这个切换代价很大,具体是什么情况?为什么需要切换?一定需要切换吗?怎么就会触发切换࿱…...

# 光速上手 - JPA 原生 sql DTO 投影
前言 使用 JPA 时,我们一般通过 Entity 进行实体类映射,从数据库中查询出对象。然而,在实际开发中,有时需要自定义查询结果并将其直接映射到 DTO,而不是实体类。这种需求可以通过 JPA 原生 SQL 查询和 DTO 投影 来实现…...

ASP.NET Web应用程序出现Maximum request length exceeded报错
一、问题描述 在ASP.NET的web应用中,导出数据时出现500 - Internal server error.Maximum request length exceeded。 二、原因分析 这个错误通常出现在Web应用程序中,表示客户端发送的HTTP请求的长度超过了服务器配置的最大请求长度限制。这可能是因为…...

HTML——16.相对路径
<!DOCTYPE html> <html><head><meta charset"UTF-8"><title></title></head><body><a href"../../fj1/fj2/c.html" target"_blank">链接到c</a><!--相对路径:-->…...

windows 默认的消息ID有那些---我与大模型对话
前言: 与大模型交流,提问要尽量简短,突出关键词。否则它的回答就可能事是而非。用它总结和查资料还行,用它解决问题路还很远。它非常注重标准格式并机械的执行标准格式,并且事无巨细,不能灵活简要的回答问…...

CSV vs 数据库:爬虫数据存储的最佳选择是什么
介绍 在爬虫技术中,数据存储是一个不可缺少的环节。然而,选择合适的存储方式对数据分析和结果应用都致关重要。CSV和数据库是常用的两种存储方式,但它们各有优缺。这篇文章将分析两者在爬虫数据存储方面的选择值。 微博热搜是当前网络热点话…...

编译原理学习笔记——CH7-Runtime Environments运行时环境
本章重点: 为什么函数调用可以采用栈式存储? 函数调用和返回过程中需要记录哪些信息?如何记录? 主要知识点: 环境、状态、activation (激活) of procedures 、elaboration (确立…...

机器学习DAY7: 特征工程和特征选择(数据预处理)(完)
本文通过特征提取、特征转换、特征选择三个过程介绍数据预处理方法,特征提取将原始数据转换为适合建模的特征,特征转换将数据进行变换以提高算法的准确性,特征选择用来删除无用的特征。 知识点 特征提取特征转换特征选择 本次实验的一些示…...

vue3动态加载组件
如何在Vue3中动态加载组件 需求根据下拉框的值,加载不同的组件 新建文件aaa.vue,bbb.vue <template><div class"container">我是bbbb组件</div> </template><script lang"ts" setup name"taskPus…...

12.29 redis缓存一致性
更新操作 如果先更新数据库再更新缓存 先更新缓存再更新数据库 更新缓存为1 更新缓存尾2 更新数据库为2 更新数据库为1 那么最后缓存为2 数据库为1 数据不一致 先更新数据库,再更新缓存 数据库为1 数据库为2 缓存为2 缓存为1 还是不一致 于是这种情况我们改为将缓…...

SqlSugar配置连接达梦数据库集群
安装达梦数据库时,会自动在当前操作系统中创建dm_svc.conf文件,可以在其中配置集群信息,不同操作系统下的文件位置如下图所示: dm_svc.conf文件内的数据分为全局配置区域、服务配置区域,以参考文献1中的示例说明&…...

评分模型在路网通勤习惯分析中的应用——提出问题(1)
1、问题的由来、目标和意义 最近一段时间和公司其它业务部门讨论时,发现一个有趣的交通路网问题,车辆从S点行驶到V点共用时40分钟,这段时间内路网中的卡口摄像头识别到了车辆通过的信息。如下图所示: 设计师需要通过这些有限的路…...

使用 OpenCV 绘制线条和矩形
OpenCV 是一个功能强大的计算机视觉库,它不仅提供了丰富的图像处理功能,还支持图像的绘制。绘制简单的几何图形(如线条和矩形)是 OpenCV 中常见的操作。在本篇文章中,我们将介绍如何使用 OpenCV 在图像上绘制线条和矩形…...

npm 切换镜像源
设置镜像源 npm config set registry https://mirrors.huaweicloud.com/repository/npm/ npm 官方原始镜像网址是:https://registry.npmjs.org/ 淘宝 NPM 镜像:https://registry.npm.taobao.org 阿里云 NPM 镜像:https://npm.aliyun.com 腾…...

CSS(四)display和float
display display 属性用于控制元素的显示类型,用的 display 值包括: block:块级元素 使元素成为块级元素,占据一整行,前后有换行宽度默认为父容器的 100%,可以设置宽高,支持 margin、padding、…...

MMaudio AI:如何通过 AI 实现精准的视频到音频合成
1. 引言:视频音效制作的新纪元 无论是短视频创作者还是电影后期制作团队,音效始终是提升作品质量的关键。然而,手动调整音效不仅耗时,还容易出错。试想,如果一项 AI 技术能够根据视频内容自动生成与画面完美同步的音效…...

SQL进阶技巧:如何分析双重职务问题?
目录 0 背景描述 1 数据准备 2 问题分析 方法2:利用substr函数,充分利用数据特点【优秀解法】 3 小结...

OpenCV相机标定与3D重建(37)计算两幅图像之间单应性矩阵(Homography Matrix)的函数findHomography()的使用
操作系统:ubuntu22.04 OpenCV版本:OpenCV4.9 IDE:Visual Studio Code 编程语言:C11 算法描述 找到两个平面之间的透视变换。 cv::findHomography 是 OpenCV 库中用于计算两幅图像之间单应性矩阵(Homography Matrix)的…...

Nacos配置管理+共享配置、配置热更新
1. 什么是配置管理? Nacos 配置管理是一个集中管理配置的工具。 它把微服务的配置集中存放,方便管理。可以动态更新配置,配置变了,微服务能马上知道并更新,不用重启。还能进行版本控制,记录配置的历史版本方便回滚。…...

asp.net core系统记录当前在线人数
实时记录当前在线人数,登录后保持120秒在线状态,在线状态保存在缓存中,采用滑动过期,在120秒内请求了系统,自动续活120秒;超过时间则移除用户在线状态; 需要在登录过滤器标记用户在线状态需要排…...

秒杀场景的设计思考
秒杀场景的设计思考 在学习Redis的之后,一个绕不开的话题就是秒杀系统的设计。本文将从下面👇🏻几个方面展开一下个人简单的理解: 秒杀场景的介绍设计的核心思路怎么限流、削峰、异步planB总结 秒杀场景的介绍 秒杀场景是…...

快速掌握Haproxy原理架构
文章目录 一、原理架构二、无负载均衡三、四层负载均衡的工作流程四、七层负载均衡工作流程五、基础属性mode 属性retries 属性maxconn 属性clitimeout 属性servtimeout 属性states uri 属性 一、原理架构 四层tcp代理:Haproxy仅在客户端和服务器之间双向转发流量&…...