コントローラーエミュレーターは、Roblox Studioのウィジェットで、プレイヤーがあなたの体験を制御するために使用するデバイスをエミュレートします:ゲームパッド、VRヘッドセットとコントローラー、ハンドヘルド、テレビリモコンです。選択したデバイスの画像を表示し、クリックしたりマッピングされたキーを押したりすると実際の入力イベントを送信し、入力が到着するとそのコントロールが点灯します。これにより、ゲームパッド優先の制御スキームやVRインタラクションを、どちらも所有せずにテストできます。
入力のエミュレーションはデバイスのシミュレーションとは別です。デバイスシミュレーターは、あなたの体験が実行されていると信じる画面、プラットフォーム、ハードウェアを変更します。コントローラーエミュレーターは、接続されているものを変更します。通常、両者は一緒に使用されます。
コントローラーエミュレーターを開く
いずれかの方法で:
- デバイスシミュレーターのツールバーで仮想コントローラーをクリックする、または
- エミュレーションツールバータブでコントローラーをクリックする。
ウィジェットにはオープンプレイスが必要です。プレイテスト中にウィジェットを開くと、エミュレートされたデバイスが接続され、閉じると切断されるため、セッション中にコントローラーをプラグインおよびアンプラグできます。
デバイスをエミュレートする
ウィジェットの上部にあるドロップダウンでエミュレートするデバイスを選択します。

| デバイス | エミュレートするもの |
|---|---|
| 汎用ゲームパッド | ベンダー固有のボタン名がないゲームパッド。 |
| PS4 | PlayStation 4コントローラー。 |
| PS5 | PlayStation 5コントローラー。 |
| Xbox | Xboxコントローラー。 |
| 汎用ハンドヘルド | 内蔵コントロールを持つハンドヘルドPC。 |
| テレビリモコン | 方向パッドとセンターおよび戻るボタンを含むAndroid TVリモコン。 |
| Quest2 / Quest3 | Meta Questヘッドセットとコントローラー。 |
あなたの体験は対応するゲームパッドタイプを認識するため、Enum.GamepadTypeに基づいて分岐するコードやコントローラーのボタンセットを読み取るコードは、実際のデバイスが接続されているときと同様に動作します。
入力を送信する
入力は3つの場所から来ることができ、ウィジェットはそれらのいずれかから到着したものを表示します:入力が受信されると、接続されている実際のコントローラーからの入力を含め、デバイス画像上の対応するコントロールがハイライトされます。これは、あなたの体験が受け取った入力が、あなたが送信したかった入力であることを確認する最も迅速な方法です。
デバイスコントロール
デバイス画像上のボタン、トリガー、スティックはインタラクティブです。クリックまたはドラッグして入力を送信します。トリガーとスティックはアナログ値を報告し、単に押されたり放されたりするだけではないため、部分的な引きやスティックのゆっくりとした動きをテストできます。
キーボード
ウィジェットにフォーカスがある間、キーボード入力は現在のマッピングを使用してエミュレートされたデバイスに転送されます。これにより、プレイヤーが使用する方法で、両手を使ってスピードで制御スキームをテストできます。マッピングを編集を参照して、どのキーがどのコントロールを駆動するかを変更します。
ヘッドセットと手のポーズ
VRにはクリックするための単一のコントロールがありません。その入力はヘッドポーズと2つの手のポーズであるため、VRデバイスがエミュレートされると、ウィジェットはそれらを移動するためのコントロールを追加します。
ヘッドセット、左コントローラー、および右コントローラーにはそれぞれトグルがあります。有効な部分はキーボードとマウスに応答し、無効な部分は静止します。頭と片方の手を独立して動かすことで、プレイヤーが見ている場所に依存するインタラクションをテストできます。
| アクション | 入力 |
|---|---|
| 移動 | Shift + W / A / S / D |
| 上昇/下降 | Shift + E / Q |
| 回転 | マウス移動 |
| 傾き | 右クリック + マウス移動 |
| コントローラーを切り替える | Shift + 左 / 右 |
| カーソルロックを切り替える | Alt + 1 |
| マウスエミュレーションを切り替える | Alt + Esc |
3DビューポートをクリックしてVRシーンとインタラクトします。
移動感度は、キー押下ごとに有効な部分が移動する距離を1から10の範囲でスケールします。小さなターゲットに対して手を配置する際はこれを下げ、シーンを横断する際は上げます。位置をリセットは、プレイテスト中に頭と両手をデフォルトのポーズに戻します。これは、手で回復できないポーズから最も迅速に脱出する方法です。
マッピングを編集する
各エミュレートされたデバイスには独自のキーボードマッピングがあるため、Wはゲームパッドではある意味を持ち、テレビリモコンでは別の意味を持つことがあります。マッピングを編集をクリックしてマッピングエディターを開くと、デバイス画像が表示され、現在それにバインドされているキーで各コントロールがラベル付けされます。

コントロールを再マッピングするには、そのラベルをクリックし、バインドしたいキーを押します。ラベルにホバーすると、画像上でそれが駆動するコントロールがハイライトされるため、どの物理コントロールを再バインドしようとしているかを確認できます。
- 押したキーがすでに別のコントロールにバインドされている場合、古いバインディングは削除され、どのコントロールがバインドされていたかを警告します。これにより、2つのコントロールが1つのキーに残ることはありません。
- 保存は、デバイスへの変更をコミットします。
- デフォルトに戻すは、確認後にデバイスを元のマッピングに戻します。
マッピングはデバイスごとに保存され、セッションをまたいで持続します。
デバイスシミュレーターとペアリングする
コントローラーエミュレーターは、シミュレーションしているデバイスに従います。デバイスシミュレーターでコンソール、ヘッドセット、ハンドヘルド、またはAndroid TVデバイスを選択すると、コントローラーエミュレーターが対応するコントローラーに切り替わります。これにより、シミュレーションされたハードウェアとエミュレートされた入力が一貫性を保ち、両方を設定する必要がなくなります。
例のワークフロー
- ゲームパッド優先の制御スキームをテストする。 デバイスシミュレーターでコンソールをシミュレートし、ここでそのコントローラーを使用して、エミュレートされたパッドから完全に体験を駆動します。届かないものは、ゲームパッドナビゲーションのギャップです。
- 入力が到着していることを確認する。 プレイ中にデバイス画像を見てください。コントロールが点灯しない場合、問題は入力処理の上流にあります。
- アナログしきい値をテストする。 トリガーやスティックをゆっくりとドラッグし、デッドゾーンやアクティベーションしきい値が実際に発火する場所を確認します。
- VRインタラクションを片手ずつテストする。 ヘッドセットと1つのコントローラーを無効にし、残りの手を位置に移動してリーチ、グラブボリューム、およびインタラクションが視線に依存するかどうかを確認します。
- テレビリモコンナビゲーションをテストする。 Android TVデバイスをシミュレートし、方向パッド、センターボタン、および戻るボタンでUIが完全にナビゲート可能であることを確認します。
- カスタムマッピングを検証する。 最も使用するコントロールを再バインドし、キーボードでプレイします。これは、タイミングを伴うものに関しては、画像をクリックするよりも速いです。