ゲーム コントローラーのレジストリ データRegistry data for game controllers

注意

このトピックは、Windows 10 互換のゲーム コントローラーの製造元向けです。開発者の大部分には適用されません。This topic is meant for manufacturers of Windows 10-compatible game controllers, and doesn't apply to the majority of developers.

Windows.Gaming.Input 名前空間を使うと、独立系ハードウェア ベンダー (IHV) は、PC のレジストリにデータを追加して、デバイスが GamepadsRacingWheelsArcadeSticksFlightSticksUINavigationControllers として表示されるようにできます。The Windows.Gaming.Input namespace allows independent hardware vendors (IHVs) to add data to the PC's registry, enabling their devices to appear as Gamepads, RacingWheels, ArcadeSticks, FlightSticks, and UINavigationControllers as appropriate. 互換性のあるコントローラー用にこのデータを追加することを、すべての IHV に推奨します。All IHVs should add this data for their compatible controllers. これにより、すべての UWP ゲーム (および WinRT API を使用するすべてのデスクトップ ゲーム) でゲーム コントローラーをサポートできます。By doing this, all UWP games (and any desktop games that use the WinRT API) will be able to support your game controller.

マッピング スキームMapping scheme

デバイスのマッピングとして、ベンダー ID (VID) VVVV、製品 ID (PID) PPPP、使用ページ UUUU、使用 ID XXXX が、レジストリのこの場所から読み込まれます。Mappings for a device with Vendor ID (VID) VVVV, Product ID (PID) PPPP, Usage Page UUUU, and Usage ID XXXX, will be read out from this location in the registry:

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\GameInput\Devices\VVVVPPPPUUUUXXXX

次の表は、デバイスのルートの場所で予期される値を示します。The table below explains the expected values under the device root location:

名前Name TypeType 必須Required? InfoInfo
無効Disabled DWORDDWORD いいえNo

この特定のデバイスを無効にする必要があることを示します。Indicates that this particular device should be disabled.

  • 0: デバイスは無効ではありません。0: Device is not disabled.
  • 1: デバイスは無効です。1: Device is disabled.
説明Description REG_SZREG_SZ いいえNo デバイスの簡単な説明です。A short description of the device.

デバイスのインストーラーが (セットアップ、または INF ファイルによって) このデータをレジストリに追加する必要があります。Your device installer should add this data to the registry (either via setup or an INF file).

デバイスのルートの場所の下のサブキーは、次のセクションで詳しく説明します。Subkeys under the device root location are detailed in the following sections.

ゲームパッドGamepad

次の表は Gamepad サブキーの下の必須およびオプションのサブキーを示します。The table below lists the required and optional subkeys under the Gamepad subkey:

サブキーSubkey 必須Required? InfoInfo
メニューMenu はいYes ボタンのマッピング」をご覧くださいSee Button mapping
表示View はいYes
AA はいYes
BB はいYes
XX はいYes
YY はいYes
LeftShoulderLeftShoulder はいYes
RightShoulderRightShoulder はいYes
LeftThumbstickButtonLeftThumbstickButton はいYes
RightThumbstickButtonRightThumbstickButton はいYes
DPadUpDPadUp はいYes
DPadDownDPadDown はいYes
DPadLeftDPadLeft はいYes
DPadRightDPadRight はいYes
Paddle1Paddle1 いいえNo
Paddle2Paddle2 いいえNo
Paddle3Paddle3 いいえNo
Paddle4Paddle4 いいえNo
LeftTriggerLeftTrigger はいYes 軸のマッピング」をご覧くださいSee Axis mapping
RightTriggerRightTrigger はいYes
LeftThumbstickXLeftThumbstickX はいYes
LeftThumbstickYLeftThumbstickY はいYes
RightThumbstickXRightThumbstickX はいYes
RightThumbstickYRightThumbstickY はいYes

注意

