SlideShare a Scribd company logo
1 of 30
Download to read offline
AR開発高速化!
「CFA」作りました!
登壇者:KENTO
Twitter : @okprogramming
仕事 : XR関連のR&D
Twitter : @Up_frontier
Twitter : @gaprot_jp
話すこと
・マーカーレス型ビジョンベースARの問題点
・CFAって何?
・CFAの実装で得た知見、工夫
なぜ話すのか?
AR開発の難しさを知ってほしい!
独自の打開策を生み出したので聞いてほしい!
大変だったので知見を共有したい!
・マーカーレス型ビジョンベースARの問題点
・CFAって何?
・ CFAの実装で得た知見、工夫
引用元: https://www.atmarkit.co.jp/ait/articles/1109/26/news136.html
マーカーレス型ビジョンベースARって?
マーカーレス型ビジョンベースAR作成の問題点
①見た目の確認・修正が何度もできない
→空間認識が前提のため細かい調整で現地と作業場所の往来が必要
②絵コンテではイメージがつきづらい
→ARには体験のデザインやインタラクティブが伴う
(※絵コンテ ... 映画やアニメと同じくARコンテンツの内容を進行に合わせて描いたもの)
③モック制作に時間をかけられない
→本開発に時間をかけたい
モックは打ち合わせでの「話の種」にしかならない
・マーカーレス型ビジョンベースARの問題点
・CFAって何?
・CFAの実装で得た知見、工夫
CFAって何?
・Contents Formatter for AR
マーカーレス型ビジョンベースARの問題点を解決する
ARコンテンツ開発加速ツール
①見た目の確認・修正が何度もできない
②絵コンテではイメージがつきづらい
③モック制作に時間をかけられない
全体図
具体的な機能
★配置ツール
空間アンカー(認識した空間)
からの相対位置に ”目印” を設定
目印の座標をまとめた
"配置データ" を作成
エディター上に目印の位置を再現
★作成ツール1
“配置データ”を読み込むと
目印をシーン上に配置
(0,0,0)が空間アンカー
目印をヒントに
ARオブジェクトを配置
Boltでコンテンツ作成
★作成ツール2
シーン全体やARオブジェクトごとに、
Boltを利用した”ギミック”を
簡単に実装可能
ARコンテンツ作成に特化した、
自作ノードも用意
★ビューワーアプリ
作成ツール(Unity プロジェクト)を
ビルドしたものが
ビューワアプリとして利用可能
iOS, Android, HoloLens2 で
同じコンテンツを動作確認可能
※ここまでの詳細は「アップフロンティア CFA」で
Youtube検索
作成ツールからビューワアプリへ
非常時に備えマーカー型も対応
例)ロケーション情報が変わってしまった
空間アンカー と 画像マーカーを
ビューワアプリ上で
簡単に切り替えることができる
・マーカーレス型ビジョンベースARの問題点
・CFAって何?
・CFAの実装で得た知見、工夫
・Azure Spatial Anchorの組み込み
・Boltでノードを自作
・HoloLens2対応
CFAの実装で得た知見、工夫
Azure Spatial Anchorの組み込み
・公式のサンプルとAPIドキュメントで大まかなプロセスを理解
・SpatialAnchorManager クラスが
空間アンカーに関する一連の処理の中心を担っていた
・CFA用に SpatialAnchorManager を使いやすく
参考リンク: https://github.com/microsoft/MixedRealityLearning
Azure Spatial Anchorの組み込み
SpatialAnchorManager に実装されている関数 関数の担う役割
CreateSessionAsync() セッションを作成、作成完了まで待つ
StartSessionAsync() セッションの開始完了まで待つ
StopSession() セッションを停止する
ResetSessionAsync() セッションを再起動し開始まで待つ
DestroySession() セッションを破棄
Session.CreateWatcher(AnchorLocateCriteria criteria)
戻り値 : CloudSpatialAnchorWatcher
指定された条件(ID等)に一致するアンカーを探索する
CloudSpatialAnchorWatcher.Stop() アンカー探索を中止する
CreateAnchorAsync(CloudSpatialAnchor anchor) アンカーをクラウドにアップロードし完了を待つ
DeleteAnchorAsync(CloudSpatialAnchor anchor) クラウドのアンカーを削除し完了を待つ
セッション: アンカーに関する一連の流れ (空間認識、空間アンカーのアップロード ・探索・維持)
Azure Spatial Anchorの組み込み
空間アンカーや、空間アンカーのセッションの状態を
CFAのあらゆる機能に通知させる必要がある
例)
・空間アンカーの探索を終えたらARコンテンツを開始する
・空間アンカーのセッションを破棄し終えたら、トップ画面に戻る
・エラーハンドリング
CFAの実装で得た知見、工夫
・Azure Spatial Anchorの組み込み
・Boltでノードを自作
・HoloLens2対応
Boltでノードを自作
★狙い
・モック制作を非エンジニアに協力してほしい(理想)
→ビジュアルプログラミングで作成してもらう
・処理を「パーツ」として扱える
→使い回し、組み合わせ、入れ替えで制作を高速化
Boltでノードを自作
・Boltが提供する Unitクラスを継承してノード自作
・計30を超える自作ノード
・DLLを覗いて模倣
・C#コーディングと共存が可能
例)オブジェクトを非表示にする
CFAの実装で得た知見、工夫
・Azure Spatial Anchorの組み込み
・Boltでノードを自作
・HoloLens2対応
HoloLens2対応
インターフェースを介して様々な単機能をモジュール化
HoloLens2対応
エディタ上
(タップ操作のシミュレート)
モバイル
(タップ操作)
エディタ上
(ハンドトラッキングの
シミュレート)
HoloLens2
(ハンドトラッキング)
共通の処理として扱えるので開発効率UP
HoloLens2対応
・CloudAnchor がモジュール構造である理由
→より有用なARクラウド(GCAなど)が登場した際には乗り換えが可能なため
CFAについて
CFA公式サイト:https://cfa.upft.jp/
配置ツール:https://youtu.be/2kEmFZztMgs
作成ツール:https://youtu.be/Ho1iUGs3vfk
ビューワーアプリ:https://youtu.be/kCEGEoQXCNw

