Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                

Conceptos Clave para Empezar A Programar Videojuegos Con Unity

Descargar como docx, pdf o txt
Descargar como docx, pdf o txt
Está en la página 1de 34

Conceptos clave para empezar a programar videojuegos con Unity

juandc

97024Puntos

hace un año

20
Share
Unity es un motor de videojuegos para todos los dispositivos
disponibles. Su poder está en todas las herramientas que nos
proporciona a los desarrolladores para crear desde juegos 2d super
sencillos hasta cosas loquísimas con realidad virtual. NO HAY
LÍMITES.
Si quieres programar tu primer videojuego puedes leer Cómo crear
tu primer videojuego, el gran artículo de nuestro
profe @unavacaverde. En este post quiero hablarte sobre
algunos conceptos clave para comenzar en el desarrollo de
videojuegos con Unity. Recuerda que esto es solo una pequeña
introducción a todo lo que vamos a aprender en el Curso de C#
para Videojuegos.
¿Dónde creen que aprendí todo esto? 😏

Assets y Sprite Atlas


Todos los archivos y contenidos que vamos a utilizar en nuestro
videojuego los conocemos como Assets. Imágenes de nuestro
personaje y todas sus posibles posiciones. Enemigos y obstáculos.
Plataformas e imágenes de fondo. Música y efectos de sonido. Etc.
Todos estos archivos los vamos a programar con animaciones y
comportamientos.
Cabe mencionar que en Unity lo mejor es utilizar la menor cantidad
de imágenes posibles para no sobrecargar el proceso de
instanciación. Para solucionar este problema y evitar la sobrecarga
podemos utilizar los Sprite Atlas: una sola imagen muy grande (y
pesada) con todas las imágenes de todos los elementos de nuestro
videojuego. Una sola imagen con TODOS los elementos. Pero no
te preocupes, todos los elementos los podemos utilizar
individualmente separándolos con la herramienta de Sprite Editor de
Unity.

Game Objects y Prefabs


Los assets que importamos desde Unity pasan a llamarse Game
Objects, podemos controlarlos y asignarles animaciones o
comportamientos. Lo más importante de todo es que los podemos
conectar a nuestros Scripts de C# y programar sus
comportamientos, la entrada y salida del escenario, cada cuanto
deben cambiar de posición, etc.
Todos los videojuegos tienen muchos elementos y cada elemento
puede tener muchas configuraciones, probablemente queremos
reutilizar algunos elementos en muchas partes del videojuego, o tal
vez sólo queremos quitar los elementos de la pantalla y guardarlos
en algún sitio para concentrarnos en otra parte del juego. Aquí
entran los Objetos Prefabricados, mejor conocidos como Prefabs.
Estos Prefabs funcionan como fichas de lego, utilizamos muchas
fichas pequeñas y las apilamos entre ellas para construir castillos,
barcos o mundos enteros. Con los videojuegos es exactamente
igual, vamos a guardar los Game Objects con sus respectivas
configuraciones en un lugar especial, así podemos utilizarlos todas
las veces que necesitamos o incluso construir objetos
prefabricados a partir de otros objetos prefabricados.

Hablemos de Física
Por defecto, Unity deshabilita la gravedad, el peso y todas las
configuraciones de “física”. Por su puesto podemos habilitarlas,
pero debemos tener cuidado y solo aplicar estos efectos en los
elementos que lo necesitan para no sobrecargar la memoria.
Para que nuestro personaje se vea afectado por la gravedad (y todo
lo que esto implica) debemos cubrir a nuestro personaje con el
componente Rigidbody y elegir el tipo de cuerpo de nuestro
personaje: con la opción dynamic los objetos se mueven afectados
por la gravedad. Con la opción cinematic también pueden moverse,
pero sin estar afectados por la gravedad. Por último, con la opción
de static no pueden moverse ni tampoco están afectados por la
gravedad, son estáticos 😬.
Ahora nuestros objetos pueden caer, pero debemos crear algún
suelo o tierra para que los personajes no terminen en el infierno (o
más bien en una caída infinita, algo que sería aún peor que el infierno
🔥🤔).
Para esto podemos añadir plataformas o lo que nuestro juego
necesite. Lo importante es cubrir las plataformas y nuestro
personaje con algún componente Collider con una figura similar a la
de estos objetos para que Unity detecte que pueden chocar.