サポートされる Gamepad として、ゲーム コントローラーを追加する場合には、サポートされる UINavigationController としても、ゲーム コントローラーを追加することを強く推奨します。If you add your game controller as a supported Gamepad, we highly recommend that you also add it as a supported UINavigationController.

RacingWheelRacingWheel

次の表は RacingWheel サブキーの下の必須およびオプションのサブキーを示します。The table below lists the required and optional subkeys under the RacingWheel subkey:

サブキーSubkey 必須Required? InfoInfo
PreviousGearPreviousGear はいYes ボタンのマッピング」をご覧くださいSee Button mapping
NextGearNextGear はいYes
DPadUpDPadUp いいえNo
DPadDownDPadDown いいえNo
DPadLeftDPadLeft いいえNo
DPadRightDPadRight いいえNo
ボタン 1Button1 いいえNo
Button2Button2 いいえNo
Button3Button3 いいえNo
Button4Button4 いいえNo
Button5Button5 いいえNo
Button6Button6 いいえNo
Button7Button7 いいえNo
Button8Button8 いいえNo
Button9Button9 いいえNo
Button10Button10 いいえNo
Button11Button11 いいえNo
Button12Button12 いいえNo
Button13Button13 いいえNo
Button14Button14 いいえNo
Button15Button15 いいえNo
Button16Button16 いいえNo
FirstGearFirstGear いいえNo
SecondGearSecondGear いいえNo
ThirdGearThirdGear いいえNo
FourthGearFourthGear いいえNo
FifthGearFifthGear いいえNo
SixthGearSixthGear いいえNo
SeventhGearSeventhGear いいえNo
ReverseGearReverseGear いいえNo
WheelWheel はいYes 軸のマッピング」をご覧くださいSee Axis mapping
スロットルThrottle はいYes
BrakeBrake はいYes
ClutchClutch いいえNo
HandbrakeHandbrake いいえNo
MaxWheelAngleMaxWheelAngle はいYes プロパティ マッピング」をご覧くださいSee Properties mapping

ArcadeStickArcadeStick

次の表は ArcadeStick サブキーの下の必須およびオプションのサブキーを示します。The table below lists the required and optional subkeys under the ArcadeStick subkey:

サブキーSubkey 必須Required? InfoInfo
Action1Action 1 はいYes ボタンのマッピング」をご覧くださいSee Button mapping
Action2Action2 はいYes
Action3Action3 はいYes
Action4Action4 はいYes
Action5Action5 はいYes
Action6Action6 はいYes
Special1Special1 はいYes
Special2Special2 はいYes
StickUpStickUp はいYes
StickDownStickDown はいYes
StickLeftStickLeft はいYes
StickRightStickRight はいYes

FlightStickFlightStick

次の表は FlightStick サブキーの下の必須およびオプションのサブキーを示します。The table below lists the required and optional subkeys under the FlightStick subkey:

サブキーSubkey 必須Required? InfoInfo
FirePrimaryFirePrimary はいYes ボタンのマッピング」をご覧くださいSee Button mapping
FireSecondaryFireSecondary はいYes
RollRoll はいYes 軸のマッピング」をご覧くださいSee Axis mapping
[Pitch] (傾斜)Pitch はいYes
YawYaw はいYes
スロットルThrottle はいYes
HatSwitchHatSwitch はいYes スイッチのマッピング」をご覧くださいSee Switch mapping

UINavigationUINavigation

次の表は UINavigation サブキーの下の必須およびオプションのサブキーを示します。The table below lists the required and optional subkeys under UINavigation subkey:

