軸がコントローラーにマップされる方法について説明します。
構文
struct GameInputAxisMapping {
GameInputElementKind controllerElementKind;
uint32_t controllerIndex;
// When axis is mapped from a axis
bool isInverted;
// When the axis is mapped from a button
bool fromTwoButtons;
uint32_t buttonMinIndexValue;
// When the axis is mapped from a switch
GameInputSwitchPosition referenceDirection;
};
メンバー
controllerElementKind
型: GameInputElementKind
軸がマップされるコントローラー要素の種類。
controllerIndex
型: uint32_t
軸がマップされるコントローラー要素のインデックス。 インデックスは 0 から始まり、同じ種類の他の要素を基準にしています。 このインデックスは、軸が別の軸、ボタン、またはスイッチからマップされている場合でも有効です。
isInverted
型: bool 軸が反転されているかどうかを示しています。 たとえば、指定された値の範囲が [0 - 1] で、0 がニュートラルで、1 が最大変位を表す場合、1 はニュートラル、0 は最大変位を示し、間の値は反転します。 このメンバーは、軸が別の軸からマップされている場合にのみ有効です。
fromTwoButtons
型: bool
軸が 2 つのボタンからマップされているかどうかを示します。 このメンバーは、軸がボタンからマップされている場合にのみ有効です。 これが true の場合、インデックス フィールドはボタンの最大値で、buttonMinIndexValue フィールドはボタンの最小値です。
buttonMinIndexValue
型: uint32_t
軸の最小値を表すボタンのインデックス。 インデックスは 0 から始まります。 このメンバーは、軸が 2 つのボタンからマップされている場合にのみ有効です。
referenceDirection
型: GameInputSwitchPosition
軸の正の方向を表すスイッチ位置。 参照位置は軸の値 1.0 にマップされ、軸の値 0.0とは反対の方向にマップされます。 間の値は異なる場合があります。 隣接値を考慮する場合は、近い隣接値は 1.0 にマップされ、次の値が 0.5 にマップされます。隣接値を考慮しない場合は、反対方向以外のすべての非参照位置が 0.5 にマップされます。 このメンバーは、軸がスイッチからマップされている場合にのみ有効です。
解説
このマッピング情報は、特定の入力に対する解釈方法に関するデバイスまたはプロトコルによって提供される内部情報を共有します。 場合によっては、この情報の合計を共有せず、代わりに特定の入力のマッピングを生成するために最も関連性の高いものを共有します。
軸の場合、これらを別の軸、ボタン、またはスイッチからマップできます。 どの入力が controllerElementKind によって提供されるソースです。 すべてのソース要素の種類について、ソース入力のインデックスは controllerIndex によって指定されます。 このインデックスは、controllerElementKind 値に従って、コントローラーの軸、ボタン、またはスイッチで使用できます。
要件
ヘッダー: GameInput.h
サポートされているプラットフォーム: Windows、Xbox One ファミリー本体、Xbox Series 本体