> ## 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.

# Cruceta direccional

> Cruceta direccional

# Cruceta direccional

Un control de cruceta direccional que siempre se asigna a la cruceta direccional del mando.

## Propiedades

`type` - *"directionalPad"*. Especifica el tipo de control.

`scale` - *number*, *opcional*. El valor predeterminado es 1. Multiplicador de tamaño, útil porque las crucetas direccionales se colocan como botones y no se escalan automáticamente como los joysticks.

`deadzone` - *number*, *opcional*. Un valor entre 0 y 1 que especifica el tamaño de la zona muerta como porcentaje del control. Tenga en cuenta que, a diferencia de la [zona muerta](https://devdocs.xbox.com/es/reference/system/touchadaptationkit/types/game-streaming-touch-deadzone) de los joysticks, las zonas muertas de la cruceta direccional siempre son axiales (cuadradas).

`enabled` - *boolean*, *opcional*. El valor predeterminado es `true`. Establece el estado visual del control como habilitado o deshabilitado. Un control deshabilitado seguirá recibiendo la entrada del jugador, pero NO cambiará el estilo visual en función de la entrada.

`visible` - *boolean*, *opcional*. El valor predeterminado es `true`. Determina si el control se muestra al jugador para que interactúe con él. Para cambiarlo durante el juego, consulte [Cambio de diseños táctiles mediante el estado del juego](https://devdocs.xbox.com/es/build/core-features/common/game-streaming/building-touch-layouts/game-streaming-touch-changing-layouts-game-state.md#change_state).

`styles` - *object*, *opcional*. Personalización de la representación visual del control. Los estilos se representan como un objeto por cada estado al que se pueden aplicar estilos.

`interaction` - *object*, *opcional*. Definiciones de propiedades que pueden modificar los mecanismos de interacción del usuario con el control.

**Interacción**

`activationType` - *string*, *opcional*. Define el tipo de activación permitido para cualquier dirección determinada en la interacción con la cruceta direccional. El valor predeterminado es `allowNeighboring`. Cuando se establece en `exclusive`, solo se puede activar una única dirección de la cruceta direccional a la vez (es decir, solo una de "Arriba", "Derecha", "Abajo" o "Izquierda"). Cuando se establece en `allowNeighboring`, se pueden activar simultáneamente una dirección y cualquiera de sus direcciones contiguas tocando entre ellas (es decir, el usuario puede activar "Arriba+Derecha", "Derecha+Abajo", "Abajo+Izquierda" o "Izquierda+Arriba" tocando entre cada una de ellas, además de la posibilidad de activar cada dirección individual).

**Estados y propiedades de estilo**

El control de cruceta direccional puede tener estilos aplicados a los siguientes estados:

* `default` - El estilo base.
* `disabled` - El estilo cuando el control está deshabilitado. Si no se especifica, cuando el control esté deshabilitado, se aplicará una transformación al estilo predeterminado para que parezca deshabilitado.
* `idle` - Se aplica cuando el jugador NO está interactuando con el control.
* `activated` - Se aplica cuando el jugador está tocando el botón.

Se pueden usar las siguientes propiedades para aplicar estilos al control de cruceta direccional:

`opacity` - *number*, *opcional*. La opacidad que se aplica al control. El valor predeterminado es 1.0 para todos los estados excepto `disabled`.

`fill` - *object*, *opcional*. Un objeto con un color definido para el degradado que se usará cuando se active la cruceta direccional.

`gradient` - *object*, *opcional*. Un objeto con un color definido para el degradado que se usará cuando se active la cruceta direccional.

`background` - *object*, *opcional*. Puede ser un [color](https://devdocs.xbox.com/es/reference/system/touchadaptationkit/types/game-streaming-touch-color) o un [recurso de imagen](https://devdocs.xbox.com/es/reference/system/touchadaptationkit/types/game-streaming-touch-asset).

`stroke` - *object*, *opcional*. Color que se usará en el contorno de la cruceta direccional. Debe ser un objeto de [trazo](https://devdocs.xbox.com/es/reference/system/touchadaptationkit/types/game-streaming-touch-stroke).

**Dimensiones de los recursos**

Para cada uno de los objetos de estilo que aceptan recursos de imagen, un recurso determinado se proporciona en una resolución base y en escalas de 1.5x, 2.0x, 3.0x y 4.0x de esa resolución base. La resolución de una imagen determinada debe ser menor o igual que las siguientes resoluciones máximas:

| Objeto | @1.0x | @1.5x | @2.0x | @3.0x | @4.0x |
| :- | :- | :- | :- | :- | :- |
| background | 75x75 | 112x112 | 150x150 | 225x225 | 300x300 |

## Comentarios

La cruceta direccional se usa para proporcionar una experiencia similar a la de la cruceta direccional del mando físico.

Si se usa como mecanismo de movimiento principal del jugador (normalmente en la ranura `inner` de `left`), se recomienda usar una escala de 2.

**Comentarios sobre estilos**

Si usa un recurso de imagen personalizado para el `background`, las resoluciones máximas indicadas corresponden a scale=1.0. Si usa una escala diferente, las resoluciones máximas serán iguales al producto de la resolución y la escala. Por ejemplo, scale=1.5 implica que una imagen de fondo de PPP @1.0x puede tener una resolución máxima de 90x90.

> [!WARNING]
>
> Al transmitir mediante la versión de Windows de Content Test Application, no todos los estilos se mostrarán correctamente.

## Ejemplos

#### Ejemplo 1: Cruceta direccional predeterminada

**Figura 1. Cruceta direccional**

![Usuario interactuando con una cruceta direccional](https://mintcdn.com/microsoft-4404708b/-_0FrcE2bDxzGxv-/images/gdk/reference/game-streaming-touch-control-images-directional-pad.gif?s=663feec658af51030d5c73cca7b8fc6e)

```
{
    "type": "directionalPad",
    "scale": 1.0
}
```

#### Ejemplo 2: Cruceta direccional más grande con colores personalizados.

**Figura 1. Cruceta direccional personalizada**

![Usuario interactuando con una cruceta direccional personalizada](https://mintcdn.com/microsoft-4404708b/-_0FrcE2bDxzGxv-/images/gdk/reference/game-streaming-touch-control-images-directional-pad-2.gif?s=1ccee19714099eab37c0d825a9621856)

```
{
    "type": "directionalPad" ,
    "scale": 2.0,
    "styles" : {
        "default" : {
            "fill" : "#0e7a0d10",
            "gradient" : {
                "color": "#0e7a0d10"
            },
            "stroke" : {
                "type": "solid",
                "color" : "#0e7a0dff"
            }
        }
    }
}
```

## Requisitos

**Versión del diseño:** 1.0+ (compatibilidad con estilos en 3.0+, compatibilidad con interacción en 3.4+).


## Related topics

- [Touch Adaptation Kit](https://devdocs.xbox.com/es/reference/system/touchadaptationkit/touchadaptationkit-reference.md)
- [Referencia del kit de adaptación táctil (TAK)](https://devdocs.xbox.com/es/build/core-features/common/game-streaming/game-streaming-touch-touch-adaptation-kit-overview.md)
- [XGameStreamingGamepadPhysicality](https://devdocs.xbox.com/es/reference/system/xgamestreaming/enums/xgamestreaminggamepadphysicality.md)
- [Plantillas](https://devdocs.xbox.com/es/build/core-features/common/game-streaming/tak-command-line-tool/game-streaming-tak-command-line-templates.md)
- [Diseño de controles táctiles de lucha](https://devdocs.xbox.com/es/build/core-features/common/game-streaming/building-touch-layouts/samples/game-streaming-touch-tak-sample-fighter.md)
