Presiona ENTER para ver los resultados o ESC para cancelar.

Ana Mocholí en Desarrollo de apps

Desarrollo de juegos con Unity 3D ¿Cómo funciona esta herramienta?

Unity 3D es una de las plataformas para desarrollar videojuegos más completas que existen. Permite la creación de juegos para múltiples plataformas a partir de un único desarrollo, incluyendo el desarrollo de juegos para consola (PlayStation, Xbox y Wii), escritorio (Linux, PC y Mac), navegador, móviles y tabletas (iOS, Android, Windows Phone y BlackBerry).

Es posiblemente la tecnología de mayor crecimiento en estos momentos, en especial con la reciente actualización que facilita el desarrollo de juegos 2D. Su principal limitación es el precio de su licencia completa, que puede alcanzar y superar los 4.500 $ por una licencia completa para una sola persona. Analicemos los motivos de este hecho, las características de este entorno, sus limitaciones y su estado actual.

Entorno de Unity3D

El editor de Unity 3D es uno de los más sencillos y potentes del mercado. Se divide en 5 vistas principales:

  1. Explorador: Lista todos los elementos (o activos) de tus proyectos. Permite ordenar de forma sencilla tu aplicación. En esta vista se encuentran tus imágenes, escenas, scripts, audios, prefabs, texturas, atlas y todos los elementos que usarás o podrás usar en tu juego o aplicación.
  2. Inspector: Muestra y define las propiedades de los elementos de tu proyecto. Modifica valores de forma rápida, cambia texturas arrastrando ficheros desde el Explorador, añade scripts, guarda prefabs,…
  3. Jerarquía: Lista jerárquica de los elementos de tu escena.
  4. Escena: Diseño y maqueta de tu juego completo o una pantalla o sección de éste. Cada escena representaun nivel o sección diferente del juego (portada, nivel 1, nivel 2, login,…). Simplemente arrastra tus activos desde el Explorador y edita sus variables desde el Inspector.
  5. Juego: Visualiza tu juego a distintas resoluciones. Es una vista WYSIWYG de tu juego.

Unity 3D - desarrollo de juegos

Desarrollo de juegos 3D y 2D

Inicialmente Unity era un entorno de desarrollo de juegos 3D. Se podían desarrollar entornos y juegos 2D ajustando los parámetros de tu juego para simular 2D (cámara ortográfica, texturas planas, etc), pero al ser un entorno estrictamente 2D algunos desarrolladores optaban por otras plataformas, como Cocos2D, a priori mejor adaptadas a 2D.

Con sus últimas actualizaciones Unity 3D simplifica este proceso permitiendo desarrollos 2D de forma mucho más sencilla, incluyendo nuevos objetos y efectos para facilitar el desarrollo y el rendimiento de tu juego, como texturas 2D, efectos de física 2D o tipos de cámara específicos. Existen muchos ejemplos de juegos 3D desarrollados por Unity 3D.

Actualmente más de 500 millones de usuarios juegan a juegos desarrollados con Unity 3D. De hecho la mayoría de los mejores juegos para Android y iOS 3D están hechos en Unity 3D, incluyendo Deux Ex: The Fall, por ejemplo. En 2D el porcentaje es mucho menor, siendo Cocos 2D todavía el motor más usado hasta la fecha, principalmente porque Unity 3D no había sido hasta ahora una opción robusta para el desarrollo de juegos 2D, pero también por el precio, que es la principal barrera de Unity. Sin embargo algunas empresas como Rovio ya usan Unity 3D como motor 2D, habiendo desarrollado juegos de éxito como Bad Piggies.

Unity 3D - desarrollo de juegos

Multiplataforma

Una de las mayores ventajas de Unity 3D es que permite desarrollar juegos para muchas plataformas con realmente muy poco trabajo extra. A diferencia de otras tecnologías, con Unity 3D prácticamente no hay que hacer casi ajustes para adaptar compilar un juego para iOS teniéndolo ya para Android, salvo que queramos usar funcionalidades específicas de alguna de estas plataformas.

Las plataformas permitidas son prácticamente todas las existentes actualmente y se pueden dividir en 4 grupos.

Móviles y tablets

Unity 3D permite desarrollar para iOS, Android, Windows Phone 8 y BlackBerry 10. Las licencias completas para Windows Phone y BlackBerry están incluidas en la licencia básica de Unity 3D, principalmente porque de no ser así muy pocos desarrolladores harían esta inversión para estos dispositivos. iOs y Android, sin embargo, requieren licencias adicionales para hacer desarrollos completos.

Para poder compilar para cada dispositivo es necesario algún trabajo extra mínimo. Para Android, por ejemplo, es necesario descargar e integrar el apk de Google para Android. iOS es más complicado (como siempre): por supuesto requiere primero un pago a Apple en concepto de licencia de desarrollador con un coste actual de 99 $ al año. Además necesitarás un Mac para poder realizar tu compilación final.

