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
NinjaGazeTyping
Search
Graffity
July 22, 2024
Programming
0
30
NinjaGazeTyping
AppleVisionPro 専用Spatial ゲーム Ninja Gaze Typing の制作にまつわるLTです
Graffity
July 22, 2024
Tweet
Share
More Decks by Graffity
See All by Graffity
AppStoreConnectAPIを使って端末登録作業を自動化しよう!(Unity CI/CD 完全に理解した 勉強会)
graffity
0
290
AppleVisionProCICD
graffity
0
330
HandgestureTool for AppleVisionPro
graffity
0
44
Graffity 採用候補者の皆様へ
graffity
1
15k
Other Decks in Programming
See All in Programming
テストコードのガイドライン 〜作成から運用まで〜
riku929hr
6
1.3k
CloudflareStack でRAGに入門
asahiiwm
0
140
LLM Supervised Fine-tuningの理論と実践
datanalyticslabo
8
1.8k
GitHub CopilotでTypeScriptの コード生成するワザップ
starfish719
26
5.8k
Findy Team+ Awardを受賞したかった!ベストプラクティス応募内容をふりかえり、開発生産性向上もふりかえる / Findy Team Plus Award BestPractice and DPE Retrospective 2024
honyanya
0
130
shadcn/uiを使ってReactでの開発を加速させよう!
lef237
0
240
DevFest - Serverless 101 with Google Cloud Functions
tunmise
0
130
短期間での新規プロダクト開発における「コスパの良い」Goのテスト戦略」 / kamakura.go
n3xem
2
210
Асинхронность неизбежна: как мы проектировали сервис уведомлений
lamodatech
0
1.3k
PHPとAPI Platformで作る本格的なWeb APIアプリケーション(入門編) / phpcon 2024 Intro to API Platform
ttskch
0
360
HTML/CSS超絶浅い説明
yuki0329
0
160
Kaigi on Railsに初参加したら、その日にLT登壇が決定した件について
tama50505
0
140
Featured
See All Featured
How to Create Impact in a Changing Tech Landscape [PerfNow 2023]
tammyeverts
49
2.2k
Creating an realtime collaboration tool: Agile Flush - .NET Oxford
marcduiker
26
1.9k
JavaScript: Past, Present, and Future - NDC Porto 2020
reverentgeek
47
5.1k
個人開発の失敗を避けるイケてる考え方 / tips for indie hackers
panda_program
97
17k
Speed Design
sergeychernyshev
25
720
GraphQLの誤解/rethinking-graphql
sonatard
68
10k
Raft: Consensus for Rubyists
vanstee
137
6.7k
Bash Introduction
62gerente
609
210k
Producing Creativity
orderedlist
PRO
343
39k
Helping Users Find Their Own Way: Creating Modern Search Experiences
danielanewman
29
2.4k
Testing 201, or: Great Expectations
jmmastey
41
7.2k
Easily Structure & Communicate Ideas using Wireframe
afnizarnur
191
16k
Transcript
CONFIDENTIAL visionOS engineer オンラインLT会 vol.5 NinjaGazeTyping 製作話 2024/02/21
登壇者情報 Graf fi ty(ג) ॴଐUnityΤϯδχΞ ઐྖҬɿαϯυϓϩάϥϛϯά UnityΛத৺ͱͨ͠ใൃ৴ͳͲΛߦ͍ͬͯ·͢ɻ 2 visionOS engineer
オンラインLT会 vol.5 著書&査読協⼒ @8bitdots https://qiita.com/Cova8bitdot @cova8bit.bsky.social
CONFIDENTIAL
CONFIDENTIAL 世界初のマルチプレイ ARシューティングゲーム 「ペチャバト」 4 プロダクト紹介 - ペチャバト
で、 最短3ヶ⽉ つくります ⼼動かすARエンタメ企画 「Gra ff i ty AR Studio」は、ARに特化したエンタメDXファームです。
2C向けに展開しているARゲームの企画の知⾒やAR開発内製基盤など開発⼒を強みとし、 ARを活⽤したエンタメDXの企画から開発までご⽀援することができます。 プロダクト紹介 - Graffity AR Studio
CONFIDENTIAL 株式会社NTTコノキューと絶滅動物発掘ARゲーム「ロストアニマルプラネット」を企画・開発 受注から3ヶ⽉の開発期間で、2023年8⽉にリリースを実施いたしました 6 Graffity AR Studio - 実績紹介 ×
CONFIDENTIAL ⽬次 1. Ninja Gaze Typing の紹介 2. 製作にあたって遭遇した技術的課題
CONFIDENTIAL ⽬次 1. Ninja Gaze Typing の紹介 2. 製作にあたって遭遇した技術的課題
Ninja Gaze TypingはApple VisionPro のGaze&Tap という操作を利⽤したタイピングゲームです Ninja Gaze Typing の紹介
Ninja Gaze TypingはApple VisionPro のGaze&Tap という操作を利⽤したタイピングゲームです Ninja Gaze Typing の紹介
キーボードの各キーに視線を向けると 少し⽩っぽくなり、選択状態として表⽰されます。
Ninja Gaze TypingはApple VisionPro のGaze&Tap という操作を利⽤したタイピングゲームです Ninja Gaze Typing の紹介
Vision Pro では選択状態の時に 親指と⼈差し指をくっつけるとTap操作、 つまり選択操作が可能です。
Ninja Gaze TypingはApple VisionPro のGaze&Tap という操作を利⽤したタイピングゲームです Ninja Gaze Typing の紹介
ちなみに本ゲームはUnityの PolySpatial というVisionOS⽤ライブラリを⽤いて開発しています Ninja Gaze Typing の紹介
CONFIDENTIAL ⽬次 1. Ninja Gaze Typing の紹介 2. 製作にあたって遭遇した技術的課題
⼀部内容は既にQiitaや開発者インタビュー記事で公開してあります 15 製作にあたって遭遇した技術的課題 https://qiita.com/Cova8bitdot/items/5b77a390c12571fea7e8 https://qiita.com/Cova8bitdot/items/aead03ee29fb8b595a7e https://note.com/gra ffi ty/n/nc176aee1c19a
ハンドトラッキング周りで遭遇したトラブル2選 16 製作にあたって遭遇した技術的課題 • HandTracking 使⽤のための権限リクエストのTextを⼊⼒なしだとアプリがクラッシュする • PolySpatialで特定のコンポーネントを利⽤するとハンドトラッキングの利⽤が強制されてしまう
ハンドトラッキング周りで遭遇したトラブル2選 17 製作にあたって遭遇した技術的課題 • HandTracking 使⽤のための権限リクエストのTextを⼊⼒なしだとアプリがクラッシュする • PolySpatialで特定のコンポーネントを利⽤するとハンドトラッキングの利⽤が強制されてしまう
HandTracking 使⽤のための権限リクエストのTextを⼊⼒なしだとアプリがクラッシュする Info.plist の NSHandsTrackingUsageDescription のテキストが未設定だと実機でクラッシュします こちらはvisionOS1.0での問題で、現在公開されているvisionOS1.1βでは修正済になっているそうです 18 製作にあたって遭遇した技術的課題
ハンドトラッキング周りで遭遇したトラブル2選 19 製作にあたって遭遇した技術的課題 • HandTracking 使⽤のための権限リクエストのTextを⼊⼒なしだとアプリがクラッシュする • PolySpatialで特定のコンポーネントを利⽤するとハンドトラッキングの利⽤が強制されてしまう
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 製作にあたって遭遇した技術的課題
PolySpatialで特定のコンポーネントを利⽤するとハンドトラッキングの利⽤が強制されてしまう 特にAR/MR機能を利⽤しないのであればXR Plug-in Managementの AppleVisionOS をO f にするのが 有効だそうです。 ちなみに、UnityのPolySpatial
の⼀部ドキュメントで Apple VisionOS Loader と書いてあるものは上記の Plug-in Providers のことだそうです。表記ブレがあるのでご注意ください(Unity公式からも回答済) また、本件は今後適切に権限設定できるように改修予定だそうです。 21 製作にあたって遭遇した技術的課題
まとめ AR/MR機能やパススルー映像の綺麗さは他のHMDと⽐べても利⽤する価値は⼗分あると思います VisionOS 並びにPolySpatial はまだまだ発展途上ですが、⼯夫とアイデア次第では ⾯⽩いゲームは⼗分開発可能です 新規デバイスの初期開発段階は⾊々⼤変ですが、根気よく開発すれば、全く新しい体験や⾯⽩いものが できると思います。 22 最後に
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してください!