Unity práctico: Videojuego 3D shooter

Crear enemigos dinámicamente

¡Prueba gratis durante 10 días

nuestros 1272 cursos !

Prueba gratis Mostrar modalidades de suscripción
Con nuestro videojuego ya funcionando, agregaremos de forma aleatoria a más enemigos. Para eso haremos que aparezcan de diversos lados para que puedan buscar al personaje principal desde distintos ángulos del escenario.

Transcripción

Ya hemos creado a nuestro personaje y además hemos duplicado algunos zombis para que aparezcan más. Sin embargo, no es lo óptimo. Voy a eliminar a estos zombis adicionales que he creado y este de acá por ahora lo conservaremos. La idea va a ser que se vayan creando de forma dinámica. Para eso voy a crear en el escenario un objeto vacío, un 'GameObject' vacío. Va a ser el 'point' de los zombis y añadiremos un "script" para esto. Voy a hacer clic a mi carpeta 'scripts', clic derecho, crear un nuevo "script". Vamos a llamarlo 'Enemy Manager'. Vamos a asociar esta clase al 'GameObject'. Vamos a abrir nuestra clase, está aquí, y crearemos unas pequeñas líneas de código. Voy a recibir una referencia de nuestro enemigo. También haré una variable de tiempo para saber cada cuánto tiempo van a aparecer nuestros zombis, por ejemplo, cada tres segundos. Y dentro del método 'Start' vamos a implementar un método que viene dentro de Unity y nos ayuda para hacer las repeticiones. Vamos a invocar una repetición. Lo que nos pide es qué método vamos a utilizar, que todavía no lo hemos creado, y el tiempo con el cual vamos a trabajar y repetir lo que queramos. Para eso, antes de... vamos a crear un método 'Spawn'. Lo está moviendo porque está detectando esta línea de acá. Así que lo vamos a completar provisionalmente y haremos... Vamos a instanciar o inicializar ¿a quién? A nuestra referencia del enemigo. ¿Dónde? 'This.transform.position'. Quiere decir que aquí donde estamos, donde está este objeto, van a empezar a crearse. Coma, y también le diremos que use la misma rotación de nuestro objeto. Creado nuestro método, ahora sí le diremos aquí que es una cadena. Que voy a llamar a un método que nos permite crear más zombis y pasaré la referencia del tiempo en el cual yo quiero empezar a trabajar –esto está en segundos– y cada cuánto tiempo empezarán. También, en el mismo tiempo. Cuándo empiezan, en cuánto tiempo empiezan y cada cuánto se vuelven a invocar. Lo que estamos haciendo es llamando a este método 'Spawn'. Grabo, vuelvo a Unity y selecciono mi 'GameObject' y miren, me pide la referencia del enemigo. Le doy clic al zombi y lo paso como referencia. Si la referencia está desactivada –por ejemplo, está oculta– pasará la misma referencia sin esto. Tengan mucho cuidado de que esté activo al momento de hacer la copia. El punto todavía no lo hemos movido, lo vamos a mover, vamos a resetear su valor y lo vamos a poner inicialmente aquí adelante, para poder visualizar. Le doy Play, pasan tres segundos y empiezan a clonarse. Y es justo lo que había comentado. Tiene que estar activo esta referencia. Para que no suceda lo que acabamos de hacer, vamos a crear un prefab. Voy a crear un "folder" y voy a arrastrar al zombi activo a la carpeta 'prefab'. Y este zombi lo puedo desactivar. No hay ningún problema, este es solamente referencial. La diferencia es que en vez de utilizar el que estaba en el escenario, usaremos el prefab. Paso la referencia, o si gustan, podemos elminar la que aparece aquí y pasar la referencia de nuestro prefab. Ejecuto nuevamente. Pasan tres segundos y vamos a ver que empiezan a crearse, y obviamente yo ya puedo matarlos. Si voy a hacer algún cambio adicional dentro de nuestro zombi, tendría que hacer el cambio y además darle aplicar al prefab, para que se guarden los cambios. Recuerden que estos cambios tienen que hacerse cuando no estemos jugando si no, no van a aparecer. Vamos a ir a la vista Top de nuestro juego y el punto voy a modificarlo y lo voy a mover por acá. Voy a hacer una copia y otra por acá y una copia más por acá atrás. Voy a darle clic a este botón de maximizar y ejecuto. No veo a nadie, me voy a mover, y por allá empiezan a salir los zombis. Los voy a matar un poco. Me vengo por acá. Por acá hay otros pocos, que también me están siguiendo. Y había otros... ¡por acá! Me comieron, no me di cuenta. La vida también estaba en dos, así que vamos a aprovechar y vamos a cambiar la vida a diez. Ya tenemos parte de nuestro juego desarrollado.

Unity práctico: Videojuego 3D shooter

Desarrolla un videojuego del tipo shooter usando Unity como motor 3D. Crea los elementos visuales necesarios en un escenario y empieza a agregar a los personajes y enemigos.

3:36 horas (40 Videos)
Actualmente no hay comentarios.
 
Software:
Fecha de publicación:30/08/2016

Este curso video2brain está disponible como descarga y para ser visualizado online. ¡Pero no hace falta que decidas entre las dos opciones! Al comprar el curso, disfrutarás de ambas posibilidades.

La descarga te permite ver las lecciones sin estar conectado/a a internet y supone una navegación fácil y ágil entre capítulo y capítulo. Si vas a trabajar en diferentes ordenadores o si no quieres descargarte el curso completo, entra en la web con tus datos de acceso y disfruta directamente de tus vídeos online. Te deseamos que disfrutes de este curso y te resulte de mucha utilidad.

Estamos a tu disposición si tienes cualquier tipo de duda o pregunta.