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
位置情報を用いたモバイルゲームが 気軽に作れる 3D リアルマップサービス 「ARO...
Search
Ryuichi Jinushi
March 27, 2019
Programming
0
63
位置情報を用いたモバイルゲームが 気軽に作れる 3D リアルマップサービス 「AROW」について (実践編) / how to AROW practice at Gotanda.unity #11
https://meetup.unity3d.jp/jp/events/1047
でお話した内容です。
Ryuichi Jinushi
March 27, 2019
Tweet
Share
More Decks by Ryuichi Jinushi
See All by Ryuichi Jinushi
非エンジニアにも分かる UniRx(ゆにあーるえっくす)/ UniRx for non-engineers
ryuj
1
51
マップゲーム SDK 競合の話 / arow and other map game sdk
ryuj
0
920
マップゲーム SDK AROW とその運用を支える AWS の構成 / AROW with AWS
ryuj
0
89
少人数の SDK 開発を支えるテストの話 / tests for small group development
ryuj
0
440
技術書のすゝめ / suggestion of technical book
ryuj
0
74
Other Decks in Programming
See All in Programming
実践ArchUnit ~実例による検証パターンの紹介~
ogiwarat
2
280
SODA - FACT BOOK
sodainc
1
1.1k
[初登壇@jAZUG]アプリ開発者が気になるGoogleCloud/Azure+wasm/wasi
asaringo
0
130
『自分のデータだけ見せたい!』を叶える──Laravel × Casbin で複雑権限をスッキリ解きほぐす 25 分
akitotsukahara
1
310
GoのGenericsによるslice操作との付き合い方
syumai
2
670
イベントストーミング図からコードへの変換手順 / Procedure for Converting Event Storming Diagrams to Code
nrslib
1
120
Datadog RUM 本番導入までの道
shinter61
1
310
A2A プロトコルを試してみる
azukiazusa1
2
820
Create a website using Spatial Web
akkeylab
0
290
AIネイティブなプロダクトをGolangで挑む取り組み
nmatsumoto4
0
120
プロダクト開発でも使おう 関数のオーバーロード
yoiwamoto
0
160
型付きアクターモデルがもたらす分散シミュレーションの未来
piyo7
0
800
Featured
See All Featured
Distributed Sagas: A Protocol for Coordinating Microservices
caitiem20
331
22k
Adopting Sorbet at Scale
ufuk
77
9.4k
Large-scale JavaScript Application Architecture
addyosmani
512
110k
Design and Strategy: How to Deal with People Who Don’t "Get" Design
morganepeng
130
19k
RailsConf & Balkan Ruby 2019: The Past, Present, and Future of Rails at GitHub
eileencodes
137
34k
Scaling GitHub
holman
459
140k
VelocityConf: Rendering Performance Case Studies
addyosmani
330
24k
Designing Experiences People Love
moore
142
24k
Exploring the Power of Turbo Streams & Action Cable | RailsConf2023
kevinliebholz
32
5.9k
KATA
mclloyd
29
14k
Why Our Code Smells
bkeepers
PRO
337
57k
The Art of Delivering Value - GDevCon NA Keynote
reverentgeek
15
1.5k
Transcript
Copyright Drecom Co., Ltd. All Rights Reserved. 位置情報を用いたモバイルゲームが 気軽に作れる 3D
リアルマップサービス 「AROW」について(実践編) 株式会社ドリコム DRIP部 地主龍一
Copyright Drecom Co., Ltd. All Rights Reserved. どちらさま? 地主龍一(Ryuichi JINUSHI)
• じぬ • ryuj • @reximology • #土地は無いけど地主 最近 • ペルソナ5 • Houdini
Copyright Drecom Co., Ltd. All Rights Reserved. なんの人? • フレームワーク
(Ruby) • ネイティブアプリ (Objective-C/Android Java) • ネイティブゲーム (C++, Cocos2d-x) • ゲーム SDK (Unity/C#)
Copyright Drecom Co., Ltd. All Rights Reserved. スキルレベル https://twitter.com/ito_yusaku/status/1042604780718157824 Unity
を「完全に理解」しています
Copyright Drecom Co., Ltd. All Rights Reserved. 位置情報と 3D リアルマップによる
AR アプリ開発プラットフォーム
Copyright Drecom Co., Ltd. All Rights Reserved. 今日のお話 • AROW
でできること • サンプルで用いた API の紹介
Copyright Drecom Co., Ltd. All Rights Reserved. できること 街並みを作れる •
データから建物を生成 • 建物を prefab へ置換 • 道・川・地形を生成
Copyright Drecom Co., Ltd. All Rights Reserved. 建物編 • 実測のデータを用いるためビルの形状が多様
• メッシュの動的生成が必要
Copyright Drecom Co., Ltd. All Rights Reserved. 建物編 • 頂点配列からメッシュを生成
• 上中下階それぞれ 別々のテクスチャを設定 • 各面のタイリング幅を統一 • 面ごとに UV を丸め込んで 見切れを回避
Copyright Drecom Co., Ltd. All Rights Reserved. 建物編 旧 現在
• メッシュを分けない ように修正 • UV を積み重ねることで反 転を回避
Copyright Drecom Co., Ltd. All Rights Reserved. 建物編 • ドロネー三角形分割で形状を解釈
• 統一感排除のためにランダムな傾け
Copyright Drecom Co., Ltd. All Rights Reserved. 建物編 インテリアマッピング
Copyright Drecom Co., Ltd. All Rights Reserved. prefab 置換 •
道に対してモデルの前方を向けると違和感がなくなる • 建物から最も近い道を探索して Rotation を調整している
Copyright Drecom Co., Ltd. All Rights Reserved. 道・地形編 道の自動生成
Copyright Drecom Co., Ltd. All Rights Reserved. 道・地形編 • 高低差を加味したヒートマップ
• 頂点同士の中間に頂点を増やすことでなめらかな表現
Copyright Drecom Co., Ltd. All Rights Reserved. サンプル API 編
Copyright Drecom Co., Ltd. All Rights Reserved. 初期化 var data
= File.ReadAllBytes("xyz.arowmap"); var model = ArowMapObjectModel.LoadByData(data); ArowMapObjectModel • 建物・道・地形などのデータを管理 • .arowmap 関連処理のラッパ
Copyright Drecom Co., Ltd. All Rights Reserved. 経路探索 NodeMapUtility.GetShortestRoute( nodeMap,
startKey, goalKey, limitCount, out costDict, out routes); • Node: 場所の情報 • NodeMap: 検索対象となる場所の情報セット • key: Node の識別子 • routes: 探索結果の key リスト
Copyright Drecom Co., Ltd. All Rights Reserved. 建物の生成 var config
= new CreateConfig(); BuildingCreator .Builder(model.BuildingDataModels) .SetConfig(config) .SetOnMeshCreatedCallBack( /* mesh to GameObject callback */ ) .Build(); • config: 描画形式などの設定クラス • creater: 生成処理の実行クラス
Copyright Drecom Co., Ltd. All Rights Reserved. まとめ • AROW:3D
リアルマップ生成 SDK • 現状:各種機能が(どうにか)動く状態 ◦ 建物の生成・prefab 置換 ◦ 道・川の生成 ◦ 地形の生成 ◦ 経路探索 • 今後は利用者のフィードバックを元に改善を実施
Copyright Drecom Co., Ltd. All Rights Reserved. AROW Open Test
Version 2019.04 中旬 https://arow.world/
Copyright Drecom Co., Ltd. All Rights Reserved. AROW のデベロッパーコミュニティとして、Facebook グループ「AROW
相談所」を開設しています。 AROW に関する情報交換の場としてぜひご活用ください。 「AROW 相談所」のご案内
Copyright Drecom Co., Ltd. All Rights Reserved. おわり いかがでしたか?