software de videojuegos unityVideojuegos

Unity 101 o cómo hacer videojuegos de forma fácil 

Para empezar a describir las funciones de Unity, es un motor de videojuegos hecho por Unity Technologies lanzado en junio de 2005 en la conferencia mundial de desarrolladores de Apple, aunque en su momento solo servía como motor de juegos para Mac OS, ahora Unity sirve también para Windows y Linux

Unity ha crecido rápidamente debido a la cantidad de desarrolladores independientes que por sus motivos no pueden crear un motor de videojuegos, además, Unity puede hacer que el proyecto sea tanto en 2D como en 3D 

Características de Unity 

Unity está compuesto por el lenguaje de programación C y C# por lo que hace que varios proyectos que cada programador tenga puedan hacerse sin ningún otro problema 

De acuerdo con la página web de inteligencia artificial ChatGPT estas serían algunas funciones de Unity: 

  • Motor Gráfico 3D y 2D: Unity ofrece un sólido motor gráfico que permite el desarrollo tanto de juegos en 3D como en 2D. 
  • Física: Proporciona un sistema de física que simula el comportamiento realista de objetos, como colisiones, gravedad y cinemática. 
  • Animaciones: Permite la creación de animaciones tanto para personajes como para objetos, con soporte para animaciones esqueléticas (rigging) y animaciones de partículas. 
  • Audio: Unity cuenta con herramientas para la gestión de audio, incluyendo la reproducción de sonidos, música de fondo y efectos de sonido. 
  • Redes y Multijugador: Facilita el desarrollo de juegos en red y multijugador, con funciones para la conexión entre jugadores y la sincronización de datos. 
  • Inteligencia Artificial (IA): Ofrece herramientas para la implementación de sistemas de IA, como navegación de personajes, toma de decisiones y comportamientos. 
  • Realidad Virtual (RV) y Realidad Aumentada (RA): Unity es compatible con el desarrollo de experiencias de realidad virtual y aumentada, lo que lo hace ideal para aplicaciones en dispositivos como Oculus Rift, HTC Vive, HoloLens, entre otros. 

¿Qué hace único a Unity? 

Permite crear videojuegos para diversas plataformas (PC, videoconsolas, móviles, etc.) mediante un editor visual y programación vía scripting, y pudiendo conseguir resultados totalmente profesionales. Prueba de ello son juegos muy famosos creados con Unity; tales como “Monument Valley”, “Gris” o “Cuphead”. Además, es muy utilizado en la mayoría de los desarrollos de videojuegos para móvil. 

Anteriormente se dijo que una característica que hacía especial a Unity es que se pueden hacer varias funciones sin importar el proyecto, aunque de acuerdo (Asensio, s/f) son más características: 

Uno de los grandes puntos fuertes que tiene Unity es la gran comunidad de usuarios que tiene. Esto permite tener acceso a multitud de documentación, foros y comunidades donde se preguntan y resuelven dudas, donde se explican diferentes métodos y técnicas nuevas, etc. Además, es uno de los motores predilectos para aprender a desarrollar videojuegos; ya que supone una puerta de acceso perfecta para aquellos que quieren incursionar en esta industria. 

Videojuegos creados en Unity 

A continuación, una lista de algunos videojuegos que fueron creados gracias a este motor: 

  • Super Mario Run: Sin duda, Super Mario es uno de los personajes más icónicos de los videojuegos. Lanzado en 2017, Este videojuego es uno de los más actuales del popular personaje de Nintendo y se basa en superar diferentes niveles con obstáculos con nuestro personaje en carrera horizontal y en 2D. 
    Sin perder la esencia ni personajes de la saga, este juego obtuvo 37 millones de descargas en tan solo 3 días. Sin duda, un buen ejemplo de un gran juego en 2D hecho con Unity. 
  • Temple Run: Similar al juego anterior, pero en 3D es otro ejemplo de juegos para móviles hechos con Unity 
  • Rust: Este popular juego para ordenador, basado en la supervivencia y la evolución del personaje, es otro ejemplo de juego en 3D con funcionalidad multijugador online. 
  • Pokemon Go: Sin duda, revolucionó por completo el mundo de los videojuegos para móvil a nivel mundial. Este juego para dispositivos móviles, que hace interactuar los Pokémon con la ubicación real del espectador generó un boom incondicional en el momento de su lanzamiento, haciendo que millones de usuarios de todas las edades saliesen a la calle a capturar a sus pokemon favoritos. 
  • Resident Evil: Umbrella Corps: Este videojuego, desarrollado para PS4 y PC demuestra que con Unity se pueden realizar videojuegos con muchos registros. En este caso, el tema de terror, un shooter del estilo “survival horror” de la saga más popular de videojuegos de zombies. Además, este nos sirve como ejemplo de que también los grandes estudios y proyectos utilizan este motor de juego. 
  • Asasin´s Creed Identity: Asasin´s Creed es una de las mejores sagas de videojuegos. En 2016 la saga lanza esta edición para plataformas móviles, desarrollada por el motor Unity. 
  • HearthStone: Otro ejemplo que se diferencia de los anteriormente citados, es el de este juego de cartas basado en el “universo Warcraft” para PC y plataformas móviles. 

