Por qué debes aprender a programar con Unity
En este post vamos a ver que nos ofrece Unity y por qué es una de las mejores opciones para empezar en el mundo del videojuego.
¿Qué es Unity?
Unity es uno de los Game Engines que más ha ganado en popularidad en los últimos años. Pero para poder entender mejor qué nos puede ofrecer Unity debemos entender un poco qué son los Game Engines. Un Game Engine es un software que ayuda al desarrollador facilitando la labor de desarrollo a través de componentes y funciones, e integrando diferentes motores (físicas, render, animación…) dentro de la misma herramienta. Además la mayoría de Engines facilitan la publicación de los proyectos en diferentes plataformas. La tendencia actual es facilitar también la integración de los diferentes gráficos de forma visual, ya sean sprites en el caso de Engines 2D o mallas en el caso de Engines 3D.
Pro o Indie
Aunque Unity siempre ha tenido una versión gratuita muchas de las opciones de publicación estaban disponibles en la versión de pago (como podría ser la posibilidad de publicar para dispositivos móviles), a partir de la versión 5 de Unity la filosofía ha cambiado y las limitaciones de versión gratuita son mucho menores limitando eso sí el beneficio que se pueden conseguir con los títulos desarrollados con dicha versión. Esto facilita mucho el desarrollo para gente que está empezando o incluso para estudios indies que pueden ahorrar así el precio de las diferentes licencias del Engine, sin perder demasiadas características ni opciones.
Versatilidad, integración y facilidad
Como ya he comentado anteriormente, Unity nos permite publicar para multitud de plataformas diferentes (Windows, Linux, Html5, Android, iOS, tvOS, PlayStation, Xbox, Windows Phone, etc). Lo que la hace una herramienta realmente muy versátil. Además en muchos casos la publicación es prácticamente directa sin pasos intermedios (como puede ser el ejemplo de Android), lo cual es muy agradecido. Unity cuenta con un interfaz intuitivo y amigable, lo que facilita la curva de aprendizaje del IDE, aunque esto no nos debe llevar a engaño, la interfaz de Unity ofrece muchas posibilidades y alguna que otra opción más escondida.
Otra de las ventajas que nos ofrece Unity es la integración de diferentes servicios dentro del propio Engine, sin tener que acudir a herramientas de terceros. Haciendo increíblemente fácil al desarrollador la integración de anuncios, compras o analíticas dentro del juego o incluso implementar un sistema multijugador de forma sencilla entre otros servicios ofrecidos por la compañía.
Otros puntos interesantes que podemos encontrar dentro de Unity son el uso de prefabs. Los prefabs son objetos que podemos definir para poder añadir a nuestra escena o para poder crear instancias desde código y que pueden ser tan complejas como necesitemos combinando script, modelos, UI, etc. Y la existencia de un propio motor de UI, que nos permitirá crear toda el interfaz de usuario responsiva de una forma rápida y sencilla, mediante una potente herramienta.
Unity acepta diferentes lenguajes de programación, entre ellos C#. Un lenguaje que nos ofrece amplias posibilidades y ventajas. C# tiene también una suave curva de aprendizaje. Y nos permite llevar a nuestro desarrollo todo un conjunto de cosas que podemos encontrar en C# como puede ser el uso de consultas LINQ, iteradores, delegados anónimos, etc.
Unity Asset Store y Comunidad
Para cerrar vamos a hablar sobre dos elementos que nos pondrán las cosas más fácil. El primero de ellos es el Asset Store, como su nombre indica es una tienda de Assets donde podremos encontrar una amplia variedad de material como pueden ser, scripts, modelos, sonidos, música o incluso proyectos completos a diversos precios (incluyendo material gratuito) para poder incorporar a nuestros propios proyectos. Algo de gran utilidad si no somos grandes artistas o grandes programadores y queremos ir un poco más allá en los trabajos que realizamos. Por último, y no por ello menos importante, hay que dedicar unas palabras a la comunidad de usuarios de Unity. Ya que dicha comunidad es realmente grande y activa, gracias a lo que podemos encontrar soluciones, ayuda y comentarios a nuestras dudas o problemas tanto en los propios foros de Unity como en otros foros especializados en el mundo del desarrollo.
En conclusión, Unity es un gran Engine tanto para un entorno de desarrollo indie como profesional. Si te encuentras en alguno de estos casos:
-
Un desarrollador individual o un generalista que busca una herramienta robusta, completa y fácil de manejar
-
Alguien que quiere introducirse en el mundo de los videojuegos por hobby
-
Un estudiante (o futuro estudiante) que quiere aprender a realizar videojuegos
-
Alguien que quiere realizar videojuegos con una herramienta potente pero asequible para crear su propio portfolio
Sin duda, te recomendamos que empieces a aprender hoy mismo Unity 3D, ya que como hemos dicho es uno de los Engine con más éxito. ¿Conoces alguno de los siguientes títulos? ¿Pokemon GO, Super Mario Run, Inside? No lo dudes más.
Curso relacionado: Curso Superior de Diseño y Desarrollo de Videojuegos
*Imagen principal de Technolust en Made with Unity games.