次の方法で共有


ジョイスティック

ジョイスティックのように動作するアナログ コントロールです。

プロパティ

type - "ジョイスティック"

axis - オブジェクトまたは配列。 このジョイスティック コントロールのマッピングを記述する単一のまたはの配列を指定します。

action - オブジェクト省略可能。 軸マッピングに加えて呼び出すアクションです。

actionThreshold - 数値省略可能。アクションを呼び出すために必要な正規化された最小ジョイスティック値 (放射状)。 既定値は 0.0 です。

enabled - ブール値省略可能。 既定値は true です。 コントロールの表示状態を有効/無効に設定します。 無効なコントロールはプレイヤーからの入力を受け取りますが、入力に基づいてビジュアル スタイルが変更されることはありません。

expand - ブール値省略可能。 既定値は true です。 センター コントロール ソケットに配置したときに、ユーザーの人間工学的な好みに一致するようにジョイスティックの範囲を拡張します。 標準化された修正済みのジョイスティック サイズを使用するには、false に設定します。

relative - ブール値省略可能。 既定 (true) では、ジョイスティックはユーザーの最初のタッチに基づく相対計算を使用してその値を計算します。 この値を false に設定すると、代わりにコントロールの中心点に基づいて値が計算されます。

visible - ブール値省略可能。 既定値は true です。 操作するコントロールをプレイヤーに表示するかどうかを決定します。 ゲーム プレイ中に変更するには 「ゲームの状態を使用してタッチ レイアウトを変更する」を参照してください。

styles - オブジェクト省略可能。 コントロールの視覚的表現のカスタマイズ。 スタイルは、スタイルを設定できる状態ごとのオブジェクトとして表示されます。

ボタン コントロールでは、次の状態のスタイルを設定できます。

  • default - 基本スタイル。
  • disabled - コントロールが無効になっている場合のスタイル。 指定されていない場合は、コントロールが無効になると、既定のスタイルに変換が適用され、無効として表示されます。
  • idle - プレイヤーがコントロールを使用していないときに適用されます。
  • moving - 定義されたデッドゾーンに関係なく、ジョイスティック ノブが操作されているときに適用されます。
  • activated - action が定義され、アクションを実行するためにノブがしきい値の外側に移動した場合に適用されます。

状態ごとのスタイル プロパティ

opacity - 数値省略可能。 コントロールに適用する不透明度。 disabled を除くすべての状態の既定値は 1.0 です。

background - オブジェクト省略可能または画像資産を指定できます。

knob - オブジェクト省略可能knob オブジェクトは、プレーヤーが操作できるジョイスティックのボタンのような部分のスタイルを指定します。

outline - オブジェクト省略可能outline オブジェクトは、ジョイスティックが操作されているときに表示されるアウトラインとインジケーターのスタイルを指定します。

アセットの寸法

画像資産を受け入れるスタイル オブジェクトごとに、特定の資産が基本解像度で、またその基本解像度の 1.5x、2.0x、3.0x、4.0x のスケールで提供されます。 特定の画像の解像度は、次の最大解像度以下である必要があります。

Object @1.0x @1.5x @2.0x @3.0x @4.0x
background 120x120 90x90 240x240 360x360 480x480
knob.faceImage 60x60 90x90 120x120 180x180 240x240
knob.background 60x60 90x90 120x120 180x180 240x240

解説

joystick コントロールを使用して、さまざまな物理コントローラーのジョイスティックにマップするアナログ コントロールを提供できます。

joystick が主な移動方法である場合は、プレーヤーに最高のエクスペリエンスを提供するために、左中央のスロットでプレイし、expand を true に設定することをお勧めします。

faceImage をカスタマイズして、ジョイスティックが何を制御するかについてプレーヤーにヒントを提供することを検討してください (これは、ゲームで複数のジョイスティックを使用する場合に特に重要です)。

1 軸のみに依存するモーションの場合は、1 軸ジョイスティックを使用してプレイアビリティを最大化します。

スタイルに関するコメント

background アセットを使用していて expand が true の場合、background アセットは中央のソケット サイズ全体にスケーリングされません。

既定では、outline は、プレーヤーがコントロールを操作しているときにのみ表示されます。

カスタムの background アセットを使用していて expandtrue に設定されている場合、アセットはプレーヤーのコントロールのカスタマイズでは拡張されないことに注意してください。

Warning

Windows バージョンのコンテンツ テスト アプリケーションを介してストリーミングする場合、すべてのスタイル設定が正しく表示されるわけではありません。

サンプル

例 1: シンプルなジョイスティック

わずかなデッドゾーンのあるジョイスティックへの基本的な1 : 1 のマッピング。 回転すると、物理コントローラーのサムスティックで値が計算されます。

図 1。 ジョイスティック コントロール

ジョイスティックと対話するユーザー

{

    "type": "joystick",
    "axis": {
        "input": "axisXY",
        "output": "leftJoystick",
        "deadzone": {
            "threshold": 0.05,
            "radial": true
        }
    }
}

例 2: しきい値を超えると歩くからスプリントに切り替わるジョイスティック。

しきい値 (0.75) を超えると、ジョイスティックの動きとともに leftTrigger が送信されます。 アイコンが「歩く」から「スプリント」に変わります

図 1。 アクションしきい値のあるジョイスティック コントロール

アクションのしきい値のあるジョイスティックと対話するユーザー

{
    "type": "joystick",
    "action": "leftTrigger",
    "actionThreshold":0.75,
    "axis": {
        "input": "axisXY",
        "output": "leftJoystick",
        "deadzone": {
            "threshold": 0.05,
            "radial": true
        }
    },
    "styles": {
        "default": {
            "knob": {
                "faceImage": {
                    "type": "icon",
                    "value": "walk"
                }
            }
        },
        "activated": {
            "knob": {
                "faceImage": {
                    "type": "icon",
                    "value": "sprint"
                },
                "background" : {
                    "type": "color",
                    "value": "#0e7a0d"
                }
            }
        }
    }
}

例 3 : ハンドルのような見た目の単軸 (水平) ジョイスティック

図 1。 水平ハンドル ジョイスティック コントロール

水平ハンドル ジョイスティックと対話するユーザー

{
    "type": "joystick",
    "axis": {
        "input": "axisX",
        "output": "leftJoystickX",
        "deadzone": {
            "threshold": 0.35
        }
    },
    "relative": false,
    "styles": {
        "default": {
            "knob": {
                "faceImage": {
                    "type": "icon",
                    "value": "steering"
                }
            }
        }
    }
}

例 4 : カスタマイズされた色のジョイスティック

図 1。 カスタマイズされたジョイスティック コントロール

カスタマイズされた色でジョイスティックを操作するユーザー

{

    "type": "joystick",
    "axis": {
        "input": "axisXY",
        "output": "leftJoystick",
        "deadzone": {
            "threshold": 0.05,
            "radial": true
        }
    },
    "styles": {
        "default": {
            "outline" : {
                "stroke" : {
                    "type": "solid",
                    "color": "#107C10"
                }
            }
        }
    }
}

要件

レイアウト バージョン: 1.0 以降 (レイアウト バージョン 3.0 以降のスタイリング機能)

関連項目

タッチ アダプテーション キット リファレンス