Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
Vision Proでコーギーを召喚してみた
Search
noritsune
November 27, 2023
Programming
340
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Vision Proでコーギーを召喚してみた
visionOS Engineer LT会 vol.4での登壇資料です
noritsune
November 27, 2023
Other Decks in Programming
See All in Programming
contenteditable と日本語入力に向き合う
colorful12
0
200
Event is what happens
moro
2
770
Atomic Design, Enforced: Scaling Mobile Design Systems (next.app devCon / droidCon Berlin 2026)
steliosf
PRO
0
170
Compiling a real-world CLI tool to native with Static Hermes
tmikov2023
0
120
SalesForceを内製化!? ~ HR事業を支える顧客管理基盤のインフラを大公開 ~
oku053
0
180
golang-bob.pdf
iwatsukayura
0
130
全ての永続トークンを、生まれる前に消し去りたい!
sylph01
2
880
設計次第でAIコードの読む量は減らせる / designing-for-code-reading
minodriven
35
17k
phperだってパンチカードでコーディングしたい
o0h
PRO
0
330
なぜCTOを降りてFDEを選んだのか?〜なぜプロダクト企業がFDEで顧客の現場に踏み込むのか〜
gonta
1
210
AWS CDKのカスタムリソースでContinuum(旧Security Agent)を実装した話 | Implementing Continuum (formerly Security Agent) via AWS CDK Custom Resource
akihisaikeda
2
150
IBM Bob Dojo #1 仕様駆動開発入門
oniak3ibm
PRO
0
390
Featured
See All Featured
Evolving SEO for Evolving Search Engines
ryanjones
0
330
Leveraging Curiosity to Care for An Aging Population
cassininazir
1
540
Scaling GitHub
holman
464
140k
How Software Deployment tools have changed in the past 20 years
geshan
2
35k
Measuring Dark Social's Impact On Conversion and Attribution
stephenakadiri
2
310
The AI Search Optimization Roadmap by Aleyda Solis
aleyda
2
6.3k
How Fast Is Fast Enough? [PerfNow 2025]
tammyeverts
3
940
16th Malabo Montpellier Forum Presentation
akademiya2063
PRO
0
410
Why Our Code Smells
bkeepers
PRO
340
58k
The Language of Interfaces
destraynor
162
27k
Jamie Indigo - Trashchat’s Guide to Black Boxes: Technical SEO Tactics for LLMs
techseoconnect
PRO
0
710
AI in Enterprises - Java and Open Source to the Rescue
ivargrimstad
0
1.5k
Transcript
None
Vis ion Proで コーギーを召喚 し て み た Vis ion
Proで コーギーを召喚 し て み た Vis ion Proで コーギーを召喚 し て み た
自己紹介 自己紹介 自己紹介 フィグニー株式会社のxRエンジニア 普段作っているもの: PCゲーム、xRアプリ、Slackボット のりつね@noritsunetsune
どんなアプリ? どんなアプリ? どんなアプリ?
Vision Proのアプリを作ってみたい Apple Developer Labに参加してVision Proを触りたい 作った経緯 作った経緯 作った経緯 弊社が以前作ったARアプリのアセットを活用したい
アプリの構成 アプリの構成 アプリの構成 ImmersiveSpace RealityView コーギーエリア: Entity 床のアンカー: AnchorEntity コーギー:
ModelEntity 床の当たり判定: Entity WindowGroup
処理の流れ 処理の流れ 処理の流れ 1. コーギーを床に配置する 2. コーギーの移動先を指定する 3. コーギーを歩かせる
1. コーギーを床に配置する 1. コーギーを床に配置する 1. コーギーを床に配置する
平面の種類 1.1 床面を検出する AnchorEntity を使うとARKitSessionManager 無しで平面検出できて簡単 ある程度の広さのある何も無い床面をいい感じに見つけられる 検出対象の種類 平面の向き 平面の広さ下限
1.2 コーギーを配置する モデルの読み込みはHappy Beam サンプルを参考にした
2. 移動先を指定する 2. 移動先を指定する 2. 移動先を指定する
2.1 床に当たり判定を付ける InputTargetComponent とCollisionComponent が必要 部屋よりも十分に広い板
2.2 タップイベントを取得 床を見ながらタップジェスチャーをすると視線の先にある床のある点の空間座標を取れる 空間座標を取得したいのでSpatialTapGesture LongPressGesture などもある
2.3 コーギーの移動先の座標を取得 satoshi さんのvisionOS_30Days のDay13 を参考にしました タップ対象である床の当たり判定のローカル座標 → 移動対象であるコーギーの親のローカル座標に変換
3. コーギーを歩かせる 3. コーギーを歩かせる 3. コーギーを歩かせる
3.1 指定した位置へゆっくり移動させる 現在と同じ位置、違う向きのTransform をmove メソッドに指定したら旋回になる
3.2 usdzファイルに含めた歩行アニメーションを取得
3.3 旋回、移動中にアニメーションを再生
解決できて 解決できて 解決できて いない課題 いない課題 いない課題 複数アニメーションを切り替えられない 色々な方法でusdz を書き出したが複数アニメーションをRealityKit 側で
取り出せなかった。1 つのアニメーションデータを分割して読み出して 複数アニメーションにする荒業があるらしい。 コーギーの影が床に落ちない Apple が配布しているusdz で試したら影が落ちた GroundingShadowComponent をコーギーのEntity の子孫全てにse し たが影が落ちなかった。 コーギーが移動中に別の移動先を指定すると 瞬間移動する 座標変換に失敗している気がする SwiftとXcodeに慣れない
おしまい おしまい おしまい Thank Thank Thank you! you! you!