¿Como utilizar Unity? 

Para empezar en Unity es fundamental conocer las herramientas básicas con las que encontrarás una vez inicies el programa.  

Explorando la interfaz de Unity 

La interfaz de Unity es bastante sencilla. Se compone de cinco ventanas diferentes: 

  • Escena: construcción del juego de forma visual 
  • Proyecto: dispone de los recursos. Incluye scripts, texturas y otros recursos de interés 
  • Jerarquía: lista de todos los objetos utilizados 
  • Inspector: propiedades y detalles de cualquier juego o recurso 
  • Juego: vista previa del juego en el editor 

En la parte superior encontramos la barra de herramientas con diferentes botones: herramientas de transformación, interruptores de los Gizmos, control de reproducción, menús de Layer y de Layout. 

Aquí puedes reproducir un vídeo tutorial sobre cómo empezar en Unity a través de la explicación de su interfaz.  

Creando un proyecto 

Desde el menú “File” accedes al apartado “New Project”. A continuación, se establece su nombre, las opciones con las que quieres que cuente el proyecto y la localización en la que quieras guardarlo.  

El siguiente punto consiste en que escojas si el proyecto va a realizarse en 2D o 3D y, posteriormente, escoger si quieres utilizar el paquete de Assets totalmente gratuito (imágenes, estilo de iluminación, etc) o ignorarlo.  

“Create project” y empezamos a crear 

Importando recursos 

“My Unity Project” > Assets 

La carpeta de Assets es el lugar donde debes guardar los archivos que importes al proyecto, de tal forma que podrás visualizarlo en tu Project View. 

Aprendiendo a programar en Unity 

Algo fundamental para saber cómo empezar en Unity es entender, aunque sea un poco, cómo funciona su programación y de qué se compone: lenguaje, variables, condicionales, bucles y la creación de scripts.  

El lenguaje de programación C# en Unity 

En Unity el lenguaje de programación se escribe en C#, un lenguaje sencillo y muy completo.  

Se utiliza para escribir los scripts a lo largo de la creación de todo el videojuego.  

Variables, condicionales y bucles 

Una variable es aquella información que se guarda en nuestro ordenador al programar con el fin de volver a utilizarla en otro momento. Por otro lado, las condicionales son aquellas ejecuciones entre las que elegimos y, por último, los bucles es un conjunto de secuencias que repetimos en el tiempo. 

Creando scripts en Unity 

Los scripts se crean dentro de Unity. Accede al menú principal y selecciona Activos > Crear > Script C+ 

A partir de ahí puedes acceder a la carpeta que hayas seleccionado para guardar el script creado y verás el guion nuevo.  

Desarrollo de un juego en Unity 

Si tienes interés por el mundo de los videojuegos te encantará el proceso del desarrollo de este, ya que es el momento en el que pones a prueba tu creatividad y tus conocimientos sobre Unity. A la hora de desarrollar un videojuego debes crear los personajes y objetos, diseñar los diferentes niveles y escenarios que componen el videojuego y programar su lógica.  

Creación de personajes y objetos 

La creación de personajes y objetos se compone de tres pasos: modelado, rigging y skinning.  

  • Modelado: proceso en el que se crea la forma del personaje. Conviene que utilices los bocetos de tu personaje para adaptarte a su escala y fisionomía y evitas problemas.  
  • Rigging: Procesión de creación del esqueleto del personaje para que realice los movimientos idóneos.  
  • Skinning: proceso de unir el mesh (modelado) al esqueleto (rigging) para que ambos formen una única pieza.  

Diseño de niveles y escenarios 

En cuanto a la creación de niveles y escenarios conviene que “volar tu imaginación”. Da lugar a tu creatividad, así crearás experiencias mucho más novedosas. Además, conviene que las creaciones sean interactivas y divertidas para que den vida al desarrollo del videojuego y el jugador lo disfrute mucho más. 

Programación de la lógica del juego  

Para finalizar, se creará la programación del videojuego basándote en el lenguaje C++ para que todos los elementos se complementen, personajes, escenarios, niveles para que la creación de tu primer videojuego 3D en tiempo real y multiplataforma cumpla tus expectativas.  

Diferencias entre Unity y Unreal  

