Unity

Publicada por primera vez en 2005, Unity es hoy día uno de los entornos de desarrollo más populares, especialmente en la formación de desarrolladores de videojuegos y en la creación de experiencias interactivas multiplataforma.

Para hacer más accesible su comprensión, repartimos la información sobre este entorno en estos grandes temas:

  1. Introducción
  2. Arquitectura
  3. Programación
  4. Herramientas
  5. Cuestiones avanzadas

Los temas de Arquitectura, Programación y Herramientas están pensados para irse estudiando no de forma secuencial sino concurrente, intercalando lecciones de estos temas.

Conviene que elijas bien la versión de Unity con la que vas a trabajar, porque los proyectos realizados en una versión no tienen por qué funcionar en otra. Lo aconsejable es empezar a usar la última versión LTS (Long-Term Service) que haya.

Más información

Si estás empezando en el diseño y desarrollo de videojuegos y en el uso de Unity tal vez este glosario de términos te resulte útil.

Recopilamos aquí algunos libros o cursos interesantes para aprender a desarrollar videojuegos con el entorno de Unity y el lenguaje C#.

Si no sabes programar, empieza desde cero por los recursos que encontrarás aquí:

La documentación oficial de Unity está llena de tutoriales y ejemplos sobre Unity y C#, posiblemente es el mejor punto de partida. Algunos de ellos con los que puedes comenzar:

Con un conocimiento básico de Unity, ya es posible abordar lo siguiente:

Microsoft ofrece una guía para diseñar y para programar código C#. Unity tiene también un libro electrónico para programar con estilo en C#, e incluso consejos sobre cómo puedes crear tu propia guía de estilo.

Los microgames que encontrarás en la web de Unity son ejemplos modulares muy desarrollados con los que aprender directamente sobre videojuegos hechos por los propios creadores de Unity. Y también tienes canales como Mix and Jam que explican mecánicas de videojuegos famosos y las recrean en Unity, compartiendo el código en repositorios de GitHub.

Para los que prefieran seguir un libro, hay muchos donde elegir con enfoques más o menos similares:

  • Developing 2D Games with Unity. Independent Game Programming with C#. Jared Halpern. Apress 2019.
  • Basic Math for Game Development with Unity 3D. A Beginner’s Guide to Mathematical Foundations. Kelvin Sung, Gregory Smith. Apress
    2019.
  • Game Programming with Unity and C#. A Complete Beginner’s Guide. Casey Hardman. Apress 2020.
  • Gibson Bond, Jeremy. Introduction to Game Design, Prototyping, and Development: From Concept to Playable Game with Unity and C#.
    Second edition. Addison-Wesley, 2018.
  • DaGraça, Micael; Lukosek, Greg. Learning C# 7 by Developing Games with Unity 2017: Learn C# Programming by Building Fun and
    Interactive Games with Unity. Third edition. Packt Publishing, 2017.
  • Ferro, Lauren S.; Sapio, Francesco. Unity 2017 2D Game Development Projects: Create Three Interactive and Engaging 2D Games with
    Unity 2017. Packt Publishing, 2018.
  • Geig, Mike. Sams Teach Yourself Unity 2018 Game Development in 24 Hours. Third edition. Sams, 2018.
  • Hocking, Joseph. Unity in Action: Multiplatform Game Development in C#. Second Edition. Manning Publications, 2018.
  • Lavieri, Edward. Getting Started with Unity 2018: A Beginner’s Guide to 2D and 3D Game Development with Unity. Third edition. Packt
    Publishing, 2018.
  • Lintrami, Tommaso. Unity 2017 Game Development Essentials: Build Fully Functional 2D and 3D Games with Realistic Environments,
    Sounds, Physics, Special Effects, and More! Third edition. Packt Publishing, 2018.
  • Thorn, Alan. Mastering Unity 2017 Game Development with C#: Create Professional Games with Solid Gameplay Features and
    Professional-Grade Workflow. Second edition. Packt Publishing, 2017.
  • Zucconi, A.: The Further You Are From (0,0,0), The Messier Stuff Gets: Here’s How To Fix It, tutoriales para ir más allá de la aritmética de punto flotante en C# y evitar imprecisiones en la simulación en Unity. Precisamente un equipo de la UCM trabaja en hardware que mejora la precisión de la representación de números reales (usando POSITS) para trabajar con redes neuronales.

Como recursos más genéricos sobre el desarrollo de videojuegos tenemos los siguientes:

  • Gregory, J.: Game Engine Architecture, 3rd Edition. A K Peters/CRC Press (2018)
  • Millington, I.: Artificial Intelligence for Games. CRC Press, 3rd Edition (2019)
  • Perry, D., DeMaria, R.: David Perry on Game Design: A Brainstorming Toolbox. Charles River Media (2009)
  • Schell, J.: The Art of Game Design: A Book of Lenses. A. K. Peters / CRC Press. 3rd Edition (2019)
  • Vallejo Fernández, D., Martín Angelina, C.: Desarrollo de Videojuegos: Un Enfoque Práctico, 4ª edición. Experto en Desarrollo de Videojuegos, UCLM (2015)