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
Sponsored
·
Your Podcast. Everywhere. Effortlessly.
Share. Educate. Inspire. Entertain. You do you. We'll handle the rest.
→
Ryuichi Jinushi
March 27, 2019
Programming
72
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
位置情報を用いたモバイルゲームが 気軽に作れる 3D リアルマップサービス 「AROW」について (実践編) / how to AROW practice at Gotanda.unity #11
https://meetup.unity3d.jp/jp/events/1047
でお話した内容です。
Ryuichi Jinushi
March 27, 2019
More Decks by Ryuichi Jinushi
See All by Ryuichi Jinushi
非エンジニアにも分かる UniRx(ゆにあーるえっくす)/ UniRx for non-engineers
ryuj
1
65
マップゲーム SDK 競合の話 / arow and other map game sdk
ryuj
0
1.1k
マップゲーム SDK AROW とその運用を支える AWS の構成 / AROW with AWS
ryuj
0
97
少人数の SDK 開発を支えるテストの話 / tests for small group development
ryuj
0
570
技術書のすゝめ / suggestion of technical book
ryuj
0
85
Other Decks in Programming
See All in Programming
例外の正しい扱い方 そのエラー try-catchして大丈夫?
jinwatanabe
0
260
New "Type" system on PicoRuby
pocke
1
960
Language Server 使ってる? 〜VSCode と Zed の場合〜 / Are you using a Language Server? ~For VS Code and Zed~
handlename
0
790
TAKTでAI駆動開発の品質を設計する
j5ik2o
7
1.3k
AIで効率化できた業務・日常
ochtum
0
140
決定論的オーケストレーションの設計と実装 / Design and Implementation of Deterministic Orchestration
nrslib
4
1.4k
Webフレームワークの ベンチマークについて
yusukebe
0
170
さぁV100、メモリをお食べ・・・
nilpe
0
140
Datadog × OpenTelemetry 入門と実践のあいだ
kn_to_maxpno
1
160
気圧・高度・GPSを記録&可視化するアプリ「Koudo」を作った話
hjmkth
1
270
コンテキストの使い捨てをやめる — ビジネスルール駆動開発と miko —
ioki
0
210
Contextとはなにか
chiroruxx
1
330
Featured
See All Featured
How To Stay Up To Date on Web Technology
chriscoyier
790
250k
Building Adaptive Systems
keathley
44
3.1k
How to make the Groovebox
asonas
2
2.2k
Bash Introduction
62gerente
615
220k
The Director’s Chair: Orchestrating AI for Truly Effective Learning
tmiket
1
200
Performance Is Good for Brains [We Love Speed 2024]
tammyeverts
12
1.7k
Leadership Guide Workshop - DevTernity 2021
reverentgeek
1
310
The State of eCommerce SEO: How to Win in Today's Products SERPs - #SEOweek
aleyda
2
11k
Between Models and Reality
mayunak
4
340
We Have a Design System, Now What?
morganepeng
55
8.2k
RailsConf 2023
tenderlove
30
1.5k
Distributed Sagas: A Protocol for Coordinating Microservices
caitiem20
333
22k
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. おわり いかがでしたか?