Cesium for Unreal加载本地3DTiles坐标轴错
原文地址:Cesium for Unreal加载本地3DTiles坐标轴错乱问题
Cesium for Unreal (opens new window)发布后,广大GIS爱好者立即积极参与了测试。这不,马上就有小伙伴发现了严重Bug:加载本地3DTiles坐标轴错乱,但是将3DTiles上传到Cesium ion (opens new window)就没问题。
坐标轴错乱
正常情况这马上就让人联想到是不是Cesium不想让我们加载本地数据,必须上传到Cesium ion才能使用。要知道Cesium ion只提供500M的免费空间,而且国内访问速度贼慢。
其实不要慌张,碰到问题应该第一时间去官方github (opens new window)的issues (opens new window)或者官方论坛 (opens new window),看看有没有人踩坑。
果然就找到了: Unreal load 3dtileset not by ion looks wrong (rotation)(opens new window)
原来是因为gltfUpAxis现在只支持Y的属性值了,虽然Cesium提供了工具3D Tiles Tools (opens new window)可以修复3DTiles数据,不过这也太麻烦了。
然后顺腾摸瓜,找到了相关的issue: Add gltfUpAxis support(opens new window)
还有PR: Add gltfUpAxis support(opens new window)
才Merge不久,看来需要用Cesium for Unreal源码,而不能用官方市场 (opens new window)的版本了。估计您读到这篇博文时,官方版本已经更新并修复这个Bug了。
编译流程请参考Compiling Cesium for Unreal(opens new window)
下面是修复后的效果:
最后分享笔者编译好的Cesium for Unreal插件,解压放到工程Plugins目录,或者直接替换引擎里的Cesium for Unreal插件,比如笔者的引擎插件目录:
E:\Program Files\Epic Games\UE_4.26\Engine\Plugins\Marketplace
链接: Cesium for Unreal插件 (opens new window)提取码: ydcy