3DTileset for Unreal

3DTileset for Unreal

3DTileset for Unreal 插件(Cesium for UE4的阉割版)可以在 UE4 坐标系统下直接加载 3DTileset 数据(局部坐标,脱离大的世界坐标系)。

FileSystem

1

Demo

在这里插入图片描述
在这里插入图片描述

代码生成

使用代码在编辑器模式下向关卡中添加Actor,故可以通过 Slate UI 交互方式向编辑器中添加3DTileset数据。

  
  const std::string name="3DTileset";
  const std::string file_url="file:///E:/code/3d-tiles-samples/tilesets/TilesetWithDiscreteLOD/tileset.json";

  UWorld* pCurrentWorld = GEditor->GetEditorWorldContext().World();
  ULevel* pCurrentLevel = pCurrentWorld->GetCurrentLevel();

  AActor* pNewActor = GEditor->AddActor(
      pCurrentLevel,
      AH3DTileset::StaticClass(),
      FTransform(),
      false,
      RF_Public | RF_Transactional);

  AH3DTileset* pTilesetActor = Cast<AH3DTileset>(pNewActor);

  pTilesetActor->SetActorLabel(UTF8_TO_TCHAR(name.c_str()));

  if (!file_url.empty()) {
    pTilesetActor->SetUrl(UTF32_TO_TCHAR(file_url.c_str()));
  }

测试数据

(Documentation/data/TilesetWithDiscreteLOD/tileset.json

{
  "asset": {
    "version": "1.0"
  },
  "geometricError": 500,
  "root": {
    "transform": [
      96.86356343768793,
      24.848542777253734,
      0,
      0,
      -15.986465724980844,
      62.317780594908875,
      76.5566922962899,
      0,
      19.02322243409411,
      -74.15554020821229,
      64.3356267137516,
      0,
      1215107.7612304366,
      -4736682.902037748,
      4081926.095098698,
      1
    ],
    "boundingVolume": {
      "box": [
        0,
        0,
        0,
        7.0955,
        0,
        0,
        0,
        3.1405,
        0,
        0,
        0,
        5.0375
      ]
    },
    "geometricError": 1,
    "refine": "REPLACE",
    "content": {
      "uri": "dragon_low.b3dm"
    },
    "children": [
      {
        "boundingVolume": {
          "box": [
            0,
            0,
            0,
            7.0955,
            0,
            0,
            0,
            3.1405,
            0,
            0,
            0,
            5.0375
          ]
        },
        "geometricError": 0.1,
        "content": {
          "uri": "dragon_medium.b3dm"
        },
        "children": [
          {
            "boundingVolume": {
              "box": [
                0,
                0,
                0,
                7.0955,
                0,
                0,
                0,
                3.1405,
                0,
                0,
                0,
                5.0375
              ]
            },
            "geometricError": 0,
            "content": {
              "uri": "dragon_high.b3dm"
            }
          }
        ]
      }
    ]
  }
}

在这里插入图片描述

参考

  1. cesium for unreal
  2. cesium native
  3. 3DTileset for Unreal
  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
Cesium for Unreal是一款用于虚幻引擎的插件,用于将Cesium地理数据和功能集成到虚幻引擎中。以下是关于Cesium for Unreal教程的详细介绍。 首先,你需要下载和安装Cesium for Unreal插件。你可以在Cesium的官方网站上找到下载链接。安装完成后,你可以在虚幻引擎的插件列表中找到Cesium for Unreal。 一旦安装完成,你可以开始使用Cesium for Unreal开发地理相关的应用程序。首先,你需要导入Cesium的地理数据。你可以通过Cesium ion来获取全球范围的卫星图像、高程数据、地形数据等。导入这些数据后,你可以在虚幻引擎中创建一个真实的地球模型。 接下来,你可以使用Cesium for Unreal的工具和功能来操作地球模型。这些功能包括地理位置定位、相机控制、地理搜索、地理标记等。通过这些功能,你可以在虚幻引擎中创建出具有真实地球数据的应用程序。 除了基本的地理功能,Cesium for Unreal还提供了一些额外的功能和效果,用于增强你的地理应用程序的视觉效果。你可以使用Cesium的渲染器和效果来创建出逼真的地球表面和大气层。你还可以使用Cesium的光照模型来呈现出日出日落、星空等效果。 最后,你可以使用Cesium for Unreal的工具和API来开发自定义的地理应用程序。你可以根据需要添加交互功能、传感器支持、物理模拟等。通过使用虚幻引擎的强大功能和Cesium的地理数据集成,你可以创建出高度逼真和具有交互性的地理应用程序。 总之,Cesium for Unreal是一个强大的插件,用于将Cesium的地理数据和功能整合到虚幻引擎中。使用Cesium for Unreal,你可以创建出真实地球数据的应用程序,并添加各种地理功能和效果。无论是开发虚拟旅游应用程序还是构建地理可视化工具,Cesium for Unreal都是一个非常有用的工具。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值