UNREAL level asset

level

我们可以在内容浏览器中创建新的level,打开level,保存level。

管理多个level

使用level选项卡,来对level进行管理

在level选项卡中,将始终具有persistent level,并且可以使用Level Streaming Volumes,Blueprints或者C++加载或者通过流传输一个或者多个子级别,level 窗口中的这些level,可以使您能够修改当前level(使用蓝色粗体表示),保存一个或多个“level blueprint”,如果在管卡编辑器中的视口进行更改,则将修改当前的关卡,可以使用此窗口来处理多个地图,只要是可写即可。

设置level为当前level make current:

通过在“persistent level上单击鼠标右键,可以执行诸如将其设置为当前级别,更改其可见性和锁定状态以及选择该级别中的所有Actor的操作。

右键单击任何sub-level 删除子级别和更改其流。

添加现有的level

创建一个空的子level

拆分子level

1.选择我们要拆分的actor

2.选择Create New with Selected Actors。

选择的所有Actor将从其原始级别中删除,并添加到新的Actor中,该新Actor将作为您当前持久性Level的子级别添加,并成为在视口中工作的当前Level。

在关卡之间移动Actor

1.在关卡中选择要移动到新level的actor

2.选择Move Selected Actor to level

Level Detail

可视化子 level

在viewport可以将不同level中的物体用不同的颜色显示

实例 【进行level拼装】

如上图,创建4个子level,其中Newlevel作为主level,来进行拼装子level。

如果在拼装level之后,我们运行会发现我们的level中没有物体,这是因为我们需要修改Streaming Method为Always Loaded,在蓝图模式下,运行的时候是不显示子level的

【level 加载与卸载】

有的时候我们需要使用实时来加载和卸载子level,比如我们在没有进入一个屋子的时候,屋子里面的物体我们可以不加载,等进入屋子的时候,我们进行加载,这样可以大大的提高我们的性能。避免一些没有必要的计算。

实现这样的效果也是比较简单的:

1.在place actors中拖入LevelStreamingVolume,设置好大小,如上图就是一个房间的大小。

2.level选项卡中选择level details。

3.切换到需要卸载的level中,在Streaming Volumes中添加一个元素,并且选中上面创建的volumes。即可

4.当摄像机移动到创建的Volumes中,wall level就会被加载,如果移除就会被卸载,一个level可以添加多个Volumes,可以设置多个加载level的区域,此外还可以通过蓝图加载level。

【子 level之间的蓝图通信】

拼装多个子 level后,能不能通过某一个level中的物体达到对另一个子level中的物体实现控制呢?

当然是可以的。在拼装完level后,每个子level会对应生成一个sub-level Blueprint Class,对于每个level内部的通信,可以同过子level的关卡蓝图实现,

level之间的蓝图通信,就可以通过主level来实现,通过获取所有的actor就可以方法子level中的物体。

猜你喜欢

转载自blog.csdn.net/weixin_41363156/article/details/114295993