Conclusión
Estos son solo algunos conceptos sobre Unity que pueden ser muy
útiles para comenzar con el desarrollo de videojuegos. Te invito a
entrar a la Escuela de Videojuegos de Platzi para descubrir todas
tus posibilidades y especializarte en la disciplina que más te
guste: ¿Cómo hacer videojuegos?.
#NuncaParesDeAprender

https://unity.com/es

https://hyperbeard.com/
Introducción al Desarrollo de Videojuegos y el motor de
juegos Unity

En este curso aprenderás a el motor de juegos “Unity” que te permite realizar


juegos y exportarlos para distintas plataformas con un solo código fuente.

Curso de Programación de Videojuegos 2D con Unity

Software necesario para desarrollo


Artículo

en móvil
DanielaCoyotzi
13 de Junio de 2018

Duplica tus ingresos con más de 120 cursos como este


Por menos de $3.261   pesos colombianos al día
Empieza a estudiar

¡Bienvenido al curso de Unity 2D!

En esta lectura quiero que revisemos cuál es el software necesario para que puedas
desarrollar tu juego móvil.

Para poder hacer una build de nuestro juego (construcción o versión ejecutable) en móvil
debemos instalar diferente software dependiendo de la plataforma a la cual estamos
apuntando.

Cuando nosotros ejecutamos el instalador de Unity debemos escoger en un momento los


componentes que queremos instalar con Unity, en este momento deberemos elegir si
queremos dentro de estos componentes agregar el soporte de alguna plataforma específica.
En este caso elegiremos Android y se verá así:
De esta manera se instalará el soporte de esta plataforma.

Una vez que se ha instalado el soporte debemos elegir la plataforma que tenemos como
objetivo y lo haremos haciendo click en File -> Build Settings. Esto nos va a desplegar el
siguiente Menú:
En este menú nosotros podremos elegir la plataforma deseada, en este caso vamos a
seleccionar Android.

Si no seleccionamos el soporte para Android cuando se instaló Unity nos saldrá la siguiente
opción, la cual deberemos hacerle click y nos instalará el soporte:
Ya que cambiamos de plataforma en la cual estamos construyendo nuestro juego por último
debemos de conectar Unity con 2 kits de desarrollo que necesitamos, el de Java y el de
Android. Para poder relacionar estos dos kits a Unity debemos hacer click en Edit ->
Preferences -> External Tools. Aquí encontraremos dos opciones debajo del título Android,
SDK y JDK.
SDK se refiere al Android Software Development Kit y JDK a Java Development Kit.
Estos kits de desarrollo se pueden descargar de sus respectivas páginas web y éstas son:

Para el Android SDK: https://developer.android.com/studio/ en esta web encontraremos el


programa Android Studio, este es un IDE (Entorno de desarrollo integrado), que entre otras
utilidades, nos permite controlar las versiones del SDK que se encuentran en nuestra
computadora. Una vez descargado este programa podemos seleccionar dentro de las
herramientas la versión deseada.
Para el JDK: http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-
2133151.html

En ambos casos una vez descargados los kits de desarrollo deberemos ubicarlos y
conectarlos en el menú anterior haciendo click en el botón de Browse y seleccionando la
ubicación de nuestros kits.
Hay que dejar claro que dependiendo de nuestra versión que trabajamos ya sea sistema
operativo o versión de nuestro sistema operativo puede cambiar la versión de los kits de
desarrollo a instalar.
Por esta razón es muy importante tener en cuenta la gran comunidad tanto en inglés como
en español con la que cuenta Unity. Si llegas a tener algún problema con tu versión, es
posible que la comunidad ya haya respondido a esto. ¡Así que no dudes en buscar ayuda en
los foros!
Reportar un problema
Conociendo la interfaz de Unity

