Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Cesium for Unreal + VRで世界中を飛び回る時のTips
Search
sentomo
February 16, 2024
Technology
930
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Cesium for Unreal + VRで世界中を飛び回る時のTips
2024/02/16 建築情報学会Meetup Vol.007 (東京)のLT登壇資料
https://ais-j.connpass.com/event/307294/
sentomo
February 16, 2024
More Decks by sentomo
See All by sentomo
UE+Cesium+VRでPLATEAUを使ってみた
sentomo
0
55
WebXR Tech Tokyo#1 コロナ時代にできる、WebARリモートハンズオン
sentomo
0
1.1k
Oculus Questハンドトラッキングでキーボードを作ってみた
sentomo
1
2.2k
Other Decks in Technology
See All in Technology
美しいコードを書くためにF#を学んでみた話
yud0uhu
1
410
インフラと開発の垣根を超えていき!〜元AWSインフラエンジニアがAWS開発で奮闘している話〜
hatahata021
1
150
SREとQA 二人三脚で進めるSLO運用/sre-qa-slo
sugitak
0
440
ポストモーテム! DDoSからサイトは守れた。 でもビジネスは守れなかった。
bengo4com
0
2.8k
完全自律ロボットを作りたくて、先に開発を自律させた話(ROS Japan UG #63 LT)
rryz09
0
480
Kaggleで成長するために意識したこと
prgckwb
2
300
脱金融のフューチャー・デザイン / Future Design Beyond Finance
ks91
PRO
0
150
アカウントが増えてからでは遅い? ~ マルチアカウント統制の勘所 ~
kenichinakamura
0
220
証券システムを10年Scalaで作り続けるということ - 関数型まつり2026
krrrr38
3
840
Foxgloveについて 実際にExtensionを開発して公開するまでの話 / About Foxglove: The Story of Developing and Releasing an Extension
ry0_ka
0
200
人を動かすのは時間ではなく、納得感 〜新任EMが入社3ヶ月、組織を2回変えた話〜
kakehashi
PRO
3
210
なぜ私たちのSREプラクティスはなかなか機能しないのか 〜システムより先に組織を見る〜 / Why our SRE practices aren't really working
vtryo
3
3.6k
Featured
See All Featured
Building Flexible Design Systems
yeseniaperezcruz
330
40k
Building Better People: How to give real-time feedback that sticks.
wjessup
370
20k
svc-hook: hooking system calls on ARM64 by binary rewriting
retrage
2
330
Rails Girls Zürich Keynote
gr2m
96
14k
Thoughts on Productivity
jonyablonski
76
5.2k
Bootstrapping a Software Product
garrettdimon
PRO
307
120k
Navigating the Design Leadership Dip - Product Design Week Design Leaders+ Conference 2024
apolaine
1
370
Templates, Plugins, & Blocks: Oh My! Creating the theme that thinks of everything
marktimemedia
31
2.8k
The MySQL Ecosystem @ GitHub 2015
samlambert
251
13k
Mind Mapping
helmedeiros
PRO
1
280
The Success of Rails: Ensuring Growth for the Next 100 Years
eileencodes
47
8.2k
The Cost Of JavaScript in 2023
addyosmani
55
10k
Transcript
Cesium for Unreal + VRで 世界中を飛び回る時のTips sentomo 建築情報学会MeetupVol.007
sentomo(千壽朋子) 某360°カメラの会社で、建設業向けVRワークプレイスの開発 BIM/CIM、点群データを表示させ、複数人で同じ空間に入って設計・施工検討ができる VR開発は6年くらい Unity:2017.10〜2019.6 Unreal Engine :2019.7〜 すきなこと パンダ/
美味しいものを食べ飲みすること/ 野球観戦 @sentomo594
Cesium GS, Inc.が提供するオープンソースの3D地図プラットフォーム CesiumJS、UnrealEngine、Unity、NVIDIAOmniverse、O3DEと連携可能 商用利用は有料ライセンスが必要 Cesium ionに、CityGML、obj、fbx、点群ファイル(las、laz)などをアップロード すると、3D Tilesデータに変換して配信することができる https://cesium.com/learn/3d-tiling/tiler-data-formats/
2023年10月、Google Photorealistic 3D TilesがCesiumionのアセットとして利用可能に https://cesium.com/blog/2023/10/26/photorealistic-3d-tiles-in-cesium-ion/
ドキュメント、サンプルプロジェクトあり https://cesium.com/learn/unreal/ https://github.com/CesiumGS/cesium-unreal-samples ユーザが任意の緯度経度高さを指定して、 BIM/CIMや点群データをCesiumの地形データに重畳させて VRで見たい! でも、実行時に任意の緯度経度を指定して3D地図を 表示するサンプルはない (事前にいくつかの地点をサブレベルとして組み込んで実行するサンプルはある)
• Windows 11 • NVIDIA GeForce RTX 4090 • Unreal
Engine 5.2.1 • Cesium for Unreal v2.2.0 開発環境
VRでCesiumの地形データを表示すると、Dither表現になる VR関連のTips • Cesium for Unreal VR Tutorialsを試したらそうなっていた… • VRで視界の大半を占める部分がDitherになっていると
目がチカチカしてVR酔いに繋がりやすい • CesiumのForumで対応方法を発見 ⚬ https://community.cesium.com/t/forward-rendering-msaa-black-squares-and-dithering-artifacts-on-terrain/24149/8 • Cesiumで使われている大元のマテリアルの DitherFade マテリアルレイヤーを削除したらDither表現を無効にできた
Google Photorealistic 3DTileの地形データを表示すると、fpsが落ちる パフォーマンス関連のTips • 特にGoogle Photorealistic 3DTileを表示した時に、開発環境でも約36fps… • stat
GPUでパフォーマンスを確認したところ、BassPassとProjection Shadowで処理時間 がかかっていた • Google Photorealisticは他のBing MapやOpen Street Mapの地形データよりもポリゴン数 が多いことが影響している • 無限に地形データを表示せずに、表示範囲を指定するようにした
• 表示範囲の指定方法は、CartographicPolygonsの仕組みを利用 ⚬ https://cesium.com/learn/unreal/unreal-clipping/ • 指定した範囲の内側、もしくは外側をマテリアルでクリッピングする ⚬ 範囲の外側を非表示にしたい時 ■ CesiumPolygonRasterOverlayのInvertSelectionをtrueに(デフォルトfalse)
■ Google Photorealisticで外側を非表示にしたい時は、 さらにCesiumPolygonRasterOverlayのExcludeSelected Tilesをfalseに(デフォルトtrue) • https://community.cesium.com/t/cesium-cartographic-polygon-not-clipping/28229/7 Google Photorealistic 3DTileの地形データを表示すると、fpsが落ちる パフォーマンス関連のTips
Google Photorealistic 3DTileの地形データを表示すると、fpsが落ちる パフォーマンス関連のTips • 動的にCartographicPolygonsを動的に生成し、km四方で指定した範囲の 4点の位置を設定した →ドキュメントにもあるが、CartographicPolygonsの形を変更した後に RefreshTilesetを実行しないと表示範囲が変更されないので要注意!
Google Photorealistic 3DTileを表示した時に3DTileの穴が抜けてしまう 描画関連のTips • Cesium3DTilesetでカリングし過ぎているのが原因 • カリング設定があり、以下を設定したら解決した ⚬ Enable
Frustum Culling:false ⚬ Enable Fog Culling:false ⚬ Enforce Screen Screen Space Error:true ⚬ Use Lod Transitions:true ⚬ Lod Transition Length:0.1
None
おまけ まとめ • Cesiumを活用することでBIM/CIMモデルを重畳させて、建設予定の建物から眺望や 建物の外観と周景とのバランス等を確認しやすくなり、 円滑な合意形成につながると感じている • CesiumはForumで質問すると1-2日でCesiumの開発者から返信をもらえるので、 とても有難い •
単純におもしろい!ワクワクする!
Thank you !