サブキーSubkey 必須Required? InfoInfo
メニューMenu はいYes ボタンのマッピング」をご覧くださいSee Button mapping
表示View はいYes
承諾Accept はいYes
キャンセルCancel はいYes
PrimaryUpPrimaryUp はいYes
PrimaryDownPrimaryDown はいYes
PrimaryLeftPrimaryLeft はいYes
PrimaryRightPrimaryRight はいYes
Context1Context1 いいえNo
Context2Context2 いいえNo
Context3Context3 いいえNo
Context4Context4 いいえNo
PageUpPageUp いいえNo
PageDownPageDown いいえNo
PageLeftPageLeft いいえNo
PageRightPageRight いいえNo
ScrollUpScrollUp いいえNo
ScrollDownScrollDown いいえNo
ScrollLeftScrollLeft いいえNo
ScrollRightScrollRight いいえNo
SecondaryUpSecondaryUp いいえNo
SecondaryDownSecondaryDown いいえNo
SecondaryLeftSecondaryLeft いいえNo
SecondaryRightSecondaryRight いいえNo

UI ナビゲーション コントローラーと上記のコマンドについて詳しくは、「UI ナビゲーション コントローラー」をご覧ください。For more information about UI navigation controllers and the above commands, see UI navigation controller.

[キー]Keys

次のセクションでは、GamepadRacingWheelArcadeStickFlightStickUINavigation キーの下のサブキーのそれぞれのコンテンツについて説明します。The following sections explain the contents of each of the subkeys under the Gamepad, RacingWheel, ArcadeStick, FlightStick, and UINavigation keys.

ボタンのマッピングButton mapping

次の表は、ボタンのマッピングに必要な値を示します。The table below lists the values that are needed to map a button. たとえば、ゲーム コントローラーの DPadUp キーを押すと、DPadUp のマッピングには ButtonIndex 値が含まれます (SourceButton です)。For example, if pressing DPadUp on the game controller, the mapping for DPadUp should contain the ButtonIndex value (Source is Button). DPadUp がスイッチの位置からマッピングされる必要がある場合は、DPadUp マッピングには SwitchIndexSwitchPosition の値が含まれます (SourceSwitch です)。If DPadUp needs to be mapped from a switch position, then the DPadUp mapping should contain the values SwitchIndex and SwitchPosition (Source is Switch).

sourceSource 値の名前Value name 値の型Value type 必須Required? 値の情報Value info
ButtonButton ButtonIndexButtonIndex DWORDDWORD はいYes RawGameController ボタンの配列のインデックス。Index in the RawGameController button array.
Axis AxisIndexAxisIndex DWORDDWORD はいYes RawGameController 軸の配列のインデックス。Index in the RawGameController axis array.
InvertInvert DWORDDWORD いいえNo ThresholdPercentDebouncePercent 要素を適用する前に、軸の値を反転する必要があることを示します。Indicates that the axis value should be inverted before the Threshold Percent and DebouncePercent factors are applied.
ThresholdPercentThresholdPercent DWORDDWORD はいYes マッピングされたボタンの値の (押した状態と離した状態の間の) 遷移の軸の位置を示します。Indicates the axis position at which the mapped button value transitions between the pressed and released states. 有効な値の範囲は 0 から 100 です。The valid range of values is 0 to 100. 軸の値がこの値以上の場合、ボタンが押されたと見なされます。The button is considered pressed if the axis value is greater than or equal to this value.
DebouncePercentDebouncePercent DWORDDWORD はいYes

ThresholdPercent 値の周囲のウィンドウのサイズを定義します。報告されたボタンの状態をデバウンスするために使用されます。Defines the size of a window around the ThresholdPercent value, which is used to debounce the reported button state. 有効な値の範囲は 0 から 100 です。The valid range of values is 0 to 100. ボタンの状態の遷移は、軸の値がデバウンス ウィンドウの上限または下限を超えたときにのみ発生します。Button state transitions can only occur when the axis value crosses the upper or lower boundaries of the debounce window. たとえば、ThresholdPercent が 50 で、DebouncePercent が 10 の場合には、デバウンスの下限と上限は、全範囲の軸の値で 45% と 55% となります。For example, a ThresholdPercent of 50 and DebouncePercent of 10 results in debounce boundaries at 45% and 55% of the full-range axis values. 軸の値が 55% 以上に達すると、ボタンは押された状態に遷移し、軸の値が 45% 以下に達すると、ボタンはリリースされた状態に戻ります。The button can't transition to the pressed state until the axis value reaches 55% or above, and it can't transition back to the released state until the axis value reaches 45% or below.