Escribe aquí tu comentario


+2

Sergio Gallardo Vega


Estudiante
·el mes pasado
no entiendo nada…todos aca parecen saber como instalarlo pero no lo dice en ningun
lado…instale algo de unity y no me salia ninguno de esos mennus…me pide una lisencia de
activacion…aca abajo salen ayudas donde tengo que desembuchar 400 dolares…¡estamos
locos? ¿que ocurre aca? ¿en serio para este curso debo parar 1800 dolares? ¿para una
activacion de lisencia?’¿ a todos les sobra asi de mucho el dinero? es que no lo entiendo…
alomejor soy el unico aca que ahorro lo suficiente para pagar el año de platzy y aprender a
programar un videojuego y me topo con esto… :S no entiendo nada… y cada que busco las
licencias son de 100 dolares mensuales…no puedo creerlo
0
Ricardo Pérez
·el mes pasado
Hola, tranquilo Sergio no hay que desesperar, si necesitas ayuda con esto en caso que no hayas podido
resolver contáctame y te doy una mano @ricardotree es mi twitter
3

IanVass
Estudiante
·el mes pasado
En la versión de 2020 con Unity Hub haganlo todo desde ahí bien fácil.
Vayanse a añadir modulos > Android > Y ahi lo descargan junto con el SDK y el OpenJDK
5

Yorfrank Bastidas
·hace 1 hora
Gracias! Estos comentarios ayudan a entender el curso aunque esté un poco desactualizado
0
Daniel Sánchez Sánchez
Estudiante
·hace 2 meses
Si tienen la versión de Unity de 2020, ya esta instalado esto al momento de descargar el
Android Build Support, me parece.
3

Nicolas Saavedra Marin


Estudiante
·hace 4 meses
Para hacer este videojuego vamos a usar el lenguaje de programación de C#?
1

Ricardo Pujol
Estudiante
·hace 5 meses
hmmm… creo que deberia empezar desde 0, no desde 5. Hay gente que nunca ha usado
unity y puede ser confuso, en ningun momento hablas de unity hub y unity
7

Cesar Buelvas Torres


·hace 2 meses
Existe un curso mas basico que este. ¬¬
2

AhorraSegurosMX
Estudiante
·hace 6 meses
HUBIERAS HACER UN VIDEO DE ELLO
4

Esmerlin Mora Marquez


Estudiante
·hace 6 meses
si ya tengo instalado Unity como hago para instalar los sdk y android module
4

Sergio Martínez
·hace 6 meses
Yo descargue Unity Hub, te permite administrar cada una de tus versiones de Unity y agregarle los
complementos que desees a cada versión en la pestaña de Add Modules. Espero te funcione!
4

jerry3d
Estudiante
·hace 6 meses
Es necesario registrase en la pagina de oracle para poder descargar el JDK? Alguien qe lo
tenga descargado y qe pueda facilitar el link, porfas
1

zeqelandia
Estudiante
·hace 6 meses
Deben actualizar esto. La mejor opción actualmente es utilizar Unity Hub y descargar tanto
y Unity como los módulos de Android directamente desde ahí
5

jerry3d
Estudiante
·hace 6 meses
Deben de actualizar estos Screenshoot a una versión actualizada del software
4

Gabospa
Estudiante
·hace 6 meses
Les recomiendo ver esto para la instalación de los modulos
https://docs.unity3d.com/Manual/android-sdksetup.html
Saludos,
4

humansonofhuman
Estudiante
·hace 6 meses
Instalen el SDK y el JDK desde Unity Hub
2

jerry3d
·hace 6 meses
Como se hace? Lo explicas?
1

Jose Antonio Rojas Ollarves


Estudiante
·hace 6 meses
Para los que estan en el 2020+ y que no tienen ni idea de que es unity hub.
https://www.youtube.com/watch?v=DnhuYw5ZN-E
les servira de mucho!
6

