VisonProの新しい入力方法を試す。

# はじめに

VisionPro が公開されたとき、なにやら指先を動かすだけで、アプリやウィンドウを操作できるような挙動の動画が公開されました。果たしてあの入力では何をしているのか、実機がなくても検証する方法を見つけたので、その方法について解説します。

エミュレーターのダウンロードの方法については[こちらの記事（VisionPro のエミュレーターのインストール方法）](https://qiita.com/kanakanho/items/4dd7448aad63a6beb20a)にて紹介しているので、よければ参考にしてください。

# 新しい入力方法の概要

空白部分はこれから検証して追記いたします。
| Gestures | action（アプリ毎に任意で設定できそうだけど、純正アプリをみた感じ） |
| - | - |
| Touch | 白いたまのある場所のボタンをタップ |
| Swipe up | 下にスクロール |
| Swipe down | 上にスクロール |
| Swipe left | 左にスクロール |
| Swipe right | 右にスクロール |
| Zoom out | ズームアウト |
| Zoom in | ズームイン |
| Rotate left | 操作を戻す（または左に任意の角度回転） |
| Rotate right | 操作を進める（または右に任意の角度回転） |
| Two finger touch | |
| Two finger swipe down | |
| Two finger swipe left | |
| Two finger swipe right | |
| Two finger swipe up |  |

何らかの方法でタブを切り替えることができるが再現性がない。仕様なのかバグなのかも分からない。

入力は基本的にiPadでの入力と同じようです。iPadもキー設定をいじって試してみたところほとんど変わらなかった。
　ただiPadは`Tab+⌘`でウィンドウの切り替えができたのに、VisionProではできない様子。

# シュートカットキーを変更する

## キーボードでの入力を有効化する

Simulator のメニューバーから
**I/O > Input > Send Keyboard Input to Device**　または　**⌥⌘K**
<img width="740" alt="image.png (524.3 kB)" src="https://img.esa.io/uploads/production/attachments/19973/2023/08/13/148413/aa6c276f-4cf9-4b37-9a3c-b083a5fc8b6e.png">

設定されると、Simulator の上の四角で囲まれた「⌘」が青くなる
<img width="1438" alt="画面収録 2023-08-13 20-29-35_3.gif (8.5 MB)" src="https://img.esa.io/uploads/production/attachments/19973/2023/08/13/148413/85f1ac59-2782-4939-a0e5-6b62d852f8a7.gif">

## 白いたまの入力

この新しい操作には[この記事（Apple Vision Pro の基本操作と基本設定まとめ）](https://qiita.com/kanakanho/items/bc2eb6c87c3644d630c0)で解説しているような、カーソルでの操作ではなく、白いたまのようなカーソルが用いられるようです。
追記
白いたまの正体は、トラックパッドでの入力を意味しているようです。

Simulator のメニューバーから
**I/O > Input > Send Pointer to Device**　または　**^⌘K**
を選択した状態でエミュレーター内の任意のアプリケーションに触れることでカーソルが白いたまになる。

白いたまの状態でもクリックできる。スクロールは通常のトラックパッドでの操作と同じように、二本指をスライドさせる。また白いたまの状態でウィンドウの外というか、そのウィンドウの持つ領域から出ることはできない。**脱出には Esc キーが有効。**
カーソルの状態では右クリックができないが、白いたまの状態では、右クリックが可能になる。
サンプル動画

<iframe width="930" height="523" src="https://www.youtube.com/embed/t8UDPfT50zw" title="VisionPro_TrackPad_sample" frameborder="0" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share" allowfullscreen></iframe>

### ウィンドウの持つ領域

領域は以下の画像のように設定されている。平面のアプリでも実際には奥行きが指定されている（12cm）。
デフォルトで入っているウィンドウの場合（単位：cm）
正面　 96 　 ✖️ 　 54
上面　 96 　 ✖️ 　 12
<img width="734" alt="image.png (431.9 kB)" src="https://img.esa.io/uploads/production/attachments/19973/2023/08/11/148413/20413b83-5228-48c5-be03-28ddb8474fef.png">

## ショートカットキー変更の方法

**前に述べた方法でキーボード入力を有効にしてください。でないと変更できません。**
以降の画像では、右上は青色ではありませんが、この設定を有効にした場合、Mac 側でのショートカットキーの入力がなくなるため、スクショのために一時的にオフにしているだけです。
シュミレーターウィンドウの中央の上方にある灰色のポッチをクリック
灰色のポッチは見えづらいです。
<img width="1204" alt="image.png (814.2 kB)" src="https://img.esa.io/uploads/production/attachments/19973/2023/08/14/148413/d6595112-17e9-40b2-82fe-3e712142f1d4.png">
カーソルをホバーすると形が変わります。
<img width="1204" alt="image.png (813.8 kB)" src="https://img.esa.io/uploads/production/attachments/19973/2023/08/14/148413/52555f89-74da-4d31-9d8a-eb73257ff349.png">
これをクリックするとメニューが表示されます。
<img width="1158" alt="image.png (3.6 MB)" src="https://img.esa.io/uploads/production/attachments/19973/2023/08/10/148413/ee74492a-80fd-49e3-97f0-64c9e5d124c2.png">
この一番左のハニカムみたいなマークを押すと、アプリ一覧が表示されます。（⌘+h でも同様の画面が開きます）
<img width="260" alt="image.png (23.8 kB)" src="https://img.esa.io/uploads/production/attachments/19973/2023/08/14/148413/9538b9b3-b169-4287-9c97-961f73b5ff98.png">
アプリ一覧から**Settings**を選択。
<img width="1204" alt="image.png (928.8 kB)" src="https://img.esa.io/uploads/production/attachments/19973/2023/08/14/148413/bbc88ab1-5e0e-4c5d-9a47-2b560640853b.png">

⌘ + Space で検索窓を出して Settings と検索しても出てます。

**Accessibility**を開く
<img width="1204" alt="image.png (671.3 kB)" src="https://img.esa.io/uploads/production/attachments/19973/2023/08/14/148413/c69b4157-ae32-464b-aa1b-2e51034db689.png">
（中央上方にある白いやつは、さっきのポッチです。ウィンドウがあると見やすい。）

スクロールして、**Physical and Motor**の一番下にある**Keyboards**を選択
<img width="1204" alt="image.png (685.5 kB)" src="https://img.esa.io/uploads/production/attachments/19973/2023/08/14/148413/de678b96-667c-42c1-98ee-35998966192f.png">

一番上にある**Hardware Keyboards**の**Full Keyboard Access**を選択
<img width="1204" alt="image.png (683.6 kB)" src="https://img.esa.io/uploads/production/attachments/19973/2023/08/14/148413/6a2a977c-7df5-47a9-b9c3-14cc80b7546e.png">

**Commands**を選択
<img width="1204" alt="image.png (684.4 kB)" src="https://img.esa.io/uploads/production/attachments/19973/2023/08/14/148413/c3751690-480b-4ee5-914c-dfad436e98d0.png">

一番下、**Gestures**（ジェスチャー）までスクロールすると新しい操作方法がある。
<img width="1204" alt="image.png (661.1 kB)" src="https://img.esa.io/uploads/production/attachments/19973/2023/08/14/148413/08437239-dd42-4edc-94cf-feb24885c872.png">

いずれかをクリックするとこの画面になる
<img width="1204" alt="image.png (711.9 kB)" src="https://img.esa.io/uploads/production/attachments/19973/2023/08/14/148413/c43aa12f-8839-4e55-ba23-0563717c591b.png">

適当なキーを入力（今回は ⌘+1）
**Done**を選択
<img width="1204" alt="image.png (719.0 kB)" src="https://img.esa.io/uploads/production/attachments/19973/2023/08/14/148413/fef37b64-76aa-47ce-ab0f-d202cf7faad0.png">

それ以外も同じようにキーを割り振り可能（今回は連番を割り振ってみた）
<img width="1210" alt="image.png (2.9 MB)" src="https://img.esa.io/uploads/production/attachments/19973/2023/08/14/148413/fca91c05-6ada-4669-a234-d4f34f3831af.png">
<img width="1210" alt="image.png (2.9 MB)" src="https://img.esa.io/uploads/production/attachments/19973/2023/08/14/148413/115b2e20-6b55-498a-9e7b-e86980ba7e85.png">

# 終わりに

今回は VisionPro の新しい操作方法を実機なしで試す方法を紹介しました。設定を変えて軽く触ってみて、レスポンスが早くて、認識の精度が良かったら、一つのアプリ内だけだったらもう、マウスもキーボードもいらないんじゃないかと思うくらいの操作性を持たせられそうだと感じました。
ただ連続で入力すると処理が急激に遅くなったり、結構な頻度で不自然な挙動をとったり、これからの発展を期待したい感じです。
実機が発売されたらすぐにでも試してみたいですね。