計算されるデバウンス ウィンドウの境界は 0% ~ 100% の間でクランプされます。The computed debounce window boundaries are clamped between 0% and 100%. たとえば、しきい値が 5% で、デバウンス ウィンドウが 20% の場合、デバウンス ウィンドウの境界は 0% と 15% となります。For example, a threshold of 5% and a debounce window of 20% would result in the debounce window boundaries falling at 0% and 15%. しきい値とデバウンスの値にかかわらず、軸の値が 0% ~ 100% にあるボタンの状態は常に、押されるか、または離されるかとして報告されます。The button state for axis values of 0% and 100% are always reported as released and pressed, respectively, regardless of the threshold and debounce values.

スイッチSwitch SwitchIndexSwitchIndex DWORDDWORD はいYes RawGameController スイッチの配列のインデックス。Index in the RawGameController switch array.
SwitchPositionSwitchPosition REG_SZREG_SZ はいYes

マッピングされたボタンが押されたことを報告するスイッチの位置を示します。Indicates the switch position that will cause the mapped button to report that it's being pressed. 位置の値には、次の文字列のいずれかを指定できます。The position values can be one of these strings:

  • 上へUp
  • UpRightUpRight
  • RightRight
  • DownRightDownRight
  • [下へ]Down
  • DownLeftDownLeft
  • LeftLeft
  • UpLeftUpLeft
IncludeAdjacentIncludeAdjacent DWORDDWORD いいえNo 隣接するスイッチの位置も、マッピングされたボタンが押されたことを報告することを示します。Indicates that adjacent switch positions will also cause the mapped button to report that it's being pressed.

軸のマッピングAxis mapping

次の表は、軸のマッピングに必要な値を示します。The table below lists the values that are needed to map an axis:

sourceSource 値の名前Value name 値の型Value type 必須Required? 値の情報Value info
ButtonButton MaxValueButtonIndexMaxValueButtonIndex DWORDDWORD はいYes

マッピングされた一方向の軸の値に変換される、RawGameController ボタンの配列のインデックス。Index in the RawGameController button array which gets translated to the mapped unidirectional axis value.

MaxButtonMaxButton AxisValueAxisValue
falseFALSE 0.00.0
TRUETRUE 1.01.0
MinValueButtonIndexMinValueButtonIndex DWORDDWORD いいえNo

マッピングされた軸が双方向であることを示します。Indicates that the mapped axis is bidirectional. MaxButtonMinButton の値は結合され、次に示すように 1 つの双方向の軸となります。Values of MaxButton and MinButton are combined into a single bidirectional axis as shown below.

MinButtonMinButton MaxButtonMaxButton AxisValueAxisValue
falseFALSE falseFALSE 0.50.5
falseFALSE TRUETRUE 1.01.0
TRUETRUE falseFALSE 0.00.0
TRUETRUE TRUETRUE 0.50.5
Axis AxisIndexAxisIndex DWORDDWORD はいYes RawGameController 軸の配列のインデックス。Index in the RawGameController axis array.
InvertInvert DWORDDWORD いいえNo マッピングされた軸の値を返す前に反転するかどうかを示します。Indicates that the mapped axis value should be inverted before it's returned.
スイッチSwitch SwitchIndexSwitchIndex DWORDDWORD はいYes RawGameController スイッチの配列のインデックス。Index in the RawGameController switch array.
MaxValueSwitchPositionMaxValueSwitchPosition REG_SZREG_SZ はいYes

次の文字列のいずれかです。One of the following strings:

  • 上へUp
  • UpRightUpRight
  • RightRight
  • DownRightDownRight
  • [下へ]Down
  • DownLeftDownLeft
  • LeftLeft
  • UpLeftUpLeft