More Related Content

Similar to AR開発高速化!「CFA」作りました!

Vuforia7が結構すごいらしい
Vuforia7が結構すごいらしいVuforia7が結構すごいらしい
Vuforia7が結構すごいらしいHiroshi Masuda
 
スマートフォンサイト制作 よくあるトラブルと 解決方法・回避方法
スマートフォンサイト制作  よくあるトラブルと 解決方法・回避方法スマートフォンサイト制作  よくあるトラブルと 解決方法・回避方法
スマートフォンサイト制作 よくあるトラブルと 解決方法・回避方法Maboroshi.inc
 
アプリ制作マスターへの道
アプリ制作マスターへの道アプリ制作マスターへの道
アプリ制作マスターへの道Masayuki KaToH
 
ノンプログラミングで始める AR 開発入門
ノンプログラミングで始める AR 開発入門ノンプログラミングで始める AR 開発入門
ノンプログラミングで始める AR 開発入門Takashi Yoshinaga
 
XR Kaigi 2020 / “VRの世界で生きていく” ための基盤技術
XR Kaigi 2020 / “VRの世界で生きていく” ための基盤技術XR Kaigi 2020 / “VRの世界で生きていく” ための基盤技術
XR Kaigi 2020 / “VRの世界で生きていく” ための基盤技術VirtualCast, Inc.
 
Slug meetup-soft layer-baremetal-shibata
Slug meetup-soft layer-baremetal-shibataSlug meetup-soft layer-baremetal-shibata
Slug meetup-soft layer-baremetal-shibataNaoki Shibata
 
20171110 dev festa_vr
20171110 dev festa_vr20171110 dev festa_vr
20171110 dev festa_vrHideki Ojima
 
ITフォーラム2024 AITCセッション(2)
ITフォーラム2024 AITCセッション(2)ITフォーラム2024 AITCセッション(2)
ITフォーラム2024 AITCセッション(2)aitc_jp
 
ウェブデザインにおける動きの演出について - WCAN 2014 Autumn
ウェブデザインにおける動きの演出について - WCAN 2014 Autumnウェブデザインにおける動きの演出について - WCAN 2014 Autumn
ウェブデザインにおける動きの演出について - WCAN 2014 Autumntakuo yamada
 
