虚幻引擎(UE5)-大世界分区WorldPartition教程(三)
文章目录
- 前言
- LevelInstance的使用
- 1.ALevelInstance
- 2.选择Actor创建关卡
- 3.运行时加载LevelInstance
- 总结
上一篇:虚幻引擎(UE5)-大世界分区WorldPartition教程(二)
前言
在制作大关卡时,可能会遇到这样一种情况,就是关卡中的某些Actor会重复出现或者你想单独编辑某区域的Actors,举个例子,关卡中有两片一模一样的森林,很显然,如果在关卡中制作两个这样的森林不科学
在UE5中可以通过一个特殊的Actor即ALevelInstance管理多个Actor,它会被保存为一个关卡文件(即SubLevel),在运行时可以被实例化为多个,即所谓的Level Instancing技术
提示:以下是本篇文章正文内容
LevelInstance的使用
1.ALevelInstance
手动创建一个ALevelInstance蓝图,然后为它指定任意的Level
将该LevelInstance蓝图拖到你想要放的关卡中即可,此时在拖到的关卡中还不能对该LevelInstance的Actor进行编辑,需要点击该LevelInstance的Details面板下的Edit按钮进行编辑,编辑完后提交即可
当然也可以直接指定的关卡
2.选择Actor创建关卡
在当前关卡的Viewport或Outliner选中多个Actor,然后为其创建LevelInstance
这样就将多选的actor合并到一个新的关卡里面了。
提示:LevelInstance可以嵌套多层,也就是说LevelInstance下面还可以有子LevelInstance
还有一点值得注意,LevelInstance和它下面的Actor的是否被保存为外部文件是根据它们所在的关卡决定的,所在关卡为WP关卡,那么默认会保存到外部文件,所在关卡为非WP关卡,可以按照OFPA小节介绍的方法来决定是否将这些Actor保存为外部文件
这个时候会发现这里的LevelInstance 有两个选项,这两种的区别如下:
- LevelInstance,不会合并Actor
- PackedLevelActor,它试图将静态网格的Actor合成成尽可能少的静态网格Actor
比如选中几个静态网格Actor创建PackedLevelActor后,会被合成一个Actor
想具体了解静态网格Actor如何被Packed可以翻一下源码的FPackedLevelActorISMBuilder::PackActors方法
3.运行时加载LevelInstance
在运行时有两种方式加载LevelIntance
- 如果LevelInstance开启了OFPA(即PackageMode为External),它拥有的所有Actor都会被嵌入到当前WP关卡中,这些Actor会被自动划分到Cell中,并且将WP关卡中的LevelInstance这个Actor直接丢弃掉(它只存在于编辑时)
- 如果LevelIntance没有开启OFPA(即PackageMode为Internal),它拥有的Actor不能被嵌入到WP关卡中,LevelInstance这个Actor仍然会保留,当加载LevelInstance这个Actor时会加载它关联的SubLevel
第一种方式是默认的也是推荐的方式,它会将LevelInstance关联的SubLevel中的所有Actor嵌到WP关卡中,然后将它们自动划分到Cell中来流送,第二方式和UE4中的关卡流送机制类似,在流送LevelInstance这个Actor所在的Cell时会将它关联的SubLevel全部加载进来,这可能造成性能问题
具体实现可参见ULevelInstanceSubsystem::UpdateStreamingState
总结
以上就是今天要讲的内容,本文仅仅简单介绍了LevelInstance的使用,Level Instance既方便了编辑时候对某些Actor的重用和生成多实例,同时也方便将UE4的SubLevel接入WP关卡。
下一篇:虚幻引擎(UE5)-大世界分区WorldPartition教程(四)
虚幻引擎(UE5)-大世界分区WorldPartition教程(三)相关推荐
- 虚幻引擎(UE5)-大世界分区WorldPartition教程(二)
文章目录 前言 一.OFPA怎么用 二.OFPA怎么用 总结 上一篇:虚幻引擎(UE5)-大世界分区WorldPartition教程(一) 前言 在UE4版本中中,Actor是保存在关卡文件中的,也就 ...
- 虚幻引擎(UE5)-大世界分区WorldPartition教程(四)
文章目录 前言 一.Data Layers的使用 1.添加Actor到Data Layers 2.运行时处理 总结 上一篇:虚幻引擎(UE5)-大世界分区WorldPartition教程(三) 前言 ...
- 虚幻引擎(UE5)最佳集成CesiumforUE教程(一)
虚幻引擎(UE5)最佳集成CesiumforUE教程(一) UE集成CesiumUE插件使用 文章目录 虚幻引擎(UE5)最佳集成CesiumforUE教程(一) 前言 一.项目创建 二.新建光卡 二 ...
- 虚幻引擎5:快速入门学习教程
流派:电子学习| MP4 |视频:h264,1280×720 |音频:AAC,48.0 KHz 语言:英语+中英文字幕(根据原英文字幕机译更准确)|大小解压后:5.63 GB |时长:5h 23m 从 ...
- 虚幻引擎(18)-局域网联机详细教程
文章目录 前言 相关介绍 其他介绍 上一篇笔记 下一篇笔记 完整项目 一.准备阶段 二.玩家 三.地图 四.游戏模式 五.界面介绍 六.关卡蓝图 七.加入服务器界面 [1]. 界面设置 [2]. 变量 ...
- [虚幻引擎][UE5]获取当前系统的时间
[虚幻引擎][UE5]获取当前系统的时间 方法一: 方法二: 方法三: 方法一: 效果: 方法二: 效果: 缺点:没有办法都是两位 方法三:
- 虚幻引擎虚拟现实开发基础学习教程
流派:电子学习| MP4 |视频:h264,1280×720 |音频:AAC,44.1 KHz 语言:英语+中英文字幕(根据原英文字幕机译更准确)|大小解压后:3.93 GB |时长:5h 15m 了 ...
- Python for虚幻引擎编辑器工具脚本学习教程
Python for Unreal Engine Editor Tools Scripting MP4 |视频:h264,1280×720 |音频:AAC,44.1 KHz,2 Ch 语言:英语+中英 ...
- 虚幻引擎VR游戏开发基础教程
虚幻引擎VR游戏开发基础教程 了解如何使用 Oculus Quest 2 的蓝图在虚幻引擎 4 中从头开始构建基本的 VR 机制 课程英文名:Unreal Engine VR Development ...
最新文章
- JSP笔记-JavaBean
- centos6.5 mysql 远程访问_centos6.5 mysql 设置支持远程ip访问
- python循环队列_关于循环队列的一些讲解
- Tungsten Fabric SDN — 网络协议
- Linux的用户和用户组管理
- Unity 中的协同程序
- 十三种基于直方图的图像全局二值化算法原理、实现、代码及效果。
- 项目: 双人反弹球游戏
- QT的QOpenGLDebugLogger类的使用
- GPS定位系统源码只有这种才是最适合做二次开发的...
- classpath目录
- 使用Outlook Connector插件之后 qq发送过来的邮件为乱码
- Cookie的简单理解和使用
- E企云企业邮箱,选了不后悔
- 摄影曝光基础——光圈、快门、ISO
- 一个80后神话的倒掉----郑立
- NAR | 董波/王师/李语丽合作建立首个横跨动物界的进化发育组学数据库平台
- 微服务[开发生命周期]
- 集成方法,或者叫做组合方法(Ensemble methods)介绍(一)
- Play 2.6 使用Ebean
热门文章
- 深入理解 Java 虚拟机
- 关于R7000电量显示59%充不进电的解决方案
- 企业等保测评的必要性
- html标签验证百度搜索,如何验证百度站长平台(百度搜索资源平台)?
- blender 通过python 拉伸平面沿Y轴
- 讲python的东哥_IT大神耗时三年经典之作,2019年Python从入门到精通视频,送你
- 一步一步学Silverlight 2系列(31):图形图像综合实例—实现水中倒影效果_转载...
- 数码相机摄影技巧入门
- js 实现一个简易的英语词典
- 记录vue+饿了么整合阿里云oss 实现图片上传保存到MySQL 前台回显