マッピングされた軸の値が 1.0 として報告されるスイッチの位置を示します。It indicates the position of the switch that causes the mapped axis value to be reported as 1.0. 反対方向の MaxValueSwitchPosition は 0.0 と見なされます。The opposing direction of MaxValueSwitchPosition is treated as 0.0. たとえば、MaxValueSwitchPositionUp の場合、軸の値は次を意味します。For example, if MaxValueSwitchPosition is Up, the axis value translation is shown below:

スイッチの位置Switch position AxisValueAxisValue
上へUp 1.01.0
CenterCenter 0.50.5
[下へ]Down 0.00.0
IncludeAdjacentIncludeAdjacent DWORDDWORD いいえNo

隣接するスイッチの位置も、マッピングされた軸が 1.0 を報告することを示します。Indicates that adjacent switch positions will also cause the mapped axis to report 1.0. 上記の例では、IncludeAdjacent が設定されている場合、軸は次のようになります。In the above example, if IncludeAdjacent is set, then the axis translation is done as follows:

スイッチの位置Switch position AxisValueAxisValue
上へUp 1.01.0
UpRightUpRight 1.01.0
UpLeftUpLeft 1.01.0
CenterCenter 0.50.5
[下へ]Down 0.00.0
DownRightDownRight 0.00.0
DownLeftDownLeft 0.00.0

スイッチのマッピングSwitch mapping

スイッチの位置は、RawGameController のボタンの配列のボタンのセットから、またはスイッチの配列のインデックスからマッピングされます。Switch positions can be mapped either from a set of buttons in the buttons array of the RawGameController or from an index in the switches array. 軸からスイッチの位置をマッピングすることはできません。Switch positions can't be mapped from axes.

sourceSource 値の名前Value name 値の型Value type 値の情報Value info
ButtonButton ButtonCountButtonCount DWORDDWORD 2、4、または 82, 4, or 8
SwitchKindSwitchKind REG_SZREG_SZ TwoWay、4つの 方法、または EightWay TwoWay, FourWay, or EightWay
UpButtonIndexUpButtonIndex DWORDDWORD \*ButtonIndex の値」をご覧くださいSee \*ButtonIndex values
DownButtonIndexDownButtonIndex DWORDDWORD
LeftButtonIndexLeftButtonIndex DWORDDWORD
RightButtonIndexRightButtonIndex DWORDDWORD
UpRightButtonIndexUpRightButtonIndex DWORDDWORD
DownRightButtonIndexDownRightButtonIndex DWORDDWORD
DownLeftButtonIndexDownLeftButtonIndex DWORDDWORD
UpLeftButtonIndexUpLeftButtonIndex DWORDDWORD
Axis SwitchKindSwitchKind REG_SZREG_SZ TwoWayFourWay、またはEightWayTwoWay, FourWay, or EightWay
XAxisIndexXAxisIndex DWORDDWORD YAxisIndex は常に存在します。YAxisIndex is always present. XAxisIndex は、SwitchKindFourWay または EightWay の場合のみ存在します。XAxisIndex is only present when SwitchKind is FourWay or EightWay.
YAxisIndexYAxisIndex DWORDDWORD
XDeadZonePercentXDeadZonePercent DWORDDWORD 軸の中央位置の周囲のデッド ゾーンのサイズを示します。Indicate the size of the dead zone around the center position of the axes.
YDeadZonePercentYDeadZonePercent DWORDDWORD
XDebouncePercentXDebouncePercent DWORDDWORD デッド ゾーンの上限と下限の周囲のウィンドウのサイズを定義します。これは報告されたスイッチの状態のデバウンスに使用されます。Define the size of the windows around the upper and lower dead zone limits, which are used to de-bounce the reported switch state.
YDebouncePercentYDebouncePercent DWORDDWORD
XInvertXInvert DWORDDWORD デッド ゾーンとデバウンス ウィンドウの計算を適用する前に、対応する軸の値を反転する必要があることを示します。Indicate that the corresponding axis values should be inverted before the dead zone and debounce window calculations are applied.
YInvertYInvert DWORDDWORD
スイッチSwitch SwitchIndexSwitchIndex DWORDDWORD RawGameController スイッチの配列のインデックス。Index in the RawGameController switch array.
InvertInvert DWORDDWORD スイッチが位置を、既定の時計回りの順序ではなく、反時計回りの順序で報告することを示します。Indicates that the switch reports its positions in a counter-clockwise order, rather than the default clockwise order.
PositionBiasPositionBias DWORDDWORD

