既知の制限
ここでは、Input System で現在、確認されている既知の制限のリストを示します。
Unity の他の機能との互換性
- バックグラウンドでの入力処理は、
Application.runInBackground(つまり、"Player Preferences" の "Run In Background" 設定) と結び付けられていますが、Unity の 開発 プレイヤーでは、これが、常に強制的にtrueに設定されます。つまり、開発プレイヤーでは、アプリケーションがバックグラウンドになっても常に入力が処理されます。これは、プレイヤーが実際にバックグラウンドで動作できるプラットフォームにのみ影響します (iOS と Android は影響を受けません)。 PlayerInputの画面分割サポートは、Cinemachine バーチャルカメラでは機能しません。- Input System で IMGUI の入力を生成することはできません。
- UI Toolkit は
InputSystemUIInputModuleと組み合わせて使用できますが、現時点でサポートされるのはポインター (マウス、ペン、タッチ) およびゲームパッド入力だけです。XR のサポートは今後、提供される予定です。- UI Toolkit のサポートでは、現在、Input System と UITK をつなぐインターフェースとして
EventSystem設定を使用する必要があります。
- UI Toolkit のサポートでは、現在、Input System と UITK をつなぐインターフェースとして
uGUI
- 有効にした後は、ポインターの位置が変更されるまでは、その位置に UI が反応しません。
- 新しい Input System では、まだ、uGUI や TextMesh Pro の入力フィールドコンポーネントにテキストを入力できません。これは、現状のテキスト入力が内部で、Unity のネイティブランタイムから直接取得されているためです。
- 同時にゲーム内アクションがトリガーされないようにするために、UI で入力が消費されません。
デバイスのサポート
- 現在、入力ソースがアプリケーションフォーカスに依存するデバイス (一般的には、キーボードとポインターですが、プラットフォームに応じて、他の任意のデバイス) では、アプリケーションがフォーカスを失った後に再びフォーカスを取得したときに、現在の状態が自動的には同期されません。つまり、例えば、W キーを押し続けているときにアプリケーションがフォアグラウンドに戻った場合は、W の入力が認識されるように、キーを放してから再び押す必要があります。
- これは現在、対応作業中です。
- (デスクトップ) 複数のポインター (マウス、ペン、タッチ) またはキーボードからの入力を区別する機能はまだサポートされていません。サポートされるマウス、ペン、タッチ、およびキーボードデバイスは 1 種類のみとなります。
- (Windows) "Windows Ink" サポートをオフにすると、Wacom デバイスでペン入力が機能しなくなります。
- (Windows) 現在、32 ビットのプレイヤーでは HID 入力がサポートされません。このため、PS4 コントローラーなどのデバイスは、32 ビットのスタンドアロンプレイヤーでは動作しません。代わりに、64 ビットのスタンドアロンプレイヤーを使用してください。
- (Android) 現時点では、サポートされるタッチスクリーンは 1 つだけです。
- (Stadia) Stadia コントローラーは、現時点では Stadia プレイヤー 内 でのみサポートされます。エディター内では、汎用の
Gamepadをバインディングに、任意の Xbox または PS4 コントローラーをテストに使用してください。 - Joy-Con は Switch でのみサポートされます。
- 現在、PS4 コントローラーのセンサーは PS4 でのみサポートされます。 >ノート: ライセンスの制限により、NDA プラットフォームのサポートは別のパッケージとして提供されます。現時点では、ダウンロードとインストールのライセンス用のパッケージが別途用意されています。
以前の Input Manager でサポートされる機能
MonoBehaviourのマウス関連のメソッド (OnMouseEnter、OnMouseDragなど) は、Input System では呼び出されません。- 現在、Unity Remote は Input System をサポートしていません。これは現在、対応作業中です。