> ## Documentation Index
> Fetch the complete documentation index at: https://devdocs.xbox.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Arcade Buttons

> Arcade Buttons

# Arcade Buttons

Arcade buttons を使用すると、アーケード筐体のスタイルで、円弧状に配置された 6 つまたは 8 つのボタンのコレクションを配置できます。格闘ゲームで最もよく使用されます。

## プロパティ

`type` - "arcadeButtons"\
`lightKick` - *object*。軽いキックのボタン。\
`mediumKick` - *object*。中程度のキックのボタン。\
`heavyKick` - *object*。強いキックのボタン。\
`specialKick` - *object*、*省略可*。特殊キックのボタン。\
`lightPunch` - *object*。軽いパンチのボタン。\
`mediumPunch` - *object*。中程度のパンチのボタン。\
`heavyPunch` - *object*。強いパンチのボタン。\
`specialPunch` - *object*、*省略可*。特殊パンチのボタン。

上記の各オブジェクトは、次のプロパティを持つボタンを表します:

`action` - *string*。プレイヤーがボタンに触れたときに呼び出される [Action](/ja-jp/reference/system/touchadaptationkit/types/game-streaming-touch-action)。

`enabled` - *boolean*、*省略可*。既定値は `true` です。コントロールの視覚的な状態を有効/無効に設定します。無効なコントロールは引き続きプレイヤーからの入力を受け取りますが、入力に基づいて視覚スタイルは変更されません。

`toggle` - *boolean*、*省略可*。既定値は `false` です。

* `false` の場合、押されたときに入力が送信され、押されていないときには送信されません。
* `true` の場合、ボタンを押すたびに、対応するアクションに対して入力を送信するかどうかが切り替わります。