位置の報告の開始点を指定した量だけ移動します。Shifts the starting point of how positions are reported by the specified amount. PositionBias は常に元の開始点から時計回りにカウントされます。値の順序が反転される前に適用されます。PositionBias is always counted clockwise from the original starting point, and is applied before the order of values is reversed.

たとえば、DownRightで始まる位置を反時計回りの順序で報告するスイッチは、Invert フラグを設定して、PositionBias を 5 と設定することによって正規化されます。For example, a switch that reports positions starting with DownRight in counter-clockwise order can be normalized by setting the Invert flag and specifying a PositionBias of 5:

[位置]Position 報告される値Reported value PositionBias と Invert フラグの設定後After PositionBias and Invert flags
DownRightDownRight 00 33
RightRight 11 22
UpRightUpRight 22 11
上へUp 33 00
UpLeftUpLeft 44 77
LeftLeft 55 66
DownLeftDownLeft 66 55
[下へ]Down 77 44

*ButtonIndex の値*ButtonIndex values

*ButtonIndex 値 RawGameControllerのボタン配列にインデックスを作成します。*ButtonIndex values index into the RawGameController's button array:

ButtonCountButtonCount SwitchKindSwitchKind RequiredMappingsRequiredMappings
22 TwoWayTwoWay
  • UpButtonIndexUpButtonIndex
  • DownButtonIndexDownButtonIndex
44 FourWayFourWay
  • UpButtonIndexUpButtonIndex
  • DownButtonIndexDownButtonIndex
  • LeftButtonIndexLeftButtonIndex
  • RightButtonIndexRightButtonIndex
44 EightWayEightWay
  • UpButtonIndexUpButtonIndex
  • DownButtonIndexDownButtonIndex
  • LeftButtonIndexLeftButtonIndex
  • RightButtonIndexRightButtonIndex
88 EightWayEightWay
  • UpButtonIndexUpButtonIndex
  • DownButtonIndexDownButtonIndex
  • LeftButtonIndexLeftButtonIndex
  • RightButtonIndexRightButtonIndex
  • UpRightButtonIndexUpRightButtonIndex
  • DownRightButtonIndexDownRightButtonIndex
  • DownLeftButtonIndexDownLeftButtonIndex
  • UpLeftButtonIndexUpLeftButtonIndex

プロパティ マッピングProperties mapping

これらは、別のマッピングの種類の、静的マッピング値です。These are static mapping values for different mapping types.

マッピングMapping 値の名前Value name 値の型Value type 値の情報Value info
RacingWheelRacingWheel MaxWheelAngleMaxWheelAngle DWORDDWORD ホイールでサポートされている、単一方向の物理ホイールの最大角度を示します。Indicates the maximum physical wheel angle supported by the wheel in a single direction. たとえば、-90 度から 90 度まで回転できるホイールでは、90 を指定します。For example, a wheel with a possible rotation of -90 degrees to 90 degrees would specify 90.

ラベルLabels

ラベルは、デバイス ルートの下の Labels キーの下に存在する必要があります。Labels should be present under the Labels key under the device root. Labels は 3 つのサブキー: ButtonsAxesSwitches を持つことができます。Labels can have 3 subkeys: Buttons, Axes, and Switches.

ボタンのラベルButton labels

