Cómo crear aplicaciones que no sean juegos en Unity

Tiempo de lectura: 5 minutos

Desarrollo de aplicaciones que no son juegos en Unity

Unity es un motor de juegos y un entorno de desarrollo integrado utilizado por millones de desarrolladores para llevar juegos a Android, iOS, Windows, consolas y muchas más plataformas. Actualmente es el motor de juegos más popular en la plataforma Android, gracias a su interfaz y flujo de trabajo optimizados, así como a su amplia gama de características y excelente versatilidad.

Lee también: Comienza a construir juegos de Unity en menos de 3 horas

Si bien Unity está dirigido principalmente al desarrollo de juegos, no se limita solo a los juegos. De hecho, no hay ninguna razón por la que no pueda usar Unity para crear una gran cantidad de otras herramientas, utilidades, aplicaciones comerciales y similares. ¡Y hay algunas razones convincentes para hacerlo! En esta publicación, explicaré por qué es posible que desee crear una aplicación que no sea de juegos en Unity y cómo puede configurarlo.

Razones para crear aplicaciones que no sean juegos en Unity

Programación Aprenda C #

¿Por qué querrías desarrollar no juegos con Unity, cuando tienes un IDE perfectamente bueno en Android Studio? Hay algunas razones convincentes.

Desarrollo rápido

El primer caso de uso es que Unity hace que el desarrollo de aplicaciones de Android sea más rápido y fácil en muchas situaciones. Por ejemplo, Unity le permite usar C # en lugar de Java o Kotlin. Si bien C # no es del gusto de todos, generalmente se considera un poco más sencillo de manejar que Java. No solo eso, sino que si ya está familiarizado con C #, encontrará que esta es una transición mucho más fácil. El IDE también mantiene oculta la estructura de archivos de su aplicación de Android, sin necesidad de preocuparse por cosas como el AndroidManifest o la carpeta de recursos.

Crear una aplicación en Unity requiere mucha menos codificación que la mayoría de las alternativas tradicionales.

Además de esto, Unity utiliza una interfaz de usuario particularmente intuitiva y rápida. Gran parte de esto es un caso de arrastrar y soltar, y la construcción de interfaces de usuario no requiere un fondo en XML. Tendrás que hacer lejos una codificación menos real al crear aplicaciones que no son juegos en Unity, y muchas cosas, como agregar una imagen a un botón o usar una fuente personalizada, son extremadamente simples. Así es como debe ser, pero si prueba cualquiera de estas cosas con Android Studio, ¡encontrará que le provoca dolor de cabeza!

Probar e implementar aplicaciones también es extremadamente eficiente. Agregar "activos" creados por otros usuarios no podría ser más sencillo. ¡Incluso la instalación y configuración es rápida y fácil!

Desarrollo multiplataforma

Unity es una herramienta multiplataforma, lo que significa que puede crear fácilmente aplicaciones para Android, iOS y Windows con muy pocas modificaciones necesarias. Si eres desarrollador y quieres llegar a la mayor audiencia posible, esta es una ventaja significativa (aunque es justo señalar que otras herramientas como Xamarin también te permitirán hacerlo).

Lee también: Cómo hacer una aplicación de Android con Xamarin

Características de gran alcance

Aunque la mayoría de sus características están diseñadas teniendo en cuenta el desarrollo de juegos, también hay una serie de características poderosas que podrían ser útiles para desarrollar aplicaciones que no sean de juegos en Unity. Estas son principalmente características gráficas, por lo que si desea incluir elementos 3D en su aplicación, Unity podría ser una muy buena opción.

Razones para no crear aplicaciones que no sean juegos en Unity

Aprenda C # para el desarrollo de Android

Si bien puedes crear una gran cantidad de aplicaciones poderosas que no sean de juegos con Unity, encontrarás que tiene sus limitaciones. Como con cualquier cosa, se trata de seleccionar la herramienta adecuada para el trabajo.

Aquí hay algunas razones por las cuales Unity podría no ser la mejor opción para su aplicación.

Tamaños de aplicación más grandes

