Biblioteca de controles de juegos Parte de Android Game Development Kit.
La biblioteca de controles de juegos, también llamada Paddleboat, te ayuda a implementar una compatibilidad sólida con los controles para juegos. La biblioteca proporciona lo siguiente:
- Devoluciones de llamada para detectar conexiones y desconexiones de los controles
- Información de los dispositivos de control, incluidos el diseño y el estilo de los botones
- Datos de entrada del control, estandarizados en torno a los diseños modernos de controles de doble stick
- Funciones adicionales en controles compatibles, como vibración, luces, datos del eje de movimiento y estado de la batería
- Posibilidad de leer entradas de mouse a partir de dispositivos virtuales o físicos
- Capacidad de especificar datos personalizados de asignación de controles para dispositivos específicos
Requisitos de compatibilidad
La biblioteca de controles para juegos tiene los siguientes requisitos mínimos de compatibilidad:
- Android 4.4 (nivel de API 19) o una versión posterior
- NDK de Android 21 o una versión posterior
Cómo integrar
La biblioteca de controles para juegos se distribuye en dos formatos: como una biblioteca de Jetpack para juegos que usan un sistema de compilación basado en Gradle (incluido Android Studio) y como archivos discretos para juegos que usan sistemas de compilación personalizados.
Para ver una muestra que integra la biblioteca de controles de juegos, consulta la repositorio de muestras de juegos.
Biblioteca de Jetpack
En la página de Jetpack de Juegos para Android, se incluyen instrucciones de integración a fin de agregar la dependencia de la biblioteca de controles para juegos al archivo build.gradle
de tu juego.
La versión de la biblioteca de Jetpack para el controlador de juegos es una biblioteca estática compilada en la biblioteca compartida de tiempo de ejecución C++.
Después de actualizar el archivo build.gradle
, deberás agregar la siguiente línea al archivo CMakeLists.txt
principal de tu juego:
find_package(games-controller REQUIRED CONFIG)
También deberás agregar la siguiente entrada a la lista de bibliotecas en el comando target_link_libraries
de la biblioteca compartida principal de tu juego:
games-controller::paddleboat_static
Archivos discretos
La distribución de archivos .zip
de Android Game Development Kit incluye archivos de bibliotecas y encabezados para la biblioteca de controles para juegos. Se deben incluir los siguientes archivos en el proyecto a fin de usar la biblioteca de controles de juegos:
- El archivo
classes.jar
, que contiene las partes del código de bytes Dalvik de la biblioteca de controles para juegos (este archivo se encuentra enlibs/classes.jar
) - El archivo de encabezado de la interfaz
paddleboat.h
(este archivo se encuentra eninclude/paddleboat/paddleboat.h
) - El archivo
libpaddleboat.so
de la biblioteca compartida o el archivolibpaddleboat-static.a
de la biblioteca estática (estos archivos se encuentran en los subdirectorios de configuración de compilación, en el directoriolibs
)
Los subdirectorios de configuración de compilación que se encuentran en el directorio raíz libs
se categorizan de la siguiente manera:
- Arquitectura de ABI
- Nivel mínimo de API de Android
- Versión del NDK de Android
- Versión de la biblioteca de tiempo de ejecución C++
- Configuración de compilación de la depuración o del lanzamiento
A modo de ejemplo, el subdirectorio arm64-v8a_API16_NDK21_cpp_shared_Release
contiene archivos de biblioteca para las siguientes características:
- ABI de 64 bits de ARM
- Nivel de API 16 como mínimo
- Compilado en la versión 21 del NDK
- Compilado en la versión de la biblioteca compartida del tiempo de ejecución C++
- Configuración de compilación de lanzamiento
El archivo libpaddleboat_static.a
se encuentra directamente en el subdirectorio. El archivo libpaddleboat.so
se encuentra en lib/paddleboat/
dentro del subdirectorio.
Próximos pasos
Consulta las siguientes guías a fin de continuar con la integración en tu juego de la biblioteca de controles para juegos:
- Cómo usar la biblioteca de controles para juegos
- Cómo agregar compatibilidad con mouse
- Cómo agregar asignaciones personalizadas de dispositivos de control