SlideShare a Scribd company logo
1 of 24
Download to read offline
PUN2 × OculusQuest で
ハンドトラッキング同期実装
(プロジェクト公開しました)
登壇者:KENTO
Twitter : @okprogramming
仕事 : XR関連のR&D
Twitter : @Up_frontier
Twitter : @gaprot_jp
なぜ話すのか
大変だったので同じ苦労する人が
一人でも減りますように
サンプル
サンプルプロジェクト
https://github.com/ForJobOk/OculusHandSync
Apk(2人プレイ)
https://github.com/ForJobOk/OculusHandSync/releases/tag/ForPublish
①お互いのクライアントに手のメッシュを生成
②手の座標を送り合う
③送られてきた座標データで
相手クライアント側の手を動かす
ハンドトラッキングの同期
見た目 データ
通常のハンドトラッキング実装に必要なPrefab
手のデータ
通常のハンドトラッキング実装に必要なPrefab
手の見た目
通常のハンドトラッキング実装に必要なPrefab
手のボーン
通常のハンドトラッキング実装に必要なPrefab
ハンドトラッキング同期実装の準備
自クライアントの手を動かすためだけの情報。
この情報を自クライアントの自身のアバター、
及び相手クライアント側の自身のアバターに反映させる。
ハンドトラッキング同期実装の準備
アバターの手のメッシュを生成。OVR Meshをそのまま利用。
ハンドトラッキング同期実装の準備
PlayerSyncが自クライアントの手のメッシュにボーン情報を渡して動かす。
相手クライアントとボーン情報を送り合う。
受け取ったボーン情報で相手クライアントの手のメッシュを動かす。
送信
受信
Tips
・プレイヤー入室時の場所をカスタムプロパティで設定
・カメラリグ配下のカメラを任意の方向、座標に移動
Tips
・プレイヤー入室時の場所をカスタムプロパティで設定
・カメラリグ配下のカメラを任意の方向、座標に移動
プレイヤー入室時の場所を
カスタムプロパティで設定
入退室が自由のルームでの
プレイヤー生成位置はどうするか
→プレイヤーにカスタムプロパティで番号を与える
※ActorNumberは再入室するたびに値が加算される
Tips
・プレイヤー入室時の場所をカスタムプロパティで設定
・カメラリグ配下のカメラを任意の方向、座標に移動
座標
カメラはユーザーのHMDの動きに追従するため、直接座標は動かせない。
カメラリグを移動させるだけでは求める位置への移動は不可。
カメラリグ
カメラ
例)カメラをA地点に移動させたい
座標の計算
回転
カメラはユーザーのHMDの動きに追従するため、直接回転させることはできない。
カメラリグを回転させるだけでは求める向きへの回転は不可。
カメラリグ
カメラ
例)カメラをA地点に向けたい
回転の計算
ここまでの内容をまとめた記事
【Unity(C#),PUN2】OculusQuestのハンドトラッキング同期実装
https://qiita.com/OKsaiyowa/items/80fb857a285ee4aed95c
【Unity(C#),PUN2】ルームの入退室に対応したプレイヤー生成位置、色の振り分け
https://qiita.com/OKsaiyowa/items/118be61ddaa175aae3e6
【Unity(C#)】VRカメラを任意のポジションに移動する方法
https://qiita.com/OKsaiyowa/items/47e06cf62498ef3abe9e
リンク
PUN2で始めるUnityオンラインゲーム開発入門
https://zenn.dev/o8que/books/bdcb9af27bdd7d
アップフロンティア株式会社 note
https://note.com/upfrontier

More Related Content

Similar to PUN2 × OculusQuest でハンドトラッキング同期実装(プロジェクト公開しました)

初心者向けAndroidゲーム開発ノウハウ
初心者向けAndroidゲーム開発ノウハウ初心者向けAndroidゲーム開発ノウハウ
初心者向けAndroidゲーム開発ノウハウKentarou Mukunasi
 
【とらラボLT】go言語でのweb apiの作り方3選
【とらラボLT】go言語でのweb apiの作り方3選【とらラボLT】go言語でのweb apiの作り方3選
【とらラボLT】go言語でのweb apiの作り方3選虎の穴 開発室
 
SADAO TOKUYAMA の L.E.A.P カンファレンス な 話
SADAO TOKUYAMA の L.E.A.P カンファレンス な 話SADAO TOKUYAMA の L.E.A.P カンファレンス な 話
SADAO TOKUYAMA の L.E.A.P カンファレンス な 話Sadao Tokuyama
 
ngCore engine for mobage platform
ngCore engine for mobage platformngCore engine for mobage platform
ngCore engine for mobage platformToru Yamaguchi
 
CrystalFantasiaを支えきった技術と技術だけではどうにもならなかった話
CrystalFantasiaを支えきった技術と技術だけではどうにもならなかった話CrystalFantasiaを支えきった技術と技術だけではどうにもならなかった話
CrystalFantasiaを支えきった技術と技術だけではどうにもならなかった話Keisuke Utsumi
 
知っ徳!納徳! Magic Leap《概要編+L.E.A.P編》+ インディペンデント クリエイタープログラムについて
知っ徳!納徳! Magic Leap《概要編+L.E.A.P編》+ インディペンデント クリエイタープログラムについて知っ徳!納徳! Magic Leap《概要編+L.E.A.P編》+ インディペンデント クリエイタープログラムについて
知っ徳!納徳! Magic Leap《概要編+L.E.A.P編》+ インディペンデント クリエイタープログラムについてSadao Tokuyama
 
初めてのプラグイン開発
初めてのプラグイン開発初めてのプラグイン開発
初めてのプラグイン開発ikikko
 
ノンプログラミングで始めるAR (HoloLens 2 / ARCore / ARKit) 開発 with MRTK
ノンプログラミングで始めるAR (HoloLens 2 / ARCore / ARKit) 開発 with MRTK ノンプログラミングで始めるAR (HoloLens 2 / ARCore / ARKit) 開発 with MRTK
ノンプログラミングで始めるAR (HoloLens 2 / ARCore / ARKit) 開発 with MRTK Takashi Yoshinaga
 
はじめようArcore (修正版)
はじめようArcore (修正版)はじめようArcore (修正版)
はじめようArcore (修正版)Takashi Yoshinaga
 
ClojureでElectronアプリを作ろう
ClojureでElectronアプリを作ろうClojureでElectronアプリを作ろう
ClojureでElectronアプリを作ろうKazuhiro Hara
 
NAO/Pepper 開発環境 について
NAO/Pepper 開発環境 についてNAO/Pepper 開発環境 について
NAO/Pepper 開発環境 についてTakuji Kawata
 
赤外線センサーを使ったインタラクティブコンテンツ
赤外線センサーを使ったインタラクティブコンテンツ赤外線センサーを使ったインタラクティブコンテンツ
赤外線センサーを使ったインタラクティブコンテンツTakehisa Ikeda
 
Flutterとプラットフォーム依存の処理の対応について
Flutterとプラットフォーム依存の処理の対応についてFlutterとプラットフォーム依存の処理の対応について
Flutterとプラットフォーム依存の処理の対応についてSatoshi Noda
 
20120623 cv勉強会 shirasy
20120623 cv勉強会 shirasy20120623 cv勉強会 shirasy
20120623 cv勉強会 shirasyYoichi Shirasawa
 
ArtTrack: Articulated Multi-Person Tracking in the Wild : CV勉強会関東
ArtTrack: Articulated Multi-Person Tracking in the Wild : CV勉強会関東ArtTrack: Articulated Multi-Person Tracking in the Wild : CV勉強会関東
ArtTrack: Articulated Multi-Person Tracking in the Wild : CV勉強会関東Yukiyoshi Sasao
 
今だから聞きたい 「一番新しい xRアプリの作り方」 2020年 最新版
今だから聞きたい 「一番新しい xRアプリの作り方」 2020年 最新版今だから聞きたい 「一番新しい xRアプリの作り方」 2020年 最新版
今だから聞きたい 「一番新しい xRアプリの作り方」 2020年 最新版UnityTechnologiesJapan002
 
OpenXR + XR Interaction Toolkit使ったHoloLensコンテンツ開発検証 ~ (私が)完全に理解できたらちゃんと作れて、いろ...
OpenXR + XR Interaction Toolkit使ったHoloLensコンテンツ開発検証 ~ (私が)完全に理解できたらちゃんと作れて、いろ...OpenXR + XR Interaction Toolkit使ったHoloLensコンテンツ開発検証 ~ (私が)完全に理解できたらちゃんと作れて、いろ...
OpenXR + XR Interaction Toolkit使ったHoloLensコンテンツ開発検証 ~ (私が)完全に理解できたらちゃんと作れて、いろ...Takahiro Miyaura
 
20170419PFNオープンハウス リサーチャーの仕事_公開用
20170419PFNオープンハウス リサーチャーの仕事_公開用20170419PFNオープンハウス リサーチャーの仕事_公開用
20170419PFNオープンハウス リサーチャーの仕事_公開用Preferred Networks
 

Similar to PUN2 × OculusQuest でハンドトラッキング同期実装(プロジェクト公開しました) (20)

初心者向けAndroidゲーム開発ノウハウ
初心者向けAndroidゲーム開発ノウハウ初心者向けAndroidゲーム開発ノウハウ
初心者向けAndroidゲーム開発ノウハウ
 
【とらラボLT】go言語でのweb apiの作り方3選
【とらラボLT】go言語でのweb apiの作り方3選【とらラボLT】go言語でのweb apiの作り方3選
【とらラボLT】go言語でのweb apiの作り方3選
 
SADAO TOKUYAMA の L.E.A.P カンファレンス な 話
SADAO TOKUYAMA の L.E.A.P カンファレンス な 話SADAO TOKUYAMA の L.E.A.P カンファレンス な 話
SADAO TOKUYAMA の L.E.A.P カンファレンス な 話
 
ngCore engine for mobage platform
ngCore engine for mobage platformngCore engine for mobage platform
ngCore engine for mobage platform
 
CrystalFantasiaを支えきった技術と技術だけではどうにもならなかった話
CrystalFantasiaを支えきった技術と技術だけではどうにもならなかった話CrystalFantasiaを支えきった技術と技術だけではどうにもならなかった話
CrystalFantasiaを支えきった技術と技術だけではどうにもならなかった話
 
知っ徳!納徳! Magic Leap《概要編+L.E.A.P編》+ インディペンデント クリエイタープログラムについて
知っ徳!納徳! Magic Leap《概要編+L.E.A.P編》+ インディペンデント クリエイタープログラムについて知っ徳!納徳! Magic Leap《概要編+L.E.A.P編》+ インディペンデント クリエイタープログラムについて
知っ徳!納徳! Magic Leap《概要編+L.E.A.P編》+ インディペンデント クリエイタープログラムについて
 
初めてのプラグイン開発
初めてのプラグイン開発初めてのプラグイン開発
初めてのプラグイン開発
 
ノンプログラミングで始めるAR (HoloLens 2 / ARCore / ARKit) 開発 with MRTK
ノンプログラミングで始めるAR (HoloLens 2 / ARCore / ARKit) 開発 with MRTK ノンプログラミングで始めるAR (HoloLens 2 / ARCore / ARKit) 開発 with MRTK
ノンプログラミングで始めるAR (HoloLens 2 / ARCore / ARKit) 開発 with MRTK
 
Herlockサービス紹介
Herlockサービス紹介Herlockサービス紹介
Herlockサービス紹介
 
はじめようArcore (修正版)
はじめようArcore (修正版)はじめようArcore (修正版)
はじめようArcore (修正版)
 
ClojureでElectronアプリを作ろう
ClojureでElectronアプリを作ろうClojureでElectronアプリを作ろう
ClojureでElectronアプリを作ろう
 
NAO/Pepper 開発環境 について
NAO/Pepper 開発環境 についてNAO/Pepper 開発環境 について
NAO/Pepper 開発環境 について
 
赤外線センサーを使ったインタラクティブコンテンツ
赤外線センサーを使ったインタラクティブコンテンツ赤外線センサーを使ったインタラクティブコンテンツ
赤外線センサーを使ったインタラクティブコンテンツ
 
Flutterとプラットフォーム依存の処理の対応について
Flutterとプラットフォーム依存の処理の対応についてFlutterとプラットフォーム依存の処理の対応について
Flutterとプラットフォーム依存の処理の対応について
 
20120623 cv勉強会 shirasy
20120623 cv勉強会 shirasy20120623 cv勉強会 shirasy
20120623 cv勉強会 shirasy
 
ArtTrack: Articulated Multi-Person Tracking in the Wild : CV勉強会関東
ArtTrack: Articulated Multi-Person Tracking in the Wild : CV勉強会関東ArtTrack: Articulated Multi-Person Tracking in the Wild : CV勉強会関東
ArtTrack: Articulated Multi-Person Tracking in the Wild : CV勉強会関東
 
今だから聞きたい 「一番新しい xRアプリの作り方」 2020年 最新版
今だから聞きたい 「一番新しい xRアプリの作り方」 2020年 最新版今だから聞きたい 「一番新しい xRアプリの作り方」 2020年 最新版
今だから聞きたい 「一番新しい xRアプリの作り方」 2020年 最新版
 
OpenXR + XR Interaction Toolkit使ったHoloLensコンテンツ開発検証 ~ (私が)完全に理解できたらちゃんと作れて、いろ...
OpenXR + XR Interaction Toolkit使ったHoloLensコンテンツ開発検証 ~ (私が)完全に理解できたらちゃんと作れて、いろ...OpenXR + XR Interaction Toolkit使ったHoloLensコンテンツ開発検証 ~ (私が)完全に理解できたらちゃんと作れて、いろ...
OpenXR + XR Interaction Toolkit使ったHoloLensコンテンツ開発検証 ~ (私が)完全に理解できたらちゃんと作れて、いろ...
 
Project Prague を試してみました
Project Prague を試してみましたProject Prague を試してみました
Project Prague を試してみました
 
20170419PFNオープンハウス リサーチャーの仕事_公開用
20170419PFNオープンハウス リサーチャーの仕事_公開用20170419PFNオープンハウス リサーチャーの仕事_公開用
20170419PFNオープンハウス リサーチャーの仕事_公開用
 

Recently uploaded

自分史上一番早い2024振り返り〜コロナ後、仕事は通常ペースに戻ったか〜 by IoT fullstack engineer
自分史上一番早い2024振り返り〜コロナ後、仕事は通常ペースに戻ったか〜 by IoT fullstack engineer自分史上一番早い2024振り返り〜コロナ後、仕事は通常ペースに戻ったか〜 by IoT fullstack engineer
自分史上一番早い2024振り返り〜コロナ後、仕事は通常ペースに戻ったか〜 by IoT fullstack engineerYuki Kikuchi
 
クラウドネイティブなサーバー仮想化基盤 - OpenShift Virtualization.pdf
クラウドネイティブなサーバー仮想化基盤 - OpenShift Virtualization.pdfクラウドネイティブなサーバー仮想化基盤 - OpenShift Virtualization.pdf
クラウドネイティブなサーバー仮想化基盤 - OpenShift Virtualization.pdfFumieNakayama
 
TataPixel: 畳の異方性を利用した切り替え可能なディスプレイの提案
TataPixel: 畳の異方性を利用した切り替え可能なディスプレイの提案TataPixel: 畳の異方性を利用した切り替え可能なディスプレイの提案
TataPixel: 畳の異方性を利用した切り替え可能なディスプレイの提案sugiuralab
 
モーダル間の変換後の一致性とジャンル表を用いた解釈可能性の考察 ~Text-to-MusicとText-To-ImageかつImage-to-Music...
モーダル間の変換後の一致性とジャンル表を用いた解釈可能性の考察  ~Text-to-MusicとText-To-ImageかつImage-to-Music...モーダル間の変換後の一致性とジャンル表を用いた解釈可能性の考察  ~Text-to-MusicとText-To-ImageかつImage-to-Music...
モーダル間の変換後の一致性とジャンル表を用いた解釈可能性の考察 ~Text-to-MusicとText-To-ImageかつImage-to-Music...博三 太田
 
AWS の OpenShift サービス (ROSA) を使った OpenShift Virtualizationの始め方.pdf
AWS の OpenShift サービス (ROSA) を使った OpenShift Virtualizationの始め方.pdfAWS の OpenShift サービス (ROSA) を使った OpenShift Virtualizationの始め方.pdf
AWS の OpenShift サービス (ROSA) を使った OpenShift Virtualizationの始め方.pdfFumieNakayama
 
CTO, VPoE, テックリードなどリーダーポジションに登用したくなるのはどんな人材か?
CTO, VPoE, テックリードなどリーダーポジションに登用したくなるのはどんな人材か?CTO, VPoE, テックリードなどリーダーポジションに登用したくなるのはどんな人材か?
CTO, VPoE, テックリードなどリーダーポジションに登用したくなるのはどんな人材か?akihisamiyanaga1
 
デジタル・フォレンジックの最新動向(2024年4月27日情洛会総会特別講演スライド)
デジタル・フォレンジックの最新動向(2024年4月27日情洛会総会特別講演スライド)デジタル・フォレンジックの最新動向(2024年4月27日情洛会総会特別講演スライド)
デジタル・フォレンジックの最新動向(2024年4月27日情洛会総会特別講演スライド)UEHARA, Tetsutaro
 
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)Hiroshi Tomioka
 

Recently uploaded (8)

自分史上一番早い2024振り返り〜コロナ後、仕事は通常ペースに戻ったか〜 by IoT fullstack engineer
自分史上一番早い2024振り返り〜コロナ後、仕事は通常ペースに戻ったか〜 by IoT fullstack engineer自分史上一番早い2024振り返り〜コロナ後、仕事は通常ペースに戻ったか〜 by IoT fullstack engineer
自分史上一番早い2024振り返り〜コロナ後、仕事は通常ペースに戻ったか〜 by IoT fullstack engineer
 
クラウドネイティブなサーバー仮想化基盤 - OpenShift Virtualization.pdf
クラウドネイティブなサーバー仮想化基盤 - OpenShift Virtualization.pdfクラウドネイティブなサーバー仮想化基盤 - OpenShift Virtualization.pdf
クラウドネイティブなサーバー仮想化基盤 - OpenShift Virtualization.pdf
 
TataPixel: 畳の異方性を利用した切り替え可能なディスプレイの提案
TataPixel: 畳の異方性を利用した切り替え可能なディスプレイの提案TataPixel: 畳の異方性を利用した切り替え可能なディスプレイの提案
TataPixel: 畳の異方性を利用した切り替え可能なディスプレイの提案
 
モーダル間の変換後の一致性とジャンル表を用いた解釈可能性の考察 ~Text-to-MusicとText-To-ImageかつImage-to-Music...
モーダル間の変換後の一致性とジャンル表を用いた解釈可能性の考察  ~Text-to-MusicとText-To-ImageかつImage-to-Music...モーダル間の変換後の一致性とジャンル表を用いた解釈可能性の考察  ~Text-to-MusicとText-To-ImageかつImage-to-Music...
モーダル間の変換後の一致性とジャンル表を用いた解釈可能性の考察 ~Text-to-MusicとText-To-ImageかつImage-to-Music...
 
AWS の OpenShift サービス (ROSA) を使った OpenShift Virtualizationの始め方.pdf
AWS の OpenShift サービス (ROSA) を使った OpenShift Virtualizationの始め方.pdfAWS の OpenShift サービス (ROSA) を使った OpenShift Virtualizationの始め方.pdf
AWS の OpenShift サービス (ROSA) を使った OpenShift Virtualizationの始め方.pdf
 
CTO, VPoE, テックリードなどリーダーポジションに登用したくなるのはどんな人材か?
CTO, VPoE, テックリードなどリーダーポジションに登用したくなるのはどんな人材か?CTO, VPoE, テックリードなどリーダーポジションに登用したくなるのはどんな人材か?
CTO, VPoE, テックリードなどリーダーポジションに登用したくなるのはどんな人材か?
 
デジタル・フォレンジックの最新動向(2024年4月27日情洛会総会特別講演スライド)
デジタル・フォレンジックの最新動向(2024年4月27日情洛会総会特別講演スライド)デジタル・フォレンジックの最新動向(2024年4月27日情洛会総会特別講演スライド)
デジタル・フォレンジックの最新動向(2024年4月27日情洛会総会特別講演スライド)
 
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)
 

PUN2 × OculusQuest でハンドトラッキング同期実装(プロジェクト公開しました)