Unity es un motor de juegos e incluye una gran cantidad de código para admitir las diferentes funciones que proporciona al desarrollador. Eso significa que aumentará instantáneamente el tamaño de su aplicación al confiar en ella.

Esto hará que algunos desarrolladores dejen de usar Unity a menos que sea absolutamente necesario. Pero en realidad, la diferencia de tamaño es bastante menor, y es muy poco probable que afecte la experiencia subjetiva del usuario de manera significativa.

Falta de soporte nativo para algunas funciones

La naturaleza multiplataforma de Unity significa que no puede mantenerse al día con cada nuevo desarrollo en cada sistema operativo o pieza de hardware. Del mismo modo, la naturaleza centrada en el juego de la herramienta significa que apoyar cosas como los sensores de huellas digitales no es una prioridad.

¿Desea crear una aplicación utilizando el lenguaje de diseño de materiales, que incluye un conjunto estándar de botones y campos de texto, y permite a los usuarios hacer cosas como apagar su WiFi o enviar mensajes de texto? Te resultará mucho más fácil usar Android Studio.

Si eso no es importante para usted, entonces Unity aún debería estar bajo consideración.

Cómo construir una aplicación que no sea de juegos en Unity: un tutorial rápido

Ahora que sabe por qué Unity es una herramienta valiosa para crear aplicaciones que no son juegos, el siguiente paso es solo comenzar. ¿Cómo puede usar Unity para crear cuestionarios, calculadoras, aplicaciones comerciales y similares? Aquí hay un tutorial rápido con una aplicación de entrenamiento simple como ejemplo.

Usando el lienzo

Primero cree un nuevo proyecto 2D Unity. A partir de aquí, utilizaremos principalmente el lienzo, por lo que deberá agregar uno a su escena.

Para hacer eso, dirígete a GameObject> UI> Canvas.

El lienzo es una gran capa invisible que cubre la pantalla. Esto generalmente se usa para mostrar controles, puntajes altos, etc. Sin embargo, también se puede usar como la vista principal al crear menús y similares.

Aplicación de utilidad

También puede cambiar el color de fondo de su aplicación buscando la Cámara principal en la ventana de su Jerarquía, haciendo doble clic en ella y luego seleccionando "Fondo" en el Inspector. Este es el color predeterminado que ve la cámara del juego cuando no hay elementos en la escena, y servirá como fondo para el texto y los botones.

Ahora vamos a agregar nuestro primer texto dirigiéndonos a GameObject> UI> Texto. Este será nuestro título, y ya que estoy creando una aplicación de entrenamiento, voy a titular el mío "Entrenamiento dinámico". Puedes cambiar el color de este texto en el inspector, junto con la fuente. Para cambiar la fuente, solo busque el archivo .ttf que desea usar y suéltelo en una nueva carpeta que llamará "fuentes" en sus Activos. Ahora puede simplemente arrastrar y soltar ese archivo en el cuadro correcto para comenzar a usarlo. De nuevo, esto es entonces ¡mucho más fácil que hacer lo mismo en Android Studio!

Escalar a diferentes tamaños de dispositivo

También debe asegurarse de que el texto permanezca en la misma posición en dispositivos de todos los tamaños. La forma de hacerlo es abriendo el texto en el Inspector y luego haciendo clic en la imagen de los cuadrados en la parte superior izquierda que dice "Anclas" debajo. Esto le permitirá anclar la posición de cualquier elemento de la interfaz de usuario en la pantalla, de modo que cualquier valor será en relación a esa posición

Anclaje de elementos de la IU

Por ejemplo, si ancla el texto en el centro de la pantalla, las coordenadas X e Y leerán 0 siempre que esté precisamente en el centro. Ahora el texto siempre estará en el medio, sin importar cuán grande sea el dispositivo. También puedes anclar a la esquina superior izquierda o inferior derecha, y luego construir tus otros elementos alrededor de eso.