Una de las herramientas imprescindibles a la hora de crear un videojuego es el motor del juego. Estos softwares ofrecen en un mismo espacio herramientas que permitan diseñar y crear cualquier entorno interactivo. Por esta razón, un game engine es el corazón y el cerebro de cualquier videojuego. Entre estos motores destacan dos principalmente: Unity y Unreal. En 1998, Epic Games, conocida por aquel entonces como Epic MegaGames, lanzó un título que marcó un antes y un después en la industria de los videojuegos y es que no sólo creó una popular franquicia, sino que por primera vez apareció en el mercado el motor de juego Unreal Engine. Siete años más tarde, en 2005, se presentó en la Conferencia Mundial de Desarrolladores de Apple la primera versión de Unity. Desde entonces estas dos herramientas se han consolidado en la industria de los videojuegos. Pero ¿qué ventajas trabajan con cada uno? Y sobre todo ¿Cuáles son las principales diferencias entre Unity y Unreal? 

na de las principales diferencias entre Unity y Unreal, reside principalmente en las plataformas que soportan estos software. Unity se ha consolidado en los últimos años como el soporte multiplataforma líder en la industria por la versatilidad que ofrece a la hora de desarrollar videojuegos en más de 25 plataformas, entre las que destacan, iOS, Android, Oculus, Steam VR, Gear VR, Windowa, Mac, Linux, PlayStarion 4, Xbox One, Nintendo 3DS o Nintendo Switch. 

Unreal Engine 4, por su parte, está diseñado para plataformas como Microsoft Windows, macOS, Linux, SteamOS, HTML5, iOS, Android, PlayStation 4, Nintendo Switch, Xbox One SteamVR/HTC Vive, Oculus Rift, PlayStation VR, Google Daydream, OSVR y Samsung Gear VR. 

tra de sus grandes diferencias entre Unity y Unreal es el lenguaje de programación. Unreal ofrece dos tipos de lenguajes: C++ y una tecnología denominada Blueprint Visual Scripting, un sistema que permite a los desarrolladores crear videojuegos de una forma más sencilla. Este método, además, funciona como complemento a la programación C++, el lenguaje por excelencia más utilizado en la creación de videojuegos. En este sentido, podrían definirse los Blueprints como assets que están dentro del propio editor de Unreal y que se pueden organizar en nodos. Esta herramienta ofrece un sinfín de posibilidades como, por ejemplo, crear o modificar cualquier elemento o interaccionar con el entorno. 

En cambio, en Unity el lenguaje utilizado es el C# (C Sharp en su versión inglesa) un lenguaje de programación diseñado por Microsoft y que está orientado principalmente a objetos. Este tipo de programación usa los objetos y las interacciones de estos para diseñar videojuegos, programas informáticos o aplicaciones. 

Ambos softwares cuentan con una base de datos muy interesante en la cual encontrar documentación sobre cómo utilizar cada una de las herramientas que ofrecen tanto Unity como Unreal. En la web de Unity podemos acceder al manual de usuario o información sobre la API (Application Programming Interface), así como a guías de cómo actualizar los distintos servicios que tiene este programa como, por ejemplo, Unity Ads o Unity Analytics. Todo ello influye en la curva de aprendizaje que en el caso de Unity es baja-media, gracias en parte a toda la información que existe en su página web oficial. 

Unreal ofrece lo mismo pero estructurado de una manera diferente, en su web oficial podemos encontrar un manual para utilizar Unreal Engine, así como para sacar el máximo provecho a sus características. En esta misma web también podemos aprender gracias a los distintos tutoriales o a la completa guía de programación. En este caso, las diferencias entre Unity y Unreal es que Unreal Engine tiene una curva de aprendizaje media-alta por lo que toda la documentación que podemos encontrar en la web de Unreal es muy útil para entender cómo funciona este software. 

Créditos:

Autor: Jaime Sebastián Ovallos Muñoz

Editor: Carlos Iván Pinzón Romero


Código: UCPAG-3

Universidad: Universidad Central

Fuentes:

Álvarez, E. (2017, abril 12). Guía y trucos para Sonic Dash: Consejos para correr más metros. Hobby Consolas. https://www.hobbyconsolas.com/guias-trucos/sonic-dash/guia-trucos-sonic-dash-consejos-correr-metros-95346 

Gutiérrez, M. J. (2017, abril 6). Descarga uno de los mejores shooters en Android: N.O.V.A. Legacy. El Español. https://www.elespanol.com/elandroidelibre/aplicaciones/juegos/20170406/descarga-mejores-shooters-android-nova-legacy/206480289_0.html 

Lightbox, C. (2020, marzo 8). Las diferencias entre Unity y Unreal. Lightbox Academy. https://lboxacademy.es/blog/diferencias-entre-unity-y-unreal/ 

Krüger, J., Möllers, F., & Vogelgesang, S. (2016). Pokémon GO. Informatik-Spektrum, 39, 427–435. https://doi.org/10.1007/s00287-016-0993-2 

ChatGPT. (s/f). Openai.com. Recuperado el 20 de febrero de 2024, de https://chat.openai.com/ 

(Games, 2020)
Games, M. [@MosartGames]. (2020, mayo 25). ¿Qué es UNITY? - En 3 MINUTOS | Tutorial Unity. Youtube. https://www.youtube.com/watch?v=R-6q1GcE07o