Luis Aguilar
Estudiante
·hace 6 meses
La nueva versión ya integra los componentes necesarios, solo requiere seleccionarlos
2

Fernando Evelio Rivera Flores


Estudiante
·hace 7 meses
Unity Instalado! 😄
1

Gabriel Leonardo Souki Hernandez


Estudiante
·hace 10 meses
Cuando accedo al link para descargar el SDK la pagina no me abre, alguna otra forma de
descargarlo?
1
Mcsponch
·hace 10 meses
Puedes instalarlos desde unity hub, en la parte de installs < add module < android < SDK y JDK
4

facucabrera
Estudiante
·hace 11 meses
Hola, tengo un problema para instalar el unity. En el menu para elegir en la plataforma en
la que se quiere trabajar (cuando hay que elegir android) me sale que no lo instale
previamente cuando en realidad antes de la descarga si lo seleccione. Aun asi vuelvo a
elegir para descargar individualmente como dice en el menu “open download page”.
Descargo ese archivo y lo instalo. En el momento de seleccionar la carpeta no se cual
seleccionar, por lo tanto elijo la carpeta Unity, que es lo que me parece mas logico, pero
cuando se esta instalando sale un erro que dice “failed to locate unity.exe”, entonces se
cancela la instalacion. No puedo seleccionar como plataforma a Android, ni ninguna otra.
Si alguno sabe como resolverlo por favor digame, no puedo avanzar con el curso ya que ni
siquiera puedo seleccionar el SDK y el JDK (que ya los tengo descargados e instalados).
2

facucabrera
·hace 11 meses
Aparte aclaro, en el hub ni siquiera me aparece la opcion de “add modules”.
2
Disney_Quintero
Estudiante
·hace 11 meses
tengo una gran pregunta en unity tengo que adquirir algún tipo de licencia para poder hacer
funcionar el programa pues es que lo instale y me dice que no tengo licencia
1

Lionel Chris Felix Sosa


·hace 11 meses
unity es gratis, desde la pagina oficial de unity puedes descargar la version personal.
1

Carlos Aravena Espinoza


Estudiante
·el año pasado
que unity tengo que descargar?? o tengo que pagar, por que me descargue uno que dice
unity hub
1

arnold-pajuelo-araujo
·el año pasado
Dentro de Unity hub en installs ahí verás la versión que tienes instalada, si quieres añadir otra versión
has click en el menú add y seleccionas la versión que desees instalar (Puedes tener mas de una versión
instalada). Para añadir los módulos luego de seleccionar la versión has clic en los checkbox de los
módulos que desees añadir. El soporte para android y java los puedes descargar desde el mismo Unity
Hub y ya no tienes que descargar el programa aparte.
2

antony999k
·el año pasado
Unity Hub es una ayuda para manejar los proyectos y versiones de Unity facilmente. Dentro de ese
programa puedes descarga Unity
2
Ver más respuestas

sebliramzard
Estudiante
·el año pasado
Ahora con la version 2019 de Unity ya no es necesario esta instalacion
1

Diesan Romero
·el año pasado
Y entonces como se haría? Solo se instala los sdk y ya? Porque a mi me da un error de compilación,
precisamente por los SDK
1

antony999k
·el año pasado
Con el Unity Hub hace que hace la descarga del SDK automaticamente
1
Ver más respuestas

Jesús Boán Mascareñas


Estudiante
·el año pasado
Para los que no deis encontrado el SDK, id
a https://developer.android.com/studio/#downloads y os descargáis en el apartado de
Command Line Tools Only las herramientas SDK para vuestro sistema operativo. Las
metéis en una carpeta del disco y ya las podréis referanciar desde Unity.
1

darwinmanchola1
Estudiante
·el año pasado
Esto es un nuevo mundo, creciendo mi mapa de backend
1

Wandy Rafael Santana Evangelista


