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
マップゲーム SDK 競合の話 / arow and other map game sdk
Search
Ryuichi Jinushi
September 23, 2019
Programming
0
1k
マップゲーム SDK 競合の話 / arow and other map game sdk
こちらで LT したときの資料です。
https://connpass.com/event/139403/
Ryuichi Jinushi
September 23, 2019
Tweet
Share
More Decks by Ryuichi Jinushi
See All by Ryuichi Jinushi
非エンジニアにも分かる UniRx(ゆにあーるえっくす)/ UniRx for non-engineers
ryuj
1
57
マップゲーム SDK AROW とその運用を支える AWS の構成 / AROW with AWS
ryuj
0
91
少人数の SDK 開発を支えるテストの話 / tests for small group development
ryuj
0
520
位置情報を用いたモバイルゲームが 気軽に作れる 3D リアルマップサービス 「AROW」について (実践編) / how to AROW practice at Gotanda.unity #11
ryuj
0
66
技術書のすゝめ / suggestion of technical book
ryuj
0
79
Other Decks in Programming
See All in Programming
CSC307 Lecture 08
javiergs
PRO
0
690
CopilotKit + AG-UIを学ぶ
nearme_tech
PRO
1
110
New in Go 1.26 Implementing go fix in product development
sunecosuri
0
100
米国のサイバーセキュリティタイムラインと見る Goの暗号パッケージの進化
tomtwinkle
1
340
Ruby x Terminal
a_matsuda
5
510
「やめとこ」がなくなった — 1月にZennを始めて22本書いた AI共創開発のリアル
atani14
0
330
Claude Codeセッション現状確認 2026福岡 / fukuoka-aicoding-00-beacon
monochromegane
3
350
「ブロックテーマでは再現できない」は本当か?
inc2734
0
1.1k
20260228_JAWS_Beginner_Kansai
takuyay0ne
5
370
Claude Codeと2つの巻き戻し戦略 / Two Rewind Strategies with Claude Code
fruitriin
0
200
Amazon Bedrockを活用したRAGの品質管理パイプライン構築
tosuri13
5
900
あなたはユーザーではない #PdENight
kajitack
4
290
Featured
See All Featured
Future Trends and Review - Lecture 12 - Web Technologies (1019888BNR)
signer
PRO
0
3.2k
Writing Fast Ruby
sferik
630
62k
Fashionably flexible responsive web design (full day workshop)
malarkey
408
66k
Leo the Paperboy
mayatellez
4
1.5k
Art, The Web, and Tiny UX
lynnandtonic
304
21k
What Being in a Rock Band Can Teach Us About Real World SEO
427marketing
0
180
Building an army of robots
kneath
306
46k
Evolving SEO for Evolving Search Engines
ryanjones
0
140
Rails Girls Zürich Keynote
gr2m
96
14k
Faster Mobile Websites
deanohume
310
31k
Odyssey Design
rkendrick25
PRO
2
530
Everyday Curiosity
cassininazir
0
150
Transcript
Copyright Drecom Co., Ltd. All Rights Reserved. マップゲーム SDK 競合の話
株式会社ドリコム DRIP 部 地主龍一
Copyright Drecom Co., Ltd. All Rights Reserved. 自己紹介 地主龍一(Ryuichi JINUSHI)
• じぬ / ryuj / @reximology • DRIP 部(新規開発) 最近 • キングダムハーツ3 • オクトパストラベラー • 新しいポインターを買ってもらった
Copyright Drecom Co., Ltd. All Rights Reserved. 昨日の戦利品
Copyright Drecom Co., Ltd. All Rights Reserved. 位置情報と 3D リアルマップを用いた
アプリ開発プラットフォーム
Copyright Drecom Co., Ltd. All Rights Reserved. マップデータ + Unity
SDK AROW の提供物
Copyright Drecom Co., Ltd. All Rights Reserved. Google
Copyright Drecom Co., Ltd. All Rights Reserved. Google Maps Unity
SDK Demo
Copyright Drecom Co., Ltd. All Rights Reserved. 競合 SDK さわって比較してみた話
今日の内容
Copyright Drecom Co., Ltd. All Rights Reserved. アジェンダ • 概要と全体像の章
• とりあえず動かす章 • デモと実装を眺める章 • 考察の章
Copyright Drecom Co., Ltd. All Rights Reserved. SDK の現状 •
3ヶ月前くらいから存在 • あくまでデモ版 • データは限定的(ニューヨーク・マンハッタンのみ) • プロダクトに用いるなら問い合わせ必須 • ドキュメントは存在 • デモが無いケースがある • 日本語情報は無い
Copyright Drecom Co., Ltd. All Rights Reserved. 概要 • 建物生成
• 道生成 • prefab 置換 • 小物配置 Unity SDK • マップデータ • POI • 遊べる場所 • 適度な分布 • 場所の属性 Playable Locations API
Copyright Drecom Co., Ltd. All Rights Reserved. 概要 • 建物生成
• 道生成 • prefab 置換 • 小物配置 Unity SDK • マップデータ • POI • 遊べる場所 • 適度な分布 • 場所の属性 Playable Locations API 本日はこっちの話
Copyright Drecom Co., Ltd. All Rights Reserved. とりあえず動かす章
Copyright Drecom Co., Ltd. All Rights Reserved. 手順(ドキュメント通り) 1. Scene
新規作成 2. Create Empty 追加 3. Maps Services をアタッチ 4. Basic Example をアタッチ 5. LatLon を 40.748128, -73.988519 に設定 6. 起動
Copyright Drecom Co., Ltd. All Rights Reserved. 成果物
Copyright Drecom Co., Ltd. All Rights Reserved. 考察 • ノンプログラミングで地図生成
• 本当は API Key が必要
Copyright Drecom Co., Ltd. All Rights Reserved. 登場人物 MapService •
コアとなるクラス • 本日の主役 BasicExample • MapService の呼び出し役 • 使うときコピペする対象 • SDK 本体の機能とは無関係
Copyright Drecom Co., Ltd. All Rights Reserved. MapService 基準点 •
InitFloatingOrigin • MoveFloatingOrigin ライフサイクル • WillCreate • DidCreate • DidModify
Copyright Drecom Co., Ltd. All Rights Reserved. 地図の構成要素(MapFeature)
Copyright Drecom Co., Ltd. All Rights Reserved. MapFeature の種類 ExtrudedStructure
建物 ModeledStructure 建物(特殊形状) Segment 道 Region 公園など AreaWater 池 LineWater 川?
Copyright Drecom Co., Ltd. All Rights Reserved. WillCreate でできること mapsService.Events.ExtrudedStructureEvents.WillCreate.AddListener(args
=> { // 生成キャンセル args.Cancel = true; // metadata で種類ごとに分岐 var metadata = args.MapFeature.Metadata; switch (metadata.Usage) { case StructureMetadata.UsageType.Restaurant: break; } // 建物のリソースを変更 var builder = new ExtrudedStructureStyle.Builder(); builder.WallMaterial = Resources.Load<Material>("..."); builder.RoofMaterial = Resources.Load<Material>("..."); builder.Prefab = Resources.Load<GameObject>("..."); args.Style = builder.Build(); });
Copyright Drecom Co., Ltd. All Rights Reserved. DidCreate でできること mapsService.Events.ExtrudedStructureEvents.DidCreate.AddListener(args
=> { // .GameObject で生成物にアクセスできる args.GameObject.AddComponent<MeshCollider>(); });
Copyright Drecom Co., Ltd. All Rights Reserved. デモと実装を眺める章
Copyright Drecom Co., Ltd. All Rights Reserved. デモ • 01_BasicExample
• 02_DynamicLoading • 30_Fencing • KitchenSink
Copyright Drecom Co., Ltd. All Rights Reserved. デモ • 01_BasicExample
:さっきのとほぼ一緒 • 02_DynamicLoading • 30_Fencing • KitchenSink :機能全乗せ
Copyright Drecom Co., Ltd. All Rights Reserved. 02_DynamicLoading
Copyright Drecom Co., Ltd. All Rights Reserved. 02_DynamicLoading DynamicMapsService(Example 用のまとめ役)
• 内部に MapService を内包 • カメラが動いた際の load/unload • センター位置の調整
Copyright Drecom Co., Ltd. All Rights Reserved. load/unload の実装 //
load mapsService.MakeMapLoadRegion() .AddViewport(Camera.main, MaxDistance) .Load(RenderingStyles); // unload mapsService.MakeMapLoadRegion() .AddViewport(Camera.main, MaxDistance) .UnloadOutside();
Copyright Drecom Co., Ltd. All Rights Reserved.
Copyright Drecom Co., Ltd. All Rights Reserved. MakeMapLoadRegion() • MapLoadRegion
インスタンスを生成して返す • 生成時、既存の ITileLoader を受け取る • → 既存のマップを編集できる zoom を変えた地図とか作るなら MapService ごと再生成
Copyright Drecom Co., Ltd. All Rights Reserved. 30_Fencing
Copyright Drecom Co., Ltd. All Rights Reserved.
Copyright Drecom Co., Ltd. All Rights Reserved.
Copyright Drecom Co., Ltd. All Rights Reserved.
Copyright Drecom Co., Ltd. All Rights Reserved. ご清聴 ありがとうございました!
Copyright Drecom Co., Ltd. All Rights Reserved. 30_Fencing を頑張って起動 •
ApiKeyChecker をデタッチ • Fencing Example Script > Dynamic Maps Service に LatLon を設定
Copyright Drecom Co., Ltd. All Rights Reserved.
Copyright Drecom Co., Ltd. All Rights Reserved. Fencing • 特定の建物に一定距離近づいたことを検知
• 設定した Layer で当たり判定を取得 var fencingService = GetComponent<FencingServiceComponent>().FencingService; var fencingRule = FencingRule.NewRule() .StructureArea(StructureMetadata.UsageType.Shopping, 20f); fencingService.RegisterRule(fencingRule, FENCING_LAYER);
Copyright Drecom Co., Ltd. All Rights Reserved. 考察の章
Copyright Drecom Co., Ltd. All Rights Reserved. Google Maps SDK
の各種機能 • サクッと動くデモ • 動的ロードのデモ • 建物への接近検知デモ
Copyright Drecom Co., Ltd. All Rights Reserved. AROW の各種機能 •
サクッと動くデモ Scene_MoveControlCreatedMap.unity • 動的ロードのデモ Scene_DynamicMapLoad.unity • 建物への接近検知デモ IArowPoiVisitor & ArowPoiObserver
Copyright Drecom Co., Ltd. All Rights Reserved. 案外 AROW よくね?
Copyright Drecom Co., Ltd. All Rights Reserved. AROW Open Test
Version https://arow.world/ 今ならベータ版を無料で使えます!
Copyright Drecom Co., Ltd. All Rights Reserved. ご清聴 ありがとうございました!