20170821 tech play_vr_公開
20170821 tech play_vr_公開20170821 tech play_vr_公開
20170821 tech play_vr_公開Hideki Ojima
 
Xamarin.Forms アプリケーション 設計パターン
Xamarin.Forms アプリケーション 設計パターンXamarin.Forms アプリケーション 設計パターン
Xamarin.Forms アプリケーション 設計パターン一希 大田
 
[Maker Faire Tokyo 2014] FlashAirは超ミニマイコン! ひろがる電子工作コミュニティ
[Maker Faire Tokyo 2014] FlashAirは超ミニマイコン!ひろがる電子工作コミュニティ[Maker Faire Tokyo 2014] FlashAirは超ミニマイコン!ひろがる電子工作コミュニティ
[Maker Faire Tokyo 2014] FlashAirは超ミニマイコン! ひろがる電子工作コミュニティFlashAirデベロッパーズ
 
[141004] cedec 2014 참관기 & 강연 리뷰 #1
[141004] cedec 2014 참관기 & 강연 리뷰 #1[141004] cedec 2014 참관기 & 강연 리뷰 #1
[141004] cedec 2014 참관기 & 강연 리뷰 #1MinGeun Park
 
Spa のための web サーバ構築ノウハウ
Spa のための web サーバ構築ノウハウ Spa のための web サーバ構築ノウハウ
Spa のための web サーバ構築ノウハウ Kazuhiro Kotsutsumi
 
人と向き合うプロトタイピング
人と向き合うプロトタイピング人と向き合うプロトタイピング
人と向き合うプロトタイピングwariemon
 
ホットペッパービューティーにおけるモバイルアプリ向けAPIのBFF/Backend分割
ホットペッパービューティーにおけるモバイルアプリ向けAPIのBFF/Backend分割ホットペッパービューティーにおけるモバイルアプリ向けAPIのBFF/Backend分割
ホットペッパービューティーにおけるモバイルアプリ向けAPIのBFF/Backend分割Recruit Lifestyle Co., Ltd.
 
全てのWebディレクターに捧ぐ、 これだけは抑えて欲しい SEO内部要件基礎講座 (前編)
全てのWebディレクターに捧ぐ、これだけは抑えて欲しい SEO内部要件基礎講座(前編)全てのWebディレクターに捧ぐ、これだけは抑えて欲しい SEO内部要件基礎講座(前編)
全てのWebディレクターに捧ぐ、 これだけは抑えて欲しい SEO内部要件基礎講座 (前編)ナイル株式会社
 
すぐそこにある未来〜AR〜
すぐそこにある未来〜AR〜すぐそこにある未来〜AR〜
すぐそこにある未来〜AR〜Kazuya Hiruma
 
MYQLO〜あなたの拡張クローゼット〜
MYQLO〜あなたの拡張クローゼット〜MYQLO〜あなたの拡張クローゼット〜
MYQLO〜あなたの拡張クローゼット〜Ryota Aoki
 
お客様とコードの間
お客様とコードの間お客様とコードの間
お客様とコードの間Moriyuki Hirata
 

Similar to AR開発高速化!「CFA」作りました! (20)

Vuforia7が結構すごいらしい
Vuforia7が結構すごいらしいVuforia7が結構すごいらしい
Vuforia7が結構すごいらしい
 
スマートフォンサイト制作 よくあるトラブルと 解決方法・回避方法
スマートフォンサイト制作  よくあるトラブルと 解決方法・回避方法スマートフォンサイト制作  よくあるトラブルと 解決方法・回避方法
スマートフォンサイト制作 よくあるトラブルと 解決方法・回避方法
 
アプリ制作マスターへの道
アプリ制作マスターへの道アプリ制作マスターへの道
アプリ制作マスターへの道
 
ノンプログラミングで始める AR 開発入門
ノンプログラミングで始める AR 開発入門ノンプログラミングで始める AR 開発入門
ノンプログラミングで始める AR 開発入門
 
XR Kaigi 2020 / “VRの世界で生きていく” ための基盤技術
XR Kaigi 2020 / “VRの世界で生きていく” ための基盤技術XR Kaigi 2020 / “VRの世界で生きていく” ための基盤技術
XR Kaigi 2020 / “VRの世界で生きていく” ための基盤技術
 