Buttons キーは、RawGameController のボタンの配列の各ボタンの位置を文字列にマッピングします。The Buttons key maps each of the button positions in the RawGameController's buttons array to a string. 各文字列は、対応する GameControllerButtonLabel 列挙値に内部的にマッピングされます。Each string is mapped internally to the corresponding GameControllerButtonLabel enum value. たとえば、ゲームパッドに 10 個のボタンと、RawGameController がボタンを解析してボタンを表示する順序がある場合、レポートは次のようになります。For example, if a gamepad has ten buttons and the order in which the RawGameController parses out the buttons and presents them in the buttons report is like this:

Menu,               // Index 0
View,               // Index 1
LeftStickButton,    // Index 2
RightStickButton,   // Index 3
LetterA,            // Index 4
LetterB,            // Index 5
LetterX,            // Index 6
LetterY,            // Index 7
LeftBumper,         // Index 8
RightBumper         // Index 9

ラベルは Buttons キーの下にこの順序で表示されます。The labels should appear in this order under the Buttons key:

名前Name 値 (種類: REG_SZ)Value (type: REG_SZ)
Button0Button0 メニューMenu
ボタン 1Button1 表示View
Button2Button2 LeftStickButtonLeftStickButton
Button3Button3 RightStickButtonRightStickButton
Button4Button4 LetterALetterA
Button5Button5 LetterBLetterB
Button6Button6 LetterXLetterX
Button7Button7 LetterYLetterY
Button8Button8 LeftBumperLeftBumper
Button9Button9 RightBumperRightBumper

軸ラベルAxis labels

Axes キーは、RawGameController の軸の配列の各軸の位置を、ボタンのラベルのように、GameControllerButtonLabel Enum に一覧表示されたラベルの 1 つにマッピングします。The Axes key will map each of the axis positions in the RawGameController's axis array to one of the labels listed in GameControllerButtonLabel Enum just like the button labels. ボタンのラベル」の例をご覧ください。See the example in Button labels.

スイッチのラベルSwitch labels

Switches キーはスイッチの位置をラベルにマッピングします。The Switches key maps switch positions to labels. 値は次の名前付け規則に従います: インデックスが RawGameController のスイッチの配列の xであるスイッチの位置にラベルを付けるには、次の値を Switches サブキーの下に追加します。The values follow this naming convention: to label a position of a switch, whose index is x in the RawGameController's switch array, add these values under the Switches subkey:

  • SwitchxUpSwitchxUp
  • SwitchxUpRightSwitchxUpRight
  • SwitchxRightSwitchxRight
  • SwitchxDownRightSwitchxDownRight
  • SwitchxDownSwitchxDown
  • SwitchxDownLeftSwitchxDownLeft
  • SwitchxUpLeftSwitchxUpLeft
  • SwitchxLeftSwitchxLeft

次の表は、4 方向スイッチの位置が RawGameController でインデックス 0 を示しているスイッチにラベルを付ける例を示しています。The following table shows an example set of labels for switch positions of a 4-way switch which shows up at index 0 in the RawGameController:

名前Name 値 (種類: REG_SZ)Value (type: REG_SZ)
Switch0UpSwitch0Up XboxUpXboxUp
Switch0RightSwitch0Right XboxRightXboxRight
Switch0DownSwitch0Down XboxDownXboxDown
Switch0LeftSwitch0Left XboxLeftXboxLeft

レジストリ ファイルの例Example registry file

これらのマッピングと値のすべての例を示すため、汎用の RacingWheel のレジストリ ファイルを示す次の例をご覧ください。To show how all of these mappings and values come together, here is an example registry file for a generic RacingWheel:

