UE5多个关卡流一次性加载/卸载

本文讨论了在游戏开发中如何处理一次性加载多个关卡流的问题,重点介绍了LoadStreamLevel的ShouldBlockOnLoad参数对模型加载动画的影响,以及通过事件和Sequence节点实现同时加载的两种解决方案。
摘要由CSDN通过智能技术生成

问题描述

在开发过程中,可能会遇到需要一次性加载多个关卡流,每个关卡流里包含一部分场景中的建筑。

蓝图调用方式

这里我们先做假设,世界中有四个关卡流,每个关卡流中都有栋10楼的建筑,关卡中模型的加载顺序是从低到高。

        为了解决该问题,我最开始选择下图方式进行加载,直接一个执行流到底,并且此时还不理解LoadStreamLevel中“Should Block On Load"参数的含义,就没有勾选。

此时运行会发现,世界中的关卡流是逐步加载,从关卡流1开始,从1楼加载到10楼,就是逐步显示模型。有一个加载的”动画“。

        但我不想要这个加载动画,我于是试着勾选了“Should Block On Load”。

此时运行发现,每个关卡流的加载不会按照里面的模型进行逐步加载了,没有了逐步加载的这个动画。但是还是存在“动画”,即4个关卡的模型是依次出现,原因显而易见Load Level Stream是一个Lantent函数,关卡流2的加载需要在关卡流1的加载Complete后才进行。

        此时,解决有两个解决方案

方案一:写一个事件,事件内容是加载关卡流

运行,即可发现,所有关卡流一同加载完毕。原因是事件相当于触发器,并不会等待你执行完毕再执行后面的内容。

方案二:利用Sequence节点遇到Lantent函数就进入下一个执行流的特性。

此时也能达到近乎于“同时”加载的效果。因为再Sequnce中,遇到带有延迟特性的函数,就回直接进入下一个执行流。

  • 2
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值