当前位置: 首页 > news >正文

Unity基础(十四)场景异步加载

1、为什么用异步

SceneManager.LoadScene("Scene2");
场景的同步切换
同步切换场景时unity会删除当前场景上所有对象
并且去加载下一个场景的相关信息
如果当前场景 对象过多或者下一个场景对象过多
这个过程会非常的耗时 会让玩家感受到卡顿
异步切换解决这个问题

2 场景异步加载

当场景异步加载结束后,就会自动调用该事件函数 我们如果希望在结束后 做一些事情 ,那么可以在该函数中写逻辑

AsyncOperation ao=SceneManager.LoadSceneAsync("Scene2"); ao.completed += (a) => { print("123"); }; ao.completed += LoadOver; private void LoadOver(AsyncOperation ao) { print("LoadOver"); }

2 协程异步加载

加载场景会把当前场景上 没有特别处理的对象 都删除了
所以协程中的部分逻辑是可能执行不了的
解决思路
让处理场景加载的脚本依附的对象 过场景时 不被移除

StartCoroutine(LoadScene("Scene2")); DontDestroyOnLoad(this.gameObject); IEnumerator LoadScene(string name) { //第一步 异步加载场景 AsyncOperation ao =SceneManager.LoadSceneAsync(name); print("over"); //协程好处 加载的同时 可以处理别的逻辑 yield return ao; //unity内部的 协程协调器 发现异步加载类型的返回对象 那么就会等待 //等待异步加载结束后 才会继续执行 迭代器函数中后面的步骤 //第二步 print("还有"); //我们可以在异步加载过程中 去更新进度条 //第一种 是利用场景异步加载 的进度 去更新 但是不是特别准确,一般也不会用 //进度控制不了, while (!ao.isDone) { print(ao.progress); yield return null; } //第二种 是根据游戏的规则 自己定义进度变化的条件 //场景加载结束 更新20%进度条 //接着去加载场景中的其他信息 //比如 动态加载怪物 //这时 进度条再更新20% //动态加载 场景模型 //这时候 认为加载结束了, 进度条拉满 //隐藏进度条 }
http://www.jsqmd.com/news/984579/

相关文章:

  • 如何快速掌握Windows驱动开发:终极硬件伪装指南
  • 2026年免费AI编程工具推荐榜单
  • 自动装盘机倒瓶检测系统的传感器选型与信号处理
  • 2026年未央区宠物医院大比拼:哪家最得宠主心?
  • PCDN服务SLA设计:承诺多少节点在线才合理?
  • OpenSpec实战
  • 关于NoSQL数据库的一切,终于说清楚了
  • 鸿蒙App开发--心愿池的动画特效:投币动画与进度条
  • 翰泰通环保空调客户满意度调查:9680+企业的真实反馈
  • 国内九大靠谱的地脚螺栓厂家盘点
  • 学习比特 享幸福人生
  • android开发 原生设置中的Device name 与Device model
  • 中小企业做GEO的投入和产出怎么算——从成本、时间线和效果三个方向来看
  • Playwright MCP Docker 部署:mcr 镜像、浏览器工具和权限配置
  • 2026高考大数据:1290万考生背后的赛道拥挤度与捡漏指南
  • Path of Building终极指南:5步打造完美流放之路角色
  • CSDN文章-API生态变化
  • GEO基础优化包含哪些基础项目
  • 论文去重难?5个实用工具帮你
  • Redis中的通用命令
  • 拒绝“胶水架构”:大模型时代,如何用统一任务基座破解 AI 研发的技术债?
  • 2027考研计算机王道408网课视频网盘资料-无偿分享
  • 终极指南:如何免费将VR视频转为2D并自由控制视角
  • 从 Kydi 到 Claude Code:企业和个人到底需要什么样的 AI 智能体?【奇墨科技】
  • 打造你的专属音乐库:LXMusic音源配置实战指南
  • 格力空调全国 24小时 售后服务热线人工客服号码上线
  • 2026年新发布:手工月饼如何选?元领科技发展有限公司全景解析 - 2026年企业资讯
  • 亚马逊270天库存生死线!超龄库存清仓全攻略
  • 终极指南:5分钟在Mac上实现Android手机USB网络共享
  • 代码智能体核心原理:Agent Loop工程落地