UNITY 3D una
PLATAFORMA PARA EL DESARROLLO DE JUEGOS
DADME
UN PUNTO DE APOYO Y MOVERÉ EL MUNDO. Esa es la
famosa cita de Arquímedes que se suele sacar a colación cuando se habla de la
palanca y aunque tiene poco que ver con videojuegos creo que su significado
metafórico podemos aplicarlo perfectamente en un símil parecido. Si en lugar de
punto de apoyo hablamos de herramientas y en lugar de mover el mundo nos
ponemos un objetivo menos heroico y descabellado como desarrollar un juego.
En definitiva, se trata de las herramientas y
de la calidad y disponibilidad que estas tengan. Por eso cuando se planteó
realizar un especial en Vida Extra sobre herramientas para desarrollar juegos que hayan tenido una incidencia
bestial en los últimos años, un nombre sobresalía por encima de todos los
demás: Unity. El conocido motor gráfico ha cambiado las reglas del juego y ha
posibilitado que estudios pequeños sin un ejército de programadores y artistas
logren desarrollar sus juegos e incluso venderlos en diversas plataformas con
resultados más que dignos. Hoy iniciamos una serie de artículos para acercarnos
a este peculiar motor multiplataforma.
El objetivo de este artículo es servir de introducción
al estudio de la creación de juegos con una
plataforma fácil de utilizar como
lo es UNITY 3D, ya que es una de las plataformas para desarrollar videojuegos
más completas que existen. Permite la creación de juegos con las dimensiones
playworld (o mundo del juego), las mecánicas del juego y la playformance (o dinámica
del juego) para múltiples plataformas a
partir de un único desarrollo.
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.
“Podemos decir que Unity3D ha dedicado más
tiempo a prepararse para poder desarrollar apps en esta plataforma –Android– y
se nota a la hora de sus prestaciones”. Es decir, que la fuerza de Google
también se percibe a la hora de desarrollar juegos con 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 representa un 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.
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.
Limitaciones
del desarrollo de juegos con Unity3D
Como toda herramienta, su fuerza su potencia
en muchos aspectos tiene una contrapartida. Unity también tiene limitaciones
con respecto a otras herramientas del sector.
•La más evidente es que no nos permite
empezar desde unas bases, o de unas plantillas, por decirlo de alguna manera, e
ir luego implementando detalles. Si no que debes empezar de cero con cada
juego. “Al ser un motor de propósito general no te da nada hecho. Hay gente que
espera que desarrollar juegos sea todo “arrastrar y soltar”, y no es para nada
así. De hecho siempre he pensado que sería mal motor cualquiera que permita
trabajar así”
•Desde el punto de vista gráfico, sigue yendo
a la cola en comparación con otros motores como UDK. Aunque como contrapartida,
Unity 3D permite programar ‘shaders’, eso sí, de nuevo desde cero.
•En cuanto a desarrollar juegos con Unity
específicamente para smartphones, no encontramos trabas. Ni si quiera tenemos
que pagar licencias extraordinarias. Por ejemplo, Unity Free permite publicar
en Android, iPhone y Windows Phone, las plataformas más demandadas desde hace
un par de años.
En conclusión, podemos decir que Unity 3D es
una herramienta muy válida también para principiantes y para usuarios que no
disponen de muchos recursos para contratar a otras personas para el desarrollo
de juegos. Además es este grupo de desarrolladores freelances y grupos pequeños
los más beneficiados al utilizar Unity.