SlideShare ist ein Scribd-Unternehmen logo
1 von 44
Downloaden Sie, um offline zu lesen
Daydreamで
はじめるVR
GDG神戸 野田 悟志
Android Nougat(7.0)
勉強会
2015年GDG神戸開催イベント
● 扱った言語/技術
Go、Angular、Android、AndroidWear、WebAudioApi、AndroidTV、Cardboard、
Polymer、Firebase、TensorFlow
● イベント
I/O Extended、I/O報告会、忘年会
合計15回
2016年開催/開催予定
02/28 GDG神戸 機械学習勉強会 [AlphaGoの論文を読む会]
03/12 Unity入門勉強会(PG向け)
04/16 Angular 2ハンズオン勉強会
04/24 VRに興味ある人のためのUnity入門講座【関西】
04/30 Cloud Vision Api & Tensorflow勉強会
05/18-19 Google I/O Extended 2016 ライブストリーミング in Kobe
05/28 Cardboard勉強会
06/11 Google I/O Extended 報告会 2016 in 関西
06/25-26 VRアプリ開発勉強会
07/30 Progressive Web Appsハンズオン勉強会
09/10 Android Nougat(7.0)勉強会
11/27 Devfest Kansai 2016
自己紹介
GDG神戸 オーガナイザー (Co-Manager)
VR歴
2015年6月頃にCardboard、7月にOculusRift DK2を入手
Unity 5使って個人開発
2016年はVR勉強会いっぱいやってる
6/11にCV1来た!
10/4(Daydreamリリース発表?)と10/13(PSVR発売!)が待ち遠しい
→ここ最近、VR廃人一歩手前に来てる気がするけど、まだいける
Magic The Shouter
OculusGameJam(VRGameJam)
2015 大阪会場
2015/11/28-29
ディフェンス系ゲーム。迫ってくる
敵を、魔法を唱えて迎え撃つ。
OculusRift用ゲーム。
https://github.com/ShingoKobayashi/M
agicTheShouterProject/releases/tag/0.2
LOOK BACK WESTERN
Cardboardハッカソン
Unityクリエーターズ/GDG京都
2015/12/12-13
西部劇風早打ちゲーム。西部劇のガンマンのよ
うに、お互いに背を向けあい、3つ数えたら振り
返って撃つ。
Cardboard用ゲーム。
https://github.com/scarviz/WesternHatsGunman/releases
/tag/0.1.0
今日話すこと
● VR酔いについて
● Daydreamの必要性について考える
● VRコンテンツ用にステレオカメラ化する
● VRコンテンツにコントローラを使ってみる
VR酔いについて
VR酔いとは
視覚情報は自分が動いているように見えてい
る(感じている)が、実際に体は動いていないた
めに、情報の不一致から起こる不快な現象。
特に移動時の加減速で発生しやすい。
車酔いに似ている。
一度酔うと、そのコンテンツや最悪VRは二度
としたくなくなる
VR酔い対策
対策として、移動手段をワープ移動(加減速が0)にしたり、
視点を3人称視点にしたりする。
下記記事が参考になる。
MoguraVR
「VR酔い防止に向けて。これまで登場したVRでの酔わな
い移動方法のアイデアまとめ。」
http://www.moguravr.com/against-vr-nausea/
Crystal Rift
1人称視点(FPS)の3DダンジョンRPG
http://www.crystalrift.com/
酔わないのはどっち?
A. 自然にスムーズに進む方法 B. 従来のゲームと同じように
1マス毎に進む方法
Daydreamの必要性
について考える
Google VR
https://developers.google.com/vr/
Daydream-Ready
● Low Persistence Display
● High Performance SoCs
● Low Latency, High Quality Sensors
なぜ?
● こんなにハイスペックな必要がある?
● スマートフォンである必要がある?
● VRの機能を(OS単位で)搭載する必要がある?
こんなにハイスペックな必要がある?
● 人間はヘッドトラッキングのレイテンシーが20msより長くに
なると、不自然に感じる。その状態が続くとVR酔いが発生
する。
○ Snapdragon 820(以降)が必要。Snapdragon 820は18ms以下のレイ
テンシーを実現している。
● フレームレートが低いと上記同様VR酔いが発生する。
○ 没入感の観点から、 60FPSでも足りない。理想は 120FPS以上。
(http://gamesonytablet.blogspot.jp/2014/03/blog-post.html)
http://www.moguravr.com/palmer-kusokora/
スマートフォンである必要がある?
● OculusRiftやViveはハイスペックなPCが必要になる。
● スマートフォンは誰でも持っている、生活必需品となっている。
○ PSVRは一般普及しそうだが、 PS4がなければならなく、スマートフォンよりも限定的。
● 誰に対しても高品質なVRコンテンツを体験してもらうのに、Daydreamは最適。
○ Cardboardの時は、端末によって性能が低く、まともに動かないものもあった。
VRの機能を(OS単位で)搭載する必要がある?
● 既にスマートフォンで必要な機能、便利な機能は一通り出尽くしている。
○ いまどき防水機能や Felica機能がついてることがセールスポイントになるわけがない。
● 新たな体験としての機能を求めるのは自然の流れで、VRまたはARはその流れの
上にある。
○ スマートフォンでできるくらい安価になった。一般普及する準備ができた。
○ TVで取り上げられたり、 PSVRの登場で、一般的に VRが知られるようになった。
VRコンテンツ用に
ステレオカメラ化する
https://developers.google.com/vr/concepts/dev-kit-setup
Dev Kit
● Viewer
○ Cardboard
● Viewer Phone
○ Nexus6P (Android
Nougat DP4 or higher)
● Controller Emulator
○ Android(API19 or
higher)
Viewer Phone
Android Nougat
DP4 or higher
Dev Kit
Controller Emulator
● Connect
○ Bluetooth
Bluetooth
https://github.com/googlevr/gvr-android-sdk/blob/master/apks/controller_emulator.apk?raw=true
https://developers.google.com/vr/concepts/dev-kit-setup#set_up_the_controller_phone
Controller Emulator App
Google VR SDK for Unity
● Google VR SDK for Unity
○ https://github.com/googlevr/gvr-unity-s
dk/raw/master/GoogleVRForUnity.unit
ypackage
■ http://www.slideshare.net/satoshinoda792/c
ardboard-62501002
● Unity
○ 5.2.1 or later
● Debug (Controller)
○ USB
○ WiFi Hotspot
https://github.com/scarviz/GDGKobeGoogleVRApp
Software Design 2016/09
http://gihyo.jp/magazine/SD/archive/2016/201609
Compile
● IL2CPP
○ C#からC++にコンバート
○ 処理の高速化
○ NDK r10e
■ UE4だとNDK r11c
○ Edit > Project Settings > Player の Other Settings > Configuration
VRコンテンツに
コントローラを使ってみる
Google VR SDK for Unity
https://developers.google.com/vr/unity/controller-basics
Google VR SDK for Unity
void Update() {
if(GvrController.IsTouching) { /* タッチしている状態かどうか*/ }
if(GvrController.TouchDown) { /* タッチしたかどうか(1フレーム後) */ }
if(GvrController.TouchUp) { /* タッチをやめたかどうか(1フレーム後) */ }
Vector2 pos = GvrController.TouchPos; // タッチパッド上のタッチ位置
if(GvrController.ClickButton) { /* クリックしている状態かどうか*/ }
if(GvrController.ClickButtonDown) { /* クリックしたかどうか(1フレーム後) */ }
if(GvrController.ClickButtonUp) { /* クリックをやめたかどうか(1フレーム後) */ }
if(GvrController.AppButton) { /* Appボタンを押下している状態かどうか*/ }
if(GvrController.AppButtonDown) { /* Appボタンを押下したかどうか(1フレーム後) */ }
if(GvrController.AppButtonUp) { /* Appボタンの押下をやめたかどうか(1フレーム後) */ }
}
Google VR SDK for Unity
● GvrControllerState
○ Disconnected
○ Scanning
○ Connecting
○ Connected
○ Error
Google VR SDK for Unity
● GvrController
○ Orientation
Google VR SDK for Unity
● GvrController
○ Gyro
○ Accel
https://github.com/scarviz/D-Cleaver
ご清聴ありがとうございました
おまけ
Dev Kit Headset Settings
Bluetoothを有効にし、コントローラとペアリングしておく
位置情報が必要な場合は、Locationを有効にし、高精度に設定する
7回タップする

Weitere ähnliche Inhalte

Was ist angesagt?

アイスタイル特設サイトにおけるVue.js導入事例(再演)
アイスタイル特設サイトにおけるVue.js導入事例(再演) アイスタイル特設サイトにおけるVue.js導入事例(再演)
アイスタイル特設サイトにおけるVue.js導入事例(再演)
Kenjiro Kubota
 

Was ist angesagt? (20)

ちょっとだけさわってみる Go言語
ちょっとだけさわってみる Go言語ちょっとだけさわってみる Go言語
ちょっとだけさわってみる Go言語
 
学習者用デジタル教科書の標準化の利点と現状・展望
学習者用デジタル教科書の標準化の利点と現状・展望学習者用デジタル教科書の標準化の利点と現状・展望
学習者用デジタル教科書の標準化の利点と現状・展望
 
静的解析とUIの自動生成を駆使してモバイルアプリの運用コストを大幅に下げた話
静的解析とUIの自動生成を駆使してモバイルアプリの運用コストを大幅に下げた話静的解析とUIの自動生成を駆使してモバイルアプリの運用コストを大幅に下げた話
静的解析とUIの自動生成を駆使してモバイルアプリの運用コストを大幅に下げた話
 
Android dev summit 2019 recap
Android dev summit 2019 recapAndroid dev summit 2019 recap
Android dev summit 2019 recap
 
Unity+ARKitで作る、新しいAR体験
Unity+ARKitで作る、新しいAR体験Unity+ARKitで作る、新しいAR体験
Unity+ARKitで作る、新しいAR体験
 
【Unity道場 名古屋SP】Unity導入から活用までの開発フローを大公開
【Unity道場 名古屋SP】Unity導入から活用までの開発フローを大公開【Unity道場 名古屋SP】Unity導入から活用までの開発フローを大公開
【Unity道場 名古屋SP】Unity導入から活用までの開発フローを大公開
 
IoTビジネス共創ラボ 第2回ドローンWG勉強会(2018/07/25)
IoTビジネス共創ラボ 第2回ドローンWG勉強会(2018/07/25)IoTビジネス共創ラボ 第2回ドローンWG勉強会(2018/07/25)
IoTビジネス共創ラボ 第2回ドローンWG勉強会(2018/07/25)
 
NGK2018B マルチプラットフォームQtと日本Qtユーザー会の紹介
NGK2018B マルチプラットフォームQtと日本Qtユーザー会の紹介NGK2018B マルチプラットフォームQtと日本Qtユーザー会の紹介
NGK2018B マルチプラットフォームQtと日本Qtユーザー会の紹介
 
2015年にpublishしたnpm modules
2015年にpublishしたnpm modules2015年にpublishしたnpm modules
2015年にpublishしたnpm modules
 
Jag201610 API Diffで見るNougat
Jag201610   API Diffで見るNougat Jag201610   API Diffで見るNougat
Jag201610 API Diffで見るNougat
 
Tizen application
Tizen applicationTizen application
Tizen application
 
Google I/O 2018 裏報告 ~ぜんぜんためにならない~【ABC2018Sprint ライトニングトーク】
Google I/O 2018 裏報告 ~ぜんぜんためにならない~【ABC2018Sprint ライトニングトーク】Google I/O 2018 裏報告 ~ぜんぜんためにならない~【ABC2018Sprint ライトニングトーク】
Google I/O 2018 裏報告 ~ぜんぜんためにならない~【ABC2018Sprint ライトニングトーク】
 
アイスタイル特設サイトにおけるVue.jsの導入事例
アイスタイル特設サイトにおけるVue.jsの導入事例アイスタイル特設サイトにおけるVue.jsの導入事例
アイスタイル特設サイトにおけるVue.jsの導入事例
 
フロントエンドエンジニアが知るべきFirebaseの世界
フロントエンドエンジニアが知るべきFirebaseの世界フロントエンドエンジニアが知るべきFirebaseの世界
フロントエンドエンジニアが知るべきFirebaseの世界
 
Goにおけるバージョン管理の必要性 − vgoについて −
Goにおけるバージョン管理の必要性 − vgoについて −Goにおけるバージョン管理の必要性 − vgoについて −
Goにおけるバージョン管理の必要性 − vgoについて −
 
Presentation 2
Presentation 2Presentation 2
Presentation 2
 
参加したセッションの ピックアップ
参加したセッションのピックアップ参加したセッションのピックアップ
参加したセッションの ピックアップ
 
成果のオープン化を前提とした共同研究開発の為の契約書ひな形の制作 - GRP Contract Form Ver.2 -
成果のオープン化を前提とした共同研究開発の為の契約書ひな形の制作 - GRP Contract Form Ver.2 -成果のオープン化を前提とした共同研究開発の為の契約書ひな形の制作 - GRP Contract Form Ver.2 -
成果のオープン化を前提とした共同研究開発の為の契約書ひな形の制作 - GRP Contract Form Ver.2 -
 
アイスタイル特設サイトにおけるVue.js導入事例(再演)
アイスタイル特設サイトにおけるVue.js導入事例(再演) アイスタイル特設サイトにおけるVue.js導入事例(再演)
アイスタイル特設サイトにおけるVue.js導入事例(再演)
 
[展開用]Android wear abc2014w-kenichikambara
[展開用]Android wear abc2014w-kenichikambara[展開用]Android wear abc2014w-kenichikambara
[展開用]Android wear abc2014w-kenichikambara
 

Ähnlich wie DaydreamではじめるVR

次世代Web業務アプリケーション
次世代Web業務アプリケーション次世代Web業務アプリケーション
次世代Web業務アプリケーション
Fumio SAGAWA
 
Google CardbordとLeapMotion 〜お手軽VR〜
Google CardbordとLeapMotion〜お手軽VR〜Google CardbordとLeapMotion〜お手軽VR〜
Google CardbordとLeapMotion 〜お手軽VR〜
Yutaka Fujisaki
 

Ähnlich wie DaydreamではじめるVR (20)

ちょっとさわってみるGo言語ハンズオン
ちょっとさわってみるGo言語ハンズオンちょっとさわってみるGo言語ハンズオン
ちょっとさわってみるGo言語ハンズオン
 
Introduce the activities of gdg kobe 130917
Introduce the activities of gdg kobe 130917Introduce the activities of gdg kobe 130917
Introduce the activities of gdg kobe 130917
 
Google I/O 2017 現地レポート VR、PWA風味をJAG運営委員が語る ~IoTやAIも隠し味でVRとAIの報告と I/Oに参加して思ったコ...
Google I/O 2017 現地レポート VR、PWA風味をJAG運営委員が語る ~IoTやAIも隠し味でVRとAIの報告と I/Oに参加して思ったコ...Google I/O 2017 現地レポート VR、PWA風味をJAG運営委員が語る ~IoTやAIも隠し味でVRとAIの報告と I/Oに参加して思ったコ...
Google I/O 2017 現地レポート VR、PWA風味をJAG運営委員が語る ~IoTやAIも隠し味でVRとAIの報告と I/Oに参加して思ったコ...
 
Cloud functionsの紹介
Cloud functionsの紹介Cloud functionsの紹介
Cloud functionsの紹介
 
オープンソースによるドローン開発の概要( #ABC2015S )
オープンソースによるドローン開発の概要( #ABC2015S )オープンソースによるドローン開発の概要( #ABC2015S )
オープンソースによるドローン開発の概要( #ABC2015S )
 
Sansan Tech Meetup Androidエンジニアが振り返る Google I/O
 Sansan Tech Meetup Androidエンジニアが振り返る Google I/O   Sansan Tech Meetup Androidエンジニアが振り返る Google I/O
Sansan Tech Meetup Androidエンジニアが振り返る Google I/O
 
Report google i o 2019
Report   google i o 2019Report   google i o 2019
Report google i o 2019
 
Gcpug in fukuoka!20150411 #gcpug
Gcpug in fukuoka!20150411 #gcpugGcpug in fukuoka!20150411 #gcpug
Gcpug in fukuoka!20150411 #gcpug
 
次世代Web業務アプリケーション
次世代Web業務アプリケーション次世代Web業務アプリケーション
次世代Web業務アプリケーション
 
GDC16 report for beginners (in Japanese)
GDC16 report for beginners  (in Japanese)GDC16 report for beginners  (in Japanese)
GDC16 report for beginners (in Japanese)
 
HTML5 のお話
HTML5 のお話HTML5 のお話
HTML5 のお話
 
GTMF 2016:5.4で何がどう変わる?Unity最新情報アップデート ユニティ・テクノロジーズ・ジャパン合同会社
GTMF 2016:5.4で何がどう変わる?Unity最新情報アップデート ユニティ・テクノロジーズ・ジャパン合同会社GTMF 2016:5.4で何がどう変わる?Unity最新情報アップデート ユニティ・テクノロジーズ・ジャパン合同会社
GTMF 2016:5.4で何がどう変わる?Unity最新情報アップデート ユニティ・テクノロジーズ・ジャパン合同会社
 
俺達のGoogle i:o 2014 はまだ始まったばかりだ
俺達のGoogle i:o 2014 はまだ始まったばかりだ俺達のGoogle i:o 2014 はまだ始まったばかりだ
俺達のGoogle i:o 2014 はまだ始まったばかりだ
 
Goだけでモバイルアプリを作る
Goだけでモバイルアプリを作るGoだけでモバイルアプリを作る
Goだけでモバイルアプリを作る
 
アンドロイダー的にHTML5でどこまでできそうか
アンドロイダー的にHTML5でどこまでできそうかアンドロイダー的にHTML5でどこまでできそうか
アンドロイダー的にHTML5でどこまでできそうか
 
WordPressの進化とWordPress名古屋コミュニティの進化
WordPressの進化とWordPress名古屋コミュニティの進化WordPressの進化とWordPress名古屋コミュニティの進化
WordPressの進化とWordPress名古屋コミュニティの進化
 
Google CardbordとLeapMotion 〜お手軽VR〜
Google CardbordとLeapMotion〜お手軽VR〜Google CardbordとLeapMotion〜お手軽VR〜
Google CardbordとLeapMotion 〜お手軽VR〜
 
Google I/O 2013に行ったついでにラスベガス戦果報告
Google I/O 2013に行ったついでにラスベガス戦果報告Google I/O 2013に行ったついでにラスベガス戦果報告
Google I/O 2013に行ったついでにラスベガス戦果報告
 
第49回HTML5勉強会 Google I/O 2014サマリー
第49回HTML5勉強会 Google I/O 2014サマリー第49回HTML5勉強会 Google I/O 2014サマリー
第49回HTML5勉強会 Google I/O 2014サマリー
 
Google vrからはじめるdaydreamへの道
Google vrからはじめるdaydreamへの道Google vrからはじめるdaydreamへの道
Google vrからはじめるdaydreamへの道
 

Mehr von Satoshi Noda

2015/02/21 GDG神戸 Go on Android ハンズオン&もくもく会
2015/02/21 GDG神戸 Go on Android ハンズオン&もくもく会2015/02/21 GDG神戸 Go on Android ハンズオン&もくもく会
2015/02/21 GDG神戸 Go on Android ハンズオン&もくもく会
Satoshi Noda
 
dockerはじめました。 GDG京都 2014年忘れ勉強会 LT
dockerはじめました。 GDG京都 2014年忘れ勉強会 LTdockerはじめました。 GDG京都 2014年忘れ勉強会 LT
dockerはじめました。 GDG京都 2014年忘れ勉強会 LT
Satoshi Noda
 
2014/09/13 Android Wear Hackahon
2014/09/13 Android Wear Hackahon2014/09/13 Android Wear Hackahon
2014/09/13 Android Wear Hackahon
Satoshi Noda
 
Android Wear のムダ知識
Android Wear のムダ知識Android Wear のムダ知識
Android Wear のムダ知識
Satoshi Noda
 
2013/03/09 VisualStudio勉強会 LT 「統合開発環境の支援ツール」
2013/03/09 VisualStudio勉強会 LT 「統合開発環境の支援ツール」2013/03/09 VisualStudio勉強会 LT 「統合開発環境の支援ツール」
2013/03/09 VisualStudio勉強会 LT 「統合開発環境の支援ツール」
Satoshi Noda
 

Mehr von Satoshi Noda (11)

Flutterとプラットフォーム依存の処理の対応について
Flutterとプラットフォーム依存の処理の対応についてFlutterとプラットフォーム依存の処理の対応について
Flutterとプラットフォーム依存の処理の対応について
 
VRをはじめよう!
VRをはじめよう!VRをはじめよう!
VRをはじめよう!
 
Google I/O Extended 報告会 2016 in 関西 LT
Google I/O Extended 報告会 2016 in 関西 LTGoogle I/O Extended 報告会 2016 in 関西 LT
Google I/O Extended 報告会 2016 in 関西 LT
 
Oculus Game Jam 2015 presentation
Oculus Game Jam 2015 presentationOculus Game Jam 2015 presentation
Oculus Game Jam 2015 presentation
 
ぶっちゃけ Android wear ってどうよ?
ぶっちゃけ Android wear ってどうよ?ぶっちゃけ Android wear ってどうよ?
ぶっちゃけ Android wear ってどうよ?
 
2015/02/21 GDG神戸 Go on Android ハンズオン&もくもく会
2015/02/21 GDG神戸 Go on Android ハンズオン&もくもく会2015/02/21 GDG神戸 Go on Android ハンズオン&もくもく会
2015/02/21 GDG神戸 Go on Android ハンズオン&もくもく会
 
dockerはじめました。 GDG京都 2014年忘れ勉強会 LT
dockerはじめました。 GDG京都 2014年忘れ勉強会 LTdockerはじめました。 GDG京都 2014年忘れ勉強会 LT
dockerはじめました。 GDG京都 2014年忘れ勉強会 LT
 
GDG DevFest Kyoto 2014 これからのGoの話をしよう
GDG DevFest Kyoto 2014 これからのGoの話をしようGDG DevFest Kyoto 2014 これからのGoの話をしよう
GDG DevFest Kyoto 2014 これからのGoの話をしよう
 
2014/09/13 Android Wear Hackahon
2014/09/13 Android Wear Hackahon2014/09/13 Android Wear Hackahon
2014/09/13 Android Wear Hackahon
 
Android Wear のムダ知識
Android Wear のムダ知識Android Wear のムダ知識
Android Wear のムダ知識
 
2013/03/09 VisualStudio勉強会 LT 「統合開発環境の支援ツール」
2013/03/09 VisualStudio勉強会 LT 「統合開発環境の支援ツール」2013/03/09 VisualStudio勉強会 LT 「統合開発環境の支援ツール」
2013/03/09 VisualStudio勉強会 LT 「統合開発環境の支援ツール」
 

DaydreamではじめるVR