Tanto si has desarrollado en Mac como en PC (con Unity),  en ambos casos Unity 3D no genera el fichero final sino un proyecto XCode que podrás abrir y compilar con tu entorno XCode en Mac.

Desarrollo de juegos con Unity 3D

Navegador

Unity 3D permite desarrollos para navegador y por tanto para Facebook. Todos los navegadores modernos permiten reproducir estos juegos: Google Chrome, Firefox, Internet Explorer y Safari.

Actualmente los  juegos hechos con Unity 3D (Unity 4.5 en su versión actual) se reproducen con el reproductor oficial de Unity, Unity Web Player, que debe instalarse en tu navegador para poder ser usado. Anteriormente Unity exportaba ficheros Flash, pero ha dejado de hacerlo. En pocos meses, Unity lanzará Unity 5 que permitirá la reproducción de sus juegos con HTML 5, haciendo mucho más sencillo la integración en páginas web.

Escritorio

También puedes compilar para PC, Mac y Linux. En este caso el trabajo extra a realizar es prácticamente nulo, salvo en el caso de Mac, que requiere (de nuevo) de unos pasos adicionales.

Consola

Recientemente Unity 3D ha anunciado que es posible desarrollar sin coste adicional juegos para PS3/PS4, Wii U y Xbox 360. A pesar de esto, todavía no es trivial publicar juegos para estas consolas, al menos para empresas o equipos pequeños. Si bien Unity 3D no te exige licencias adicionales, sí que necesitas los equipos de desarrollo de las diferentes plataformas, que deben ser proporcionados por Sony, Nintendo y Microsoft, respectivamente.

Actualmente los desarrollos para consola realizados con Unity son aquellos de menor presupuesto, enfocados a descargas desde las tiendas online de las 3 consolas. Los primeros juegos ofrecidos por Sony para usuarios Plus de PS4 estaban hechos con Unity 3D. Para el desarrollo de juegos más potentes de estas consolas usan otros motores, como Unreal.

Tarifas

Ésta es la principal barrera para los desarrolladores: el precio de las licencias. Un desarrollador puede empezar por la licencia gratuita, pero tiene ciertos límites. Incluye obligatoriamente el logotipo de Unity en la carga inicial de tu juego y solo puede usarse si la facturación total de tu empresa no supera los 100.000 $ anuales.

El precio de la licencia de Unity Pro es de 1.500 $ por persona más impuestos. Permite el uso de todas las prestaciones de Unity Pro en hasta 2 ordenadores (de la misma persona).  Las principales mejoras se encuentran en efectos, texturas y rendimiento 3D. El desarrollo de juegos sencillos, y en especial, juegos sencillos 2D, no deberían necesitar de estas prestaciones.

Las licencias Pro para Windows Phone y BlackBerry están incluidas en Unity Pro, pero no así las de Android y iOS. Las licencias de iOS Pro y Android Pro tienen un precio de  1500 $ cada por persona (impuestos no incluidos). Son necesarias, por ejemplo, para el uso de Sockets .Net, necesarios para ciertas aplicaciones multijugador en tiempo real. Otras licencias como la licencia de equipo, Team License, o ciertos Assets también suponen un coste. La suma de estos costes es la principal barrera de esta tecnología, aunque compensa enormemente por el tiempo de desarrollo que te ahorra y la calidad del producto final.

Asset Store

La potencia de Unity 3D está por encima del resto de tecnologías populares de desarrollo de juegos para móvil, como son Cocos2D, Flash, Marmalade o usar código nativo. Aún así esta potencia puede reforzarse con los asset que se ofrecen gratuitamente o se venden en la Asset Store.

Unity 3D, desarrollar juegos para móviles

Algunos assets, como NGUI, potencian y facilitan tu desarrollo tanto como lo haría jQuery con un desarrollo en Javascript. En la tienda de Unity puedes encontrar modelos 3D listos para usar, interfaces de usuario, exportadores/importadores de Photoshop, motores de física, ejemplos de desarrollo de juegos, scripts de todo tipo, animaciones, sistemas de partículas, extensiones para tu editor, y un largo etcétera.

¿No tienes conocimientos de desarrollo de juegos para móvil?

También es muy probable que aunque seas desarrollador de aplicaciones móviles, no controles muy bien el mundo de los juegos. Si estás decidido a aprender un poco más sobre entornos de desarrollo de juegos puedes investigar sobre la herramienta Cocos 2D o sobre Marmalade. Pero antes de empezar a crear un proyectos te recomendamos que eche sun vistazo a nuestra guía para crear juegos.

Si ya tienes tu idea para crear un juego y quieres olvidarte de los aspectos más técnicos y obtener resultados de calidad puedes contar con Yeeply para llevar a cabo tu idea. Encontraremos al equipo de desarrolladores certificados, con experiencia en proyectos similares al tuyo y sobre todo te aseguras la entrega en los tiempos estimados y a un precio competitivo. ¿Hablamos sobre tu idea de desarrollo de juegos?

desarrolladores_apps_webs

Actualizado: 18 de Agosto de 2016

Comentarios

Los comentarios están desactivados para esta publicación