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

# Iniciadores de juegos y dispositivos portátiles

> Cree iniciadores de juegos para dispositivos portátiles con detección de Full Screen Experience, límites de recursos, tecnologías web, control del botón Guía y administración del primer plano en Windows.

Los iniciadores de juegos pueden adoptar muchas formas diferentes. Cuando un jugador inicia un juego, algunos juegos no se inician directamente. En su lugar, inician un iniciador. Muchos juegos y editores dependen de los iniciadores como una forma de ayudar a mantener el interés de los jugadores. Los iniciadores también pueden usarse para establecer opciones, visitar el sitio web del juego o interactuar con otras funcionalidades del juego antes de que este realmente comience. Estos iniciadores deben funcionar bien en los dispositivos portátiles de juego. Los iniciadores, al igual que los juegos, deben seguir la orientación de estos artículos.

* [Directrices del programa Handheld Compatibility, diseñado por XBOX](/build/gdk-and-engines/handheld/handheld-guidance)
* [Consideraciones adicionales para dispositivos portátiles](/build/gdk-and-engines/handheld/handheld-considerations)

Aunque la orientación dada a los juegos para que funcionen en dispositivos portátiles se aplica igualmente a los iniciadores, estos tienen algunas consideraciones adicionales que los desarrolladores deben tener en cuenta.

## Experiencia de pantalla completa

Cuando se inician los dispositivos portátiles de juego, los OEM pueden configurarlos para que inicien una aplicación de juego dedicada que funciona a pantalla completa. Por ejemplo, en el ASUS ROG XBOX Ally X, el dispositivo se inicia con una versión a pantalla completa de la aplicación XBOX. Los jugadores pueden acceder fácilmente a su catálogo de juegos y tienen la oportunidad de interactuar y comprar nuevos juegos.

Los OEM pueden configurar cuál es la aplicación de pantalla completa predeterminada. Cuando esto está configurado:

* Se suprimen muchas experiencias estándar de Windows, como la barra de tareas, algunas aplicaciones de inicio y otros servicios. Esta supresión da como resultado más memoria disponible para los juegos.
* La aplicación predeterminada puede garantizar una directiva de solo un juego en ejecución a la vez.
* Al reanudar desde suspensión o hibernación, el jugador vuelve al juego o a la aplicación. Si los juegos y las aplicaciones se cierran antes de la suspensión o hibernación, el jugador vuelve a la aplicación de juego predeterminada.
* La aplicación predeterminada se inicia automáticamente cuando el dispositivo se enciende desde un estado de apagado.
* Los juegos y las aplicaciones se inician automáticamente en modo de pantalla completa.

En conjunto, Windows llama a esto la *experiencia de pantalla completa* (FSE).

Para ver si FSE está activa en el dispositivo portátil de juego, haga que su juego llame a la función `IsGamingFullScreenExperienceActive`. El siguiente ejemplo de código muestra cómo se usa esta función.

```cpp theme={null}
#include <gamingexperience.h>
#pragma comment(lib, "windowsapp.lib")

if (IsApiSetImplemented("api-ms-win-gaming-experience-l1-1-0"))
{
   if (IsGamingFullScreenExperienceActive())
   {
      // Full Screen Experiences (FSE) is active
   }
}
```

Los jugadores del dispositivo pueden activar y desactivar FSE. Las aplicaciones y los juegos pueden recibir notificaciones sobre estos cambios registrándose para las notificaciones de cambio mediante la función **RegisterGamingFullScreenExperienceChangeNotification**. Para anular el registro de las notificaciones de cambio, use la función **UnregisterGamingFullScreenExperienceChangeNotification**. El siguiente ejemplo de código muestra cómo registrarse para la notificación de cambio. Al responder a la notificación, asegúrese de consultar después el estado actual de FSE.

```cpp theme={null}
static GAMING_FULL_SCREEN_EXPERIENCE_REGISTRATION g_fseHandle = nullptr;

// ...

if (IsApiSetImplemented("api-ms-win-gaming-experience-l1-1-0"))
{
  RegisterGamingFullScreenExperienceChangeNotification([](PVOID)
  {
    // Full Screen Experience (FSE) changed, query if active
    if (IsGamingFullScreenExperienceActive())
    {
      // FSE has changed to active
    }
    else
    {
      // FSE has changed to inactive
    }
  }, nullptr, &g_fseHandle);
}

// ...

if (IsApiSetImplemented("api-ms-win-gaming-experience-l1-1-0"))
{
   UnregisterGamingFullScreenExperienceChangeNotification(g_fseHandle);
}
```

Para obtener información sobre las experiencias de pantalla completa, use la versión 10.0.26100.3916 o posterior del Windows SDK. Se publicó en abril de 2025.

## Recursos

Los iniciadores de juegos se ejecutan con frecuencia en segundo plano y consumen recursos como la memoria. Los dispositivos portátiles de juego tienen memoria y recursos limitados en comparación con los PC típicos. Como resultado, los iniciadores de juegos deben seguir los procedimientos recomendados para ofrecer la mejor experiencia a los jugadores.

