Virtual Keyboard
このアドオンは、大文字小文字や特殊文字を含む英数字のバーチャルキーボードを提供します。これはオフラインで動作します。
KeyboardFocusManager
KeyboardFocusManager
は、シーン内のオブジェクトからリクエストされるキーボードのフォーカスを管理します。
キーボードが必要なオブジェクトは、ITextFocusable
インターフェースを実装する必要があります。
これらは、OnFocusChange()
でフォーカスをリクエストしたり、OnTextChange()
でテキストの変更をKeyboardFocusManager
に通知できます(InputFieldは実際のキーボードからも更新できます)。
KeyboardFocusManager
は、新しいオブジェクトがフォーカスを得た時に、キーボードの位置とバッファを更新します。
また、現在のKeyboardFocus
オブジェクトは、キーボードのバッファが変更された時や、KeyboardManager
コールバックによってフォーカスを失った時に通知されます。
キーボードの位置は、プレイヤーのリグの位置に関連して調整することができます。
また、moveKeyboardOnFocusChange
によって、ユーザーが他のInputFieldを選択するたびに、キーボードの位置を更新することができます。
TouchableTMPInputField
このクラスはCanvasUITouchableTMPInputField
プレハブに実装されていて、TouchableCanvas
で使用できます。
TouchableTMPInputField
は、TextMeshProのInputField(TMP_InputField
)の3Dインタラクションを管理します。
そのためには、ゲームオブジェクトにはBoxCollider
とTouchable
が必要です。BoxCollider
のサイズは、InputFieldのサイズに変更されて、対応する3DボタンのCollider
を生成します。
プレイヤーがBoxCollider
にふれると、Touchable
クラスのOnTouch
イベントが検知されます。
そして、キーボード表示が切り替わり、フォーカスが変更されたことがKeyboardFocusManager
に通知されます。
KeyboardFocusManager
は、テキストフィールドが更新された時にも通知されます。
依存関係
- TouchHover addon
デモ
デモシーンはAssets\Photon\FusionAddons\VirtualKeyboard\Demo\Scenes\
フォルダーにあります。
ダウンロード
このアドオンの最新バージョンは、Industries アドオンのプロジェクトに含まれています。
対応するトポロジー
- 共有モード
更新履歴
- Version 2.0.2:
- Fix to avoid double onTextChange event
- Add toggleFocusOnTouch & canReceiveFocus options
- Handle TouchableTMPInputField input field selection state based on focus
- Fix box collider trigger option on the CanvasUITouchableTMPInputField prefab
- Version 2.0.1: Remove dependency in Demo prefab
- Version 2.0.0: First release