Slug meetup-soft layer-baremetal-shibata
Slug meetup-soft layer-baremetal-shibataSlug meetup-soft layer-baremetal-shibata
Slug meetup-soft layer-baremetal-shibata
 
20171110 dev festa_vr
20171110 dev festa_vr20171110 dev festa_vr
20171110 dev festa_vr
 
ITフォーラム2024 AITCセッション(2)
ITフォーラム2024 AITCセッション(2)ITフォーラム2024 AITCセッション(2)
ITフォーラム2024 AITCセッション(2)
 
ウェブデザインにおける動きの演出について - WCAN 2014 Autumn
ウェブデザインにおける動きの演出について - WCAN 2014 Autumnウェブデザインにおける動きの演出について - WCAN 2014 Autumn
ウェブデザインにおける動きの演出について - WCAN 2014 Autumn
 
20170821 tech play_vr_公開
20170821 tech play_vr_公開20170821 tech play_vr_公開
20170821 tech play_vr_公開
 
Xamarin.Forms アプリケーション 設計パターン
Xamarin.Forms アプリケーション 設計パターンXamarin.Forms アプリケーション 設計パターン
Xamarin.Forms アプリケーション 設計パターン
 
[Maker Faire Tokyo 2014] FlashAirは超ミニマイコン! ひろがる電子工作コミュニティ
[Maker Faire Tokyo 2014] FlashAirは超ミニマイコン!ひろがる電子工作コミュニティ[Maker Faire Tokyo 2014] FlashAirは超ミニマイコン!ひろがる電子工作コミュニティ
[Maker Faire Tokyo 2014] FlashAirは超ミニマイコン! ひろがる電子工作コミュニティ
 
[141004] cedec 2014 참관기 & 강연 리뷰 #1
[141004] cedec 2014 참관기 & 강연 리뷰 #1[141004] cedec 2014 참관기 & 강연 리뷰 #1
[141004] cedec 2014 참관기 & 강연 리뷰 #1
 
Spa のための web サーバ構築ノウハウ
Spa のための web サーバ構築ノウハウ Spa のための web サーバ構築ノウハウ
Spa のための web サーバ構築ノウハウ
 
人と向き合うプロトタイピング
人と向き合うプロトタイピング人と向き合うプロトタイピング
人と向き合うプロトタイピング
 
ホットペッパービューティーにおけるモバイルアプリ向けAPIのBFF/Backend分割
ホットペッパービューティーにおけるモバイルアプリ向けAPIのBFF/Backend分割ホットペッパービューティーにおけるモバイルアプリ向けAPIのBFF/Backend分割
ホットペッパービューティーにおけるモバイルアプリ向けAPIのBFF/Backend分割
 
全てのWebディレクターに捧ぐ、 これだけは抑えて欲しい SEO内部要件基礎講座 (前編)
全てのWebディレクターに捧ぐ、これだけは抑えて欲しい SEO内部要件基礎講座(前編)全てのWebディレクターに捧ぐ、これだけは抑えて欲しい SEO内部要件基礎講座(前編)
全てのWebディレクターに捧ぐ、 これだけは抑えて欲しい SEO内部要件基礎講座 (前編)
 
すぐそこにある未来〜AR〜
すぐそこにある未来〜AR〜すぐそこにある未来〜AR〜
すぐそこにある未来〜AR〜
 
MYQLO〜あなたの拡張クローゼット〜
MYQLO〜あなたの拡張クローゼット〜MYQLO〜あなたの拡張クローゼット〜
MYQLO〜あなたの拡張クローゼット〜
 
お客様とコードの間
お客様とコードの間お客様とコードの間
お客様とコードの間
 

More from Gaprot

Unity + iOS/Android VR ことはじめ
Unity + iOS/Android VR ことはじめUnity + iOS/Android VR ことはじめ
Unity + iOS/Android VR ことはじめGaprot
 
1201 ギャップロ軍団企画書
1201 ギャップロ軍団企画書1201 ギャップロ軍団企画書
1201 ギャップロ軍団企画書Gaprot
 
Speech Framework
Speech FrameworkSpeech Framework
Speech FrameworkGaprot
 
SiriKit iOS10
SiriKit iOS10SiriKit iOS10
SiriKit iOS10Gaprot
 