`visible` - *boolean*、*省略可*。既定値は `true` です。プレイヤーが操作できるようにコントロールを表示するかどうかを決定します。ゲーム プレイ中に変更するには、[ゲーム状態を使用したタッチ レイアウトの変更](/ja-jp/build/core-features/common/game-streaming/building-touch-layouts/game-streaming-touch-changing-layouts-game-state.md#change_state) を参照してください。

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

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

* `default` - 基本スタイル。
* `disabled` - コントロールが無効な場合のスタイル。指定されていない場合、コントロールが無効になると、既定のスタイルに変換が適用されて無効に見えるようになります。
* `idle` - プレイヤーがコントロールを操作していないときに適用されます。
* `activated` - プレイヤーがボタンに触れているときに適用されます。

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

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

`faceImage` - *object*、*省略可*。[icon](/ja-jp/reference/system/touchadaptationkit/types/game-streaming-touch-icon) または [image asset](/ja-jp/reference/system/touchadaptationkit/types/game-streaming-touch-asset) のいずれかを指定できます。

`background` - *object*、*省略可*。[color](/ja-jp/reference/system/touchadaptationkit/types/game-streaming-touch-color) または [image asset](/ja-jp/reference/system/touchadaptationkit/types/game-streaming-touch-asset) のいずれかを指定できます。idle 状態と disabled 状態では表示されません。

**アセットの寸法**

画像アセットを受け入れる各スタイル オブジェクトについて、指定されたアセットは 5 段階の DPI レベルで提供する必要があります: @1.0x、@1.5x、@2.0x、@3.0x、および @4.0x。指定された DPI レベルでの画像の解像度は、次の最大解像度以下である必要があります:

| オブジェクト | @1.0x | @1.5x | @2.0x | @3.0x | @4.0x |
| :- | :- | :- | :- | :- | :- |
| faceImage | 60x60 | 90x90 | 120x120 | 180x180 | 240x240 |
| background | 60x60 | 90x90 | 120x120 | 180x180 | 240x240 |

## 補足

`arcadebuttons` を使用すると、アーケード筐体に似た 6 つまたは 8 つのボタンのグループとしてボタン セットを配置できます。これは格闘ゲームに最適化されています。

パンチまたはキックのすべてのボタンを同時に押すことに対応する、プレイヤーが押すためのインジケーターもあります。

`arcadebuttons` は多くのスペースを占有するため、その周囲に配置する他のコントロールに注意する必要があります。

**スタイル設定に関する補足**

`activated` 状態のとき、`faceImage` は 25% 小さく表示されます。

カスタム アセットを使用せず、`gamepadX`、`gamepadY`、`gamepadA`、または `gamepadB` の単一アクションを持つボタンには、ラベルおよび背景色の既定のスタイルがあります。

## サンプル

#### 例 1: Arcade button - 6 ボタン

**図 1. Arcade Buttons**

![6 個のアーケード ボタンを操作するユーザー](https://mintcdn.com/microsoft-4404708b/-_0FrcE2bDxzGxv-/images/gdk/reference/game-streaming-touch-control-images-arcade-buttons.gif?s=3948ffe961d90e894fb1362b8fb21b13)

```JSON theme={null}
{
    "type": "arcadeButtons",
    "lightPunch": {
        "action": "gamepadX",
        "styles": {
            "default" : {
                "faceImage" : {
                    "type": "icon",
                    "value": "lightPunch"
                }
            }
        }
    },
    "mediumPunch": {
        "action": "gamepadY",
        "styles": {
            "default" : {
                "faceImage" : {
                    "type": "icon",
                    "value": "mediumPunch"
                }
            }
        }
    },
    "heavyPunch": {
        "action": "rightBumper",
        "styles": {
            "default" : {
                "faceImage" : {
                    "type": "icon",
                    "value": "heavyPunch"
                }
            }
        }
    },
    "lightKick": {
        "action": "gamepadA",
        "styles": {
            "default" : {
                "faceImage" : {
                    "type": "icon",
                    "value": "lightKick"
                }
            }
        }
    },
    "mediumKick": {
        "action": "gamepadB",
        "styles": {
            "default" : {
                "faceImage" : {
                    "type": "icon",
                    "value": "mediumKick"
                }
            }
        }
    },
    "heavyKick": {
        "action": "leftBumper",
        "styles": {
            "default" : {
                "faceImage" : {
                    "type": "icon",
                    "value": "heavyKick"
                }
            }
        }
    }
}
```

#### 例 2: Arcade button - 8 ボタン

**図 1. 8 個の項目からなる Arcade Buttons**

![8 個のアーケード ボタンを操作するユーザー](https://mintcdn.com/microsoft-4404708b/-_0FrcE2bDxzGxv-/images/gdk/reference/game-streaming-touch-control-images-arcade-buttons-eight.gif?s=6d1fe0f55cebd57f9ffd2205dcdff25d)

```JSON theme={null}
{
    "type": "arcadeButtons",
    "lightPunch": {
        "action": "gamepadX",
        "styles": {
            "default" : {
                "faceImage" : {
                    "type": "icon",
                    "value": "lightPunch"
                }
            }
        }
    },
    "mediumPunch": {
        "action": "gamepadY",
        "styles": {
            "default" : {
                "faceImage" : {
                    "type": "icon",
                    "value": "mediumPunch"
                }
            }
        }
    },
    "heavyPunch": {
        "action": "rightBumper",
        "styles": {
            "default" : {
                "faceImage" : {
                    "type": "icon",
                    "value": "heavyPunch"
                }
            }
        }
    },
    "specialPunch": {
        "action": "rightTrigger",
        "styles": {
            "default" : {
                "faceImage" : {
                    "type": "icon",
                    "value": "heavyPunch2"
                }
            }
        }
    },
    "lightKick": {
        "action": "gamepadA",
        "styles": {
            "default" : {
                "faceImage" : {
                    "type": "icon",
                    "value": "lightKick"
                }
            }
        }
    },
    "mediumKick": {
        "action": "gamepadB",
        "styles": {
            "default" : {
                "faceImage" : {
                    "type": "icon",
                    "value": "mediumKick"
                }
            }
        }
    },
    "heavyKick": {
        "action": "rightTrigger",
        "styles": {
            "default" : {
                "faceImage" : {
                    "type": "icon",
                    "value": "heavyKick"
                }
            }
        }
    },
    "specialKick": {
        "action": "leftBumper",
        "styles": {
            "default" : {
                "faceImage" : {
                    "type": "icon",
                    "value": "heavyKick2"
                }
            }
        }
    }
}
```

## 要件

**レイアウト バージョン:** 1.0 以上 (スタイル設定はレイアウト バージョン 3.0 以上で利用可能)


## Related topics

- [Touch Adaptation Kit](/reference/system/touchadaptationkit/touchadaptationkit-reference.md)
- [Touch Adaptation Kit (TAK) Reference](/build/core-features/common/game-streaming/game-streaming-touch-touch-adaptation-kit-overview.md)
- [触控适配布局的自定义资产](/zh-CN/build/core-features/common/game-streaming/building-touch-layouts/game-streaming-tak-custom-assets.md)
- [GameInputArcadeStickButtons](/reference/input/gameinput/enums/gameinputarcadestickbuttons.md)