* Minimice el uso de recursos por parte del iniciador cuando no esté en primer plano.
* Después de que el iniciador inicie correctamente un juego, considere finalizar el iniciador (o al menos minimizar sus recursos) para dar más recursos al juego.
* Evite instalarse en la bandeja de tareas porque no está disponible para los jugadores en FSE.
* Asegúrese de que los jugadores tengan una forma fácil de cerrar el iniciador.
* Al igual que con los juegos, considere cómo los iniciadores pueden minimizar su [consumo de energía](/build/gdk-and-engines/handheld/handheld-considerations#power) y su efecto en la duración de la batería.

## Tecnologías web

Los iniciadores dependen con frecuencia de HTML para entregar contenido. Al igual que con el resto de las partes del iniciador y la guía para desarrolladores para funcionar bien en dispositivos portátiles de juego, asegúrese de cumplir los siguientes requisitos:

* El contenido HTML funciona de forma predeterminada de una manera que se ve bien y es legible en una pantalla de 7 pulgadas (17,8 cm) sostenida a 12 pulgadas (30,5 cm) de la cara.
* Cualquier iconografía es precisa para el dispositivo.
* La entrada de texto usa un teclado virtual y no requiere un teclado físico.

Lo más importante es que los usuarios deben poder navegar por cualquier contenido HTML usando el mando. Asegúrese de que todo el contenido entregado por web esté diseñado teniendo en cuenta un mando mediante la API Gamepad de HTML. Para obtener más información, consulte [Uso de la API Gamepad - Web APIs | MDN](https://developer.mozilla.org/en-US/docs/Web/API/Gamepad_API/Using_the_Gamepad_API).

## Superposiciones de juego y botón Guía

Cuando FSE está activa, Windows tiene acceso exclusivo al botón **Guía** de los mandos. Cuando un jugador presiona brevemente el botón **Guía** en la experiencia de pantalla completa, aparece la XBOX Game Bar. Los jugadores tienen acceso rápido a las utilidades del sistema y a los widgets del OEM. XBOX Game Bar es extensible mediante el Game Bar Widget SDK. Para obtener más información, consulte el [SDK de XBOX Game Bar](https://learn.microsoft.com/gaming/game-bar/).

Para garantizar la compatibilidad con experiencias existentes que usan el botón **Guía**, un jugador puede presionar **Vista+Menú** para enviar una pulsación del botón **Guía** a la aplicación con el foco. El controlador del mando envía las pulsaciones de los botones **Vista**, **Menú** y **Guía** como parte de la carga de entrada. Una pulsación prolongada del botón **Guía** abre un **conmutador de tareas** optimizado donde los jugadores pueden presionar **Vista** en la aplicación seleccionada para enviar una pulsación del botón **Guía**.

## Administración del primer plano y el segundo plano

Los juegos y los iniciadores no necesitan hacer nada especial para la administración del primer plano de Windows con FSE. Asegúrese de que su administración de ventanas en primer plano funcione correctamente en Windows (independientemente de si FSE está activa).

Windows está diseñado para mantener a los jugadores en control de la ventana con la que interactúan. Una ventana en primer plano puede llevar otras aplicaciones al primer plano, pero las aplicaciones en segundo plano no pueden tomar el primer plano. Windows aplica el control del primer plano como un privilegio a nivel del sistema operativo.

Algunos escenarios comunes de los juegos y los iniciadores requieren que una aplicación controle de forma más explícita la administración del primer plano. Como ejemplo, algunos juegos pueden tener una única instancia en la que redirigen la activación de un nuevo proceso de vuelta a uno que ya se está ejecutando en segundo plano. El nuevo proceso debe transferir explícitamente el privilegio de primer plano de vuelta al proceso que ya se está ejecutando. Los juegos controlan estas transferencias mediante [AllowSetForegroundWindow](https://learn.microsoft.com/windows/win32/api/winuser/nf-winuser-allowsetforegroundwindow), [CoAllowSetForegroundWindow](https://learn.microsoft.com/windows/win32/api/objbase/nf-objbase-coallowsetforegroundwindow) y [SetForegroundWindow](https://learn.microsoft.com/windows/win32/api/winuser/nf-winuser-setforegroundwindow).

Cuando FSE está inactiva, el estado predeterminado para los juegos en Windows, un comportamiento incorrecto del primer plano tiene poco efecto en los jugadores. El icono de la aplicación parpadea en la barra de tareas para llamar su atención y, cuando el jugador selecciona el icono, la aplicación pasa al primer plano.

Cuando FSE está activa, la barra de tareas está oculta. Como resultado, es poco probable que el jugador note una ventana en segundo plano y no puede compensarlo.


## Related topics

- [Información general sobre PC portátiles](/es/build/gdk-and-engines/handheld/overview.md)
- [Consideraciones adicionales para dispositivos portátiles](/es/build/gdk-and-engines/handheld/handheld-considerations.md)
- [Equilibrar el rendimiento y la eficiencia energética](/es/build/gdk-and-engines/handheld/handheld-performance.md)
- [Preguntas frecuentes y guía de solución de problemas de las XBOX PC Remote Tools](/es/tools/tools-pc/xbox-pc-remote-tools/faq.md)
- [Uso del GDK con Unity](/es/build/gdk-and-engines/unity/unity.md)
