前言介绍
通过构建的关卡以地球上的单个位置为中心。此中心位置由 CesiumGeoreference 角色确定。CesiumGeoreference 的工作是将这个“中心位置”放在虚幻原点 (0,0,0) 上。随着你远离这个原点,Unreal Engine 或其插件的某些部分可能难以应对地球大小的圆形世界中固有的不一致的“向上”方向和非常大的坐标。
本教程将向您介绍地理配准的子关卡。创建地理参考子关卡允许我们为每个子关卡指定唯一的“中心位置”。在每个子关卡中,+Z 是“向上”的,坐标值相对较小,因此几乎所有虚幻功能都可以正常工作。为了实现这些保证,Cesium for Unreal 确保在任何给定时间都不超过一个地理引用子层级处于活动状态。
通过设置子关卡保证各个区域z轴向上,场景正常渲染。此外,只有进入子关卡范围场景才渲染(你也可以设置子关卡强制渲染,但是在此案例中没有这么做),一定程度上减少了性能开销。
官方教程分为了两种 一种将主关卡的内容提取到子关卡上,另一种是创建空的子关卡,往里面添加内容
准备工作:创建持久关卡(主关卡)
添加地图与天空盒**以及一些倾斜摄影模型资源
一、主关卡部分内容提取到子关卡(借助CesiumSubLevel组件)
- 内容窗口双击Denver倾斜模型,将摄像机视角转到Denver模型上
- 视角拉近,挑选喜欢的地方加上一个actor(立方体啊,草啊都可以)
5.创建关卡实例
选中Denver模型和圆柱体,关卡-》创建关卡实例,参数选择默认即可。关卡命名为subDenver
6. 给关卡实例添加CesiumSubLevel组件
- 随后在细节面板中,设置cesiumSubLevel的GeoreferenceOrigin;
设置后结果:
8. 提交;
9. 添加dynamicPawn在此处,运行。
进入子关卡显示Denver模型和圆珠,离开子关卡范围则不显示。
注意事项:
**如果们要在CesiumGeoreference组件中重新设置GeoreferenceOrigin,一定要先关闭子关卡,一定要先关闭子关卡,一定要先关闭子关卡!!!在大纲视图点击眼睛,让其不显示。这个在你设置任何其他关卡的geoReferenceOrigin同样适用。记住只要设置关卡的geoReferenceOrigin就把其他关卡的关闭。
**
举个例子:
①双击Boston模型,相机视角定位到Boston模型,发现Boston模型有些偏,原因前言中有介绍。
错误方法:
②如果我们不关闭子关卡,就设置了CesiumGeoreference组建的GeorefercenceOrigin。子关卡的位置会偏移。子关卡的位置从Denver跑到了Boston
③这时候ctrl+z撤销就好
正确方法
①关闭subDenver子关卡
②然后再设置Cesiumgeoreference组建的GeoferenceOrigin
**
二、创建一个空的子关卡往里面添加内容
1.输入CesiumGeoreference组件输入boston经纬度高,跳转视角。
2.创建一个关卡实例
3.随后点击编辑,添加锥体以及模型在sub_boston关卡中。然后提交
三、蓝图事件设置页面跳转
1.添加dynamicPawn
2.打开mainLevel蓝图,完成蓝图编写
参考文档连接
1:https://cesium.com/learn/unreal/unreal-sublevels/#step-4-create-a-second-sub-level-in-boston
2:https://blog.csdn.net/m0_64217692/article/details/139267821