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
57
位置情報を用いたモバイルゲームが 気軽に作れる 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
47
マップゲーム SDK 競合の話 / arow and other map game sdk
ryuj
0
840
マップゲーム SDK AROW とその運用を支える AWS の構成 / AROW with AWS
ryuj
0
81
少人数の SDK 開発を支えるテストの話 / tests for small group development
ryuj
0
400
技術書のすゝめ / suggestion of technical book
ryuj
0
70
Other Decks in Programming
See All in Programming
Webエンジニア主体のモバイルチームの 生産性を高く保つためにやったこと
igreenwood
0
330
range over funcの使い道と非同期N+1リゾルバーの夢 / about a range over func
mackee
0
110
なまけものオバケたち -PHP 8.4 に入った新機能の紹介-
tanakahisateru
1
120
Effective Signals in Angular 19+: Rules and Helpers @ngbe2024
manfredsteyer
PRO
0
140
17年周年のWebアプリケーションにTanStack Queryを導入する / Implementing TanStack Query in a 17th Anniversary Web Application
saitolume
0
250
見えないメモリを観測する: PHP 8.4 `pg_result_memory_size()` とSQL結果のメモリ管理
kentaroutakeda
0
330
ブラウザ単体でmp4書き出すまで - muddy-web - 2024-12
yue4u
3
470
DevFest Tokyo 2025 - Flutter のアプリアーキテクチャ現在地点
wasabeef
5
900
命名をリントする
chiroruxx
1
410
Zoneless Testing
rainerhahnekamp
0
120
モバイルアプリにおける自動テストの導入戦略
ostk0069
0
110
Security_for_introducing_eBPF
kentatada
0
110
Featured
See All Featured
Raft: Consensus for Rubyists
vanstee
137
6.7k
Adopting Sorbet at Scale
ufuk
73
9.1k
Fontdeck: Realign not Redesign
paulrobertlloyd
82
5.3k
Typedesign – Prime Four
hannesfritz
40
2.4k
Imperfection Machines: The Place of Print at Facebook
scottboms
266
13k
Why You Should Never Use an ORM
jnunemaker
PRO
54
9.1k
Side Projects
sachag
452
42k
GitHub's CSS Performance
jonrohan
1030
460k
Keith and Marios Guide to Fast Websites
keithpitt
410
22k
A better future with KSS
kneath
238
17k
Scaling GitHub
holman
458
140k
Fantastic passwords and where to find them - at NoRuKo
philnash
50
2.9k
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. おわり いかがでしたか?