Cómo usar un motor de juegos en Android

Vaso de precipitado, bombilla, rayo

Como desarrollador, el uso de un motor de juego te permite concentrar tu energía en compilar tu juego, en lugar de tener que compilar una pila tecnológica completa.

Cómo aprovechar las herramientas de desarrollo de Android

Las herramientas de desarrollo de Android pueden ayudarte a desarrollar tus juegos para Android sin importar qué motor de juego se use. Android Studio incluye herramientas que puedes usar para lo siguiente:

  • Examinar el rendimiento de tu juego con los generadores de perfiles de sistema, de CPU y de memoria
  • Inspecciona el contenido del paquete o paquete de aplicación de tu juego
  • Integrar funciones adicionales del SDK y el NDK de Android

El Inspector de GPU de Android puede caracterizar el rendimiento de renderización de tu juego y ayudarte a investigar los detalles de los fotogramas renderizados mediante la captura de fotogramas.

Cómo evaluar tu motor

Cuando consideres usar un motor de juego para Android, deberás evaluar su compatibilidad con los requisitos de Google Play y la compatibilidad con las funciones de Android deseadas. Asegúrate de que tu motor de juego sea compatible con los requisitos comunes que se mencionan a continuación.

Requisitos de Google Play

A partir de agosto de 2021, Google Play requerirá que todas las apps para Android se envíen como Android App Bundles y usen un nivel de API objetivo de 30 o superior. Verifica que el motor que deseas usar cumpla con estos requisitos.

Compras directas desde la aplicación

Si el diseño de tu juego usa compras directas desde la aplicación, verifica que el motor sea compatible con la Biblioteca de Facturación Google Play (GPBL). Según el motor, GPBL puede integrarse directamente en el motor, o se puede acceder a él a través de un complemento.

Funciones de Google Play Core

La biblioteca de Google Play Core proporciona una interfaz de tiempo de ejecución para Google Play Store. Con la biblioteca de Play Core, puedes hacer lo siguiente:

  • Notificar al usuario sobre las actualizaciones de la app
  • Descargar datos y acceder a datos en paquetes de recursos
  • Solicitar opiniones en la app

Si tienes la intención de usar alguna de estas funciones, verifica que el motor admita la biblioteca de Google Play Core, ya sea directamente o con un complemento.

Permisos de la app

Algunas funciones de Android requieren el consentimiento del usuario antes de que se puedan usar en un juego. El sistema de Permisos de Android se utiliza para solicitar acceso a estas funciones. Si tu juego requiere permisos, asegúrate de que el motor tenga un método para especificarlos en las opciones del proyecto o te permita personalizar el manifiesto de la aplicación para incluir los permisos necesarios.

Notificaciones

Las notificaciones de Android se usan para notificar o enviar un mensaje al usuario cuando no está jugando a tu juego. Si esta función es importante para tu juego, verifica que el motor admita el envío y procesamiento de notificaciones.

Recursos del motor

Los siguientes motores de juego comerciales y de código abierto tienen una compatibilidad sólida con Android. Para cada motor de juego, proporcionamos guías acerca de la forma de configurar proyectos de motor para Android a fin de garantizar una experiencia del usuario refinada y atractiva cuando se ejecute en un dispositivo Android.

Defold

Defold es un motor de código abierto que usa Lua como su lenguaje de programación. Defold es compatible con juegos y gráficos en 2D, y ofrece compatibilidad integrada con partículas, objetos, mapas de mosaicos y modelos de Spine. Aunque Defold tiene un enfoque en 2D, usa un motor de renderización en 3D y admite la renderización de modelos y mallas en 3D, así como la personalización de materiales y sombreadores. La asistencia física está integrada, con opciones para física en 2D o 3D. Defold se basa en un editor visual con herramientas de diseño y propiedades para escenas y objetos de juego. El editor de Defold incluye funciones integradas de edición y depuración de secuencias de comandos. El código nativo es compatible con el motor de Defold a través de un sistema de complementos.

Guías

Godot

Godot es un motor de código abierto adecuado para juegos en 2D y 3D. Admite una variedad de capacidades que abarcan desde objetos 2D y mapas de mosaicos hasta modelos 3D con iluminación global y renderización basada en elementos físicos. Cuenta con un sistema de física integrado que admite física en 2D y 3D. Existen varias opciones de lenguajes de programación para Godot, incluido el lenguaje GDScript personalizado, C# 8.0 y C++, además de secuencias de comandos visuales. Los proyectos del motor de Godot se compilan en torno a objetos Scene y Node. Incluye un editor visual para la creación y edición de estos objetos. El editor también incluye compatibilidad integrada de edición y depuración para el lenguaje GDScript.

Guías

Cocos

Cocos Creator es un motor de gráficos 2D y 3D multiplataforma de código abierto, ligero, eficiente y gratuito, y una plataforma de creación de contenido digital interactiva en 2D y 3D en tiempo real. Cocos Creator ofrece muchas ventajas, como alto rendimiento, bajo consumo de energía, carga de transmisión y publicación multiplataforma. Puedes usarlo para crear proyectos en campos como juegos, autos, XR, metaverso, etcétera.

Guías

Unity

Unity es un motor de juego comercial que se utiliza en muchos juegos. Unity está diseñado para el desarrollo de juegos en 2D y 3D. Unity se ha usado para todo, desde juegos básicos de objetos en 2D hasta juegos con mundos grandes y complejos en 3D. Unity cuenta con varias opciones de procesador, incluida la canalización universal de renderizaciones, que se diseñó para gráficos 2D o 3D de buen rendimiento en hardware de dispositivos móviles. Unity usa el lenguaje de programación C#, que es compatible con complementos para interactuar con código nativo. Debido a su popularidad, Unity cuenta con una amplia variedad de recursos educativos y de información oficiales y de la comunidad. Unity opera Unity Asset Store, que es un amplio mercado de recursos de arte y código compilados previamente, tanto gratuitos como pagados, disponibles para usar en proyectos de Unity.

Guías

Unreal

Unreal Engine 4 es un motor de juego comercial especializado en juegos en 3D refinados con gráficos sofisticados. Unreal incluye un editor visual para editar los niveles de un juego y trabajar con modelos y recursos materiales importados. Unreal Engine 4 no usa un lenguaje de programación de secuencias de comandos integrado. Unreal Editor cuenta con un sistema de secuencia de comandos visual llamado Blueprints, que se puede usar para crear la lógica de la interfaz y el juego. Las funciones del juego también se pueden implementar como código C++. Epic Games, el desarrollador de Unreal, opera Unreal Engine Marketplace como una vidriera digital para los recursos de Unreal Engine. Marketplace de Unreal Engine tiene una amplia variedad de elementos de arte y código compilados previamente disponibles, tanto gratuitos como pagados, para usar en proyectos de Unreal. Se puede usar Android Game Development Extension para depurar proyectos de Unreal que se ejecutan en Android.

Para obtener más información, consulta Desarrollo de Android con Unreal.