Para obtener más opciones de escala, haga clic en el objeto de juego de lienzo en su jerarquía para que se abra en el Inspector. Aquí, podrá elegir el "Modo de escala de interfaz de usuario". De forma predeterminada, está configurado en Tamaño de píxel constante, que se refiere a cómo el tamaño de los elementos reales en el lienzo cambia de forma y tamaño. Juega y prueba la aplicación en algunos dispositivos para crear algo que funcione para ti.

Construyendo interactividad

A continuación, deberá manejar los clics y permitir que las personas realmente interactúen con la interfaz de usuario que ha creado.

Para hacer esto, vas a agregar algunas imágenes a la pantalla. Dirigirse a GameObject> UI> Imagen y un objeto blanco aparecerá en tu escena. Aquí es donde puede agregar una imagen para representar un botón que hará algo en su aplicación. Utilice el Inspector y suelte cualquier imagen en el cuadro "Imagen de origen", para cambiar el aspecto de ese cuadro blanco en consecuencia. Estoy agregando un botón "Reproducir", que voy a anclar en el centro inferior de la pantalla.

Quizás por ahora, la mejor opción sería simplemente que este botón nos lleve a la siguiente escena, que podría reproducir nuestro entrenamiento, por ejemplo.

Las escenas en Unity suelen ser niveles de juego, pero se pueden usar para diferentes pantallas de una aplicación de utilidad.

Aproveche esta oportunidad para guardar su escena actual y llámela "Página de título" o algo así.

Ahora tenemos una situación donde llamar al método MenuControl.Play () lanzará la siguiente pantalla (donde teóricamente comenzaríamos el entrenamiento). Todo lo que necesitamos hacer ahora es vincular ese método al botón. Para hacer esto, querrás agregar el componente Evento> Disparador de evento al botón en la jerarquía, luego elija Puntero abajo para detectar las pulsaciones del botón.

A continuación, cree un GameObject vacío que albergará su script y luego agréguelo al cuadro que dice Ninguno (Objeto). Lamentablemente, no puede arrastrar el script aquí porque necesita una instancia de la clase para hacer referencia. Una vez que esté en su lugar, puede usar el menú desplegable al lado de este cuadro a la derecha, para seleccionar el método que desea activar. En este caso, eso será MenuControl.Play ().

Ahora guarde su escena como "Nivel 1" y realice algunos cambios (muestre lo que quiera en esta pantalla), para que pueda saber cuándo se ha cargado. Recuerde que debe agregar todas las escenas a su configuración de compilación antes de que pueda hacer referencia a ellas, incluso durante las pruebas.

Como puede ver, este es un proceso bastante sencillo y es tan fácil agregar tantos otros métodos como desee. Ahora tiene la capacidad de agregar botones y texto, y luego agregar interacciones a esos elementos, ¡puede hacer casi cualquier cosa!

Más trucos del oficio

desarrollo de Unity para aplicaciones que no son juegos

Los botones en diferentes escenas pueden hacer una gran cantidad de cosas diferentes. Puede hacer que muestren o muevan un objeto 3D, por ejemplo, o quizás reproduzca un video corto. También puede manipular variables y valores y mostrarlos como parte de una cadena a través de una etiqueta de texto. Guardar archivos funciona igual que cuando creas un juego, al igual que reproducir sonidos.

Si desea obtener acceso a las funciones nativas y aún quiere usar Unity, simplemente haga una búsqueda rápida en Google o en la tienda de activos. Aquí hay una solución rápida para enviar mensajes a través del SMSManager, por ejemplo. Recuerde que deberá cambiar estos aspectos si va a construir para múltiples plataformas.

Si sabes cómo usar Unity para el desarrollo de juegos, puedes aplicar todas esas habilidades aquí.

También encontrará una gran cantidad de componentes de interfaz de usuario útiles que puede agregar al lienzo, como casillas de verificación, que son útiles si realiza un formulario en línea o un cuestionario.

En otras palabras, si sabes cómo usar Unity para el desarrollo de juegos, entonces puedes aplicar todas esas habilidades aquí también. Con suerte, este tutorial le ha dado una visión general rápida de cómo pensar sobre Unity en este contexto, para que pueda salir y construir su propia aplicación que no sea de juegos en Unity hoy.

Más publicaciones sobre Desarrollo de Android