CityEngine 导出城市模型 与 UE5中的Cesium球体进行地理配准 第五章

文章讲述了如何将城市模型从.fbx或.obj格式转换为3DTiles(.b3dm)格式,以便在Cesium场景中进行地理配准,利用CesiumLab工具配准空间参考并结合CesiumforUnreal插件实现导入和展示。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

请添加图片描述

  • 🙋‍♂️ 作者:海码007
  • 📜 专栏:CityEngine专栏
  • 💥 标题:CityEngine 导出城市模型 与 UE5中的Cesium球体进行地理配准
  • ❣️ 寄语:书到用时方恨少,事非经过不知难!
  • 🎈 最后:文章作者技术和水平有限,如果文中出现错误,希望大家能指正,同时有问题的话,欢迎大家留言讨论。

0 引言

  • 城市模型数据(.fbx或.obj等)格式的数据是不带有地理空间参考信息的,所以导入到UE5的Cesium场景(使用的是WGS84地理坐标系)中是无法进行地理配准的。
  • 然后发现3DTiles格式的数据是可以带有地理空间参考信息的,所以,考虑将 城市模型数据从 .fbx/.obj格式 转换成 .b3dm 格式的3DTiles数据。在转换的过程中,找到数据中心点的经纬度信息,然后设置过去。
  • 最后结合UE5 Cesium插件的

1 转换成3DTiles格式数据

CesiumLab工具可以给fbx模型配准空间参考信息(也就是坐标系统),然后再结合 Cesium for Unreal 插件中的添加本地 3dtiles数据 功能,将模型配准到地球上。
在这里插入图片描述
然后选择EPSG编码搜索,直接输入空间参考的EPSG编号。
在这里插入图片描述

然后输出成散列格式
在这里插入图片描述
得到的数据文件如下:
在这里插入图片描述

2 导入到Cesium场景中

  1. 首先创建一个基础的Cesium场景关卡。(如果有不会的,可以看专栏的其他文章)

在这里插入图片描述

  1. 使用插件添加一个 Cesium3DTiles Actor。

在这里插入图片描述

  1. 然后在其细节面板中设置数据源。Source:From Url
    本地文件加上 file:/// 前缀,然后再输入路径
    file:///E:/Data/3DTiles/Cube/tileset.json

在这里插入图片描述

### 集成Cesium至Unreal Engine 5以实现地理空间数据加载显示 #### 创建项目 为了在Unreal Engine 5 (UE5) 中集成Cesium,需先创建一个新的虚幻工程项目。选择支持C++的功能丰富的模板来确保后续操作顺利进行[^1]。 #### 安装Cesium插件 完成项目建立之后,在编辑器内部安装并启用Cesium for Unreal 插件。这一步骤至关重要,因为此插件提供了连接Cesium Ion账户以及访问其地理空间数据所需的基础架构和支持工具。 #### 场景配置 激活插件后,按照官方文档指导调整场景设置。具体来说,可能涉及到修改世界设置(World Settings),比如重力方向、坐标系转换等参数,使之适应全球范围内的地理位置表示需求。 #### 加载地理空间数据 借助于已安装好的Cesium For Unreal插件,现在可以从Cesium ion获取各种类型的地理空间数据集,包括但不限于卫星图像、数字表面模型(DSMs), 数字高程模型(DEMs)[^4]。对于特定应用场合下所需的GeoJSON格式的数据源,则可以通过自定义逻辑处理函数或者利用社区贡献的解决方案来进行导入和渲染[^2]。 #### 显示效果优化 当成功加载了目标区域的相关地理信息之后,还可以进一步探索如何提升视觉表现质量。例如采用更高效的材质着色方案减少性能开销;或是引入额外的艺术化处理手段增强沉浸感体验——如天气变化模拟、日夜交替光照调节等功能特性。 ```cpp // 示例代码片段:初始化CesiumIonSession组件 ACesium3DTileset* TileSet; TileSet = NewObject<UCesium3DTileset>(); FString IONAssetID = TEXT("Your_AssetId_Here"); TileSet->LoadFromIonAsync(IONAssetID); ```
评论 13
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值