Slide 1

Slide 1 text

CONFIDENTIAL visionOS engineer オンラインLT会 vol.5 NinjaGazeTyping 製作話 2024/02/21

Slide 2

Slide 2 text

登壇者情報 Graf fi ty(ג) ॴଐUnityΤϯδχΞ
 ઐ໳ྖҬɿα΢ϯυϓϩάϥϛϯά UnityΛத৺ͱͨ͠৘ใൃ৴ͳͲΛߦ͍ͬͯ·͢ɻ 2 visionOS engineer オンラインLT会 vol.5 著書&査読協⼒ @8bitdots https://qiita.com/Cova8bitdot @cova8bit.bsky.social

Slide 3

Slide 3 text

CONFIDENTIAL

Slide 4

Slide 4 text

CONFIDENTIAL 世界初のマルチプレイ ARシューティングゲーム 「ペチャバト」 4 プロダクト紹介 - ペチャバト

Slide 5

Slide 5 text

で、 最短3ヶ⽉ つくります ⼼動かすARエンタメ企画 「Gra ff i ty AR Studio」は、ARに特化したエンタメDXファームです。 2C向けに展開しているARゲームの企画の知⾒やAR開発内製基盤など開発⼒を強みとし、 ARを活⽤したエンタメDXの企画から開発までご⽀援することができます。 プロダクト紹介 - Graffity AR Studio

Slide 6

Slide 6 text

CONFIDENTIAL 株式会社NTTコノキューと絶滅動物発掘ARゲーム「ロストアニマルプラネット」を企画・開発 受注から3ヶ⽉の開発期間で、2023年8⽉にリリースを実施いたしました 6 Graffity AR Studio - 実績紹介 ×

Slide 7

Slide 7 text

CONFIDENTIAL ⽬次 1. Ninja Gaze Typing の紹介 2. 製作にあたって遭遇した技術的課題

Slide 8

Slide 8 text

CONFIDENTIAL ⽬次 1. Ninja Gaze Typing の紹介 2. 製作にあたって遭遇した技術的課題

Slide 9

Slide 9 text

Ninja Gaze TypingはApple VisionPro のGaze&Tap という操作を利⽤したタイピングゲームです Ninja Gaze Typing の紹介

Slide 10

Slide 10 text

Ninja Gaze TypingはApple VisionPro のGaze&Tap という操作を利⽤したタイピングゲームです Ninja Gaze Typing の紹介 キーボードの各キーに視線を向けると 少し⽩っぽくなり、選択状態として表⽰されます。

Slide 11

Slide 11 text

Ninja Gaze TypingはApple VisionPro のGaze&Tap という操作を利⽤したタイピングゲームです Ninja Gaze Typing の紹介 Vision Pro では選択状態の時に 親指と⼈差し指をくっつけるとTap操作、 つまり選択操作が可能です。

Slide 12

Slide 12 text

Ninja Gaze TypingはApple VisionPro のGaze&Tap という操作を利⽤したタイピングゲームです Ninja Gaze Typing の紹介

Slide 13

Slide 13 text

ちなみに本ゲームはUnityの PolySpatial というVisionOS⽤ライブラリを⽤いて開発しています Ninja Gaze Typing の紹介

Slide 14

Slide 14 text

CONFIDENTIAL ⽬次 1. Ninja Gaze Typing の紹介 2. 製作にあたって遭遇した技術的課題

Slide 15

Slide 15 text

⼀部内容は既にQiitaや開発者インタビュー記事で公開してあります 15 製作にあたって遭遇した技術的課題 https://qiita.com/Cova8bitdot/items/5b77a390c12571fea7e8 https://qiita.com/Cova8bitdot/items/aead03ee29fb8b595a7e https://note.com/gra ffi ty/n/nc176aee1c19a

Slide 16

Slide 16 text

