Introducción

1

Game Design del juego

2

La estructura y assets de un proyecto en Unity

3

Convirtiendo nuestros assets en Tiles

4

Tilemaps y creación del escenario

5

Bonus: FastForward de la creación del escenario, sorting layers y creación de colliders

6

Acá encontrarás los archivos de este curso

Personaje principal: Movimiento y Animaciones

7

El jugador y el movimiento

8

Creando nuestra primera animación

9

Creando el grafo de animaciones

10

Usando un árbol de animaciones

11

Mostrando la solución del desafío e implementando transición entre blended trees

12

Programando una cámara que siga al jugador

13

Corrección del bug gráfico

14

límites del escenario, rigid bodies

15

Ejercicio: diseño de interiores

Escenarios Avanzados

16

Transiciones entre escenas

17

Mantener Player y Camera entre escenas

18

Spawning Points: programando que el jugador y la cámara aparezcan en el lugar correcto al cambiar de escena

19

Agregando Identificadores a nuestros Spawning Points para controlar mejor el flujo de nuestro juego

Enemigos Avanzados

20

Creando nuestro enemigo

21

Programando las físicas y el patrullaje del enemigo

22

Generando movimiento completamente aleatorio

23

Programando el ataque del enemigo

24

Crear Manager de Health del Player

25

Crear armas

26

Programando el ataque del Player con arma

27

Mover la espada al caminar

28

Creando el ataque con espada

29

Ejecutando el ataque con un botón

30

Movimiento en diagonal

31

Optimizando nuestro player controller

32

Ataque mejorado

33

Uso de partículas

34

Añadir el daño del enemigo en batalla

35

Programando los contadores de vida del enemigo

36

Colocando más info de UI en pantalla

37

Script de la vida

Personaje principal avanzado

38

Añadir el daño del personaje (ejercicio)

39

Sistema de puntos de experiencia para nuestro personaje principal

40

Level Up!

41

Level Up! Defensa y Reto Final del Módulo: Stats de los enemigos

42

Creando un NPC

43

Limitar el movimiento de nuestro NPC

44

Creando una pantalla de diálogos para nuestro RPG

45

El diálogo del NPC

46

Múltiples líneas de diálogo

47

Parar el NPC durante el diálogo

48

Parar el personaje durante el diálogo

Quests

49

La estructura de una quest

50

Quest 1: Ir a un lugar

51

Quest 2: Encontrar un objeto

52

Quest 3: Matar enemigos

53

Revisión de bugs

54

Mantener la cámara dentro del escenario

55

El problema al cambiar de escena

Audio

56

Agregando SFX a nuestro videojuego

57

Agregando música a nuestro videojuego

58

Ajustar volúmen del audio de cada uno de los efectos de sonido

59

Creando un VolumeManager

60

Agregando economía a nuestro juego y cierre

Create an account or log in

Keep learning for free! Join and start boosting your career

Aprovecha el precio especial y haz tu profesión a prueba de IA

Antes: $249

Currency
$209
Suscríbete

Termina en:

1 Días
7 Hrs
8 Min
36 Seg

Bonus: FastForward de la creación del escenario, sorting layers y creación de colliders

5/60
Resources

How to organize layers in Unity for a video game scenario?

The goal of organizing layers in Unity is crucial to develop an attractive and well-structured game. By mastering the painter's algorithm, you will be able to control the order in which elements are rendered, ensuring that they are displayed correctly according to their importance in the level.

What is the painter's algorithm?

The painter's algorithm is a concept used in computer graphics to determine the order in which the layers of a scene should be drawn. This method involves drawing the furthest layer first, and then the layers closest to the viewer, ensuring that objects closer to the viewer are correctly overlaid on top of those farther away. In Unity, adjusting the layers correctly is essential for the game to look as it should.

How do I set up the layer ordering?

  1. Set Custom Layers:
  • Open the layer settings in Unity.
  • By default, you will see only the "Default" layer. Here, you will need to add new layers for background, middle ground, foreground and player. This allows full control over the rendering order.
  1. Assign the Layers Correctly:
  • Background: assign the background items to the background layer.
  • Middle ground: items that do not interfere with the gameplay (e.g., roads and flowers) belong to this layer.
  • Foreground: items that can be interacted with, such as trees or buildings, belong to this layer.
  • Player: place playable characters on this layer to make sure they are always visible.

What to do with collision layers?

Collision layers are critical in determining how the player interacts with the world. In Unity, the use of collisions is facilitated by the "Tilemap Collider 2D" component. This can be applied to any layer that requires collisions, allowing objects such as walls or trees to impede passage.

  • Place Tilemap Collider 2D:
  • For the foreground layer, add the "Tilemap Collider 2D" collider. This automatically creates boundaries around every object in this layer.
  • It ensures that the player has a collider, allowing dynamic adjustments to reflect the shape and size of the character.

How to optimize the stage boundaries?

To prevent the player from leaving the boundaries of the level, an effective strategy is to surround the area with non-crossable objects, such as a forest. This method is visually consistent and simple to implement.

  1. Place a natural barrier:
  • Surround the level with trees or any other natural visual obstacle.
  1. Use of additional tricks:
  • You can implement additional techniques later, but a natural barrier is an effective and simple way to keep the player within the desired area.

By applying these techniques, you will be one step closer to creating an immersive and visually appealing game. The organization and proper use of layers and collisions significantly improve both the development and the player experience. Keep exploring and perfecting your skills in Unity, the limit is your creativity!

Contributions 11

Questions 1

Sort by:

Want to see more contributions, questions and answers from the community?

Resumen de la clase

Una vez creado el mapa hay que decirle a Unity qué capa se pinta sobre cuál. Nos fijamos que todos los GameObject de Grid, tienen Sorting Layer a default. Pulsamos en Add New Layer y creamos la capa Background, Middleground, Foreground y Player. Un truco es poner la capa Default debajo del Background, porque el fondo siempre se debe pintar detrás. Ahora asignamos las capas a los GameObjects y al Player.

¿Qué diferencia hay entre Foreground y Middleground? Haremos que el Player choque con el Foreground. Para ello le añadimos una componente Tilemap Collider 2d al Foreground. Veremos que se dibujan los collider en los árboles, el río. Además le ponemos un BoxCollider2d al Player y lo editamos para ajustarlo a su forma.

La recomendación es rodear el nivel con árboles.

Yo agregue una capa extra llamada Sky que esta sobre el jugador para poder crear elementos que oculten al jugador en ciertas circumstacias , ademas de eso le agregue a cada capa un valor en el eje z para que la capa del cielo tenga un efecto 3D de lejania sobre los demas elementos del mapa

Yo voy a hacer islas.

Con toda la fe y el atrevimiento del mundo tengo el gusto de mostrar el mapa que (espero) usar 😄

pd: la flecha roja apunta a la camara del jugador

Yo agregue una capa más a MiddleGround y otra a Foreground por si necesito pintar un objeto sobre otro, y a la segunda les asigno prioridad con Order in Layer igual a 1 para que se renderize primero.

Resumen practico
Background -> Fondo
Middleground -> Lo que puedes atravesar
Foreground - > Lo que no puedes atravesar

En mi caso el agua esta en el middleground asi como el camino del puente(si eso es un puente) pero las orillas del rió así como los bordes del puente están en foreground ya que no puede atravesarse

![](https://static.platzi.com/media/user_upload/image-0be2b28b-53c0-4912-8eb0-760843477688.jpg)ojala lo mejoren con una futura actualizacion

Que tal esta el colider de mi conejo?

Genial

Por algun motivo no me deja cambiar el nombre de las capaz ¡¡Ayuda porfavor!!