Estudiante
·el año pasado
Excelente tutorial, vamos a trabajar.
1

German Guillermo Lozano Aldana


Estudiante
·el año pasado
Muchas gracias por la informacion
1

Francisco Tavitas Mendoza


Estudiante
·el año pasado
Yo instale las que venian con la herramienta espero no tener problemas mas delante:
Unity Hub > Install > Seleccionar version > Add modules > Android Build Support >
Android SDK & NDK tools
3

Gerardo Abraham Rojas Quelopana


Estudiante
·el año pasado
Si tienen alguna dificultad en este video se explica bien:
Instalando SDK Tools - Android Studio - Unity 5.x
3
Sergio Gallardo Vega
·el mes pasado
joooder que sea necesario buscar una clase dentro de una clase para la instalacion de muy mediocre
¬¬… no se si me guste esta clase…es la segunda clase y ya faltan chorros de informacion y la
explicacion es horrible
1

alexandervillafane
Estudiante
·el año pasado
Qué hago si el JDK no me aparece?
0

aragonesteban
·el año pasado
Debes asegurarte de tener el JDK instalado en tu
computadora. https://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-
2133151.html
2

eduardo.vera
Estudiante
·hace 2 años
Para configurar el JDK y SDK en la versión Unity 2018, es casi lo mismo:

Pero en este caso te sugieren usar el JDK que viene embebido en el Android SDK ya que
no brindan soporte para otra versión de JDK. Además, se puede descargar desde acá mismo
el SDK si en caso no lo tienen ya.
1

Conociendo la interfaz de Unity

Lo primero que necesitas para este curso es descargar Unity, ve


a https://unity3d.com/es/get-unity/download para ello.
Unity cuenta con tres modalidades:
• Personal: Es gratis, pero al inicio de cada juego que realices le añade un
SplashScreen con el logo de Unity.
• Plus: Tiene costo, te deshaces del SplashScreen. Esta modalidad te sirve solo si tu
empresa de videojuegos, o proyecto, tiene ingresos anuales menores a USD 200 mil
• Pro: Tienes acceso al código fuente del motor, cuentas con un soporte premium
más todas las ventajas del Plus, no hay límite de ingresos.
Para fines de este curso vamos a descargar el Unity Hub, es recomendable para
contar con distintas versiones de Unity.

https://unity3d.com/es/get-unity/download

Curso de Programación de Videojuegos 2D con Unity

¿Cómo funcionan las versiones de


Artículo

Unity?
ricardocelis
21 de Junio de 2018

Duplica tus ingresos con más de 120 cursos como este


Por menos de $3.261   pesos colombianos al día
Empieza a estudiar

En la GDC (Games Developer Conference) de este año Unity anunció su plan para nuevos
lanzamientos del Engine, donde definen 2 versiones principales, una que será conocida
como “TECH stream” y consistirá de 3 lanzamientos principales al año con nuevas
funcionalidades y características. Por otro lado, la versión LTS o LTS stream, será el último
de los 3 lanzamientos del “TECH stream” del año y se lanzará para el inicio del año
siguiente te comparto la imagen que Unity utiliza para explicarlo:
Si te interesa aprender esto con mayor profundidad puedes ir al comunicado oficial de
Unity haciendo click aquí.

Importación de assets y setup para móvil

Este es el primer paso para la creación de nuestro juego de Pong, un clásico que nos
abrirá las puertas del desarrollo de videojuegos, en la sección a lado izquierdo de la
clase, podrás encontrar la parte de comentarios, ahí puedes consultar con la
profesora todas tus dudas en caso de existir, también, en la pestaña de Archivos,
encontrarás los assets de nuestro nuevo juego listos para ser descargados.
Una vez tengas los assets descargado, procederemos a aprender cómo importarlos
y prepararlos para nuestro proyecto “Platzi Pong”

Preparación del espacio de juego

En esta clase vamos a importar y acomodar nuestra carpeta de Assets, la cual