ハンドトラッキング周りで遭遇したトラブル2選 16 製作にあたって遭遇した技術的課題 • HandTracking 使⽤のための権限リクエストのTextを⼊⼒なしだとアプリがクラッシュする • PolySpatialで特定のコンポーネントを利⽤するとハンドトラッキングの利⽤が強制されてしまう

Slide 17

Slide 17 text

ハンドトラッキング周りで遭遇したトラブル2選 17 製作にあたって遭遇した技術的課題 • HandTracking 使⽤のための権限リクエストのTextを⼊⼒なしだとアプリがクラッシュする • PolySpatialで特定のコンポーネントを利⽤するとハンドトラッキングの利⽤が強制されてしまう

Slide 18

Slide 18 text

HandTracking 使⽤のための権限リクエストのTextを⼊⼒なしだとアプリがクラッシュする Info.plist の NSHandsTrackingUsageDescription のテキストが未設定だと実機でクラッシュします こちらはvisionOS1.0での問題で、現在公開されているvisionOS1.1βでは修正済になっているそうです 18 製作にあたって遭遇した技術的課題

Slide 19

Slide 19 text

ハンドトラッキング周りで遭遇したトラブル2選 19 製作にあたって遭遇した技術的課題 • HandTracking 使⽤のための権限リクエストのTextを⼊⼒なしだとアプリがクラッシュする • PolySpatialで特定のコンポーネントを利⽤するとハンドトラッキングの利⽤が強制されてしまう

Slide 20

Slide 20 text

PolySpatialで特定のコンポーネントを利⽤するとハンドトラッキングの利⽤が強制されてしまう • HandTrackingを明⽰的に使うことを設定してないのに⾃動的にHandTrackingがOnになる問題 • PolySpatialのVisionOSLoaderというClassがHandTracking有効化の設定を⾏う • 実際にはVisionOSSessionSubsystemが権限リクエストの処理をしている • ARSession コンポーネントを使うと上記が⾃動的に実⾏される https://discussions.unity.com/t/is-it-possible-not-to-use-handtracking-and-not-to-request-hand- tracking-authority/335809 20 製作にあたって遭遇した技術的課題

Slide 21

Slide 21 text

PolySpatialで特定のコンポーネントを利⽤するとハンドトラッキングの利⽤が強制されてしまう 特にAR/MR機能を利⽤しないのであればXR Plug-in Managementの AppleVisionOS をO f にするのが 有効だそうです。 ちなみに、UnityのPolySpatial の⼀部ドキュメントで Apple VisionOS Loader と書いてあるものは上記の Plug-in Providers のことだそうです。表記ブレがあるのでご注意ください(Unity公式からも回答済) また、本件は今後適切に権限設定できるように改修予定だそうです。 21 製作にあたって遭遇した技術的課題

Slide 22

Slide 22 text

まとめ AR/MR機能やパススルー映像の綺麗さは他のHMDと⽐べても利⽤する価値は⼗分あると思います VisionOS 並びにPolySpatial はまだまだ発展途上ですが、⼯夫とアイデア次第では ⾯⽩いゲームは⼗分開発可能です 新規デバイスの初期開発段階は⾊々⼤変ですが、根気よく開発すれば、全く新しい体験や⾯⽩いものが できると思います。 22 最後に

Slide 23

Slide 23 text

Vision Pro向けのSpatialゲームを⼀緒に開発したいUnityエンジニア募集! Gra ff i ty は 、Unity PolySpatialで VisionPro向けにSpatialゲームを開発したいメンバー を募集中です! 我こそは!!と思う⽅は是⾮Gra ff i tyメンバーにお声がけ頂い たり、採⽤ページからアクセスしていただけると幸いです。 代表Xアカウント : https://twitter.com/ok_totti HP : https://herp.careers/v1/gra ffi ty 最後に、NinjaGazeTyping 無料ゲームなので是⾮ご体験く ださい!! (弊社オフィスでも体験可能です) 23 最後に Gra ffi tyに興味ある& オフィスでVision Proを体験したい⽅は Gra ffi ty代表の森本にDMしてください!