No tienes acceso a esta clase

¡Continúa aprendiendo! Únete y comienza a potenciar tu carrera

Creación de enemigos estáticos

18/20
Recursos

¿Cómo crear un Diana Target en Unity?

Añadir un objetivo Diana Target a tu videojuego no solo hace que los disparos sean más interactivos, sino que también mejora visualmente la experiencia del jugador. En esta sección, vamos a explorar cómo añadir y configurar este elemento dentro de Unity, asegurando que los disparos tengan una función real dentro del juego.

¿Cómo agregar una mira a nuestro shooter?

Lo primero que necesitamos es agregar una mira o 'crosshair' a nuestro juego. Este elemento debe estar siempre al centro de la pantalla para indicar hacia dónde estamos disparando. Aquí te mostramos cómo hacerlo:

  1. Crear un nuevo elemento UI:
  • Haz clic derecho en la escena UI dentro de Unity y selecciona Nuevo Imagen.
  • Esto creará un Canvas, que Unity utiliza para manejar elementos de UI.
  1. Elegir el gráfico de la mira:
  • Usa uno de los assets que descargaste previamente. En este ejemplo utilizamos GUI Reticle.
  1. Ajustar el tamaño del crosshair:
  • Inicialmente, el tamaño puede ser grande. Modifica su escala a 0.25 en cada uno de los elementos para lograr un tamaño más adecuado.
  • Guarda los cambios y dale play para ver la nueva retícula en acción.

¿Cómo añadir un objetivo para disparar?

Añadir una pequeña esfera como objetivo en el escenario te proporcionará una meta para interactuar a través de los disparos. Aquí te explicamos cómo hacerlo:

  1. Crear un nuevo objeto 3D:
  • Añade una pequeña esfera como objeto que se pueda disparar.
  • Ubica la esfera en un lugar bien iluminado, preferiblemente detrás del personaje, para obligar al jugador a moverse y buscar un ángulo de disparo.
  1. Configurar colisionadores:
  • La esfera viene equipada con un collider esférico que permitirá detectar disparos.
  1. Editar collider:
  • Asegúrate de que el collider coincida lo más cerca posible con el objeto. Un collider demasiado grande podría romper la percepción de que estás disparando hacia el objeto.

¿Cómo programar la lógica del objetivo?

Generar la lógica para que el objetivo reaccione a los disparos implica escribir un script en C#. Aquí te mostramos paso a paso cómo hacerlo:

using UnityEngine;

public class Target : MonoBehaviour
{
    public float health = 2f; // Vida del objetivo

    public void DamageReceive(float damageAmount)
    {
        health -= damageAmount; // Restar daño a la vida

        if (health <= 0f)
        {
            Die(); // Llamar a función para eliminar objetivo si la vida llega a cero
        }
    }

    void Die()
    {
        Destroy(gameObject); // Destruir el objeto juego
    }
}

¿Qué aspectos debemos tener en cuenta al diseñar la lógica del objetivo?

Tener en cuenta que:

  • Donación de vida: definimos la vida del objetivo en 2, lo cual significa que necesitará dos disparos para destruirse. Esta puede ajustarse según el daño que haga tu arma.
  • Función de recibir daño: la función DamageReceive determina la cantidad de vida que pierde el objetivo y, al alcanzar cero, invoca a la función Die.
  • Reconocimiento de triggers: el método Destroy es crucial para eliminar el objeto del juego al acabar su salud, asegurando que el juego se sienta realista.

Estos pasos deben darte un camino claro para integrar objetivos interactivos en tu videojuego, logrando así un ambiente más entretenido y desafiando a la jugadora a punta con precisión. Sigue adelante, practica y mejora cada vez más tu videojuego.

Aportes 8

Preguntas 1

Ordenar por:

¿Quieres ver más aportes, preguntas y respuestas de la comunidad?

Uno ya se siente que está a otro nivel!!

¿Qué tal mi target compañeros? 😂

Hola, basicamente podemos decir que GameObject es un tipo de dato de la libreria de Unity??

Muy buena clase

😄

Alguien sabe donde puedo encontrar assets de enemigos para mi proyecto?

Genial