podrás descargar del sistema de archivos. Además, vamos a configurar nuestro
proyecto para que haga build con Android.

Primer script y movimiento del jugador

Vamos a crear nuestro primer Script, para mantener ordenado todo nuestro
proyecto crearemos una carpeta dentro de Assets la cual llamaremos “Scripts” y
dentro guardaremos todos los scripts que hagamos a lo largo del proyecto. Siempre
intenta nombrar los scripts de la manera más explícita posible. Para editar tu código
por defecto Unity usa el editor MonoDevelop.
Siempre que creemos un script en Unity vamos a encontrar 2 funciones:
• Start: Se ejecuta una vez al inicio del juego.
• Update: Se ejecuta por cada frame del juego.
El movimiento de nuestro jugador lo realizaremos a partir del movimiento que
realice el usuario con su mouse, para ello vamos a usar Input.mousePosition.

Limitando el movimiento de nuestra paleta

Vamos a solucionar el problema de movimiento de nuestro jugador pues el objeto


de juego sigue el movimiento del mouse aun cuando este se sale de la escena.

Físicas en Unity y movimiento de la pelota

Ya tenemos el control de nuestro jugador, ahora nos encargaremos de programar


los impactos entre nos objetos.
Para agregar físicas, tenemos que agregar un rigidBody 2D con esto, agregamos la
capacidad de añadir físicas simuladas, con masa, gravedad y otras limitantes.
En este juego no queremos utilizar la gravedad, utilizaremos propiedades físicas
como velocidad.

Agregando movimiento y Colisiones en Unity

Ya identificamos la colisión de nuestra pelota, en esta clase vamos a programar la


velocidad de rebote.
Vamos a añadir la referencia del Rigidbody2D a nuestro script para poder darle una
velocidad de inicio a nuestra pelota.
La escala de gravedad global del proyecto es muy alta para nuestro juego, vamos a
modificarla yendo a Edit > Project Settings > Physics 2D.
Para delimitar la zona de juego añadiremos colisiones con el objeto BoxCollider2D
alrededor de nuestra zona visible de juego. Pero no basta con añadir las colisiones
alrededor para frenar a la pelota. Debemos añadirle un CircleCollider2D a nuestra
pelota.
Otras configuraciones de movimiento y colisiones

Vamos a terminar el movimiento de la pelota, por el momento no rebota cuando


pega con las colisiones. Vamos a añadirle un material de física al CircleCollider2D de
nuestra pelota. El Physics Material 2D cuanta con dos propiedades Friction y
Bounciness, las cuales se encargan respectivamente de la fricción y el rebote de un
objeto.
Cuando la pelota llegue a algún lateral del juego no debe rebotar, debe cruzar y
reiniciar el juego. Vamos a crear un script llamado DeadZone.

https://docs.unity3d.com/es/current/Manual/index.html

https://docs.unity3d.com/es/current/Manual/index.html

https://docs.unity3d.com/es/current/Manual/PhysicsSection.html

Sistema de UI simple

Nuestro sistema de colisiones está listo, es momento de crear nuestra interfaz de


usuario para mostrar el puntaje.
Cuando añadimos un objeto de la UI por primera vez, Unity nos va a crear un
Canvas que es todo lo que va a contener nuestra interfaz de usuario, el canvas
siempre va a estar frente a la cámara del juego, nuestro elemento de UI y un
EventSystem.
Vamos a añadir un texto a nuestra UI que se va a encargar de mostrar el puntaje del
juego, dicho texto le vamos a cambiar la Font por la que tenemos en los Assets.

Detectando puntos

En esta clase vamos a detectar cuando la pelota pase a través de los BoxCollider
que se encuentran en los laterales del juego. Vamos a asignarle un Tag a cada uno
de los lados para identificar si cruzo el BoxCollider del lado derecho o izquierdo,
esto con el propósito de saber que texto de la UI vamos a modificar con una nueva
puntuación.

