次の方法で共有


GameInput のセンサー

GameInput のセンサー機能は、Windows センサー スタックに依存します。 デバイスがこのセンサー スタックと互換性があるようにするには、次を参照してください:

検証:

座標系

デバイスでは、デバイス加速を Y 軸上向き右利きシステムとして報告する必要があります。 角速度は、これらの軸に関する右手のルールに従います。

ゲームパッドの座標系 ハンドヘルド座標系
ゲームパッドに表示されるセンサー座標系 ハンドヘルドに表示されるセンサー座標系

X 軸は、デバイスの中央から右に向かって移動します。 Y 軸は、デバイスの中央からユーザーの顔に向かって移動します。 Z 軸は、デバイスの中央から下方向に移動します。

サンプルの加速度出力 (g):

  • テーブル上にフラットに配置するデバイス: {0, 1, 0}
    • 静止時の角速度は {0, 0, 0} です
  • そこから、デバイスを上に持ち上げる: {0、2、0} に増加
  • そこから、デバイスを落とす: {0, 0, 0} に減少
  • デバイスを回転させて、上端が空中にあり、下端が表面にあるようにします: {0, 0, -1}
    • 動いている間、角速度 X は正になります: {2, 0, 0}
  • フラットに戻ります。
  • デバイスを回転させて、左端が空中にあり、右端が表面にあるようにします: {-1, 0, 0}
    • 動いている間、角速度 Z は負になります: {0, 0, -2}
  • フラットに戻ります。
  • デバイスを時計回りに回転させる (右側のルールとは反対)
    • 動いている間、角速度 Y は負になります: {0, -2, 0}

解説

デバイスの振動からのノイズ

デバイスの低周波数振動またはブザー (ハプティクスなどが原因であるものなど) はジャイロメーターのノイズを引き起こし、精度に影響を与える可能性があります。

  • 実行可能なハードウェア軽減策: センサーの意図的な配置または振動減衰パディング素材によるセンサーの取り囲みを介した、触覚機能からのセンサーの機械的な分離
  • 実行可能なソフトウェア軽減策: ローパス フィルターの使用

レジストリ キー

[!重要] デバイスが Windows Hardware Quality Lab 認定に合格する必要がある場合は、以下で説明するレジストリ キーを追加します。 GameInput は、ゲーム開発者が期待する出力と一致するように、デバイスの WHQL 準拠の出力を変換します。

ベンダー ID (VID) VVVV、製品 ID (PID) PPPP、使用状況ページ UUUU、および使用状況 ID XXXX のデバイスのマッピングは、レジストリ内のこの場所から読み取られます:

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\GameInput\Devices\VVVVPPPPUUUUXXXX

汎用使用ページ (0x0001) と使用状況 ID ジョイスティック (0x0004) と ゲーム パッド (0x0005) のみがサポートされています。

値の名前 値の型 必須かどうか Information
IsWhqlCertified DWORD いいえ WHQL 認定デバイスからのセンサー出力を目的の座標系に合わせて変換するように GameInput に指示します。 0, 1

[!ヒント] 次のサブキーは、既に市場に出回っているデバイスの製造元向けです。 デバイスがまだリリースされていない場合は、上記の座標系を正しく報告し、関連するテストに合格する必要があります。

値の名前 値の型 必須かどうか Information
SensorsAxisX SZ いいえ デバイスのセンサー レポートから X 軸を取得し、値で示される軸でラベル付けするように GameInput に指示します。 X, Y, Z
SensorsAxisY SZ いいえ デバイスのセンサー レポートから Y 軸を取得し、値で示される軸でラベル付けするように GameInput に指示します。 X, Y, Z
SensorsAxisZ SZ いいえ デバイスのセンサー レポートから Z 軸を取得し、値で示された軸でラベル付けするように GameInput に指示します。 X, Y, Z
SensorsInvertAccelerationX DWORD いいえ X 軸の加速度の符号を反転するように GameInput に指示します。 上記の軸変換の後に適用されます。 0, 1
SensorsInvertAccelerationY DWORD いいえ Y 軸の加速度の符号を反転するように GameInput に指示します。 上記の軸変換の後に適用されます。 0, 1
SensorsInvertAccelerationZ DWORD いいえ Z 軸の加速度の符号を反転するように GameInput に指示します。 上記の軸変換の後に適用されます。 0, 1
SensorsInvertAngularVelocityX DWORD いいえ X 軸に関する角速度の符号を反転するように GameInput に指示します。 上記の軸変換の後に適用されます。 0, 1
SensorsInvertAngularVelocityY DWORD いいえ Y 軸に関する角速度の符号を反転するように GameInput に指示します。 上記の軸変換の後に適用されます。 0, 1
SensorsInvertAngularVelocityZ DWORD いいえ Z 軸に関する角速度の符号を反転するように GameInput に指示します。 上記の軸変換の後に適用されます。 0, 1

関連項目

GameInputSensorsInfo

GameInputSensorsState

GameInput の概要

Windows.Devices.Sensors