Prefacio
Este trabajo se ha traducido utilizando IA. Agradecemos tus opiniones y comentarios: translation-feedback@oreilly.com
Bienvenido al Libro de recetas de desarrollo de Unity, ¡segunda edición! El 3D en tiempo real y las herramientas de desarrollo de juegos han ido viento en popa en las dos últimas décadas, y más gente que nunca está trabajando en proyectos que van desde enormes juegos "Triple A" a proyectos de aficionados construidos en el tiempo libre de una sola persona.
Estamos increíblemente emocionados de poder actualizar este libro, y realmente orgullosos de nuestro trabajo en él. Esperamos que te resulte útil en tu desarrollo de software con el motor Unity. Unity ha recorrido un largo camino desde que empezamos a trabajar con él en 2007, y cuanto más lo utilices, más ideas se te ocurrirán sobre cómo puedes utilizarlo, por qué podrías utilizarlo, ¡y así sucesivamente! Es todo muy emocionante. Confía en nosotros, hemos pasado por eso.
En Secret Lab, utilizamos Unity para crear la mayoría de nuestros videojuegos. Somos conocidos sobre todo por haber creado juegos infantiles en Australia, el ganador del BAFTA y del IGF Night in the Woods (Finji), y la popularísima herramienta Yarn Spinner. No hemos dejado de usar Unity desde que lo descubrimos.
En este libro, hemos reunido una selección de recetas para resolver problemas comunes que nos hemos encontrado una y otra vez mientras construíamos con Unity. Este libro no cubrirá todas y cada una de las pequeñas cosas que quieras saber sobre Unity, pero esperamos que cubra la mayoría de las cosas que harías a diario en el desarrollo de videojuegos. La segunda edición del libro añade un montón de material nuevo, basado en los cambios que Unity ha adoptado a lo largo de los años desde el último libro, además de actualizaciones de todo lo que ha cambiado. Unity no avanza increíblemente rápido, pero es importante estar al día.
Estas recetas tratan de cosas sobre las que nos gustaría haber tenido a alguien a quien preguntar cuando empezábamos a utilizar Unity. ¡Esperamos de verdad que te ayuden!
Es un momento realmente emocionante para utilizar Unity. El mundo del desarrollo de juegos y en tiempo real es cada día más grande e interesante, y las herramientas y tecnologías que utilizamos son mejores que nunca. ¡Sal y construye grandes cosas!
Público y enfoque
Este libro asume que conoces un poco el lenguaje de programación C#, o un lenguaje similar como C++, Java, Go, Swift, Python u otros lenguajes comunes, pero que no sabes nada de Unity. Este libro pretende ser un compañero para poner en marcha tus juegos más rápidamente.
Consejo
Si te gusta nuestro estilo, y quieres leer más material sobre Unity de nuestra parte, puedes aprender Unity desde cero en Desarrollo de juegos para móviles con Unity, también disponible de la buena gente de O'Reilly.
Nuestras capturas de pantalla están tomadas con macOS, pero todo de lo que hablamos es aplicable en general a Unity en Windows, macOS o Linux.
Organización de este libro
Este libro está organizado en 13 capítulos:
-
El capítulo 1, "Trabajar en Unity", presenta los conceptos fundamentales que debes conocer para utilizar Unity: objetos de juego, componentes, escenas y cómo trabajar con el propio editor de Unity.
-
El Capítulo 2, "Scripting", cubre la interfaz de scripting de Unity, que es la forma en que escribes el código real que define cómo funciona tu proyecto. Después de establecer los fundamentos, nos sumergiremos en algunos ejemplos prácticos, incluyendo cómo escribir un sistema de guardado y carga, cómo trabajar eficientemente con objetos y cómo almacenar tus datos de forma que tanto tu código como Unity puedan trabajar con ellos fácilmente.
-
En el Capítulo 3, "Entrada", aprenderás a obtener la entrada del usuario mediante el teclado, el ratón y los gamepads. También veremos cómo configurar objetos del juego que reaccionen a eventos de entrada, como que el usuario haga clic en ellos.
-
El capítulo 4, "Matemáticas", cubre los fundamentos de algunos conceptos matemáticos que es útil conocer para desarrollar juegos, como los vectores, las matrices y los cuaterniones. También veremos algunos usos prácticos de estos conceptos, como detectar si un objeto está delante del jugador o no.
-
El capítulo 5, "Gráficos 2D", trata de los gráficos 2D y los sistemas de física que incorpora Unity. Aprenderás a mostrar sprites, ordenarlos y hacer que reboten entre sí.
-
El capítulo 6, "Gráficos 3D", trata del sistema de materiales y sombreado de Unity: cómo funcionan los materiales y los sombreadores, cómo construir un sombreador en Unity y cómo obtener los mejores resultados en tus escenas.
-
En el Capítulo 7, "Física 3D y control de personajes", aprenderás a hacer que el sistema de física 3D de Unity haga lo que necesitas para realizar tareas habituales del juego, como coger y lanzar objetos, y crear una plataforma móvil en la que pueda subirse el jugador.
-
El capítulo 8, "Animación y movimiento", presenta el sistema de animación utilizado en Unity, y trata temas como la forma de configurar un personaje para que se mezcle entre distintos estados de animación, y cómo integrar el movimiento del jugador con la animación del personaje. También presentaremos el sistema de cámaras de Unity, y discutiremos cómo configurar cámaras que se mueven para seguir objetivos.
-
El Capítulo 9, "Lógica y jugabilidad", trata sobre la creación de la jugabilidad con la que interactúan los jugadores. Aquí hay una amplia gama de tareas de juego comunes, como gestionar el estado de una misión que has dado al jugador, controlar si un coche de carreras está tomando un atajo demasiado largo y gestionar cómo se reparte el daño entre los objetos de tu juego.
-
En el Capítulo 10, "Comportamiento, simulación e IA", aprenderás a añadir cerebros a tus personajes, incluida la capacidad de detectar cuándo el jugador puede ser visto, la capacidad de navegar por un espacio y evitar obstáculos, y la capacidad de descubrir un lugar donde no pueden ser vistos. El capítulo también explora brevemente el uso de Unity para simulaciones, utilizando técnicas de aprendizaje automático para la IA real.
-
El capítulo 11, "Sonido y música", presenta los sistemas de audio de Unity. Cubriremos los aspectos básicos de la reproducción de sonidos, y luego pasaremos a funciones más avanzadas, como el enrutamiento de audio a varios grupos, y la atenuación automática de la música cuando un personaje está hablando.
-
El capítulo 12, "Interfaz de usuario", trata de las herramientas para construir una interfaz que tus jugadores puedan ver e interactuar con ella. Este capítulo también contiene una sección sobre cómo construir tus propias herramientas en Unity ampliando el editor.
-
El capítulo13, "Archivos, redes y capturas de pantalla", nuestro capítulo final, explora las redes, la obtención de datos de la web y el guardado de capturas de pantalla del código.
Convenciones utilizadas en este libro
En este libro se utilizan las siguientes convenciones tipográficas:
- Cursiva
-
Indica nuevos términos, URL, direcciones de correo electrónico, nombres de archivo y extensiones de archivo.
Constant width
-
Se utiliza en los listados de programas, así como dentro de los párrafos para referirse a elementos del programa como nombres de variables o funciones, bases de datos, tipos de datos, variables de entorno, sentencias y palabras clave.
Constant width bold
-
Muestra comandos u otros textos que deben ser tecleados literalmente por el usuario.
Consejo
Este elemento significa un consejo o sugerencia.
Nota
Este elemento significa una nota general.
Advertencia
Este elemento indica una advertencia o precaución.
Utilizar ejemplos de código
Si quieres descargar todo nuestro código de las recetas a lo largo de este libro, dirígete al repositorio GitHub del libro. También tenemos una página web dedicada a este libro, donde guardamos el código fuente, así como otras descargas y recursos.
Este libro está aquí para ayudarte a hacer tu trabajo. En general, si se ofrece código de ejemplo con este libro, puedes utilizarlo en tus programas y documentación. No es necesario que te pongas en contacto con nosotros para pedirnos permiso, a menos que estés reproduciendo una parte importante del código. Por ejemplo, escribir un programa que utilice varios trozos de código de este libro no requiere permiso. Vender o distribuir un CD-ROM de ejemplos de los libros de O'Reilly sí requiere permiso. Responder a una pregunta citando este libro y el código de ejemplo no requiere permiso. Incorporar una cantidad significativa de código de ejemplo de este libro en la documentación de tu producto sí requiere permiso.
Agradecemos, pero no exigimos, la atribución. Una atribución suele incluir el título, el autor, la editorial y el ISBN. Por ejemplo "Unity Development Cookbook" de Paris Buttfield-Addison, Jon Manning y Tim Nugent (O'Reilly). Copyright 2023 Secret Lab Pty. Ltd., 978-1-098-11371-1".
Si crees que el uso que haces de los ejemplos de código no se ajusta al uso legítimo o al permiso concedido anteriormente, no dudes en ponerte en contacto con nosotros en permissions@oreilly.com.
Aprendizaje en línea O'Reilly
Nota
Durante más de 40 años, O'Reilly Media ha proporcionado formación tecnológica y empresarial, conocimientos y perspectivas para ayudar a las empresas a alcanzar el éxito.
Nuestra red única de expertos e innovadores comparten sus conocimientos y experiencia a través de libros, artículos y nuestra plataforma de aprendizaje online. La plataforma de aprendizaje en línea de O'Reilly te ofrece acceso bajo demanda a cursos de formación en directo, rutas de aprendizaje en profundidad, entornos de codificación interactivos y una amplia colección de textos y vídeos de O'Reilly y de más de 200 editoriales. Para más información, visita https://oreilly.com.
Cómo contactar con nosotros
Dirige tus comentarios y preguntas sobre este libro a la editorial:
- O'Reilly Media, Inc.
- 1005 Gravenstein Highway Norte
- Sebastopol, CA 95472
- 800-889-8969 (en Estados Unidos o Canadá)
- 707-829-7019 (internacional o local)
- 707-829-0104 (fax)
- support@oreilly.com
- https://www.oreilly.com/about/contact.html
Tenemos una página web para este libro, donde se enumeran erratas, ejemplos y cualquier información adicional. Puedes acceder a esta página en https://oreil.ly/unity-dev-cookbook.
Para obtener noticias e información sobre nuestros libros y cursos, visita https://oreilly.com.
Encuéntranos en LinkedIn: https://linkedin.com/company/oreilly-media
Síguenos en Twitter: https://twitter.com/oreillymedia
Míranos en YouTube: https://youtube.com/oreillymedia
Agradecimientos
Jon da las gracias a su madre, a su padre y al resto de su alocadamente extensa familia por su enorme apoyo.
Paris da las gracias a su increíble madre, sin la cual no estaría haciendo casi nada, en realidad, y mucho menos con entusiasmo, y a su increíble esposa, Mars. No podría hacer esto sin los dos.
Tim da las gracias a sus padres y a su familia por haber soportado su deslucida actitud ante la vida.
Todos queremos dar las gracias a nuestra amiga Rachel Roumeliotis, cuya habilidad y consejos han sido inestimables en nuestra escritura durante la última década.
Gracias a nuestra editora de este libro, Michele Cronin. Disfrutamos mucho trabajando contigo, y no podemos esperar a empezar un nuevo libro. También muchas gracias a Jeff Bleiel, nuestro editor en la primera edición de este libro. Fue tranquilo, claro, entusiasta y fue maravilloso trabajar con él. ¡También nos encantaría trabajar en más libros contigo en el futuro!
Del mismo modo, todo el personal de O'Reilly Media con el que hemos interactuado a lo largo de la redacción del libro han sido gurús absolutos de sus campos. O'Reilly Media cuenta con un amplio abanico de personas de increíble talento en plantilla, contratadas y, en general, a su alrededor. Es realmente aterrador lo buenos que son en su trabajo.
Un enorme agradecimiento a Tony Gray y al Apple University Consortium (AUC) por el monumental impulso que nos han dado a nosotros y a otros que aparecen en esta página. No estaríamos escribiendo este libro si no fuera por ellos. Y ahora tú también estás escribiendo libros, Tony, ¡lo siento!
Gracias también a Neal Goldstein, que merece todo el crédito y/o la culpa por meternos en todo el tinglado de escribir libros.
Agradecemos el apoyo de los matones del MacLab (que saben quiénes son y siguen vigilando la inevitable apoteosis del Almirante Delfín), así como al profesor Christopher Lueg, a la profesora asociada Leonie Ellis y al personal actual y anterior de la Universidad de Tasmania por aguantarnos.
Gracias también a Dave J. y a su equipo por servir el café. Si alguna vez visitas Hobart, Tasmania, Australia, asegúrate de tomar un café en Yellow Bernard. Es el mejor.
Gracias también a nuestros revisores técnicos por su minuciosidad y profesionalidad. Las revisiones fueron brillantemente útiles.
Por último, muchas gracias por comprar nuestro libro: ¡te lo agradecemos! Y si tienes algún comentario, háznoslo saber. Puedes enviarnos un correo electrónico a lab@secretlab.com.au y encontrarnos en Twitter en @thesecretlab.
Get Libro de recetas de desarrollo de Unity, 2ª edición now with the O’Reilly learning platform.
O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.