Condición de gane
Ya tenemos la puntuación conectada a la UI del juego, ahora vamos a crear la
escena de ganar que se mostrara cuando el jugador llegue a 3 puntos. Debemos
añadir la escena a nuestro Build Settings.
Reto: realiza la escena de perder, crea la UI y conéctala con la escena principal.

Condición de victoria y transición entre escenas

Ya tenemos listas nuestras escenas de Perder y Ganar, ahora vamos a realizar la


lógica para checar la puntuación de los jugadores y realizar la transición a la escena
correspondiente. Además, como habrás notado nuestra pelota cruza la DeadZone
pero se sigue moviendo fuera de nuestra pantalla, vamos a resolver esto haciendo la
lógica de que al cruzar la DeadZone aparte de sumar un punto deberá moverse la
pelota a la posición del jugador para volver a tirarla.

Programando nuestro oponente

En esta clase vamos a crear un personaje no jugable (NPC, por sus siglas en ingles)
que será nuestro oponente. Este oponente debe seguir a la pelotita en su eje Y.

Agregando Audio y desafío

Nuestro juego ya funciona correctamente, pero vamos a añadirle un poco de


retroalimentación al usuario mediante Audio. Agregaremos un audio cada que la
pelota choque contra un objeto.
Reto: añadir el audio “Point” para cada vez que la pelota pasa por una DeadZone.

Exportando a Android

En esta clase vamos a exportar nuestro juego a una APK. Primero debemos tener
configurado el JDK y el SDK de Android, una vez lo tengamos configurado nos
vamos a Build Settings para construir nuestra apk.
Vamos a checar que todo funcione bien probando la apk en un celular Android. Una
vez veamos que todo esté en orden hemos terminado nuestro primer juego en
Unity.

https://docs.unity3d.com/Manual/class-PlayerSettingsAndroid.html
Introducción al segundo proyecto

¡Bienvenidos a la segunda parte del curso!


Aquí, desarrollaremos un juego de plataformas, y con este proyecto aprenderás
todo lo necesario para que crees tu primer platformer, movimiento del personaje,
saltos, cómo recibir daño de enemigos y cómo hacer daño a enemigos, generar
coleccionables que agreguen puntos a tu score y cómo crear una condición de
victoria para concluír el nivel, además, verás herramientas más avanzadas como son
la creación de tiles, el uso de cinemachine para la cámara entre muchas otras.
En la sección de archivos como siempre, encontrarás todos los materiales que
utilizarás para poder seguir este proyecto y cuando se escriba código, el archivo
correspondiente para que compares tú resultado con el de la profesora.

Creación de nuevo proyecto e importación de assets

Este es el primer paso para la creación de nuestro juego de Plataformas, en la


sección a lado izquierdo de la clase, podrás encontrar la parte de comentarios, ahí
puedes consultar con la profesora todas tus dudas en caso de existir, también, en la
pestaña de Archivos, encontrarás los assets de nuestro nuevo juego listos para ser
descargados.
Una vez tengas los assets listos, procederemos a aprender cómo importarlos y
prepararlos para nuestro proyecto “Platzi Platformer”

Control de personaje principal: Caminado

Ya que tenemos listo nuestro personaje vamos a añadirle físicas y un


CapsuleCollider, además añadiremos un BoxCollider provisional simulando el suelo
para que no se caiga nuestro personaje.
Crearemos un script para que a través del input que haga el usuario vamos a mover
a nuestro personaje. Dado que nuestro personaje tiene un CapsuleCollider en
cuanto se mueve empieza a girar, para evitar que gire vamos a congelar la rotación
en Z.

Control del personaje principal: Salto, brinco


Nuestro personaje ya se mueve hacia la izquierda y hacia la derecha. Ahora vamos a
hacer que salte cuando presionemos la barra espaciadora.

Tilemap system en Unity 1

En esta clase aprenderemos a usar TilePalette para generar mundos 2D. También
veremos una nueva forma de cortar un Sprite llamada “Grid By Cell Size” la cual
realizara el corte según el tamaño de pixeles que le indiquemos.
Reto: Continúa pintando un nivel y no olvides compartir una imagen de tu nivel en
el sistema de comentarios.

