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
0
420
Cesium for Unreal + VRで世界中を飛び回る時のTips
2024/02/16 建築情報学会Meetup Vol.007 (東京)のLT登壇資料
https://ais-j.connpass.com/event/307294/
sentomo
February 16, 2024
Tweet
Share
More Decks by sentomo
See All by sentomo
WebXR Tech Tokyo#1 コロナ時代にできる、WebARリモートハンズオン
sentomo
0
970
Oculus Questハンドトラッキングでキーボードを作ってみた
sentomo
1
1.9k
Other Decks in Technology
See All in Technology
「単なる OAuth 2.0 を認証に使うと、車が通れるほどのどでかいセキュリティー・ホールができる」のか検証してみた
terara
0
380
AutomatedLabを使って内部ペンテストを勉強しよう! -やられ社内ネットワークの自動構築-
n_etupirka
1
610
JBUG岡山 #6 WordCamp男木島の チームビルディング
takeshifurusato
0
150
AIエージェントを現場に導入する目線とは
masahiro_nishimi
1
1.5k
DDDにおける認可の扱いとKotlinにおける実装パターン / authorization-for-ddd-and-kotlin-implement-pattern
urmot
4
390
エンジニアの生存戦略 〜クラウド潮流の経験から紐解く技術トレンドのメカニズムと乗りこなし方〜
shimy
9
1.9k
データ分析基盤を作ってみよう~設計編~
nrinetcom
PRO
1
110
【基調講演】変える、今ここから ― IoTとAIで紡ぐ未来
soracom
PRO
0
320
シフトレフトで挑む セキュリティの生産性向上
sekido
PRO
0
270
20240717_イケコパ代表Copilot_in_Teams会社でこう使ってます
ponponmikankan
2
430
成長期に歩みを止めないための創業期の開発文化形成
mayah
6
420
地理情報とAPIのトレンド
nagix
0
160
Featured
See All Featured
Building Flexible Design Systems
yeseniaperezcruz
323
37k
XXLCSS - How to scale CSS and keep your sanity
sugarenia
245
1.2M
How To Stay Up To Date on Web Technology
chriscoyier
784
250k
Being A Developer After 40
akosma
72
580k
Embracing the Ebb and Flow
colly
81
4.3k
From Idea to $5000 a Month in 5 Months
shpigford
377
46k
[RailsConf 2023 Opening Keynote] The Magic of Rails
eileencodes
17
8.7k
Design by the Numbers
sachag
277
18k
Into the Great Unknown - MozCon
thekraken
20
1.3k
Java REST API Framework Comparison - PWX 2021
mraible
PRO
20
7.2k
Unsuck your backbone
ammeep
666
57k
Stop Working from a Prison Cell
hatefulcrawdad
266
20k
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 !