Proactive Suggestions
Proactive SuggestionsProactive Suggestions
Proactive SuggestionsGaprot
 
New Notification API in iOS 10
New Notification API in iOS 10New Notification API in iOS 10
New Notification API in iOS 10Gaprot
 
iOS 10 new Camera
iOS 10 new CameraiOS 10 new Camera
iOS 10 new CameraGaprot
 
HTML5 + JavaScriptでDRMつきMPEG-DASHを再生させる
HTML5 + JavaScriptでDRMつきMPEG-DASHを再生させるHTML5 + JavaScriptでDRMつきMPEG-DASHを再生させる
HTML5 + JavaScriptでDRMつきMPEG-DASHを再生させるGaprot
 
Aiマッシュアップ委員会 仕様説明資料
Aiマッシュアップ委員会 仕様説明資料Aiマッシュアップ委員会 仕様説明資料
Aiマッシュアップ委員会 仕様説明資料Gaprot
 
GoF のデザインパターンじゃないけど、よくあるパターン
GoF のデザインパターンじゃないけど、よくあるパターンGoF のデザインパターンじゃないけど、よくあるパターン
GoF のデザインパターンじゃないけど、よくあるパターンGaprot
 
Java の Collection 関連について整理してみました
Java の Collection 関連について整理してみましたJava の Collection 関連について整理してみました
Java の Collection 関連について整理してみましたGaprot
 
Salmon Hunt
Salmon HuntSalmon Hunt
Salmon HuntGaprot
 
SONY Camera Remote API
SONY Camera Remote APISONY Camera Remote API
SONY Camera Remote APIGaprot
 
「バグあるある」と「仕様変更あるある」一挙大放出SP!
「バグあるある」と「仕様変更あるある」一挙大放出SP!「バグあるある」と「仕様変更あるある」一挙大放出SP!
「バグあるある」と「仕様変更あるある」一挙大放出SP!Gaprot
 

More from Gaprot (14)

Unity + iOS/Android VR ことはじめ
Unity + iOS/Android VR ことはじめUnity + iOS/Android VR ことはじめ
Unity + iOS/Android VR ことはじめ
 
1201 ギャップロ軍団企画書
1201 ギャップロ軍団企画書1201 ギャップロ軍団企画書
1201 ギャップロ軍団企画書
 
Speech Framework
Speech FrameworkSpeech Framework
Speech Framework
 
SiriKit iOS10
SiriKit iOS10SiriKit iOS10
SiriKit iOS10
 
Proactive Suggestions
Proactive SuggestionsProactive Suggestions
Proactive Suggestions
 
New Notification API in iOS 10
New Notification API in iOS 10New Notification API in iOS 10
New Notification API in iOS 10
 
iOS 10 new Camera
iOS 10 new CameraiOS 10 new Camera
iOS 10 new Camera
 
HTML5 + JavaScriptでDRMつきMPEG-DASHを再生させる
HTML5 + JavaScriptでDRMつきMPEG-DASHを再生させるHTML5 + JavaScriptでDRMつきMPEG-DASHを再生させる
HTML5 + JavaScriptでDRMつきMPEG-DASHを再生させる
 
Aiマッシュアップ委員会 仕様説明資料
Aiマッシュアップ委員会 仕様説明資料Aiマッシュアップ委員会 仕様説明資料
Aiマッシュアップ委員会 仕様説明資料
 
GoF のデザインパターンじゃないけど、よくあるパターン
GoF のデザインパターンじゃないけど、よくあるパターンGoF のデザインパターンじゃないけど、よくあるパターン
GoF のデザインパターンじゃないけど、よくあるパターン
 
Java の Collection 関連について整理してみました
Java の Collection 関連について整理してみましたJava の Collection 関連について整理してみました
Java の Collection 関連について整理してみました
 
Salmon Hunt
Salmon HuntSalmon Hunt
Salmon Hunt
 
SONY Camera Remote API
SONY Camera Remote APISONY Camera Remote API
SONY Camera Remote API
 
「バグあるある」と「仕様変更あるある」一挙大放出SP!
「バグあるある」と「仕様変更あるある」一挙大放出SP!「バグあるある」と「仕様変更あるある」一挙大放出SP!
「バグあるある」と「仕様変更あるある」一挙大放出SP!
 

AR開発高速化!「CFA」作りました!