Tilemap system en Unity 2

En esta clase vamos a terminar de pulir nuestro mundo.


Por el momento nuestro personaje se mantenía en el nivel gracias a un BoxCollider
que habíamos puesto encima de una parte de nuestro mundo, vamos a deshacernos
de ese BoxCollider añadiendo un TileMapCollider2D a nuestro mundo y marcando
la propiedad Body Type del RigidBody2D en static. Con esto nuestro personaje ya
no atraviesa el escenario.
Si pusiste plantas en tu nivel no vas a necesitar que tengan un Collider, para ello
vamos a crear una nueva capa que se encargara de pintar todos los adornos del
mundo como las plantas y arbustos.
Por ultimo vamos a añadir un fondo al escenario.

Cinemachine2D

Dentro de la Asset Store podemos encontrar una herramienta de Unity llamada


Cinemachine, vamos a descargarla e importarla a nuestro proyecto.
Cinemachine es una herramienta muy útil, si quieres ver la capacidad que esta llega
a tener te recomiendo ver los cortos hechos por Oats Studios llamados Adam.
Usaremos Cinemachine para crear una cámara que siga a nuestro personaje.
Reto: ajusta la cámara como a ti te agrade mas y comparte el resultado en el
sistema de discusiones
Cinemachine2D: Presentación del reto y limites de la
cámara

Sistema de animación en Unity: Personaje principal,


preparar animaciones)

Sistema de animación en Unity: Personaje principal,


conectar en código

Si no terminaste la animación de Idle no te preocupes, en esta clase realizaremos


dicha animación.
Al momento de crear una animación es recomendable que el inicio de la animación
sea igual al final para que se vea en ciclo, también añadiremos la animación de salto.
Una vez hechas las dos animaciones, añadiremos las condiciones en el
AnimationController para cambiar de una animación a otra.
Puede pasar que al realizar un cambio de una animación a otra no sea necesario
tener que terminar la animación anterior para pasar a la siguiente, para ello
debemos de desactivar la propiedad Has Exit Time de Animation.

Sistema de animación en Unity: Uniendo nuestros


parámetros a los inputs

Movimiento del enemigo y condición de muerte

En esta clase vamos a añadir un personaje no jugable que será nuestro enemigo, le
añadiremos un script que se encargue de realizar un movimiento de un lado a otro.
Reto: realiza las animaciones de caminado del enemigo y de muerte. Haz el
controller y los dos clips.

Reportar un problema
Objetos coleccionables y UI
Sistema de animación en Unity: Enemigo

Objetos coleccionables y UI

En esta clase vamos a crear nuestro objeto collectable y una UI con un texto que
mostrara la cantidad de collectables agarrados. Cada que el personaje cruce un
collectable se sumara a la cantidad mostrada en la UI.

Añadiendo puntos a nuestro score

Sistema de partículas

Conectando partículas a objetos

Música de fondo y efectos de sonido

Uso de prefabs para replicar nuestro coleccionable


Condición de victoria

En esta clase aprenderemos a crear una condición de victoria para que con esto
demos nuestro nivel por terminado y el jugador pueda avanzar a nuevos niveles
Preparando nuestros enemigos

Lógica de vida del jugador y condición de derrota

Con esto hemos terminado nuestro proyecto final del curso, ahora, con todo lo que
has aprendido esperamos ver tus propias creaciones y que las compartas con toda
la comunidad, no olvides seguir y presentar tu examen final para obtener tu
certificado y compartirlo en tus redes sociales.

Conclusiones del curso

Con esto hemos terminado nuestro proyecto final del curso, ahora, con todo lo que
has aprendido esperamos ver tus propias creaciones y que las compartas con toda
la comunidad, no olvides seguir y presentar tu examen final para obtener tu
certificado y compartilo en tus redes sociales.

También podría gustarte