Windows Registry Editor Version 5.00

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\GameInput\Devices\1234567800010004]
"Description" = "Example Wheel Device"

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\GameInput\Devices\1234567800010004\Labels\Buttons]
"Button0" = "LetterA"
"Button1" = "LetterB"
"Button2" = "LetterX"
"Button3" = "LetterY"
"Button6" = "Menu"
"Button7" = "View"
"Button8" = "RightStickButton"
"Button9" = "LeftStickButton"

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\GameInput\Devices\1234567800010004\Labels\Switches]
"Switch0Down" = "Down"
"Switch0Left" = "Left"
"Switch0Right" = "Right"
"Switch0Up" = "Up"

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\GameInput\Devices\1234567800010004\RacingWheel]
"MaxWheelAngle" = dword:000001c2

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\GameInput\Devices\1234567800010004\RacingWheel\Brake]
"AxisIndex" = dword:00000002
"Invert" = dword:00000001

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\GameInput\Devices\1234567800010004\RacingWheel\Button1]
"ButtonIndex" = dword:00000000

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\GameInput\Devices\1234567800010004\RacingWheel\Button2]
"ButtonIndex" = dword:00000001

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\GameInput\Devices\1234567800010004\RacingWheel\Button3]
"ButtonIndex" = dword:00000002

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\GameInput\Devices\1234567800010004\RacingWheel\Button4]
"ButtonIndex" = dword:00000003

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\GameInput\Devices\1234567800010004\RacingWheel\Button5]
"ButtonIndex" = dword:00000009

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\GameInput\Devices\1234567800010004\RacingWheel\Button6]
"ButtonIndex" = dword:00000008

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\GameInput\Devices\1234567800010004\RacingWheel\Button7]
"ButtonIndex" = dword:00000007

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\GameInput\Devices\1234567800010004\RacingWheel\Button8]
"ButtonIndex" = dword:00000006

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\GameInput\Devices\1234567800010004\RacingWheel\Clutch]
"AxisIndex" = dword:00000003
"Invert" = dword:00000001

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\GameInput\Devices\1234567800010004\RacingWheel\DPadDown]
"IncludeAdjacent" = dword:00000001
"SwitchIndex" = dword:00000000
"SwitchPosition" = "Down"

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\GameInput\Devices\1234567800010004\RacingWheel\DPadLeft]
"IncludeAdjacent" = dword:00000001
"SwitchIndex" = dword:00000000
"SwitchPosition" = "Left"

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\GameInput\Devices\1234567800010004\RacingWheel\DPadRight]
"IncludeAdjacent" = dword:00000001
"SwitchIndex" = dword:00000000
"SwitchPosition" = "Right"

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\GameInput\Devices\1234567800010004\RacingWheel\DPadUp]
"IncludeAdjacent" = dword:00000001
"SwitchIndex" = dword:00000000
"SwitchPosition" = "Up"

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\GameInput\Devices\1234567800010004\RacingWheel\FifthGear]
"ButtonIndex" = dword:00000010

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\GameInput\Devices\1234567800010004\RacingWheel\FirstGear]
"ButtonIndex" = dword:0000000c

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\GameInput\Devices\1234567800010004\RacingWheel\FourthGear]
"ButtonIndex" = dword:0000000f

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\GameInput\Devices\1234567800010004\RacingWheel\NextGear]
"ButtonIndex" = dword:00000004

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\GameInput\Devices\1234567800010004\RacingWheel\PreviousGear]
"ButtonIndex" = dword:00000005

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\GameInput\Devices\1234567800010004\RacingWheel\ReverseGear]
"ButtonIndex" = dword:0000000b

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\GameInput\Devices\1234567800010004\RacingWheel\SecondGear]
"ButtonIndex" = dword:0000000d

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\GameInput\Devices\1234567800010004\RacingWheel\SixthGear]
"ButtonIndex" = dword:00000011

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\GameInput\Devices\1234567800010004\RacingWheel\ThirdGear]
"ButtonIndex" = dword:0000000e

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\GameInput\Devices\1234567800010004\RacingWheel\Throttle]
"AxisIndex" = dword:00000001
"Invert" = dword:00000001

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\GameInput\Devices\1234567800010004\RacingWheel\Wheel]
"AxisIndex" = dword:00000000
"Invert" = dword:00000000

関連項目See also