Transcripciones
1. ¿Por Qué Deberías Ver Este Curso?: Mi nombre es Michael Moore, fundador de WMD game dev. Y mi objetivo es
convertirte en el mejor desarrollador de
juegos y de la forma
más divertida posible, desarrolló una estrategia que
ha ayudado a miles de aspirantes a desarrolladores de juegos a alcanzar sus objetivos de crear juegos
del mundo real. Y quiero hacer lo
mismo por ti. Lo que he aprendido
es que puede ser muy difícil
saber por dónde empezar y qué pasos
tomar para ir de principiante a intermedio
a profesional. No sólo en el desarrollo de juegos, sino en la programación y el
aprendizaje a codificar. Y aquí es donde entra la
estrategia. Empezamos aprendiendo los fundamentos mismos
de la programación c-sharp, motor de
Unity, y el diseño de juegos. Luego profundizamos más en
cada aspecto. Así que tus objetivos
de juego desde cubos aburridos, que armas épicas,
tu código de básico, avanzado y tus habilidades
de
desarrolladores de juegos desde principiante completo
hasta maestro absoluto. Y puedo decir con
absoluta confianza, las puntuaciones hacen que sea fácil
para cualquier principiante con una experiencia
de codificación 0 saltar y empezar a aprender a
crear juegos increíbles. He ayudado a miles
de personas a crear juegos
del mundo real y
quiero que seas una
de esas personas. Entonces, ¿cómo vamos a hacer esto? Profundizamos más que cualquier
otro curso en animaciones, oro o decanos,
control de personajes, sistemas de partículas, sistemas
pasados, IA enemiga, mecánica en
primera persona, sistema de
salud, sistema de armas, y todos ellos son apenas
la punta del iceberg. Entonces, lo que deberías esperar
podría estar por debajo de las puntuaciones, te convertirás en un maestro
solucionador de problemas. Entenderás
los fundamentos de la codificación y aprenderás a programar juegos al igual que
los que estás viendo
en la pantalla en este momento. También tendrás la oportunidad de
flexionar los músculos de tus desarrolladores de juegos porque con cada
video hay un mini desafío para
que puedas completar. Aunque no puedas
entender cómo
hacer el reto, no te preocupes, estaré ahí
para ayudarte después de que hayas intentado y
completar el reto con todo en nuestro juego será configurable
para que puedas ajustar, jugar y
darle al juego y sentir
individual y especial al respecto. Estarás poniendo
tu propia creatividad en ella y realmente
haciéndola tuya. Estoy tan emocionado de empezar. Y OPO R2, este es el momento perfecto para empezar a
aprender a codificar. Así que bucete conmigo y te
ayudaré a lo largo cada paso de tu viaje de desarrollo de
juegos.
2. Cómo usar este curso: Hey, bienvenidos de nuevo, mis compañeros desarrolladores de juegos. Por lo que he creado este video con el fin de prepararte para el resto del curso. Quería crear este video con el fin de
maximizar tu potencial de aprendizaje a partir de las puntuaciones. Por lo que puedes dejar este curso con la máxima cantidad de aprendizaje que posiblemente puedas exprimir fuera de él. Entonces empecemos con la Q&A O en nuestro caso, va a ser la pestaña Discusión aquí mismo. Entonces déjame encender mi láser. Entonces esta es nuestra pestaña de discusión. Entonces bajo cada video, tienes la opción de hacerme una pregunta, iniciar una conversación, o incluso puedes compartir el proyecto que vas a hacer al final de este curso. Entonces, por ejemplo, digamos que tienes alguna pregunta complicada que quieres hacer. Puedes preguntarme en la discusión. Si tienes tal vez una pequeña recomendación que quieras agregar, eso es muy posible. También puedes agregarla aquí mismo. Si por ejemplo, quieres compartir el proyecto que has ideado al final de este curso. También puedes hacer eso aquí mismo a través de las discusiones. Y antes de seguir adelante, sólo
quería dejar todo claro aquí mismo porque a veces todos se meten en cierta posición donde no entienden completa o totalmente lo que están haciendo. Entonces quiero asegurarme de que entiendas eso. Es realmente que es realmente fácil hacerme cualquier pregunta que tengas. No te asustes, no tengas miedo. Pero ten en cuenta que lo que quiero es que quiero que salgas por ahí y trates de averiguar la solución por ti mismo. Y si sientes que en algún momento has agotado todas las soluciones posibles, entonces puedes volver y preguntarme lo que quieras. Recuerda que no hay malas preguntas. Sólo hay estudiantes que tienen miedo o no tienen el valor de hacer las preguntas. Por lo que siempre se valiente. Siempre. Si has agotado todas las posibilidades, hay cosas que no deben entender ni querer ayuda. Entonces adelante y pregúntame en las discusiones. Una cosa más. Si sientes que tu respuesta ha sido resuelta, puedes seguir adelante y editar la pregunta y agregar esto resuelto aquí mismo. Y lo que esto hace es, primer lugar, que ayude a otros estudiantes, igual que tú, a encontrar soluciones a sus problemas si ya están ahí. Y también me ayuda a saber que las preguntas en que querías hacer ya están resueltas o si necesita más ahondar y resolver. Y ahora hablemos del servidor Discord. Y aquí es donde puedes profundizar en la comunidad que hemos creado aquí en el desarrollo de juegos de WMD. Por lo que puedes ir ya sea al enlace en la descripción de este video o puedes visitar mi perfil y encontrar el enlace en algún lugar de ahí. Y sí te recomiendo que te sumes a la discordia. ¿ Por qué? Porque la mayor parte del tiempo me podría tomar un par de horas para contestar en base a dónde eres. Entonces tal vez nuestra vivimos en diferentes zonas horarias. A lo mejor cuando me hagas la pregunta, es medianoche y necesitas una solución rápida. Podría estar durmiendo, quizá no pueda llegar a mi computadora. Por lo que es muy beneficioso para ti unirte al canal de discordia que hemos creado. Y déjame solo mostrarte el canal de partituras aquí mismo. Este es el inicio de nuestro canal de subrayado. Se puede ver que tenemos a la comunidad en general. Tenemos el chat C-sharp, tenemos el chat de diseño de juegos, tenemos el show off tu juego. Tenemos las preguntas generales de desarrollo de juegos. Y se puede ver que todavía no tenemos nada aquí porque es bastante nuevo ya que estoy grabando esto. Pero más adelante, cuando entres aquí, notarás que hay una enorme comunidad de personas esperando para ayudarte y tal vez gente esperando para obtener ayuda de ti. Y es muy beneficioso tratar de resolver la pregunta de otras personas. No creerías lo mucho que he aprendido de sólo ayudar a otras personas. Y puedes ver aquí que tenemos múltiples cursos. Estos son todos los cursos que doble m gamma game down tiene o he creado. Y podemos ver también podemos compartir memes y aquí tenemos discusiones generales de juego, juegos
AAA, no sé lo que te guste jugar. Podemos discutirlas aquí y el canal social o categoría y así sucesivamente y así sucesivamente. Por lo que sí te recomiendo que te unas a nuestro servidor de discordia. Es muy divertido. vamos a divertirnos mucho. Y eso es todo. Eso es todo lo que quería decir sobre el servidor Discord, el desafío se desliza. Ahora, ¿cuáles son las diapositivas de desafío? Estas son diapositivas con las que vas a estar encontrando casi todos y cada uno de los videos. Y esta es tu diapositiva de desafío. Cuando ves esta diapositiva, pausas el video y haces el reto en ella. Por lo que siempre que veas este tipo de presentación de diapositivas, puedes ver que tiene un título principal, por ejemplo, la descarga Unity y Visual Studio. Y luego tendrá un par de instrucciones para que sigas. Y a veces también te doy un par de manos para que las pruebes tú mismo. Entonces cada vez que veas la diapositiva, ves esta pausa, lee el botón grande de pausa rojo grande. Necesitas pausar el video y luego ir a intentar hacer lo que te diga el reto. ¿ Por qué estamos haciendo este tipo de retos cada video? Bueno, porque personalmente, yo, Michael, he pasado por muchos cursos, una tonelada de cursos. El problema es que siempre veo como que los instructores pasan por el movimiento y ellos siguen hablando y haciendo y hablando y haciendo, y tú lo sigues y al final del curso
tienes un muy buen juego y está funcionando y todo está bien. Pero lo que encontré es que a largo plazo,
en realidad no he aprendido a hacer nada. Acabo de aprender cómo se hacen las cosas. No hay nada para mí, no
hubo incentivo ni nada muy concreto que haya aprendido de estos cursos. Entonces esto es lo que quería hacer. Es una manera mucho mejor de aprender cuando pausas el video y realmente te vas fuera de tu camino, haces los retos. Aunque no tengas ni idea de cómo hacer el reto, necesitas pausar el video y al menos darle 510 minutos para probar todo lo que esté a tu alcance para hacer eso, porque hacer siempre es, siempre mejor que ver. Entonces digamos que te dan un reto. No tienes ni idea de cómo hacer eso. Prueba lo mejor posible. No funciona. Y luego puedes continuar con el video. Ya ves cómo hago el reto, cómo completé, y estará arraigado en tu mente para otros. Siempre que intentas algo y fallas en ello, entonces
tienes muchas mejores posibilidades de aprender después de haberlo intentado. Por lo que te animo a pausar
siempre el video, siempre tomarte el tiempo, aunque parezca imposible y no tengas idea de cómo hacerlo, tal vez buscar en línea, haz lo mejor que puedas, intenta hacer el reto. Y normalmente qué, sea cual sea el reto, suelo hacer algo en un video anterior y luego un par de videos más tarde, hago el reto. Te doy el reto de hacer algo que ya hemos cubierto. Por lo que nunca va a ser algo fuera de tus límites de aprendizaje. Está bien, genial. Entonces hablemos de la estructura del curso. Entonces en la sección uno, en la que
estamos actualmente, vamos a hacer un poco de introducción. Entonces hablaremos de cómo aprender de las partituras, descargará Unity y configurará con Visual Studio y vamos a estar configurando nuestro mundo. También aprenderemos sobre una herramienta muy potente, que es el control de versiones que nos permitirá configurar todo. Y Es una herramienta que es utilizada por desarrolladores muy profesionales,
no sólo desarrolladores de juegos, sino cualquier tipo de desarrolladores de programación. Entonces si ya tienes unidad y ya sabes qué es
Visual Studio y tienes configurado el control de versiones. Entonces recomiendo el Para pasar al último video de esta sección, que es la configuración donde vamos a montar nuestro mundo. Y luego puedes pasar a la siguiente sección. La segunda sección es donde realmente vamos a empezar a construir nuestra ganancia del ciberespacio 2087. Y vamos a empezar agregando, nuestro jugador estará configurando el controlador de personajes, nos
permitirá movernos. Vamos a empezar a mover a nuestro jugador de las entradas de la persona que está jugando nuestro juego. Vamos a dar nuestro primer paso y vamos a montar la cámara en primera persona encima de nuestra cabeza. Por lo que empezará a mover nuestro ratón, mirando alrededor con una cámara y moviendo todo nuestro cuerpo del jugador, pero será una pequeña cápsula alrededor de nuestra ganancia. A continuación comenzaremos con la sección tres, donde introduciremos el tiroteo en nuestro juego. Vamos a crear balas, estarán disparando estas balas. Y vamos a crear una manera de apuntar realmente nuestras botas a un determinado lugar que estamos buscando usar algo llamado recast, que va a ser muy emocionante. También crearemos un par de enemigos que podemos derribar. A continuación pasaremos a la sección 4, que es movimiento avanzado. Y aquí es donde estaremos sumando. Gravedad, será saltar, correr, agacharse, y deslizarse nuestro camino para destruir a todos nuestros enemigos. A continuación tenemos la Sección cinco, que es tiro avanzado. Y aquí es donde vamos a crear una estafa, sistema. Ahora, en la parte normal del tiroteo, simplemente
vamos a tener una pequeña cuadra, pero un tiro avanzado. Vamos a tener múltiples armas, como una pistola,
una pistola muy avanzada y guapa agregará munición a nuestro juego. Y vamos a crear formas de apuntar hacia abajo nuestro sitio. A continuación tenemos a los enemigos porque por supuesto ahora tenemos un movimiento increíble. Tenemos disparos increíbles, pero no tenemos enemigos inteligentes para disparar eso. Y aquí es donde entra la sección 6. Y se trata de animar a nuestros enemigos creará un i para nuestros enemigos que nos perseguirán si nos acercamos y si nos
atrapan, empezarán a atacar costos. Y luego pasamos a la Sección 7, que es el sistema de salud, salud. Porque actualmente en este punto de nuestro juego tenemos enemigos, podemos dispararles. Nos pueden lastimar. El pozo en realidad nos pueden golpear, pero en realidad no pueden lastimarnos y nosotros no podemos hacerles daño. Y aquí es donde entra la sección del sistema de salud. Y le agregaremos un sistema de salud al enemigo. Y agregaremos el sistema de salud a nuestro jugador. Pero no sólo eso, también
vamos a estar exhibiendo estos sistemas de salud usando una Barra de Salud, 14 nosotros y uno para los enemigos encima de ellos también aprenderemos cómo podemos realmente responder a nuestro jugador cada vez que muera. Pasamos entonces al sistema de armas en la Sección 8. Y es donde vamos a estar agregando más armas, vamos a estar recogiendo más armas, y vamos a añadir un lanzacohetes a nuestro juego. También añadiremos un mecanismo para recargar y animaciones para recargar. Todo eso creará también un sistema para recoger la salud y las municiones a medida que pasemos por nuestra ganancia. sección 9 es la parte muy emocionante porque aquí es donde cobrará vida nuestra ganancia. Agregaremos audio en segundo plano. Agregaremos audio a nuestras armas. Y vamos a crear un menú muy bueno que se ve increíble. También aprenderemos a crear menús de pausa y todo eso. Y pasamos a la Sección 10, donde necesitaremos crear un mundo para que nuestro jugador mate monstruos. Y así estaremos agregando activos mundiales sumará diferentes formas en las que realmente podemos hacer que nuestro juego se vea mucho mejor usando el post-procesamiento. También aprenderemos sobre cómo funciona la inmunidad de iluminación. Y aprenderemos cómo podemos transitar entre diferentes niveles cuando lleguemos a cierto punto y nuestro juego. Y por último, tendremos la sección de aguinaldos. ¿ Y por qué llamé a esta sección de bonos? Bueno, porque toda la mecánica del juego central, estaremos terminados por la Sección diez. Y sección de bombas, que es un gancho de garfio, nos
permitirá, así crear un gancho de garfio que podamos poner en los edificios y luego remachamos hasta ese punto que hemos elegido. Y va a ser muy agradable, Va a ser muy cool y realmente lo hará sentir como si fueras Spider-Man. De todos modos, como viste, los puntajes están repletos de información. Et tiene muchas cosas que hacer. Y antes de empezar, solo
quería decir algo que si pones en el trabajo y a los puntajes y realmente lo das todo. Saldrás de ella en el otro lado con increíbles Unity y C Sharp Habilidades. Y este es mi objetivo. Mi objetivo no es solo sentarse aquí y crear un juego y dejar que lo veas. Puedes hacerlo en cualquier lugar que quieras. Mi objetivo es que acabes con las anotaciones. Siendo un maestro solucionador de problemas, quiero que seas capaz de crear este juego desde cero por tu cuenta. Y es por ello que te urge poner 110% de esfuerzo en cada video y asegurarte siempre de hacer lo mejor posible con los retos. Nunca te espantes de hacerme preguntas, pero también trata de averiguar las cosas por ti mismo. Y si no puedes averiguarlo,
averigua cómo hacerlo o algo es un poco demasiado complicado para ti. Nunca dudes en entrar en el Q&A y hacerme cualquier pregunta que quieras. Con eso dicho, espero que hayan disfrutado de este pequeño video donde hablo del curso. Y en el siguiente video comenzaremos,
comenzaremos a descargar unidad e integrado con Visual Studio. Entonces te veré ahí.
3. Descarga la unidad y VS: Bienvenidos de nuevo, mis compañeros desarrolladores de juegos. En este video, vamos a estar descargando la unidad y estancándola, e integrando desgastadas las herramientas de Visual Studio que vamos a necesitar para las partituras. Entonces, empecemos. Lo primero que necesitas para entrar en Google y ONG llamada simplemente teclea aquí mismo, descarga unidad. Es tan simple como eso. Cuando teclees, obtendrás muchas sugerencias. Así que asegúrate de encontrar el que tiene el Unity 3d.com y el Get Unity por supuesto, y haz clic en la unidad de descarga, que abrirá esta página aquí mismo. Por lo que aquí necesitarás descargar la ayuda de unity si nunca antes habías usado Unity. Ahora bien, ¿qué es la unidad Ayuda? Unity hop es como un lugar donde guardaremos todas nuestras versiones de Unity y también todos los proyectos que realizamos. Ahora antes de la ayuda de la unidad, nuestro proyecto estará por toda nuestra computadora, en
algún lugar de diferentes directorios y así sucesivamente. Por lo que necesitamos ayudar realmente hace mucho más fácil pasar por tu proyecto y realmente tener, si realmente buena organización. Por lo tanto, asegúrate de descargar unidad en función del sistema operativo que tengas. Entonces si tienes los macOS y necesitas asegurarte de que descargues la unidad 40 MAC OS. Y si tienes un Windows siete, entonces descargaste para Windows siete. Así que simplemente haga clic en Descargar unidad hub. Y cuando termines de descargar, Q debería tener esta carpeta de instalación aquí mismo. Cuando hagas doble clic en
él, te preguntará, ¿quieres? Sí. Por lo que
continúas, das click en De acuerdo, eliges el destino donde quieres poner tu hub de unidad. Y luego inicias la instalación. Ahora porque ya tengo esposos de unidad dijeron que no lo volveré a instalar. Así que asegúrate de instalar todo y te veré en tan solo una ow. Kay, bienvenido de nuevo. Entonces si has instalado la ayuda de Unity correctamente, deberías recibir un mensaje o una ventana aquí mismo que se vea algo así. Ahora bien, aún no tenemos ningún proyecto, pero aquí es donde estarán todos nuestros proyectos presentes y podemos acceder a ellos a nuestro tiempo libre. Ahora, antes de continuar, la humanidad tendrá que asegurarse de que tenga una cuenta. Entonces esta es mi cuenta aquí mismo. Utilicé mi Google Gmail para crear una cuenta sobre la unidad. Puedes crear una cuenta nueva o también puedes usar tu Gmail o Facebook. No estoy seguro si lo permiten. Y una vez que hayas creado una cuenta sobre la unidad, puedes ir aquí mismo a las Installs. Y aquí es donde descargamos diferentes versiones de Unity. Ahora, para este curso, estaré usando la última versión de Unity que tenemos actualmente. Ahora, si quieres instalar una nueva versión de Unity o cualquier tipo de versión de Unity, simplemente ve aquí mismo al anuncio. Haga clic en agregar. Y aquí se puede ver que tenemos diferentes tipos de unidad que podemos instalar. Ahora, en primer lugar, tenemos los lanzamientos recomendados. Estos son los que ya han sido probados y probados a fondo y funcionan perfectamente. Pero también puedes ir a buscar los lanzamientos oficiales. Ahora, vamos a estar usando esta versión aquí mismo. Y esta es una muy buena versión. Puedes instalarlo. Y también tienes el pre-estreno es ahora pre releases son do work igual que el lanzamiento oficial y los lanzamientos recomendados, pero a veces son un poco buggy y posible
que te encuentres con un par de bugs en los lanzamientos oficiales. También podría ser capaz de fastidiar tema, pero no son tan evidentes como en los lanzamientos anteriores. Puede que no te encuentres con ningún problema, pero te recomendaría que uses el comunicado oficial porque son más
nuevos que los lanzamientos recomendados y menos sangrientos que los pre lanzamientos. Entonces descarga la última versión que tengas en tu computadora. O actualmente tal vez eres del futuro y tienes una versión más nueva que yo. Entonces descarga la última versión y no te preocupes, obras del
discurso o el proyecto que vamos a crear funcionarán en cualquier versión de la humanidad y del futuro. Ahora, vamos a dar click en siguiente aquí mismo. Y esta es una parte muy importante de descargar e instalar Unity ahora. Y aquí tenemos módulos, y estos módulos son como complementos a nuestra unidad que nos permiten crear juegos en diferentes plataformas. Entonces por ejemplo, aquí puedes ver que ahora podemos cargar módulos para diferentes plataformas. Entonces, por ejemplo, si quieres crear un juego en Android, puedes usar el módulo para Android. O si quieres crear un juego para los iOS o iPhones y así sucesivamente. También puede estar buscando crear juegos para Linux o Mac OS o qué. Entonces, en base a lo que quieras crear, puedes elegir uno de estos módulos modelo, o simplemente puedes esperar más adelante, puedes descargarlos en cualquier momento. También tienes las documentaciones que te recomiendo descargar. Estas documentaciones son las documentaciones de unidad y son muy importantes. A veces se quiere buscar ciertas cosas. Y finalmente tienes el paquete de idiomas. Y tal vez si eres chino o coreano, no
estoy seguro de cuáles son estos, honestamente, no tengo ni idea. A lo mejor puedes usar uno de estos paquetes de idiomas. Pero lo más importante, y debes asegurarte de que tengas instalada
la Comunidad Microsoft Visual Studio 2019 o más reciente con tu unidad. Porque vamos a estar usando Visual Studio para codificar todo, todo, y todos los comportamientos de los objetos que creamos en Unity. Ahora, esto es todo lo que necesitas hacer. Simplemente haz click en siguiente y comenzarás la instalación de tu unidad. Entonces con eso dicho, es hora de tu primer reto. Y tu reto va a ser descargar tu unidad y Visual Studio. Entonces descarga unity hot, igual que te mostré, asegúrate de que si tienes un Mac, descargues la versión para Mac. Si tienes un Windows, descarga la versión de Windows. Entonces necesitas descargar la última versión. Y por último, asegúrate de que también descargues Visual Studio con unidad. Así que pausa el video ahora mismo y sigue adelante y descarga la unidad con Visual Studio. Y en el siguiente video simplemente pasará por encima de la interfaz de unidad y Visual Studio. Y sólo para que podamos superar nuestros miedos iniciales. Entonces te veré en el próximo.
4. Unity And Visual Studio 101: Hola y bienvenidos de nuevo, mis compañeros desarrolladores de juegos. En este video, simplemente vamos a estar explicando qué es Unity, qué es Visual Studio, cómo se comunican entre sí. Y te explicaremos un poco sobre la interfaz de ambas increíbles herramientas. Entonces, en primer lugar, ¿qué es la unidad? Déjame ponerme mi láser. Láser, por favor. Está bien. Por lo que la unidad es un desarrollador de motores de juegos multiplataforma por, desarrollado por Unity Technologies. Entonces, ¿qué quiero decir con multiplataforma? Multiplataforma significa que se puede utilizar en diferentes tipos de plataformas. Por ejemplo, unity, Windows y Mac OS estarán usando Unity para desarrollar nuestros juegos. Y por supuesto que vamos a estar usando este motor de Unity aquí mismo. Entonces antes, déjame solo mostrarte la interfaz de la unidad y pasaremos a explicar Visual Studio, y esto es unidad. Enhorabuena, lo has hecho hasta aquí. Entonces, en primer lugar, tenemos nuestra barra de herramientas aquí mismo sobre todo. Y esta barra de herramientas proporciona acceso a las características de trabajo más esenciales. A la izquierda, tenemos las herramientas básicas para manipular la vista de escena y los objetos del juego dentro de ella. En el centro tenemos el control de juego y pausa y paso aquí mismo, lo que nos permite jugar nuestro juego, pausar nuestro juego. Y entonces también podemos añadir un paso fotograma por cuadro. Los botones de la derecha te dan acceso a la unidad, colaborar, y a la Nube que no estará usando y a las cuentas. También tenemos las capas justo aquí que estaremos usando mucho en este curso para nuestro proyecto. Y finalmente tenemos el layout y bi-capa. Este es nuestro diseño aquí mismo. Entonces podemos cambiar el diseño, por ejemplo, el dos por tres o el cuatro dividido. O básicamente podemos usar el valor predeterminado y esto es lo que vamos a estar usando. Entonces si no tienes la misma interfaz que yo o diferentes tipos de diseños. Simplemente haga clic aquí, vaya al valor predeterminado, y ambos tendremos la misma interfaz. Ahora, de lo siguiente de lo que quiero hablar es de la ventana jerárquica aquí mismo. Entonces si hacemos click en esto aquí mismo, podemos ver que tenemos una cámara principal y esta es nuestra vista de escena. Llegaremos a nuestra vista de escena y aquí tenemos la luz direccional. Pero esta jerarquía, jerarquía aquí mismo representa cada objeto de juego en nuestra escena. Por lo que cada elemento en la escena una entrada en la jerarquía. Por lo que las dos ventanas son realce inherentemente ligadas. En la jerarquía se revela la estructura de cómo el objeto de juego se unen entre sí. Y verán con más detalle lo que quiero decir por apegados el uno al otro. Ahora lo siguiente tenemos la vista de escena aquí mismo. Y si hacemos clic derecho en el botón del ratón, realidad
podemos movernos usando las teclas a WASD justo aquí. Y se puede ver que podemos movernos alrededor de nuestro mundo. Y aquí dentro vamos a estar construyendo nuestros juegos. También tenemos otra ventana aquí mismo que es el juego, y esta es nuestra vista de juego. Entonces así es como vemos nuestro juego. Desde la perspectiva de la cámara, estará cambiando todo a su alrededor. Y aquí es donde vamos a estar más enfocados más adelante con nuestra creación de juegos. A continuación tenemos la ventana del inspector a la derecha y déjame volver escenas. Por lo que en una ventana de inspector, se
le permite ver y editar todas las propiedades del objeto de juego seleccionado actualmente. Entonces como puedes ver en este momento tenemos seleccionada la luz direccional. Podemos aumentar y disminuir la intensidad. Podemos cambiar el color, podemos jugar con todo. Y también tenemos la cámara principal aquí mismo. También podemos cambiar y jugar con diversas propiedades. Y el inspector aquí mismo. Y estas palabras técnicas son muy importantes porque las estaré usando a lo largo del curso. Entonces recuerda a un inspector jerárquico, la vista de escena, la vista de juego. Y por último, tenemos la ventana del proyecto justo aquí. Y aquí es donde mostramos las bibliotecas y activos de nuestro juego. Por lo que si hace clic en activos, actualmente, no
tenemos nada más que las escenas. Y si hacemos doble clic en escenas, tenemos la escena de muestra justo aquí que podemos hacer doble clic y entrar, podemos guardar. Por lo que no tenemos nada más que nuestras escenas. A continuación, hablemos de Visual Studio y qué es. Oh, bien, entonces ¿qué es Visual Studio? Por lo que Visual Studio es en realidad Microsoft Visual Studio y es un IDE. ¿ Qué es una identificación? Es un entorno de desarrollo integrado. Y lo que eso significa es que es como un ambiente para
que desarrollemos código integrado en Unidad. Entonces esta es una explicación muy complicada, pero aquí básicamente es donde vamos a escribir todo nuestro código. Y VS nos ayudará a escribir el uso de código para manipular objetos de juego en Unity utilizando guiones. Entonces, ¿cuáles son nuestros guiones? Esta es la forma en que usamos Unity con Visual Studio. Por lo que queremos unidad para comunicarnos con Visual Studio y unidad. Vas a estar creando objetos de juego. Entonces por ejemplo, el auto que queremos mover mientras no consiguió al jugador que queremos mover. Los objetos quizá que caen, quizá algún tipo, las armas que disparan a los monstruos que nos atacan. Ponemos estos, todos estos objetos en Unidad. Pero siempre que queramos manipularlos, vamos a usar Visual Studio. Pero la unidad y Visual Studio no funcionan automáticamente juntos. El modo en que los hacemos trabajar juntos es a través de estos scripts que son archivos CSS dot. Y aquí es donde escribimos todos nuestros códigos en los archivos CSS de punto en Visual Studio
y allá, y desde estos scripts vamos a manipular los comportamientos. De los objetos que tenemos dentro de Unidad. Entonces déjame solo mostrarte cómo se ve Visual Studio. Entonces este es Visual Studio. Déjame acercar un poco. Y aquí dentro se puede ver que en primer lugar, tenemos estas tres líneas que están usando algo, usando algo y
usando el motor de Unity. Ahora estos se llaman espacios de nombres. Y cuáles son estos, son una colección o una biblioteca de códigos que nos permiten usar ciertas cosas en nuestro juego. Entonces, por ejemplo, el motor Unity nos permite utilizar diferentes aspectos de la unidad. Por ejemplo, la física en Unidad. Nos permite acceder a diversos detalles en Unity que sin esto. Entonces, por ejemplo, si eliminamos esta línea justo aquí, ya no
podemos usar el comportamiento mono. Y porque no estamos usando 10 comportamientos, a
los que llegaremos en un segundo. Ya no podemos usar inicio y actualización. Entonces volveremos a encender esto y podemos usar el comportamiento mono. Antes de llegar a eso, hablemos primero de lo que significa público. Público significa que es para todos. Hay dos tipos. Hay público y hay privado. Llegaremos a eso también. Posteriormente. Tenemos la clase y tenemos el nombre de la clase, y este es en realidad el nombre de nuestro script. Y aprenderemos que siempre tenemos que asegurarnos de que
nombramos a nuestra clase correctamente la primera vez, porque nos va a crear muchos problemas. Entonces así es como creamos una clase y todo este código se escribirá automáticamente para que no tengas que preocuparte por ello. Estos dos puntos aquí mismo significa que estamos heredados, heredando el comportamiento mono. Entonces lo que es el comportamiento de Monte 10 son, bueno, usamos conductas que ya están construidas en Unity que
permite, nos permite controlar los diversos objetos del juego. Y por el comportamiento del dinero, podemos usar dos métodos o funciones, que por supuesto serán más adelante en entrar como inicio y actualización. Y en realidad aquí dentro se puede ver que tenemos esta línea verde. Y esta línea verde significa que esto es un comentario. Y siempre que quieras crear un comentario, simplemente
pones estas dos barras traseras detrás de él. Y siempre que ponemos dos barras inclinadas atrás de cualquier código, significa que esto es un comentario y no se ejecutará en frío. Genial, entonces ¿qué es el inicio? Se llama Inicio antes de la primera actualización del marco. Por lo que cuando alguna vez se inicie el objeto de juego que tiene este script adjunto, se ejecutará
el código dentro de este método de inicio. Y similar a iniciar actualización se llama una vez por fotograma. Por lo que pasa cada fotograma por el que pasa nuestro juego. Este método, actualización se llamará un todo dentro de ella se ejecutará para ponerlo de manera más simple, inicio es donde ponemos nuestras condiciones iniciales. Entonces por ejemplo, el peso del auto, la velocidad de nuestro jugador, el clima tal vez. Y luego la actualización es donde hacemos que nuestro auto se mueva. Hacemos saltar a nuestro jugador, y hacemos el cambio climático, por ejemplo, el viento sopla o algo así. Y el otro, no lo sé. Entonces así es como básicamente usamos Unity con Visual Studio. Por supuesto, en el futuro a medida que avancemos por nuestro proyecto, tendrás una comprensión mucho, mucho mejor del inicio y actualización y todo lo que hay en él. Entonces, no te preocupes demasiado si no entiendes todo de inmediato. Pero ahora tienes un reto frente a ti. Y tu reto va a ir y hacer una misa. Por lo que abre Unidad y límpiate. Haga clic en algunas cosas. Y cuando termines, ve al siguiente video y vamos a estar haciendo nuestro primer código y empezar. Y si aún no sabes cómo crear un nuevo proyecto, no te
preocupes por ello. En el siguiente video, vamos a crear un proyecto y hacer nuestro primero ir. Entonces espero que hayas disfrutado de este video y te veré en el siguiente.
5. Tu primer código: Bienvenidos de nuevo, mis compañeros desarrolladores de juegos. En este video, vamos a estar creando nuestro primer objeto de juego, creando nuestro primer código y C-sharp. Y como puedes ver aquí mismo, aprendemos a despejar las cosas. Aprendemos a colapsar cosas. Cuando golpeamos el juego. Podemos ver que obtenemos un mensaje que es hola Michael. Tu nombre estará aquí. Y debajo de ella tenemos hola Michael muchas veces y como puedes ver, tenemos estas y aquí tenemos un incremento hasta el infinito. Entonces, no perdamos más tiempo y empecemos. Oh, está bien, así que empecemos. Lo primero que vamos a hacer es abrir nuestro Unity Hub aquí mismo. Y vamos a dar click en un Nuevo. Ahora aquí dentro, vamos a empezar a crear nuestro proyecto. Podemos elegir la plantilla 2D, podemos elegir la plantilla 3D, podemos elegir el RP de alta definición. Y aquí es donde creamos juegos con gráficos
mucho más altos y ducto de render universal. O tú rp, donde creamos buenos gráficos pero no tan alta definición como rp. Entonces, por ejemplo, RPR de alta definición para juegos como AAA y tú RPR como para, digamos, en los juegos indie avanzados. Pero por ahora simplemente vamos a elegir 3D. Vas a elegir la ubicación, por ejemplo, aquí dentro. Por lo que la ubicación dependerá de ti donde quieras poner tu proyecto. Y en el nombre del proyecto, vamos a nombrar esto como nuestro primer proyecto, el Hello World. Entonces da click en Crear. Y ahora vamos a esperar la unidad para crear nuestro proyecto. Usaré la magia de la edición para
pasar por este largo proceso y te veré del otro lado. Oh, bien, Así que bienvenido de nuevo. Espero que su creación de proyecto esté terminada. Y si tu diseño no es similar al mío, puedes hacer click en capas aquí mismo y elegir por defecto. Y ambos tendremos el mismo diseño, ¿Correcto? Entonces lo primero que primero vamos a, bueno, todo
el punto de este video es que vamos a estar creando un objeto que va a tener un guión en él. Y este objeto que tiene un guión en él, vamos a poner algo a la consola aquí mismo. Y si no tienes Consola, puedes ir a Ventana, ir aquí a General. Y se puede ver que en algún lugar aquí tenemos la consola justo aquí. Por lo que Ventana general y una consola dan clic en él. Tendrás una ventana por aquí, por lo que probablemente será así. En realidad puedes optar por atracar donde quieras. Por lo que podemos atracar justo aquí al lado de juegos. Pero prefiero docket aquí junto a proyectos. Genial. Ahora, primero, ¿qué vamos a hacer? Vamos a crear un objeto de juego. Y es muy sencillo. Simplemente vamos a nuestra jerarquía. Hacemos clic derecho, y aquí dentro podemos elegir qué tipo de objeto queremos crear. Podemos crear objetos 3D que haremos más adelante. Se pueden crear efectos. Podemos crear luz, podemos agregar audio, podemos agregar video, podemos agregar UI, que son el lienzo y así sucesivamente y así sucesivamente. Pero por ahora simplemente vamos a crear un objeto de juego vacío que vamos a llamar hola impresora mundo. Genial. Entonces como puedes ver en este momento, tenemos este objeto de juego. Y si la forma en que nos movemos alrededor del remolino es, como les he dicho, haga clic derecho y muévase con el WASD. Y como puedes ver, este objeto de juego está vacío. No tiene nada. Sólo tiene estas tres flechas aquí señalando. Y si miramos a la esquina superior derecha, podemos ver que el azul es el eje z, el verde es el eje
y, y la x es el eje rojo justo aquí. Como se puede ver a la derecha, tenemos este transformador. Y si nos movemos en el eje x, se
puede ver que la x aumenta. Si retrocedemos, se vuelve negativo. Y esta es la posición de nuestro objeto de juego. Ahora, si subimos aquí en la barra de herramientas, realidad
podemos elegir la herramienta de rotación, o tenemos una forma mucho más inteligente de hacer las cosas es haciendo clic como. Entonces cuando hacemos clic en el parecido, automáticamente
vamos a la herramienta giratoria y si golpeamos el rojo, giramos alrededor del eje x. Entonces ahora si giramos hacia atrás, se
puede ver que el ángulo de rotación cambia, también
puede girar hacia abajo y nuestra rotación x es positiva. También podemos rotar en el eje y. También podemos rotar sobre el eje z. Y finalmente tenemos la escala, pero, pero por ahora no estaremos cambiando alrededor de la escala. No será tan notable como con diferentes objetos. Entonces, por ejemplo, digamos que has creado un desastre aquí mismo y mueves el objeto a algún lugar muy lejano. Y en realidad quieres hacer el,
bueno, una posición D reciente, la rotación y la escala. Podemos entrar aquí en la transformación. Tenemos estos tres botonitos aquí mismo. Y si hago clic en él, en realidad podemos restablecer todo el objeto del juego, La posición 000, 000 y 000 de rotación. Está bien, genial. Y aquí como pueden ver, desapareció en alguna parte. ¿ Por qué es eso? Bueno, porque lo estamos, no lo estamos seleccionando en la jerarquía. Entonces si hacemos click en la cámara principal, esta es nuestra cámara, y esto es lo que vemos cada vez que hacemos clic en el botón Play aquí mismo. Por lo que endgame para hacer click de nuevo, podemos ver que esto es lo que asienta actualmente nuestra cámara. Entonces escena back-end, podemos mover esto hacia arriba, podemos rotar esto también hacia abajo y hacia arriba y heredar. Se puede ver la vista del juego. Entonces si lo movemos hacia abajo y mantenemos solo un poquito de blanco aparece, Modo
Juego, podemos ver que es exactamente lo mismo. Ahora, volvamos a poner esto y en realidad no vamos a restablecer. Estoy usando Control Z para volver de todas las cosas que elegimos. Y también tenemos la luz direccional que no estará utilizando actualmente. Así backend hola, impresora mundial. Si haces click en la w, volvemos a cambiar la posición. Ahora, ¿qué vamos a hacer? Vamos a estar creando un guión en el que vamos a estar imprimiendo cosas a nuestra consola. Entonces aquí abajo, dentro de nuestros activos, vamos a hacer clic derecho. Vamos a ir a crear. Aquí tenemos la opción de crear un script C-sharp. Demos click en eso y detengamos todo lo que el zapato está haciendo. No toques nada, no hagas clic en ninguna parte. Esta es una parte muy importante de crear cualquier script. Incluso cuando te conviertas en un desarrollador profesional de juegos, necesitas asegurarte de saber cómo se va a llamar tu guión. Porque si quieres cambiarlo más adelante, va a ser un dolor en el trasero. Por lo que vamos a asegurarnos de que nombramos o guiamos correctamente la primera vez. Por lo que de vuelta aquí, vamos a dar click en retroceso para quitar todo. Y vamos a llamar a esto Hola. Mundo era un con una H mayúscula y una W. mayúscula Así golpeó Enter. Como se puede ver aquí en el inspector, el código se compila. Y cuando hacemos doble clic en Hello World, se abre y Visual Studio O K. Así que ahora estamos listos para empezar a codificar. Entonces como pueden ver, lo que llamamos, nuestro guión es en realidad nuestro nombre de clase. Entonces, ¿por qué enfatizé el punto de nombrar correctamente nuestro guión? Porque si quieres cambiar el nombre de tu script, tendrás que cambiar el nombre de tu clase. Y también van a haber muchos otros errores que debes abordar antes de continuar. Está bien, genial. Entonces ahora ¿qué vamos a hacer? Bueno, simplemente queremos imprimir algo a nuestra consola. Y la forma en que imprimimos algo es que vamos a entrar en inicio aquí mismo. Y simplemente escribiremos impresión. Y como puedes ver, Visual Studio inmediatamente comienza a ayudarnos. Por lo que se nota que estamos escribiendo algo que es similar a imprimir. Entonces nos da, esto sugiere no sólo eso, nos da una explicación de lo que realmente hace esta impresión. Entonces aquí, registra mensajes, la consola unitaria idéntica a debug dot log, que usaremos más adelante, pero por ahora simplemente usaremos la impresión. Entonces cuando llegues a este punto y
eliges una de las opciones que te da Visual Studio. Simplemente puedes hacer click en Tab y continuará por su cuenta. Abrirán estas dos pulseras o corchetes aquí mismo. Y vamos a poner estas dos cotizaciones y sitio. Y entonces aquí vamos a escribir hola mundo con un signo de exclamación. Y ahora, como pueden ver, hay algo mal. En primer lugar, tenemos esta x aquí mismo con un error, y tenemos esta pequeña línea rojiza. Y si pasamos sobre él, podemos ver que nos dice que el, hay un error y espera un punto y coma al final. Entonces vamos a añadir este punto y coma. Y ahora puedes ver que siempre que Visual Studio encuentre un error en tu código, realidad te dirá al respecto. Entonces como puedes ver en este momento, cuando, cuando agregamos el punto y coma, se han guardado
todos los errores. Todas las flechas han sido retiradas. Y por último, necesitamos guardar el guión. Y esto es sumamente importante. Si miras aquí arriba, puedes ver que hay un pequeño asteriscos junto a nuestro helloworld dot cs. Y cuando este astérix significa que aún no hemos guardado nuestro guión. Entonces guarde que podemos o ir a Archivo y dar click en guardar como nuestro abuelo Zeus para hacer, o simplemente podemos sostener Control S y guardamos nuestro script. De todos modos. Ahora que hemos guardado nuestro guión, vamos a Unidad. Y ahora deberíamos ver aquí que no tenemos ningún error. Y si hacemos click en jugar aquí mismo, bueno, como puedes ver, no pasa nada. Entonces, ¿cuál es el problema que puede hacer tu instructor? ¿ Hacemos algo mal en Visual Studio? Bueno, en realidad, no. El problema aquí es que en realidad no hemos adjuntado este guión a nada. Y confía en mí, este es un error muy común. Entonces adjuntemos nuestro script a nuestra impresora hola mundo. Por lo que simplemente arrastramos Hello World al objeto del juego en la jerarquía y en el Inspector se puede ver que se ha agregado. O también podemos tomar el guión del mundo en solitario y arrastrarlo
al inspector de nuestro objeto de impresora hola mundo. Y lo agregaremos aquí mismo o terminaremos. Pero ahora tenemos dos guiones aquí mismo. Y simplemente podemos quitar uno de ellos haciendo clic en tres botones y golpear el Remove Component. Genial. Como se puede ver, la escena aún no se guarda. Tiene un asterisco a su lado, junto a él. Por lo que da click en Control S, se ha guardado. Y ahora cuando hacemos click en Play, deberíamos poder ver justo aquí, hola mundo. Es un mensaje aquí mismo bajo los proyectos patrimoniales. Y aquí puedes ver que tenemos hola, mundo parentado. Genial, Esto es muy divertido. Ahora, lo siguiente que quiero mostrarles aquí, simplemente
hagamos de esto un comentario. Esto significa que no se ejecutará durante, durante el código. Y realmente imprimamos aquí mismo, imprimamos Hola, Mundo y actualicemos. Y veamos qué hace esto. Entonces vamos a guardar eso y asegurarnos de tener el punto y coma, tienes el guardado, y está dentro de la actualización, que se llama una vez por fotograma. Si volvemos a nuestro juego, quiero mostrarles algo aquí en el hola mundo se ha impreso. Y si miramos a la derecha, se
puede ver que se ha impreso una vez. Por lo que una vez se ha impreso, Vamos a hacer clic si se ha colapsado aquí mismo, simplemente deshaga clic. Se asegura de que sus colores sean los mismos que las otras pestañas aquí mismo. Y vamos a darle a Play. Entonces como puedes ver, Hola Mundo y actualización se está imprimiendo cada fotograma que jugamos nuestro juego. Y esta es la diferencia entre el inicio, que solo se imprime una vez que el juego ha comenzado, y la actualización imprimiría algo cada fotograma. En nuestro juego. Tan genial, Eso es parar esto ahora mismo. Y como pueden ver, tenemos una tonelada y tonelada de mensajes aquí mismo. Entonces espero que hayas disfrutado y espero que hayas entendido todo porque ahora es el momento de tu reto. Tu reto va a ser imprimir tu propio nombre. Entonces en lugar de hola mundo, vas a estar imprimiendo tu propio nombre. Entonces cambia helloworld a hola, y por supuesto tu nombre. En lugar de estos puntos. Y te daré un par de manos, incluso unas cuantas, aunque esta tarea sea muy fácil, tal vez algunos de ustedes apenas están empezando con la codificación. Entonces agrega tu propio nombre y lado de los tres puntos aquí mismo. Y guarda en Visual Studio, ve al infinito y haz clic en Play. No olvides guardar dentro de Visual Studio y revisar tu consola. Y puedes poner este mensaje y tamaño de perspicacia de inicio, o puedes ponerlo dentro de la actualización solo para jugar y ver cómo funciona todo eso y campos, campos. Así que pausa el video ahora mismo y ve a hacer el reto. Oh, bien, bienvenido de nuevo. Entonces, ¿cómo te pusiste con eso? Vamos a entrar en nuestro guión aquí mismo. Quitemos lo común. Y en lugar de hola mundo, vamos a escribir, bueno, en realidad voy a escribir hola Michael desde double y game dev. Y dentro de actualización en realidad vamos a escribir hola Michael, muchas veces con un signo de exclamación y vamos a quitar la actualización. Y tenemos un astérix, eso significa que no hemos salvado, así que vamos a guardar eso. Y de vuelta en Unidad. Si golpeamos el juego, ya veremos. Y si aquí realmente hagamos algo. Si tocamos pausa, se
puede ver que el juego se detiene, todo se detiene. Y ahora cada vez que tocamos play, significa cuando tocamos el botón de paso, se
puede ver que tenemos un nuevo mensaje y el nuevo mensaje y el nuevo mensaje, y en realidad nos da la línea de tiempo. Entonces ahora que hemos esperado un par de segundos, esto debería ser tal vez 18. Entonces oh, whoa, eso fue tan preciso alto. Entonces como puedes ver, cada paso significa cada fotograma, y eso significa que cada fotograma por el que pasamos, actualización imprime algo a la consola. Y si sostenemos nuestro cursor aquí mismo y nos movemos hacia arriba, podemos ver que nosotros, el primer mensaje que está dentro de inicio fue hola Michael de Nobel M, desarrollo del
juego, que era la línea de código dentro de inicio. Y una última cosa que quería mostrarles es el botón colapsado justo aquí. En realidad podemos borrar todos nuestros mensajes y en realidad podemos despejar en el juego. Entonces, despejemos todos, todos nuestros mensajes y golpeemos el colapso. Y si se cierne sobre él, se
puede ver que se derrumba. A entradas idénticas. Haga clic en eso, hit play. Y como puedes ver, hola Michael de double m game dev
aparece en el principio y luego tienes hola Michael. Muchas veces que imprime bien, muchas veces. Y como hemos golpeado colapsado y todos estos son idénticos, están en la misma línea. Entonces detengamos esto ahora mismo. Espero que haya disfrutado el video. En el siguiente video hablaremos de control de versiones y cómo usamos source tree, una herramienta muy poderosa para desarrolladores de juegos avanzados y programa avanzado y justo en general. Entonces te veré en el próximo.
6. Control de versiones: Bienvenidos de nuevo, mis compañeros desarrolladores de juegos. En este video, vamos a estar aprendiendo todo sobre el control de versiones, árbol de
fuentes, y la creación de repositorios de nuestros proyectos. Entonces como puedes ver aquí mismo, hemos creado un nuevo proyecto. Empezamos nuestro gran proyecto, que es el ciberespacio 2087, y hemos descargado el árbol de fuentes. Ahora tenemos un par de commits aquí,
y en realidad hemos revertido algo. Hemos creado nuestro commit inicial, añadido un cubo, lo hemos revertido. En realidad podemos revertir este compromiso, un GAN. Entonces dar click en Sí. Como pueden ver, podemos volver a la recarga de Unity y tenemos nuestro cubo aquí mismo. Estaremos aprendiendo todo en mi nuevo detalle. Entonces dame toda tu concentración. Esto es muy importante. Se trata de un video o lección extremadamente útil y nos quedaremos contigo por otros siempre y cuando estés comprometido a
convertirte programador profesional o desarrollador de juegos. Entonces, no perdamos más tiempo y empecemos. O K. Así que para el control de versiones eso y ponerme mi versión láser controlada, es difícil de aprender. Es aún más difícil enseñar, pero trataré de mantenerlo lo más simple posible. Y cuando te lo coges, confía en mí, es muy sencillo y fácil de usar. Además es una habilidad indispensable que debes aprender si
buscas convertirte en un desarrollador de juegos profesional o incluso en un programa profesional. Entonces empecemos con lo que es. En primer lugar, se trata de un sistema que se
encarga de gestionar los cambios a los programas informáticos. Entonces esto significa que cada vez que creamos cambios en nuestros programas, realidad
podemos guardar esos cambios en cada paso de nuestro proyecto. De esta manera, en primer lugar podemos comprobar lo que hicimos. Podemos crear diferentes tipos de versiones donde
podemos volver atrás y cambiar las cosas que hemos creado. Permite un mejor trabajo en equipo. Entonces, por ejemplo, digamos que tienes cuatro o cinco personas trabajando en un mismo proyecto, pero cada una de ellas tiene una tarea diferente que necesitan crear. Por lo que el control de versiones es una muy buena forma de manejar todo esto. ¿ Y por qué lo necesitamos? Bueno, ¿por qué nosotros, en realidad lo usamos? Bueno, lo usaremos para recordar la versión anterior de nuestro juego y tener más flexibilidad para experimentar. Por lo general, el desarrollo de juegos es un entorno en el que se requieren muchas experimentaciones. Por ejemplo, quieres agregar algún tipo de propiedad a algún tipo de objeto de juego y tal vez rompa todo tu proyecto. Por lo que quieres tener siempre una versión anterior de tu proyecto antes de añadir este mecánico rompedor de juegos. siempre puedas volver atrás y empezar fresco a partir de ahí. Por lo que esto es extremadamente importante, sobre todo para los desarrolladores de juegos que siempre necesitan estar experimentando con nuevas ideas y cosas en sus juegos y proyectos. ¿ Y cómo lo vamos a utilizar? Bueno, vamos a estar usando algo llamado árbol fuente y Esto es control de versiones. Nos permite crear diferentes versiones. Y su primero, es gratis. Es muy fácil para principiantes, muy flexible, y tiene una interfaz muy sencilla que podemos utilizar como principiantes. Entonces sigamos adelante y descarguemos el árbol de fuentes. Déjame mostrarte dónde podemos hacer eso. Si abres Google Chrome o cualquier navegador que tengas, simplemente ve a Google y justo aquí, descarga el árbol de fuentes. Deberías encontrar un enlace aquí mismo, y debería ser la aplicación del árbol fuente. Al hacer clic en él, vas aquí mismo a su página web. Si te desplazas hacia arriba, puedes ver que tienes opción de descargar para Windows. Pero si estás en un Mac, asegúrate de hacer clic aquí y descargar árbol
fuente para Mac OS o no funcionará para ti. Entonces si tienes un Mac, descarga la versión para Mac, si tienes un Windows, descarga la versión para Windows. Suficientemente simple. Ahora, cuando termines de descargar, deberías conseguir este archivo aquí mismo. Y cuando haga doble clic en él, debe iniciar la instalación. Ahora porque ya tengo árbol fuente, no
lo estaré instalando en otro momento. Simplemente te llevaré a través del proceso de instalación en realidad. De acuerdo, Entonces esta es la primera ventana que aparecerá para ti. En primer lugar, es necesario aceptar la licencia, por supuesto. Y tal vez puedas apagar esto si no quieres ningún email a tu manera desde el árbol fuente y etcétera, Atlassian. Lo siguiente que debes hacer es que necesitas crear una cuenta en ocasiones, puedes ir a en lysine y Atlassian es la empresa matriz del árbol fuente, puedes seguir adelante y crear una cuenta ahí, o puedes usar una cuenta existente si ya tienen un Gmail. Personalmente creo uno usando Gmail. Es mucho más rápido, Es mucho más fácil y no te spam con Eigen muchos correos electrónicos. Lo siguiente aquí dentro, vamos a conectarlo a una cuenta. Ahora bien, esto es, por supuesto, no
vamos a estar haciendo esto. Si quieres hospedar tu código en ciertos sitios web como GitHub o Bitbucket. No vamos a estar haciendo eso, por lo que simplemente puede hacer clic aquí en configuración omitida. Por último, mientras se instala el árbol de fuentes te dirá que no es capaz de localizar get. Entonces para completar esto, simplemente haga clic en Descargar y versión incrustada de Git y continuar. Y entonces también puede pedirte algo llamado mercurial. Ahora, Mercurial es un sistema diferente, al igual que get. Nos permite guardar diferentes versiones de nuestro proyecto. No estaremos usando Mercurial, así que simplemente puedes hacer click en, no
quiero descargar o no quiero usar Mercurial. Y esto debe ser cuando termines de instalar. Deberías tener esto aquí mismo. Y tu, bueno, esta ventana justo aquí cuando inicias árbol fuente, si no simplemente haces clic aquí en Crear y deberías conseguir. Esta ventana. Ahora, aquí es donde realmente creamos nuestro repositorio. Y aquí dentro se puede ver que tenemos la ruta de destino, el nombre, y el tipo de control de versión que queremos utilizar. Por supuesto que estaremos usando el GET. También tenemos la opción de crear una cuenta, pero como les he dicho, estamos manteniendo las cosas muy simples. Es nuestra primera vez, así que no estaremos creando ninguna cuenta. Entonces aquí vamos a elegir cuál es la ruta de destino de nuestro repositorio. Entonces, ¿cuál es el proyecto para el que realmente vamos a estar creando un repositorio para y versiones posteriores de. Bueno, vamos a crear nuestro primer proyecto que vamos a estar usando. Entonces aquí que se abre el Hub de la Unidad. Y como puedes ver, ya tenemos Hello World que no tenemos en un video anterior. Demos click en Nuevo. Y asegurémonos de que sea un proyecto 3D. Y este va a ser nuestro ciberespía 2087. Sigamos adelante y creemos este proyecto. Entonces da click en Crear. Y yo, por supuesto, siempre usando mi magia de edición y orden para acelerar este proceso. Te veré del otro lado. De acuerdo, bienvenido de nuevo. Entonces espero que todo te haya salido bien. Por lo que ahora tenemos un nuevo proyecto que es el ciberespacio 2087. Entonces ahora que tenemos nuestro proyecto creado, en realidad
podemos seguir adelante y empezar a crear un repositorio. Ahora, si volvemos a nuestro árbol de fuentes aquí mismo, podemos hacer clic en Navegar y en realidad podemos seguir adelante a los proyectos de Unity. Y se puede ver que tenemos un mundo hola y tenemos un ciberespacio para 2087. Entonces vamos a seleccionar esta carpeta. Creará un repositorio con este nombre. Si golpeamos Crear, se va a preguntar un problema. No te preocupes por ello. Haga clic en Sí. Y voila, ahora, en realidad hemos empezado a crear un repositorio. Tienes los archivos escenializados aquí mismo. Tienes diferentes tipos de perillas. No hace falta que te preocupes por ninguno de ellos por ahora, solo céntrate en las láminas escenificadas en los archivos escenializados y comete aquí. Ahora bien, si nos desplazamos hacia abajo en estos archivos en el escenario, se
puede ver que la mayoría de ellos son de la biblioteca. Nos desplazamos hacia abajo hasta el final, podemos ver algunos de ellos son campamento Tampa o temporalmente. Podemos ver también que tenemos configuraciones de proyecto y estos son todos los archivos que nosotros para nuestro proyecto. También tenemos activos aquí para la unidad en las escenas por ejemplo. Entonces este es un repositorio el cual es una versión de nuestro proyecto actual. Ahora, el problema aquí es que, como pueden ver, hay una tonelada y tonelada de archivos y no vamos a estar necesitándolos todos. Bueno, en realidad, no necesitaremos casi ninguno de ellos. Sólo necesitaremos cierto tipo de archivos. Por lo que queremos estar ignorando la biblioteca y los archivos temporales temporales. ¿ Por qué es eso? Bueno, déjame mostrarte abriendo el directorio de nuestro proyecto. Oh, bien, Así que esto es Cyberspace por 2080 directorio sevens dentro del proyecto Unity, como se puede ver aquí arriba. Entonces tenemos los activos, los registros de
la biblioteca, paquetes, etc, y etc Ahora, ¿cuál es la carpeta temporal y cuál es la carpeta de la biblioteca y por qué en realidad no los necesitamos? Por lo que temporal es sólo una forma de que la unidad se abra más rápido cada vez que iniciemos el proyecto. Y siempre se crea cada vez que abrimos un proyecto. Entonces, por ejemplo, si entro aquí mismo a Unity y en realidad la cierro, verás que el archivo temporal desaparecerá. Y aunque eliminemos la biblioteca ahora mismo, así que sigamos adelante y eliminemos esta biblioteca por completo. Si volvemos a nuestro Unity Hub y abrimos ciberespía 287. Como puedes ver aquí mismo, viste que la biblioteca se ha creado de nuevo y también se ha creado la carpeta temporal. Entonces, por supuesto, el proyecto debería tardar un poco más de tiempo ahora en abrirse. Pero esto es evidencia de que una biblioteca y las carpetas temporales no
son necesarias para que siempre nos comprometamos y escenificemos. ¿ Y a qué me refiero por etapa? Entonces cada vez que
escenificamos nuestras carpetas, en realidad creamos un commit a partir de ellas, cualquier versión de ellas. Y biblioteca ocupa mucho espacio. Como pueden ver, si nos desplazamos hacia abajo, ocupa la mayor parte del espacio y no queremos ninguno de ellos en absoluto. Entonces, ¿cómo debemos proceder? Bueno, en realidad podemos ignorar todas las carpetas que están debajo la biblioteca simplemente yendo y eligiendo cualquiera de las carpetas que tienen biblioteca en ellas. Haga clic derecho en él. Y aquí dentro se puede ver que tenemos la opción de ignorar a uno de ellos. Entonces haga clic en ignorar. Y aquí dentro tienes opción de ignorar este nombre de archivo exacto, ignorar todos los archivos con esta extensión, o puedes ignorar todo debajo de una biblioteca, y esto es lo que queremos. Entonces da click en Ok. Y como pueden ver, todo lo que hay debajo de la biblioteca ahora ha sido ignorado, por lo que no podemos escenificarlo, por lo que no podemos guardarlo en nuestra versión más reciente. Y si te desplazas hacia arriba, podrías haber notado que tenemos una nueva carpeta aquí que es el dot git ignore. Y cuando hacemos clic en él a la derecha, se
puede ver que tiene la biblioteca. Y, y si hacemos doble clic en él, realidad
podemos abrirlo en nuestro bloc de notas. Y aquí dentro podemos agregar los diferentes archivos que también queremos ignorar. Entonces, ¿cuáles son los expedientes que queremos ignorar? Bueno, hay una tonelada de archivos, pero afortunadamente, alguien realmente ha pasado por todos estos archivos y ha creado una lista de todo lo que podemos ignorar cada vez que creamos controles de versión o versiones de nuestro proyecto. Y para poder encontrar ese archivo, puedes ir de nuevo y a Google o al frente. Adelante y busca dot git, ignora la unidad. Y deberías tener este enlace aquí mismo para el github.com. Y estará alojado en GitHub. Si abres este enlace
, te llevará aquí mismo. Entonces este es el dot gitignore y es la unidad dot git ignore. Y estos son todos los archivos que podemos ignorar al crear versiones de nuestro proyecto. Puedes hacer click en fila justo aquí, y se abrirá esta ventana o esta pestaña. Vamos a seguir adelante y seleccionarlos todos haciendo click en control a. copiaremos todo esto usando el control C. Y lo vamos
a pegar aquí en nuestro bloc de notas gitignore de puntos. Y ahora tenemos este git ignore note pack
lleno de todos los archivos que no usaremos para nuestro repositorio. salvaremos usando Control S. Y ahora de vuelta en Unity o me refiero a pack y source tree. Se puede ver que cuando tuvimos la tripa ignorar, todo se ignora. Vamos a escenificar todo eso. Y cuando escenificamos todo eso, se
puede ver que estos son los expedientes que se van a comprometer. Y estos serían nuestro compromiso inicial o nuestra versión de repositorio inicial del proyecto. Y por lo general cada vez que creas tu commit inicial, llamamos a esto la inicial. Puedes capitalizarlo, el inicial, oops, compromiso inicial. Y hacemos click en Comprometir aquí mismo. Entonces ahora si miras a la izquierda, puedes ver que aquí tenemos sucursales y tenemos la rama maestra. Enhorabuena, hemos creado nuestro primer compromiso. Muy bonito. Ahora, permítanme mostrarles cómo vamos a avanzar más abajo de la línea, pesar de que este video ya ha sido lo suficientemente largo. Pero creo que necesitamos obtener una base adecuada para el árbol de fuentes y el control de versiones a medida que avanzamos por nuestro proyecto. Entonces digamos que estamos en nuestro proyecto aquí mismo. Y vamos a seguir adelante y crear algún tipo de cubos. objeto 3d. Haga clic derecho en la jerarquía. objeto 3d, crea un cubo, y ahora tenemos un cubo. Vamos a escalarlo un poco. Entonces esqueleto la x, la y, y la z. Genial. Entonces ahora tenemos un cubo y nuestra escena. Y ahora si entramos en árbol fuente, vamos a guardar eso antes de irnos. Y necesita guardarlo en cierta escena. Entonces vamos dentro de escenas. Esta será nuestra escena muestral. Seguro. Muestra de escena, sí, sustitúyala. Por lo que tenemos esta escena de muestra atrás y árbol de origen. Espéralo un poco y puedes ver que tenemos cambios no comprometidos. Entonces si hacemos clic en ellos, se
puede ver que los archivos en el escenario son cambios dentro de las escenas, que es la escena de muestra. Y aquí puedes mirar a detalle lo que hemos creado ahora. Es un poco raro aquí mismo, pero si miras de cerca, puedes ver que hemos creado un colisionador de cajas. Y básicamente esto representa el cubo que hemos agregado a nuestra escena. Entonces sigamos adelante y escenificemos todo eso. Podemos dar click en Commit aquí y nombrar esto añadido un cubo. Haga clic en comentario. Y ahora en nuestra rama maestra, se
puede ver que tenemos un commit inicial el cual no tenía ningún cubed. Y ahora en nuestro cubo agregado, hemos agregado un cubo. Por lo que felicitaciones. Y como nota final, esto puede parecer un poco engorroso. Esto puede parecer un poco raro, pero no tengas miedo esto es muy sencillo. Y lo que es más importante, es extremadamente importante para nosotros
entender a medida que avanzamos por nuestro proyecto, creamos versiones, versiones del mismo. Y si alguna vez
cometemos un error, en realidad podemos volver haciendo clic derecho aquí y revertir el commit. Y sí, podemos revertir el compromiso si volvemos a Unidad, nos pedirá una recarga. Escribimos, recargamos, y ahora no tenemos el cubo ni ningún mecánico
rompejuego que hayamos agregado en el camino. Y ahora es el momento de tu reto. Tu reto va a ser descargar y configurar el árbol de fuentes y el archivo. Así que descarga el árbol de fuente y el puesto y configurar todo. Crea tu proyecto 3D en Unity Hub, establece un repositorio para él y el árbol de fuentes ignoró los archivos de la biblioteca y consigue que el punto ignore foil y agréguelo a tu repositorio, crea tu primer commit, y luego crea tu segundo compromiso. Incluso puedes seguir adelante y tratar de tal vez jugar con un par de cosas. Agregar un cubo, revertir el commit, ver qué pasa. Ponte cómodo con el árbol fuente. Y si estás teniendo un poco de problemas, puedes pausar el video de esta lista de cosas que necesitas crear. Y también siempre puedes volver atrás y ver el video y ver cómo lo hice todo y seguirme paso a paso. Entonces nos vemos en solo un poco. Entonces en el siguiente video, vamos a estar montando nuestro mundo, creando diversos materiales e iniciando nuestro ciberespacio cuando se proyecte el 87. Entonces te veré ahí.
7. Configuración de nuestro mundo: Bienvenidos de nuevo, mis compañeros desarrolladores de juegos. Como pueden ver, hemos creado un increíble el avión aquí mismo. Hemos añadido un par de cubos. Aquí mismo. Les hemos agregado rotación, hemos agregado escala. Hemos jugado por ahí con la luz direccional, jugamos por ahí con la cámara principal. Hemos agregado esta iluminación y generado luz. Muy bonito. Este es un video muy cool porque es la esencia de donde
vamos a empezar a crear y construir nuestro increíble juego. Y antes de irnos, me olvidé de hacer esto al final del video, pero asegúrate de que cuando termines este video y termines el reto,
escenifica , todos tus archivos y los comprometes. Y lo llamaremos crear nuestro entorno o nuestro patio de recreo. Comete eso. Y rama maestra, tenemos creando nuestro patio de juegos. Genial. Entonces, no perdamos más tiempo y empecemos. Oh, bien, entonces lo primero que queremos
hacer es realmente queremos entrar en la ventana de juego justo aquí. Y si miras justo debajo de ella, puedes ver que actualmente está en aspecto libre. Y eso no queremos. En realidad queremos cambiar esto y hacerlo 19, 1920 por 1080. Entonces esta es la pantalla regular de cualquiera que esté jugando un juego en la PC. Si no tienes esta opción, puedes agregarla desde aquí y elegir la resolución fija. Entonces hacer este 1920 por 10 grupos, puede 80. ¿ De acuerdo? Entonces elijamos éste y así es como vamos a usar el nuestro de nuevo. Genial. Ahora que tenemos esa configuración, Empecemos por crear nuestro entorno. Eliminemos este cubo aquí mismo. Haga clic con el botón derecho en la jerarquía, elija objeto 3D y cree un plano. Entonces este será nuestro avión aquí mismo. Y reiniciemos su posición para estar en 000, 000. Genial, Así que ahora la posición está en 0, 0 y 0. Vamos a escalar esto. Creo que escalaremos esto hasta 5 por 5, no la y, lo siento, la z, cinco por cinco. Y porque esto es un avión. Entonces como se puede ver, porque esto es estrictamente un plano cuando aumentamos o disminuimos, bueno en realidad disminuyendo hace que desaparezca. Pero aunque aumentemos los 250 blancos, la profundidad del avión no cambia. Se mantiene igual. Entonces vamos a mantenerlo en una y ponernos rojos. Y si miras aquí en el avión, tenemos el filtro de malla. Entonces el filtro de malla es lo que da forma al objeto que hemos creado. Si cambiamos el filtro de malla, por ejemplo, a un cubo, podemos ver que la forma realmente cambia. Y estas líneas verdes en realidad se llaman el colisionador. Tenemos en nuestro objeto. Entonces este es el colisionador aquí mismo, el colisionador de malla de nuestro avión. Si apagamos este componente, se
puede ver que las líneas verdes desaparecen y luego reaparecen cuando volvemos a encender esto. Y básicamente, aprenderemos más sobre colisionadores más adelante a medida que vayamos a lo largo del curso. Pero por ahora, solo debes saber que los colisionadores permiten que los objetos interactúen entre sí. Entonces cambiemos esto de nuevo a un, cambiemos esto a un avión. Y el Renderizador de Mesh es en realidad el color que tenemos en nuestros objetos. Por lo que más adelante en este video, vamos a estar creando nuestro propio material. Pero aquí dentro se puede ver que tenemos materiales. Podemos cambiarlo por, por ejemplo, el material del cielo o el material predeterminado o este espacio. No estoy seguro de qué es esto o llama o algo así, pero por ahora sólo lo vamos a mantener en el material por defecto que ya teníamos. Vale, genial, Así que ahora que tenemos nuestro avión, es hora de crear un par de cubos. Así que vamos a hacer clic aquí y crear un objeto 3D y crear un cubo. Ya lo puedes ver. Debería estar justo aquí en el avión. Y vamos a acercarnos sólo un poco. Por lo que aquí podemos mover nuestro objeto. Si hacemos clic en una de las flechas, podemos moverlas en estos ejes o en el eje en el que se encuentra la flecha. O podemos elegir uno de estos aviones. Entonces si elegimos este, podemos moverlo en las posiciones x y z. Si elegimos el cisne, podemos moverlo alrededor sobre la y y y z
Y si hacemos clic como me
gusta, empieza a entrar en la herramienta de rotación y en realidad podemos rotar nuestro cubo. Pero una cosa más de la que no hablamos es en realidad el escalado. Entonces si hacemos click en los arcas, podemos ver que podemos escalar este cubo en la dirección z, en la dirección y, o en la dirección x. También podemos escalarlo por todo el eje justo aquí. Y ahora podemos escalar nuestro cubo y añadirlo a nuestro patio de recreo aquí mismo. Entonces vamos a dejar esto justo, digamos aquí, y vamos a escalarlo un poco más. Entonces ahora tenemos este cubo aquí mismo en nuestro avión. Y al igual que el, el plano, el cubo también tiene su propio colisionador de caja y su propio render de malla y filtro de malla en el inspector. Genial. Ahora sigamos adelante y duplicemos este cubo y pongamos un, otro cubo aquí mismo y tal vez lo bajemos. Entonces básicamente en este momento estamos creando algún tipo de patio con el que jugar. Y vamos a mover este cubo aquí mismo, ponerlo en el suelo casi. Y vamos a seguir adelante y crear un, otro cubo y ponerlo aquí. Y vamos a escalar este cubo y hacerlo una especie de torre ish, pensar y tal vez añadir un poco de rotación. Y ponlo por aquí. De acuerdo, y pensemos que quiero hacer, quizá duplicemos este también y pongamos dos cubos al lado. Por lo que estos serían dos cubos justo aquí. Y lo que quiero hacer aquí es realmente crear un limbo. Entonces si sabes lo que es el limbo, no
estoy seguro si hasta se le llama limbo. Y es algo así como una pequeña pieza que nos permitirá así. Entonces es como una varilla pequeña que podemos deslizarnos debajo o agacharnos allí más adelante. A medida que creamos movimiento para nuestro jugador. A lo mejor moveremos esto hacia arriba o hacia abajo dependiendo de cuánto queramos agacharnos con nuestro jugador. Y por último, ¿qué más deberíamos estar agregando? Bueno, vamos a seguir adelante y duplicar esto otra vez. Y la forma en que los estoy duplicando, por cierto, lo siento. En realidad estoy haciendo clic en uno de nuestros objetos de juego y dando clic en Control D. Así que cada vez que hago clic en Control D para duplicar el objeto del juego. Y eliminemos este. Déjame rotar un poco esto. Vamos a duplicarlo de nuevo, y vamos a moverlo un poco aquí. Por lo que actualmente nuestro eje, como se puede ver, rotan con nuestro objeto. Y eso es porque aquí arriba en la esquina superior izquierda, se
puede ver que hemos elegido la escala local. Entonces si hacemos clic en esto, se
puede ver que entrará a la escala global y
no cambiará en base a lo que sean los cubos. Entonces vamos a duplicar esto de nuevo y rotarlo una vez más sólo un poco, solo para agregarle un poco de variedad. Duplica eso otra vez, y vamos a rotarlo. Entonces tenemos una especie de este rincón de aspecto artístico por aquí y probablemente haremos el avión más grande más adelante. Por último, lo que quiero hacer es añadir una rampa a este cubo. Hagamos esto, hagamos este cubo un poco más grande. Y quiero agregarle una rampa. Entonces sigamos adelante y duplicemos este. Muévete aquí. Y en realidad hagamos esto un poco más pequeño. Hazlo de esta manera. Lo vamos a girar hacia arriba o saber qué, déjame ver cómo hacer una rampa aquí. Por lo que este tipo de parece una rampa. Una especie de tipo se ve como una es esta una rampa este toque el suelo? No, tiene que estar por aquí. Entonces tendremos que hacerlo un poco más grande. Entonces mientras estoy haciendo esto, sugiero que también crees tu propio patio de recreo con estas cosas esenciales. Entonces una gran torre larga sobre la que podemos saltar. Un limbo aquí mismo, un par de plazas y tal vez esta rampa de aquí mismo porque estaremos usando todas estas por diferentes razones. Y en realidad voy a hacer mi llano 10 por 10 porque quiero tener más espacio en el patio de recreo. Entonces vamos a mover esto aquí arriba. Vamos a mover estos. Aquí arriba. Entonces muévalos ahí. Vamos a mover éste por ahí. Y estos cuatro cubos, oops, nope, este. Pero el avión, estos cuatro cubos, me voy a mover a la esquina justo aquí. Está bien, genial. Entonces ahora tenemos nuestro patio de recreo especie de, especie de. Pero el problema es que, como puedes ver, todos
son del mismo color y realmente, realmente sosos. Entonces, ¿qué podemos hacer al respecto? Bueno, podemos crear algunos materiales. Entonces si entramos en proyecto, hagamos clic derecho aquí y sigamos adelante y creemos una carpeta. Y a esta carpeta se le va a llamar los materiales. Y dentro de esta carpeta vamos a hacer clic derecho ir a Crear. Y aquí abajo podemos ver que tenemos la opción de crear un material. Entonces haga clic en eso. Adelante y llamemos a esta alfombrilla de cubo d. Y esto significa el material del cubo. Entonces sigamos adelante aquí podemos ver que podemos cambiar muchas cosas. Podemos cambiar el albedo, el metálico, hacerlo más metálico. Y aquí se puede ver cómo va a ser el material. Por lo que podemos aumentar la suavidad o disminuirla. Podemos hacerlo más metálico y podemos cambiar muchas cosas. Pero por ahora, sigamos adelante y pinchemos aquí. Y en realidad podemos cambiar el color de nuestros materiales. Así que sigamos adelante y que sea naranja como y tratemos de acercar aquí. Y la forma en que agregamos materiales a nuestros objetos de juego es en realidad súper simple. Simplemente lo arrastramos y lo colocamos en uno de nuestros objetos de juego. podamos ver que podemos rastrear nuestro material sobre objetos de juego. Y lo genial de esto es que cuando ahora tratamos de cambiar nuestro material, se
puede ver que cambia directamente en los
objetos del juego que hemos aplicado el material también. Entonces vamos a mantener esto en naranjado, naranjado. Y ahora con el fin de hacer esto un poco más, agrega un poco más de vibración a estos colores. Adelante y agregarles una misión. Por lo que al hacer clic en misión, realidad
podemos agregarle otra capa de colores. Y vamos a seguir adelante y también hacer esto de color anaranjado. Entonces ahora puedes ver que son mucho más vibrantes y puedes elegir en qué, grado
quieres que sea esta vitalidad. Entonces como puedes ver ahora, estos colores anaranjados realmente sobresalen de todo lo demás. Entonces ahora que tenemos nuestro material naranjado, Vamos adelante y sumado a todos nuestros cubos. Y aquí en realidad puedes hacer esto a lo que quieras. En realidad puedes seguir adelante, por ejemplo, elegir uno o éste es d cubo 4. Puedes arrastrar el material al cubo 4 y podemos arrastrar el material ahí. Agradable. Ahora queremos crear un material para nuestro avión aquí mismo. Entonces duplicamos el material del cubo y lo llamaremos el, quitemos el uno y lo llamaremos el material del avión. Y puedes seguir adelante y elegir el color que quieras con cualquier emoción que quieras, puedes jugar con esto. Pero sólo voy a hacerlo tal vez verde y cambiar el, vamos a añadir esto al avión y se ve muy mal. Cambiemos un poco la emisión y quizá la hagamos un poco azul. Eso es verdadero azul. Y no, eso es demasiado azul. Por favor, déjame mover esto. A lo mejor deberíamos hacerlo en realidad enteramente negro. También podemos cambiarlo. Oh, bueno, ya sabes, el negro se ve muy bien en realidad. Entonces vamos a mover esto sólo un poquito aquí. Y ahora tenemos casi todo en nuestra configuración de juegos infantiles. Muy cool. Entonces ahora una cosa más que quiero abordar son las sombras que tenemos sobre nuestros objetos actuales. Entonces como puedes ver, déjame subir esto solo un poquito. Por lo que el peso de las sombras mueve esto. No me gusta mucho esta rampa. Entonces déjame cambiar esto un poco, moverlo así, y tal vez hacia abajo un poco o caso. Entonces ahora déjame cambiar esto a local. Muévete así, y esto parece ser lo suficientemente bueno. De acuerdo, genial, estoy satisfecho con ello. Entonces ahora como puedes ver, lo que en realidad no puedes ver porque las sombras se han ido, pero son muy, muy fuertes en nuestros objetos de juego. ¿ Y por qué es eso? Bueno, porque en realidad no hemos generado ninguna luz a nuestra escena. Y la forma en que generamos la luz, si entramos en ventana aquí mismo, y entramos en el renderizado, tenemos esta opción de iluminación. Entonces vamos a dar click en eso y en realidad podemos seguir adelante y hablarlo a continuación o inspector. Por lo que aquí tenemos muchas opciones para la escena, el
medio ambiente, Mapas de luz en tiempo real y mapas de luz de hornear. No vamos a entrar en detalle ahora mismo en este video. Posteriormente, por supuesto vamos a estar pasando por casi todos estos y jugador jugando alrededor con la iluminación y nuestra ganancia. Pero por ahora, todo lo que necesitas saber es que en realidad podemos generar luz. Entonces si hacemos clic en generar luz y solo
nos gustaría un poco para que creara iluminación global. Se puede ver que todo es mucho, mucho más claro. Y ahora podemos entrar en material y tal vez cambiar los colores en base a. Por lo que puede cambiar en base a lo que ahora mismo hemos creado, partir de los aspectos horneados. Y si acercamos, podemos ver que las sombras son un poco más claras. Entonces recuerde, Renderización de ventanas, iluminación e iluminación simplemente haga clic en Generar iluminación. Ahora, volvamos atrás y en nuestra cámara principal, si golpeamos Play. Podemos ver que todo lo visto se ve así, y está empezando a tomar un poco de 4. Entonces salgamos y en realidad podemos cambiar la posición de nuestra cámara moviéndola hacia arriba y hacia abajo y girándola alrededor. Y se puede ver cómo se verá esto en el juego principal mirando la casita aquí mismo. Y te muestra cómo se va a ver esto más adelante. De acuerdo, Entonces una cosa final de la que quiero hablar es la luz direccional. Por lo que la luz direccional, hacemos clic en ella y nos aseguramos de que estás en el inspector. En realidad podemos cambiar el color que se renderiza a partir de la luz direccional. Y esta es la principal fuente de luz. Y como puedes ver, los colores de nuestros objetos de juego cambian en base a cuál es el color de nuestra luz. Cambiemos esto de nuevo a la normalidad a lo que fuera. Y aquí en realidad podemos aumentar la intensidad. Entonces, como pueden ver, podemos subir mucho esto. Todo se ve blanco o podemos moverlo hacia abajo hasta que se convierta en 0, pero lo mantendremos en una. Y otra característica de esto es que en realidad podemos jugar con las sombras. Por lo que como puedes ver, la fuerza de la sombra está actualmente en uno. Podemos moverlo hacia abajo y se pueden ver las sombras de nuestros bloques en realidad poniéndose más dimmer y dimmer hasta que se convierten en 0 o pueden ser muy fuertes. Lo mantendré alrededor de 0.8. Eso lo ahorraremos. Y ahora tenemos nuestro patio de juegos y nuestro mundo configurado en el siguiente video, que es en la siguiente sección, sección 2, estaremos agregando a nuestro jugador y empezaremos a retocar y aprender sobre el control de personajes. Por lo que antes de hacer eso, quiero emitirles un reto. Y tu reto va a ser montar tu propio trabajo para que no necesites crear el patio de recreo que he creado. Puedes seguir adelante y crear el tuyo propio,
crear el entorno en el que se construirá sobre el patio de recreo. Crea materiales con tus propias preferencias y agrégalos a tu entorno. Así que pausa el video ahora mismo. Adelante, juega, ve cómo funciona la rotación. Vea cómo funciona el escalado. Crea tu propio material. Juega con la emisión. Ver qué funciona, ver qué no genera un par de iluminación. Y antes de seguir adelante, tal vez algunos de ustedes tengan este problema. A lo mejor ninguno de ustedes tendrá este problema. Pero esclarecedor, asegúrate de que la autogeneración esté apagada. Por lo que cuando la autogeneración está apagada, puedes generar tu propia iluminación. Y está creado aquí mismo en esta carpeta, aquí mismo. Y cambiemos esto al campo de juego. Sí, podemos recargar. Y ahora nuestra escena se llama el patio de recreo. Entonces como ya he dicho, el reto sigue en pie. Pausa el video. Ups, pausa el video y ve a hacer el reto, y te veré en el siguiente.
8. SECCIÓN 2: configuración de Controller: Bienvenidos de nuevo, mis compañeros desarrolladores de juegos. Como puedes ver, hemos añadido un jugador. En realidad es una especie de cápsula ahora mismo, pero, bueno, representa a nuestro jugador. Creo que se ve bastante guay. Se ve como un RoboCup, pero hemos agregado un jugador que es una cápsula. Hemos sumado a nuestro jugador. Hemos agregado un controlador de caracteres con un guión de jugador, y hemos aprendido muchas cosas como controlador de personajes, un pivote, y relaciones de padres e hijos. Entonces, no perdamos más tiempo y empecemos. Ah, está bien, así que empecemos primero, creando un cuerpo para nuestro jugador. Ahora, haga clic derecho en
la jerarquía al objeto 3D y sigamos adelante y creemos una cápsula. Vamos a restablecer su posición. Y ahora lo tenemos en el 000, y vamos a subirlo solo un poquito ahora
del gizmo de luz y la cámara aquí te están molestando. Al igual que me está molestando. Vamos a seguir adelante y reducir el tamaño de ellos o en realidad podemos apagarlos por completo, pero no vamos a hacer eso. Aquí dentro. En los artilujos, en realidad puedes hacer click aquí y puedes hacerlos más pequeños para que no
se vean como deslumbrantes y detentes nos distraen de nuestras principales tareas. Está bien, genial. Entonces ahora tenemos esta cápsula aquí mismo. Y sigamos adelante y aumentemos la escala alrededor del 1.6. Hagámoslo 1.6, hazlo un poco más grande, subirlo un poco. Y esto capturado en realidad serán nuestros jugadores. O simplemente lo llamemos el cuerpo. Genial. Entonces ahora tenemos un cuerpo que representa especie de nuestro jugador. Lo siguiente que vamos a hacer es que vamos a agregar un poco de personalidad a esta cápsula aquí mismo creando un hielo. El hielo haga clic derecho en la jerarquía, vaya al objeto 3D y sigamos adelante y creemos un cubo. Otra vez. Restablecer su posición y ponerla aquí arriba. Hagamos los ojos, bueno en realidad los ojos siempre deben ser más pequeños. Entonces me gusta esto y bájalo hacia abajo en este eje también y estos ejes también. Y vamos a moverlas al frente. Entremos a los materiales y añadamos el material liso a nuestros ojos. Y llamemos a esto, veamos eso. Sí, se ve mucho más fresco. Ahora, vamos a mover estos opuestos. Por lo que ahora tenemos este RoboCup. ¿ No se parece a RoboCup? Creo que sí. Entonces ahora, limpiemos esto un poco a la izquierda y a la derecha. Oh, caverna Barry, lindo. Entonces ahora tenemos el hielo. Vamos a renombrarlos como los ojos. Está bien, genial. Ahora, ¿cuál es el problema aquí? Bueno, el problema es que nuestro cuerpo. Quitarlo. Se mueve sin los ojos, por lo que no se están moviendo juntos. ¿ Cómo vamos a arreglar, arreglar esto? Bueno, podemos usar algo en unidad ahí se llama relación padre-hijo. Entonces si movemos los ojos sobre el cuerpo, se
puede ver que los ojos se convierten en hijos del cuerpo. Entonces ahora cuando movemos el cuerpo, los ojos realmente se mueven con nuestro cuerpo. Y permítanme explicar un poco más qué significa todo esto. Entonces, ¿qué es la relación padre-hijo? Por lo que el niño se moverá, rotará y escalará con el objeto de juego padre. Nosotros, se utiliza para crear un cuerpo de objetos que se mueven juntos. Entonces así como tus brazos están unidos a tu cuerpo cuando naciste, tu torso y tu torso se mueve hacia adelante, tus brazos se mueven con tu torso. No esta es una explicación un poco rara, pero se obtiene el punto. Por lo que el niño se mueve, escala y gira con el padre. Por lo que los niños también pueden ser padres de otros objetos de juego. Por lo que podemos crear niños a los ojos que actualmente son los hijos del cuerpo. Para que podamos crear tantos hijos como queramos. Y por último, las propiedades de transformación infantil son relativas al padre. Entonces, ¿qué significa esto? Entonces volvamos. Por lo que aquí se puede ver que la posición de los ojos es actualmente 00.6120.46. Bueno, en realidad, si movemos el cuerpo ahora mismo, esperarías que cambie la posición de los ojos. Pero si volvemos a los ojos, se
puede ver que la posición sigue siendo 0, 0.06 y 0.4. Esto significa que los objetos brillantes, la posición y rotación y escala son en realidad relativos al objeto padre que tenemos. Está bien, genial. Entonces ahora que eso está claro, sigamos adelante y creemos otro objeto de juego. Y esta vez va a ser un objeto de juego vacío. Y este va a ser nuestro jugador. Vamos a restablecer su posición. Vamos a restablecer la posición en la x y la z de nuestro cuerpo aquí mismo. Y pongámoslo debajo del jugador. Por lo que ahora el jugador como padre, el cuerpo es hijo del jugador y los ojos son el hijo de los cuerpos de ahora nuestro jugador. Cuando el jugador mueve el cuerpo, los ojos se mueven con, genial. Lo siguiente que vamos a hacer es añadir un controlador de caracteres. Ahora antes de hacer eso, vamos a explicar qué es el controlador de caracteres. Entonces, ¿qué es un controlador de caracteres? Se utiliza para controlar a un personaje de primera persona o tercera persona en tu juego. Ahora por supuesto estamos usando a la primera persona. Vamos a estar creando un shooter en primera persona. Entonces lo vamos a estar usando para nuestra primera persona. Es un más, es más varilla de medir diez, usando cuerpos rígidos. Ahora, un cuerpo rígido. Ahora todavía no aprendimos no cuerpos rígidos sino electrones. Vamos a estar explicando todo sobre cuerpo
rígido y en realidad agrega física también. Cierto cuerpo para moverse por el mundo. Y usar controlador de caracteres es en realidad mucho más realista que usar un cuerpo rígido. Permite una afinación más fina. Entonces, por ejemplo, queremos saltar, mover, agregar velocidad. Posteriormente verás que es mucho mejor que usar un cuerpo rígido. Y por último, no se ve afectado por las fuerzas. Se cuerpo rígido, cuando se agrega a un objeto de juego, hace que ese objeto de juego sea susceptible a la física alrededor. Entonces surtirán efecto fuerzas y cosas diferentes. No queremos tener eso en nuestro jugador, a pesar de lo que podrías pensar cada vez que juegas un juego, en realidad no
se ve afectado por las fuerzas que lo rodean, excepto por las que queremos afectar al jugador. Entonces este es el punto completo del controlador de caracteres. Ahora, volvamos a Unity y añadamos un controlador de personajes a nuestro jugador. El modo en que agregamos un componente es hacer click en el objeto al que queremos agregar un componente, que es nuestro jugador. Vamos con el inspector. Tenemos este componente add aquí. Entonces haz clic en él. Y podemos escribir en controlador de caracteres y simplemente agregarlo aquí mismo. Y como puedes ver, el controlador de personajes está en realidad bajo nuestro jugador. Y eso es porque, déjame mostrarte lo que esto significa. Porque ahora si volvemos a mirar aquí arriba, tenemos los ajustes globales. Si hacemos click en el centro justo aquí, se convierte en pivote. Y pivot es en realidad el centro de nuestro objeto de juego actual y es donde todo gira en torno. Es por ello que el controlador del personaje está en medio de, o en realidad el objeto del juego del jugador está en el centro de nuestro controlador de personajes, por lo que tendremos que subirlo un poco. Por lo que la forma en que lo movemos aquí, tenemos la opción de mover el centro. Por lo que vamos a mover un poco esto hacia arriba y vamos a aumentar la altura. Entonces hagamos la altura para que se ajuste a nuestra captura. Y también podemos aumentar, o en realidad no demasiado. Puede aumentar o disminuir el radio. En realidad, ese radio es lo suficientemente bueno. Y una última cosa, ve al cuerpo y quita el colisionador de cápsulas y ve a los ojos. Y OK, también quitó el colisionador de caja. Entonces lo único que necesitamos es el controlador de caracteres que nos
da la capacidad de interactuar con el mundo que nos rodea. Está bien, genial. Por lo que ahora tenemos este controlador de caracteres. Y como se puede ver aquí mismo, también
tiene un límite de pendiente. Por lo que la pendiente significa el ángulo en el que el personaje puede escribir o avanzar hacia arriba. Tenemos el desvío de talón. Entonces, ¿qué es, por ejemplo, digamos que tenemos el paso aquí mismo. Si lo disminuimos mucho, nuestro jugador no podrá pisarlo. Y también tenemos la altura y el radio y el centro de nuestro controlador de personaje. Ahora, lo último que queremos hacer es añadir un guión o reproductor. Y en realidad va a ser tu reto. Entonces tu reto va a ser crear un guión de jugador. Entonces crea una carpeta para los scripts que vamos a estar agregando. Crea un guión C-sharp y nombra jugador, añadido a nuestro objeto jugador. Y finalmente abrió el guión y Visual Studio. Así que pausa el video ahora mismo y sigue adelante y haz el reto. Oh, bien, bienvenido de nuevo. Espero que eso no fuera demasiado duro de un reto. Ya esto un par de veces o tal vez sólo una vez. Entonces aquí, haga clic derecho en crear carpeta llamada este d scripts. Dentro de scripts vamos a hacer clic derecho Crear y crear un script C-sharp. Asegúrate de llamarlo correctamente la primera vez. Entonces jugador, sí, golpea Enter, espere a que se compile. De acuerdo, así que ahora está listo. Y simplemente vamos a seguir adelante y adjuntarlo a nuestro jugador. Eso lo vamos a salvar. Haga clic en jugador. Y ahora tenemos el script adjunto como componente. Haga doble clic en el reproductor para abrir y Visual Studio. Y todo debería estar funcionando correctamente. Ahora, antes de seguir adelante, déjame decirte algo. Si tu Visual Studio no está funcionando, vi este problema en mucha gente. Así que entra en la edición, edición, preferencias, herramientas
externas, y inhere se asegura de que el editor de scripts externo sea la Comunidad de Visual Studio. Hay cosas diferentes que puedes usar. A lo mejor tienes código visual o algo que se llama así y no se abrirá correctamente. Así que asegúrese de tener Visual Studio Community como su editor de scripts externo. De acuerdo, genial, así que ahora que terminamos con esto, en el siguiente video, vamos a estar agregando un poco de movimiento de personajes a nuestro jugador. Entonces espero que hayas disfrutado el video y te veré en el siguiente. Ah, antes de irnos, me olvidé de hacer algo. Entra en el árbol fuente, escenario. Todos nuestros cambios, cometerlos, y lo llamaremos aquí, agregó mi jugador con un controlador de personajes, cometemos eso. Y ahora lo tenemos en nuestras sucursales. Te veré en el siguiente video.
9. Configuración de movimiento de jugadores: Bienvenidos de nuevo, mis compañeros desarrolladores de juegos. Como puedes ver, nuestro guión de jugador aquí mismo tiene un poco de diferencia con respecto a antes. Si miramos nuestro Visual Studio, se
puede ver que hemos creado dos variables. En este video, aprenderemos qué son las variables, cómo podemos crearlas, y tú vas a crear una para ti. También aprenderemos cómo se puede mover nuestro controlador de personajes. Y además de eso, también
entenderemos qué es el vector tres
y qué, y cómo jugar con todos ellos. Entonces, no perdamos más tiempo y empecemos. Ah, está bien. Entonces, empecemos. Pero antes de que empecemos, quiero hacer algo. Como puedes ver, nuestra jerarquía ahora mismo está completamente llena de paradas aleatorias o Q1Q2, el avión y el jugador y la dirección de la luz. No queremos eso. Queremos poner las cosas en su lugar de perspectiva y tener una jerarquía guapa que podamos mirar y entender cuáles son las cosas que tenemos en nuestro entorno o nuestra escena actual o así. Vamos a seguir adelante y crear objeto de juego vacío. Y esto va a ser, reiniciemos su posición. Y a esto se le va a llamar el ambiente y medio ambiente que significa. No estoy seguro de si así es como está escrito. Y tomemos el avión y todos los cubos. Y la forma en que podemos elegir todos estos es hacer clic en el avión, mantener pulsado, cambiar, y elegir el cubo. Ahora seleccionas todas estas y las pones en el ambiente como niños. Entonces ahora tenemos el ambiente que tiene todos los cubos y el avión, y tenemos el jugador, la cámara principal, y direcciones. Y es, se ve mucho, mucho más bonito. Genial. Ahora, lo siguiente que vamos a hacer es que vamos a configurar nuestro movimiento de jugador para que más adelante podamos moverlo,
moverlo a él o a ella. Depende de cómo quieras hacer tu jugador B. Y vamos a configurar el entorno o el código para que se mueva. Y así abrimos nuestro guión y veamos ¿cómo vamos a hacer esto? Bueno, lo primero que queremos hacer es que queremos crear una variable. Entonces, ¿qué es una variable? Y hablemos de eso. Las variables son como cajas. Entonces, por ejemplo, digamos que tenemos una variable que es una caja, o una caja que se llama Vidas. Y ponemos dentro de ella un valor de tres. Por lo que esto se convierte en una variable con un nombre vive y tiene dentro de ella un valor de tres. El modo en que lo escribimos en código es público. Por lo que público, puede ser público o puede ser privado. Y esta es la accesibilidad. Entonces cuando decimos público, significa que todos dentro de esta clase actual pueden usar esta variable. Si es privado. Sólo, esta clase puede usarlo y nadie fuera de ella puede acceder a esta variable. Creamos el tipo, tipo, significado entero. Tenemos muchos tipos que vamos a cubrir en solo un poco, pero tenemos el entero ahora mismo, y tres es un entero, por lo que le daremos un tipo después de darle una accesibilidad. Lo siguiente que hacemos es darle un nombre. Y por lo general los nombres comienzan con una letra minúscula al principio, y luego todas las palabras posteriores tendrán una mayúscula la primera letra. Y finalmente, le damos los datos o el valor de la variable. Entonces hablemos de los diferentes tipos de variables que tenemos. Y esto no incluye todo, pero actualmente por ahora solo cubriremos las principales. Entonces primero que lo primero, tenemos un flotador. Flotador que significa que tenemos, por ejemplo, 4.84.76.9, cualquier cosa que quieras. Y siempre que creamos una variable que es un flotador, agregamos F al final de la misma en los datos. Por lo que esto se puede utilizar para la velocidad, para la altura, para la velocidad, para cualquier cosa que pueda ser variable. Y no es simplemente 1234, puede
ser 4.64.9 y etcétera. A continuación tenemos un booleano. Y un booleano es muy importante en la codificación porque
nos permite elegir si algo es cierto o es falso. Y vamos a estar encontrándonos con mucho booleano a lo largo de las anotaciones. Y ya verás lo importante que es un booleano. Por ejemplo, aquí dentro, algunos, un jugador o tu enemigo pueden estar en dos estados. Ya sea que sea eso, que es eso cierto, o
oye, puede estar vivo, que significa significa, es que es falso. Por lo que un booleano es una variable que puede tomar ya sea un verdadero o puede tomar un falso. Por último, tenemos la variable string. Y una variable de cadena significa que es una cadena de caracteres uno tras otro. Entonces mi nombre, como se puede ver aquí mismo. Y el, ¿es que la primera palabra de la variable está en minúscula y la segunda palabra, la primera letra está en mayúscula, al igual que es eso igual que mi nombre? Y esta es la convención de cómo nombramos nuestras variables. Por lo que una variable de cadena es una cadena de caracteres donde puedes poner como Michael o un coche o puerta o cualquier cosa que quieras nombrar. Cualquier palabra es básicamente una cadena. Entonces sigamos adelante y creamos nuestra primera variable, atrás. Y Visual Studio B van aquí mismo a nuestro guión. Y vamos a crear un significado público,
público que podemos usar esta variable en cualquier lugar que deseemos. Vamos a hacer de ella un flotador. Y vamos a llamar a esta velocidad D, y vamos a darle una tasa de doce v 0.5 f go. Bueno, en realidad creo que hay demasiado para electrones, pero podemos retocar más adelante. Entonces cuando hacemos pública una variable, si volvemos a Unidad. Espere a que se compile. Y con el tiempo ahora, así que cuando hacemos clic en jugador aquí, se
puede ver que ya tenemos esta velocidad variable. Y está apareciendo aquí mismo porque lo hicimos público. Y si volvemos al Visual Studio y
hacemos de esto una variable privada, necesitamos guardarla, por supuesto, de vuelta en nuestro Inspector y ya no está disponible la velocidad para que podamos jugar. Entonces haz que esto vuelva a público, guarde eso. Y ahora tenemos la capacidad de retocar y jugar con nuestra velocidad. Ahora, lo siguiente que vamos a hacer es querer realmente empezar a mover a nuestro jugador. Y la forma en que movemos a nuestro jugador es a través del controlador de personajes. Y en realidad puedes crear una variable que sea de tipo Character Controller es esto en realidad parte de tu reto. Entonces hemos aprendido cuáles son las variables, hemos aprendido a crear variables. Y ahora es el momento de que crees una variable de controlador de caracteres. Por lo tanto, crea una nueva variable de tipo Character Controller, no te preocupes. Visual Studio te ayudará. Hazlo una variable pública y nombra mi controlador de caracteres. Asegúrese de que aparezca en el inspector. Y como reto de bonificación, pesar de que aún no hemos cubierto esto, puedes agregar el controlador de personaje en el jugador a la variable en el inspector. Entonces si tienes un poco de miedo, no lo estés, esto es extremadamente fácil. Pausa el video ahora mismo y vete. Trata de hacer lo mejor posible. Oh, ok, bienvenido de nuevo. Por lo que espero que no se limitara a mirar la pantalla y se petrificaran de qué del reto que te acabo de dar. ¿ De acuerdo? Entonces, en primer lugar, dijimos que queremos crear una variable pública. Entonces vamos a hacer de esto una variable pública. Segunda cosa que dijimos, vamos a hacer esto de tipo Character Controller. Entonces vamos a escribir personaje incluso tarea. Y se puede ver que ya nos da una sugerencia, que es Character Controller hold down tab. Entonces ahora tenemos una variable de tipo Character Controller que es pública, y lo vamos a nombrar. Mi, asegúrate de que la primera palabra tenga una primera letra minúscula. Y luego controlador, la segunda palabra tiene un C grande, una mayúscula, ponerse, poner el punto y coma, guardar eso. Y ahora si volvemos a la unidad y miramos a nuestro inspector, deberíamos ver que mi controlador de personajes aparece aquí mismo. Y esta es la sección de bonos. Podemos, en realidad, se puede ver que no tiene ninguno y
requiere de un controlador de caracteres que por suerte. Tenlo aquí mismo. Por lo que simplemente tienes que hacer clic en el controlador de caracteres y arrastrarlo a su lugar. Y eso lo guardamos. Genial. Por lo que ahora tenemos una referencia a nuestro controlador de caracteres que en realidad podemos empezar a movernos. Ahora, probemos esto. Antes de hacerlo, déjame explicarte qué es un vector tres. Ahora bien, no tengo diapositivas, pero no creo que lo necesitemos. Vector tres. Al igual que los vectores que aprendiste en la escuela, tenemos este vector X o el vector zed, el vector azul, que se llama el vector delantero. Tenemos este vector X, que es el vector correcto. Entonces vector tres, ¿verdad? Y tenemos este y, que es el vector tres OP, vector. Muy bien. Entonces ahora que sabemos cómo funcionan los vectores treses, en realidad los vamos a usar para mover un poco a nuestro personaje. Y por ahora, oops, así que estamos en un reto de vuelta en Visual Studio. Por lo que ahora dentro de aquí vamos a mover a nuestro personaje. Entonces la forma en que movemos a nuestro personaje, vamos a conseguir nuestro controlador de personajes. Y vamos a usar un método que se llama movimiento. Y si leemos en él, podemos ver que una función Move más compleja tomando deltas de movimiento absoluto, no hace falta entender todas estas palabras complejas aquí. Todo lo que necesitas saber es que esto mueve a nuestro personaje simplemente así. Y si miras aquí mismo, puedes ver que en realidad toma un vector tres dentro de esto. Bueno, requiere de un vector tres y ordenó moverse. Entonces, vamos a guardar eso. Usemos eso. Y aquí dentro vamos a crear un vector de tres puntos. Y en realidad podemos elegir si quieres que esté arriba, que tenga razón o que esté hacia adelante. Y simplemente podemos añadir un punto y coma. Guardemos eso, y veamos qué pasa si hacemos click en play. Entonces ahora déjame ver mi juego. Entonces así es como se ve. En realidad puedes jugar con la cámara para que puedas moverla hacia arriba y, o las esperanzas giraron hacia abajo, giraron así. Para que podamos ver a nuestro jugador moviéndose, guarde eso, hit play. Y oh, oh, de verdad, maldita sea donde ese gol de capa, eso fue extremadamente rápido. De acuerdo, entonces lo genial de las variables es que
en realidad ahora podemos ajustar la velocidad a la que se mueve nuestro jugador. Entonces de vuelta aquí, en realidad
podemos multiplicar esto por nuestra velocidad. Y como viste lo rápido que fue eso, en realidad
necesitamos reducir la velocidad. Por lo que ahora podemos hacer esto en lugar de 12. Hagamos esto 0.01. guarde eso. Probemos esto otra vez. Y esto debería hacer que nuestro jugador se mueva más lento. Así que hit play. Y como puedes ver, se mueve más despacio. Y si hacemos esto negativo, él debería volver y dejarme simplemente moverlo un poco hacia adelante para que podamos ver. Está bien. Está bien. Cookie come puede combatir, combatir, combatir remontada de Hamburgo. Y como pueden ver, porque estoy manipulando la velocidad de nuestro jugador cuando es negativo se está moviendo hacia atrás y cuando es positivo está avanzando. Entonces cuando ahora los ponemos a 0, por lo que se detiene completamente muerto en sus huellas. Nosotros lo hacemos uno y la vida plena lejos. Entonces espero que hayan disfrutado de este video. Comprometamos nuestros cambios. Y no voy a estar cometiendo mis cambios cada video, o al menos no voy a estar demostrando que estoy cometiendo. Necesitas crear este hábito. Siempre que llegues a un punto determinado, un punto significativo en tu proyecto, siempre vuelve atrás y comete tus cambios. Entonces, ¿qué hacemos nosotros, qué hicimos aquí? Bueno, montamos a mi jugador o a mi personaje, personaje, personaje, movimiento de controlador sin signos de exclamación. Entonces cometamos eso. Ahora tenemos un nuevo repositorio. Y en el siguiente video realmente vamos a empezar a controlar nuestro reproductor con nuestras teclas WASD y dar nuestros primeros pasos. Entonces espero que hayas disfrutado de este video y te veré en el siguiente.
10. Nuestros primeros pasos: Bienvenidos de nuevo, mis compañeros desarrolladores de juegos. En este video, en realidad vamos a estar aprendiendo sobre el sistema de entrada y la unidad. Entonces ahora cuando golpeamos el juego, en lugar de simplemente mover a nuestro jugador, en realidad
podemos usar las teclas WASD con el fin de moverlo hacia adelante, hacia atrás, hacia la izquierda, y hacia la derecha. Ahora su movimiento sigue siendo raro y como puedes ver, no tiene gravedad sobre él. Pero vamos a empezar con los fundamentos de las humanidades y el sistema de puesta. Entonces, no perdamos más tiempo y empecemos. De acuerdo, entonces lo primero de lo que quiero hablar, cómo realmente vamos a estar moviendo a nuestro jugador. Así que haga clic aquí en jugador. Ya hablamos de los diferentes tipos de ejes que tenemos. Y vamos a estar moviendo a nuestro jugador, en primer lugar, sobre el eje z, lo que significa que vamos a estar moviéndolo hacia adelante. Y lo vamos a estar moviendo en el eje x también. Por lo que de esta manera, nuestro jugador se estará moviendo en estas dos direcciones. Ahora bien, ¿qué necesitamos realmente para empezar a mover a nuestro jugador? Bueno, claro que vamos a estar necesitando algunos insumos de la persona que juega nuestro juego para mover a nuestro jugador. ¿ Y cómo vamos a hacer esto? Bueno, pensé en simplemente pasar por ahí y contarte todo esto, pero
yo, lo pensé más y quería realmente mostrarte el proceso de pensamiento detrás realmente averiguar o encontrarte en algún tipo de situación en la que se desea agregar un nuevo mecánico y cómo realmente se puede hacer. Entonces, ¿cuál es nuestro objetivo? Nuestro objetivo es crear movimiento. Y en primer lugar, obtenemos la entrada de la persona que juega nuestro juego. Entonces queremos crear movimiento a lo largo de estos dos ejes. Entonces, ¿cómo iniciamos nuestro proceso de pensamiento así como todas las grandes cosas comienzan en nuestra vida. Nosotros vamos a reservar. Escribimos n unidad de entrada porque queremos obtener algún tipo de insumo de la unidad. Y aquí vemos que tenemos la documentación para la Unity 3D, que es el lugar perfecto para obtener cualquier tipo de documentaciones. Por lo que hacemos click en este. Abrimos el enlace y obtenemos las documentaciones de entrada para la unidad para que podamos leer, y aquí está la interfaz y al sistema de entrada. Muy bonito. Entonces esto es lo que necesitamos. Entonces leemos, leemos, vemos lo que hay aquí. Podemos ver que para leer un ejes, usamos el eje de entrada de punto get. Perfecto. Esto es exactamente lo que necesitamos. Y podemos ver aquí que tenemos uno de los siguientes ejes por defecto, que son horizontales y verticales y están mapeados al joystick AWS d, ¿qué tan perfecto es eso? Bueno, en el mundo real, cuando estás haciendo esto solo, por supuesto, este proceso tomará un poco más de tiempo, pero solo te estoy mostrando cómo funciona
el proceso de pensamiento detrás de averiguar estas mecánicas en realidad. Tan genial, necesitamos el acceso de get. Por lo que hacemos click en el get access y abrimos la segunda documentación. Y miramos aquí, podemos ver la forma en que podemos acceder a estos. Obtén ejes y vemos que requiere un nombre de eje que acabamos de ver, que es heros, horizontales o verticales. Podemos leer la descripción que nos dice que devuelve el valor del eje virtual. Y el valor va de menos uno a uno. Genial, no sólo eso, también
obtenemos la opción de buscar algún tipo de ejemplo. Y aquí podemos ver esa traducción, cómo funciona todo esto, y cómo podemos usarla o implementarla dentro de nuestro código, incluso obtenemos la pista de que necesitamos usarlo dentro de actualización porque queremos estar obteniendo entrada de nuestro jugador cada cuadro. Tan grande, esto es exactamente lo que necesitamos. También podemos ver aquí que para configurar tu entrada, debes ir a Editar ajustes del proyecto Entrada. ¿ Qué bonito es eso? Entonces ahora con toda esa información, empecemos con la adición de insumos a nuestro juego. Entonces abre aquí el scripting. Quitemos esto por ahora, y empecemos a obtener un poco de entrada de nuestro jugador. Entonces, en primer lugar, necesitamos conseguir el eje en el plano horizontal. Entonces vamos a crear una variable aquí. Va a ser una carroza. Y simplemente lo vamos a llamar la x porque nos estamos moviendo sobre el eje x. Por lo que crearemos una entrada y usaremos los ejes get. Y aquí dentro vamos a escribir una advertencia horizontal y una pequeña aquí. Siempre que estés usando entradas de cadena, ¿qué cadena? String, quiero decir, dentro de estas dos citas, debes asegurarte de que los dos lo escriban correctamente al 100%. Porque si, por ejemplo escribimos xanthan horizontal usando la a minúscula h, esto no funcionará. Tenemos que asegurarnos de que sea la H. mayúscula Y no sólo eso, si tenemos la opción, también
podemos ir y copiar esta referencia de cadena. Bueno, ¿dónde copiamos la referencia de cadena? Bueno, acabamos de ver que en realidad podemos
entrar en Editar configuración del proyecto y ver la entrada. Entonces sigamos adelante y hagamos eso. Abrimos Unidad. Entramos en la Editar configuración del proyecto. ¿ Y dónde está nuestro insumo? Bueno, ahí está nuestra entrada, hacemos click en el eje. Y aquí dentro podemos ver todos los diferentes tipos de ejes a los que podemos acceder en nuestros insumos. Hagamos click en horizontal. Y aquí dentro podemos ver que una orden para moverse horizontalmente, necesitamos usar la API y el Dickey y podemos seguir adelante y copiar esto. Vuelve atrás y nuestro Visual Studio y pegarlo aquí mismo y ciérralo con punto y coma. Muy bonito. Ahora, lo siguiente que queremos hacer es que queremos conseguir el movimiento en el eje z. Entonces sigamos adelante y creemos un eje de flotación zed. De entrada. Consigue hachas. Y aquí dentro vamos a estar usando la vertical. Por lo que de vuelta en nuestras entradas de configuración del proyecto de Unity, vamos a cerrar la horizontal, abrir la vertical. Y aquí dentro podemos ver que es d, s Y w 40 negativo y lo positivo. También podemos usar las flechas arriba y abajo para copiar el control vertical. A ver, vuelve aquí. Control V, cerrado, guarde eso. Y ahora tenemos insumos en nuestro juego. Muy bonito. Ahora, ¿qué deberíamos estar haciendo a continuación? Bueno, lo siguiente que queremos hacer es realmente queremos combinar ambos,
ambos de estos movimientos para reunirlos y añadirlos al movimiento del controlador de personajes. ¿ Cómo vamos a hacer eso? Bueno, en primer lugar, porque estamos trabajando en el factor tres, vamos a crear una variable que es del tipo vector tres. Y simplemente lo vamos a llamar el movimiento. Y este movimiento va a ser el eje x que acabamos de crear. Y aquí, la entrada de nuestro jugador tiempos el punto de transformación. ¿ Verdad? Ahora, ya has visto qué vector 3.Qué es ahora estamos trabajando en la transformación que derecho? ¿ Y qué transforma esto? Detroit, MI, Ya sabes lo que significa derecho. Vamos a atracar esto aquí, vuelta en nuestra escena. Entonces correcto está este eje justo aquí. Es el eje x donde nos movemos a la derecha. Pero, ¿qué significa transportarme? Transformar es en realidad la transformación del jugador V. Y siempre que nosotros, por ejemplo, y aquí, cuando escribimos transformamos así, nos referimos a la transformación del objeto del juego, que tiene este script de jugador adjunto dos. Entonces debido a que este script de jugador está en el objeto de juego de jugador, eso significa que la transformación a la que accedemos desde nuestro guión es la transformación del jugador. Y cuando escribimos punto de transferencia derecha, nos referimos al eje derecho o al eje x, que está en este objeto exacto del juego, que es nuestro jugador. Entonces ahora que sabemos lo que esto significa, podemos seguir adelante y agregar a esta transformación Detroit la z, que es la entrada en el eje vertical tiempos la transformación. Y te dejaré que resuelvas esto por tu cuenta. Tómate un par de segundos solo para saber cuál vamos a usar el arriba, el delantero o el derecho. Ok, se acabó el tiempo. Espero que intenten lo mejor posible. Y siempre vamos a estar usando el delantero y
vamos a sumar este punto y coma y vamos a ahorrar eso. Entonces hablemos un poco de lo que está pasando porque todo esto es muy nuevo. Lo primero que hicimos es que conseguimos el Y pusimos el eje x para la horizontal. Después obtuvimos la entrada en el eje z, que se llama vertical. Entonces combinamos ambos multiplicando la entrada horizontal por
el punto de transformación, ¿verdad? Lo cual nos permitirá movernos en el eje x así. Y luego multiplicamos la entrada z o la vertical por el punto de transformación hacia adelante, lo que nos permitirá movernos en la dirección hacia adelante. Muy bonito, tan bien que establecido. Lo siguiente que tenemos que hacer es que realmente necesitamos agregar este movimiento a nuestro Controlador de Personajes. Y esto es en realidad parte de tu reto. Tu reto va a ser, en primer lugar,
buscar documentaciones de Character Controller Inmunidad igual que con él ahora mismo usando Google o el método que quieras. Entonces encuentras el movimiento
2D controlador de personajes en las documentaciones que ya lo hemos usado, pero quiero que sigas adelante y pruebes esto por tu cuenta y realmente te hagas una idea de cómo funciona todo esto. Y por último, quiero que agregues el movimiento a tu controlador de personaje en el juego. Entonces ya hemos hecho esto, pero solo quiero que realmente tengas una idea de cómo funciona todo esto y cómo tú por tu cuenta cuando sales al salvaje,
salvaje oeste del desarrollo de juegos en realidad puedes pasar por el pasos y conocer la documentación y utilizar el movimiento. De todos modos, pausa el video ahora mismo y ve al reto. Ahora, ya hemos hablado de cómo agregamos movimiento en el video anterior, pero vamos a ahondar un poco más en cómo realmente funciona esto. Entonces al igual que buscamos la unidad de entrada, en realidad también se
puede buscar el controlador de caracteres y la unidad. Esta es la documentación para ello. Para que puedas seguir adelante y leer todo al respecto. Pero lo que nos interesa es la jugada aquí mismo. Y si leemos junto a ella, se puede ver que suministra el movimiento de
un objeto de juego con un componente de controlador de personaje adjunto. Genial, entonces esto es lo que necesitamos. Haga clic en la luna. Abrimos un nuevo guión aquí. Y como puedes ver, esta es la jugada en Texan, un vector tres, y suministra el movimiento al objeto del juego. También podemos ver cómo podemos ver
aquí un ejemplo de cómo se mueve realmente este controlador de caracteres. Y se puede ver que estamos bastante cerca de lo que el ejemplo que nos muestra aquí. El movimiento es el eje de entrada en la horizontal y el eje de entrada en la vertical. Y es bastante similar, pero lo estamos haciendo de una manera un poco diferente. Entonces sigamos adelante y sumamos el movimiento a nuestro Controlador de Personajes. Ya tenemos la referencia, que es el microcontrolador. Por lo que mi controlador de punto se mueve. Y aquí dentro vamos a sumar el movimiento que acabamos de crear. Muy bonito. Asegúrate de guardar todo eso. Y sigamos adelante y probemos esto y veamos si funciona. Entonces guarde eso. Hit play. Y ahora cuando presionamos la w, nuestra, bueno, nuestra pequeña cápsula aquí debería avanzar. Ah, gay, y es súper rápido, pero al menos está funcionando. Y si nos movemos a usar la tecla W, la a o la clave, también
podemos moverlo a la derecha, a la izquierda hacia adelante. Y en realidad también podemos moverlo horizontalmente, pero como pueden ver, no
tenemos ningún control sobre nuestro jugador en absoluto. Por lo que en el siguiente video, vamos a estar controlando el movimiento de nuestros jugadores usando nuestra velocidad. Y también vamos a estar aprendiendo cómo podemos desprender el movimiento de nuestra velocidad de fotogramas. Y también construiremos ganar sobre los métodos y demás. Entonces te veré en el próximo.
11. Controlar el movimiento de jugadores: Bienvenidos de nuevo, mis compañeros desarrolladores de juegos. En este video, en realidad vamos a, en primer lugar, empezar a controlar nuestro movimiento con la variable de velocidad que hemos creado cuatro. Y en realidad también vamos a estar aprendiendo sobre cómo hacer que todo esto sea tasa de fotogramas y dependa, lo que agrega movimiento más dinámico a nuestro juego. Por último, aprenderemos sobre los métodos públicos y los métodos privados y en realidad vamos a crear los nuestros propios. Por lo que ahora cuando golpeamos el juego, se
puede ver que podemos mover a nuestro jugador a cierta velocidad. Pero si aumentamos esto a, digamos 50, podemos movernos un poco más rápido. ¿ A dónde se fue? Ok. Y si ponemos esto a, digamos dos, ahora apenas podemos movernos en absoluto. Entonces, no perdamos más tiempo y empecemos. Ahora que tenemos movimiento o tenemos, podemos usar input con el fin de mover a nuestro jugador. Es hora de controlar a nuestro jugador. Y eso es parte de tu reto. Tu reto, déjame conseguir mi láser es controlar la velocidad de movimiento. Por lo que necesitarás multiplicar la variable de velocidad que creamos por el movimiento. Y luego necesitarás ajustar la velocidad
desde el inspector hasta que se sienta lo suficientemente bien para ti. Por lo que es tu trabajo determinar qué tan rápido quieres que tu jugador se mueva por el mundo. Ya hemos hecho esto. Así que pausa el video ahora mismo y ve al reto. Oh, ok, bienvenido de nuevo. Entonces, ¿cómo vamos a hacer esto? Abramos los guiones y terminemos aquí. Antes de hacer el movimiento o antes de añadir el movimiento al controlador, en realidad
vamos a tomar este movimiento. Y vamos a decir que este movimiento es igual
al movimiento que ya está presente tiempos nuestra velocidad. Entonces ahora, cada vez que tomamos el movimiento de aquí, lo
multiplicamos por la velocidad, y luego lo ponemos de nuevo en el movimiento justo aquí. Y este movimiento se suma a nuestro movimiento o a nuestro movimiento de punto controlador. Entonces ahora cuando golpeamos el juego, movemos a nuestro personaje y él es mucho más lento. Entonces podemos añadir sólo esta herramienta, digamos 0.7. Y ahora se mueve un poco más rápido. Se ha ido de verano. Probemos esto otra vez. Y digamos que queremos hacer de éste o tal vez no uno, tal vez digamos 13. Y debería estar volando hacia la distancia tan pronto como P plus WK. Sí, eso funciona bastante bien, pero todavía hay un ligero problema. Si volvemos aquí, podemos ver que actualización se llama una vez por fotograma. Eso significa que cada vez que presionamos D, W o a, o como se le llama, varias veces y la velocidad es extremadamente alta. Ya
sabes de cuadros por segundo cada vez que estás jugando un juego multijugador. Entonces es la FBS. Y el problema aquí es que estamos usando recursos muy limitados. Entonces digamos Endgame. Y aquí podemos dar click en las estadísticas. Y vamos a golpear juego. Y se puede ver que los cuadros por segundo aquí son de 700 a quizá 900. Dependerá de tu hardware. Por lo que ahora cada cuadro, esta velocidad o movimiento se suma a nuestro jugador. Y esto no es bueno porque por ejemplo, si empezamos a rezagarnos, rezagarnos en nuestro juego, nuestro movimiento se va a deteriorar como el progresista. O si los fotogramas por segundo son muy altos, nuestro movimiento será mucho más rápido. Y esto no es lo que queremos de nuestra ganancia. Queremos tener un movimiento constante sin importar cuáles sean los fotogramas por segundo o así, lo que queremos hacer es querer desprender velocidad de nuestro jugador del número de fotogramas. Y la forma en que hacemos eso es multiplicando realmente este movimiento por el tiempo punto delta. ¿ Y qué significa este tiempo.Deltatime? Si flotamos sobre el tiempo.Deltatime, podemos ver que el tiempo de finalización en segundos desde el último fotograma. Entonces esto nos da el tiempo entre cada fotograma, lo que significa que esto se vuelve independiente de la velocidad de fotogramas. Y verás ahora que nuestro movimiento se volverá mucho más lento
porque no depende del número de cuadros que lo estamos moviendo. Por lo que tomamos nuestro movimiento de los insumos. Lo multiplicamos por la velocidad para controlarlo, y luego lo desconectamos de la velocidad de fotogramas. Entonces lo hacemos multiplicándolo por el tiempo.Deltatime. Entonces guardamos todo eso. Ahora de vuelta a la unidad, si tienes una velocidad muy baja, notarás que vamos a ser extremadamente lentos en este momento. Entonces cuando nos movemos, apenas nos movemos. Por lo que necesitamos aumentar esto a uno. A lo mejor ni uno va a estar ayudando. Sí, se puede ver que apenas nos estamos moviendo. Entonces tendremos que ajustar esto y hacerlo 12.5, igual que hicimos al principio. Entonces ahora tenemos un movimiento mucho mejor para nuestro jugador y es mucho más razonable, es mucho mejor. Aumentémoslo tal vez a 20. Por lo que ahora podemos mover a nuestro jugador e incluso puede pisar y escalar. Pero desafortunadamente, no baja porque aún no tiene gravedad alguna. Está bien, genial. Entonces volvamos atrás. Vamos a explicar esto una vez más. Obtenemos las entradas en lo horizontal y lo vertical. Lo multiplicamos por nuestras transformaciones. Tan transformado o pruébalo para el x transform.py adelante para el zed o el horizontal y vertical respectivamente. Multiplicamos este movimiento por la velocidad para controlarlo, entonces
multiplicamos el movimiento y la velocidad por tiempo.Deltatime para hacerlo independiente del número de cuadros que tenemos. Y luego agregamos el movimiento a nuestro Controlador de Personajes. Y como paso final, queremos poner este código en un método separado. Entonces. Siempre que estamos trabajando dentro de la actualización, siempre
queremos mantener las cosas limpias y muy sencillas. Entonces por ahora una actualización, tenemos todo este cluster de código y no queremos
tener todo esto dentro de actualización porque vamos a estar agregando disparos, agachados, etcétera a nuestro jugador. Entonces vamos a extraer esto en su propio método. Y antes de que hagamos eso, permítanme explicarles cuáles son los métodos. Entonces estructura del método, esta es la estructura del método. Entonces al igual que tenemos el tipo de accesibilidad para una variable, también
tenemos un tipo de accesibilidad para los métodos. Entonces, cada vez que creas un método, debes asegurarte de saber si es privado, lo
que significa que solo se usa dentro de esta clase. O si es público, que significa que se puede utilizar fuera de la clase. A continuación tenemos el tipo de devolución. Ahora, como viste, cada variable tiene un tipo, pero los métodos no necesitan necesariamente tener un tipo. Y siempre que los métodos no tienen un tipo o no devuelven nada, se
les llama void. Por ejemplo. La actualización no devuelve nada, así que diría vacío y Stuart no devuelve nada. Por lo que también es un vacío. Aprenderemos sobre regresar más adelante. Pero por ahora, solo debes saber que un método no puede tener ningún tipo. A continuación tenemos el nombre de un verbo o de un método, y nombramos variables por primera palabra siendo minúscula. Pero cada vez que estamos nombrando un método, cada palabra está en mayúsculas. De esa manera podemos distinguir entre variables y métodos. Por último, tenemos el parámetro, y en este parámetro podemos realmente enviar información que este método puede utilizar. Ahora no estaremos enviando ningún parámetro si está vacío, eso significa que no usa nada. Pero más adelante verás que algunos métodos
requerirán que se le envíen parámetros para usarlo, llegaremos a eso más adelante. Entonces sigamos adelante y extrayamos este par de líneas. Y la forma en que creamos un método, podemos bajar aquí y crear un vacío y hacer de este el movimiento del jugador. Y luego tomamos todo este código. Nosotros lo cortamos. De la forma en que cortamos esto,
al dar click en Control X, hacemos click en el control V para pegar todo esto aquí. Y a este método le llamamos el movimiento del jugador aquí. lo guardamos. Por lo que ahora una actualización. Siempre que iniciamos la actualización, se ve y ve que necesita llamar al movimiento del jugador. Se mira a través del código y ve que tenemos movimiento de jugador. Y empezamos con todo este código. Entonces, vamos a guardar eso. De vuelta en Unity tenía juego, vamos a asegurarnos de que todo esto siga funcionando. Entonces ahora, Yup, todavía podemos movernos, nuestro jugador sigue moviéndose y sigue flotando en el aire. Aquí dentro. Y los maestros, podemos ver que tenemos un par de cambios no comprometidos. Nosotros etapa de eso comprometemos todo eso. Y como deberíamos llamar a este jugador en movimiento usando entradas, nos comprometemos todo eso. Genial. Entonces ahora tenemos movimientos que arriba. Y el curso natural de acción más adelante que vamos a hacer es que
en realidad vamos a montar la cámara en primera persona encima de nuestro jugador. Por lo que se mueve con nosotros a medida que nos movemos por nuestro mundo. Entonces espero que hayas disfrutado el video y te veré en el siguiente.
12. Configuración de la cámara FPS: Ah, caso. Entonces lo primero que vamos a hacer es que realmente vamos a tomar nuestra cámara principal y vamos a restablecer su posición así que está en el jugador. Nosotros lo vamos a mover al niño del jugador. Entonces lo moveremos aquí arriba. Y sigamos adelante y posicionémoslo justo frente a ella. Y en realidad podemos ver lo que el jugador y la cámara pueden ver. Se puede ver la cámara principal. Entonces posicionemos las cámaras en algún lugar por aquí tal vez. Así que asegúrate de que no veamos estos dos puntos negros. Eso lo arreglaremos más adelante, pero por ahora, solo muévelo. Ups, ni siquiera está en su lugar. Entonces vamos a moverlo al centro y subir un poco para que quede justo por encima de los ojos. Está bien, genial. Entonces con eso hecho, simplemente lo
guardaremos. Y debido a que la cámara principal ahora es infancia para el jugador, se estará moviendo con el jugador. Entonces cuando golpeamos Play, ahora cuando movemos a nuestro jugador a izquierda y derecha, se
puede ver que ya tenemos una vista en primera persona de nuestro juego. ¿ Qué tan guay es eso? De acuerdo, pero ahora queremos pasar al siguiente nivel. Y siguiente nivel es que queremos realmente empezar a mover esta cámara usando nuestro ratón. Permítanme en primer lugar explicar cómo ha ido a funcionar este movimiento. Entonces, en primer lugar, queremos estar mirando a izquierda y derecha. Y para hacer eso, en realidad
vamos a llevarnos a este jugador y vamos a estar girándolo alrededor. Entonces cuando rotemos la cámara usando el botón del ratón, vamos a rotar todo el cuerpo del jugador. Pero cuando queremos rotar hacia arriba, no
queremos estar rotando a nuestro jugador todo el camino hacia arriba. No queremos que este movimiento esté sucediendo. En realidad queremos sólo estar girando esta cámara cuando queremos Lopes. Es decir, cuando queremos mirar arriba y abajo, sólo
queremos estar girando esta cámara. Entonces sigamos adelante y empecemos a hacer eso. Por supuesto vamos a estar tomando la entrada del ratón y luego vamos a estar aplicándola a las diferentes transformaciones que tenemos. En realidad vamos a estar usando algo llamado la fila get access y no sólo el get access. Déjame mostrarte la diferencia entre estos dos. Por lo que este es el punto de entrada normal obtener acceso. Y podemos ver que el valor está en el rango de menos 11. Por lo que se mueve de menos uno a menos 0.9 a 0 o 2x menos 0.8 y así sucesivamente. Pero usando la fila get access, en realidad, si miramos aquí, la entrada del teclado siempre es minús1, 0, o uno. Por lo que toma posiciones definitivas en el espectro o no es un espectro. O se necesita un minús1, un 0, o un más uno. ¿ Por qué lo estamos usando de esta manera? Si sigues leyendo, puedes ver que esto es útil si quieres hacer todo el
suavizado en el teclado o en la entrada del mouse. Por lo que queremos poder controlar cuánto lo escribimos. Cuando miramos a la izquierda y a la derecha o arriba y abajo, no
queremos construir hasta esa posición. Queremos, en cuanto miremos a la izquierda,
queremos que la cámara se mueva de esa manera o empiece a moverse de esa manera. No queremos acumular lentamente de la nada a movernos de esa manera. Queremos ser tenerlo instantáneamente. Entonces sigamos adelante y hagamos FET y actualicemos. Bajo el movimiento del jugador, vamos a crear un flotador y vamos a llamar a esto el ratón X. Y para poder tomar la entrada, vamos a usar input. Se accede a fila. Y aquí dentro, ¿qué deberíamos estar usando? Bueno, vamos a entrar en nuestra configuración de proyecto aquí. Y vamos a ver, queremos estar usando los actos del ratón. Entonces copiaremos todo esto porque es una referencia de cadena. Y siempre que tengamos una referencia de cadena, suele ser mejor copiarla. Y vamos a guardar eso. Lo siguiente que queremos hacer es que realmente queremos estar aplicando esta rotación a nuestro transporte de carrocerías. Entonces aquí, vamos a escribir transformada, que es nuestra transformación actual. Y lo vamos a estar rotando. Entonces lo estaremos rotando. Y si sólo me dejamos borrar esto. Y si miramos la rotación, podemos ver que en realidad se necesita un vector tres. Entonces vamos a estar agregando un vector tres. ¿ Y qué vector vamos a usar en realidad? Bueno, va a ser el vector alrededor del cual esta cámara va a estar girando. Por lo que de vuelta en Unidad y se ven. Si miras alrededor de qué eje es nuestra cámara realmente girando Cuando estamos a la izquierda y a la derecha, o nuestro jugador como girando alrededor. Entonces si miramos en la transformación aquí mismo, podemos ver que cuando sostenemos la Y y empezamos a girar, el jugador empieza a girar alrededor. Por lo que estamos girando alrededor del vector OP. Entonces veamos eso de nuevo. Entonces giramos alrededor de z, y, aquí mismo. Se puede ver en la transformación. Entonces sigamos adelante y aplíquelo. Entonces es el vector tres puntos arriba. Y lo vamos a estar multiplicando por la entrada que tenemos en el ratón x. Guardemos eso. Volvamos a Unidad. Y vamos a golpear juego. Entonces ahora podemos ver que cuando movemos nuestro ratón de izquierda a derecha, en realidad
podemos mirar alrededor. Entonces ahora, incluso cuando avanzamos, cuando miramos en otra dirección, nos movemos en esa dirección porque estamos moviendo todo
el cuerpo o toda la transformación de nuestro jugador. Pero todavía hay un par de cosas que necesitamos arreglar y una de ellas realmente está controlando lo rápido que lo escribimos. Por lo que queremos agregar una variable de sensibilidad del ratón. Entonces aquí arriba, vamos a crear un público. Público porque queremos estar cambiando de nuestro Inspector. Entonces esta es una carroza pública y vamos a llamar a este ratón devoto sincero. Y vamos a ponerlo a 100 F por ahora. Y aquí abajo en la fila de ejes de entrada, vamos a estar multiplicándolo por la más sensibilidad. Y mientras estemos aquí, también
lo vamos a estar multiplicando por tiempo.Deltatime, lo que su velocidad de cuadro independiente. Ahora, de vuelta en nuestra ganancia. Guardemos eso. ¿ Lo guardamos todo aquí? Sí. Hit play. Y ahora podemos mirar a su alrededor. Es un poco lento como puedes ver. Entonces sigamos adelante y aumentémoslo a 200. Es esa mantequilla que ve el, Nope, no es tan bueno. Hagámoslo 500. Y ahora en realidad podemos rotar y mirar a su alrededor mucho mejor. A lo mejor podemos incrementarlo más adelante. Ya veremos eso. Hagámoslo realmente 700. A ver cómo funciona eso. Sí, estoy satisfecho con 700. Se ve lo suficientemente bien de todos modos, ahora que tenemos la rotación alrededor del eje y o mirando a izquierda y derecha, es momento de hacer la rotación hacia arriba y hacia abajo. Y en realidad, no tengo ganas de hacer esto. Entonces te voy a emitir un reto para que lo hagas. Y tu reto va a ser, en primer lugar,
conseguir el eje de fila valor 14,
ratón Y, discúlpame, por el tipo aquí mismo. Entonces obtén el valor de fila x para el ratón Y. Entonces necesitas asegurarte de controlarlo con la sensibilidad del ratón. Y por último, es necesario que sea independiente de la velocidad de fotogramas. Ahora, no es necesario aplicar todo eso a la rotación de la cámara lo hará más adelante. Todo lo que quiero que hagas es obtener la entrada, usada, la sensibilidad para controlarla y hacerla velocidad de fotogramas y dependiente. Así que pausa el video ahora mismo y ve a hacer el reto. Oh, OK, bienvenido de nuevo. Entonces lo primero que vamos a hacer es que vamos a crear el ratón y
Y vamos a conseguir el punto de entrada, conseguir ejes crudos. Entonces mientras que el eje get raw, y va a ser el ratón Y. Pero como es una referencia de cadena, realidad
vamos a seguir adelante y obtenerlo del gestor de entrada. Entonces copiaré eso y lo pegaré aquí mismo. Vamos a añadir la sensibilidad del ratón para controlarlo. Y vamos a hacer que la velocidad de cuadro y dependiente multiplicándose por el tiempo.Deltatime. Ahora queremos estar aplicando esta rotación a la cámara real. Por lo que necesitamos conseguir una referencia a esa cámara. Aquí arriba. Vamos a crear un público. ¿ Y qué tipo debería ser este? Bueno, porque estamos usando la rotación, eso significa que queremos acceso a la transformación de la cámara. Entonces vamos a hacer que esta variable de tipo
transforme, y sólo la llamaremos Mi sombrero de
cámara, y eso lo guardaremos. Por lo que ahora realmente podemos entrar en Unidad. Ir a jugador. Y aquí dentro tendremos la opción de agregar mi sombrero de cámara. Guardemos eso. Ahora de vuelta en Unity, queremos poder controlar esta rotación vertical de la cámara. Por lo que también vamos a estar creando otra variable, que es privada, float, camara, rotación vertical. Y vamos a estar sumando a esta cámara rotación vertical menos igual a ratón. ¿ Por qué? Ahora bien, ¿por qué estamos haciendo esto? En primer lugar, permítanme explicar lo que significa este menos igual a min. Esto significa que estamos tomando esta cámara rotación vertical y luego quitando el ratón Y de ella. Entonces para que se vea más profesional, simplemente
eliminamos esto y agregamos un menos aquí atrás. Entonces esto es lo mismo. Ahora bien, ¿por qué lo estamos haciendo un menos igual? Bueno, porque si miramos aquí en nuestras cámaras y queremos girarlo alrededor del eje x para que se mueva hacia arriba y hacia abajo. Se puede ver que cuando miramos hacia arriba, el valor en realidad se vuelve negativo. Y cuando miramos hacia abajo, el valor es positivo. Entonces por alguna razón, bueno en realidad es por la forma en que la Unidad está configurada. Cuando miramos hacia abajo, es positivo y cuando miramos hacia arriba su negativo. Entonces queremos estar realmente en revertirlo porque cuando miramos hacia arriba con nuestro ratón, está bien, el valor va a más uno. Eso significa que tenemos que revertirlo para lograrlo. Por lo que este valor, el más Y será un valor positivo y la rotación vertical de la cámara será un valor negativo. Por lo que podremos realmente mirar hacia arriba cuando movamos nuestro ratón hacia arriba, sí consigue la cabeza de la cámara. Y vamos a estar aplicando, no sólo la rotación. Esta vez vamos a estar aplicando la rotación local. ¿ Y por qué estamos haciendo esto? Bueno, porque ahora no estamos girando nuestra cámara. Lo estamos girando en relación con el padre transformado. Por lo que pasa por encima de la rotación local. Se puede ver esa rotación local como la rotación de la transformación relativa a la rotación de transformaciones del padre. Por lo que queremos sólo estar girando la cámara. Y si miras de cerca, puedes ver que el tipo es de tipo cuaternión. ¿ Y qué son los cuaterniones? Bueno, los cuaterniones son una forma para que United entienda las rotaciones de vector 3s. Ahora no necesitas entrar todo. Ni siquiera estoy seguro de cuáles son los cuaterniones. Son fórmulas matemáticas muy complicadas. No te preocupes. Simplemente tenga en cuenta que siempre que desee hacer rotaciones, necesita usar cuaternión. Entonces tomaremos el cuaternión y vamos a usar gobernante, y esto debería haber pronunciado Hulu. Y formas nueva regla devuelve una rotación que, bueno usa un vector tres y lo convierte en rotaciones. Y ahora podemos tener rotación. Por lo que antes. Y aquí dentro vamos a estar girando alrededor del eje x. Entonces va a ser, en primer lugar, la rotación vertical de la cámara. El eje y se va a quedar en 0 y el eje z también se mantendrá en 0. Entonces vamos a salvar todo eso. Y sigamos adelante y probémoslo en unidad y veamos qué pasa. Entonces y jugador, tenemos la cámara de referencia, tenemos la sensibilidad al 700. Cuando golpeamos el juego. En realidad podemos empezar a mirar hacia arriba y mirar hacia abajo. Y podemos movernos a la izquierda con nuestra cámara y a la derecha con nuestra cámara. Y podemos empezar a caminar y en realidad tenemos una primera persona buscando cámara. ¿ Qué tan guay es eso? Ahora antes de irnos, sólo quería mostrarles algo que antes no cubrimos. Si cambiamos la sensibilidad aquí dentro, tal vez algunos de ustedes se han dado cuenta, digamos que la ponemos hasta 1000000. De acuerdo, entonces ahora miramos más rápido arriba y abajo e izquierda y derecha. Pero cuando salimos del modo play, se
puede ver que se remonta a 700. Y este es un rasgo muy importante de la unidad. Esto se debe a que a veces podríamos ajustar las cosas en modo de
juego y podrían romper nuestro juego. Por lo que Unity hace, se asegura de que restablezca todo cuando salgamos del modo de juego. Entonces, siempre que ajustes algo, asegúrate de recordar lo que ajustaste y luego aplícalo cuando salgas de Gamow. Entonces en el siguiente video, en primer lugar, no
queremos estar buscando mucho arriba y abajo, para que podamos mirar todo el camino a nuestro alrededor, lo cual es, por supuesto, una muy mala idea. Tenemos que encontrar la manera de mantenerlo en ciertos ángulos. Y también queremos eliminar el poco jittering que tenemos. Entonces todo esto se hará en el siguiente video, y te veré entonces.
13. Movimiento mejor con cámara: Bienvenidos de nuevo, mis compañeros desarrolladores de juegos. En este video, vamos a hacer desaparecer nuestro cursor. Entonces ahora no es una hora de camino. No, en realidad vamos a hacer mucho más que eso. En primer lugar, se puede ver que ya no podemos ver nuestras espaldas cuando nos movemos hacia arriba y hacia abajo. Y en realidad podemos simplemente quitar nuestra cámara principal del jugador y agregamos una cabeza. Y ahora nuestra cámara principal sigue nuestra cabeza a medida que nos movemos por nuestro mundo. Esto hace que nuestra cámara sea mucho más suave y con mucho mejor aspecto. Entonces, no perdamos más tiempo y empecemos. Oh, bien, entonces lo primero que queremos hacer es realmente queremos evitar que nuestra cámara gire detrás de la espalda arriba y abajo. Y para eso vamos a estar usando algo llamado pinza de punto F matemática. Entonces déjenme explicar qué es eso. Entonces, ¿qué es la matemática? Pinza de punto F. En primer lugar, mantiene el valor entre un cierto mínimo y un cierto máximo. Por lo que arregla un valor de más o bajo tiro. Para que podamos determinar el valor que queremos cambiar. A continuación determinamos el mínimo y el máximo. Y de esa manera este valor no sobrepasará ni se rebajará, mientras que por encima y por debajo del mínimo, máximo y mínimo. Esta es la forma en que lo escribimos. Entonces, en primer lugar, tenemos pinza. Nosotros le damos el valor que queremos estar cambiando. Le damos el mínimo y el máximo. Entonces tenemos que devolver un flotador del valor sujetado entre el mínimo y el máximo. Entonces sigamos adelante y hagamos eso. primera hora. En primer lugar tenemos nuestra cámara de rotación vertical. Por lo que vamos a conseguir esta cámara rotación vertical antes de aplicarla a nuestra cámara tenía. Y vamos a usar pinza de punto matemática F. Y la razón por la que estamos usando la pinza de punto matemática F es porque clamp es una fórmula de la biblioteca de matemáticas la cual nos da la capacidad de
acceder a diversas fórmulas como pinza y raíz cuadrada. Y tal vez veamos más adelante qué más. Entonces, ¿cuál es el valor? ¿ Es la rotación vertical de la cámara? ¿ Cuál es el mínimo? Vamos a ponerlo en menos 90 f. Y el máximo va a ser 90. Entonces, vamos a guardar eso. Y ahora, si volvemos a Unidad, cuando nos movemos arriba y abajo, deberíamos ver que no podemos movernos más alto que un cierto valor que Michelle, tú en Cámara Principal. Por lo que actualmente estamos a las ocho. Y si bajamos, podemos ver que podemos al máximo ir a 90. Y mirando hacia arriba, también sólo podemos ir a menos 90. Genial, así que ahora hemos sujetado nuestra visión. Pero como pueden ver, cuando nos movemos, tenemos algún tipo de nerviosisón extraño y nuestra cámara, no
estoy seguro de si lo pueden notar, pero hay un poco de nerviosismo.- Y la razón de ese jittering es porque la cámara. Está tratando de mantenerse al día con nuestro jugador mientras se está moviendo. Y eso no es lo que queremos. Queremos realmente que la cámara se mueva después de que el jugador termine de moverse. Y para eso, vamos a, en lugar de realmente construir la cámara al jugador, vamos a crear un objeto que es hijo del jugador que se llama cabeza. Y entonces vamos a hacer que nuestra cámara siga ese objeto alrededor y bueno, en realidad no seguir, se movió a la posición y rotar con ese objeto. Entonces primero que lo primero, vamos a crear un objeto de juego vacío y bajo nuestra cámara. Y vamos a llamar a este juego objeto nuestra cabeza. ¿ Y por qué estamos haciendo esto? Es porque queremos tener la cabeza en la posición exacta que tiene nuestra cámara principal. Entonces vamos a quitarle la cabeza al niño de la cámara, ponerla justo como un niño de nuestro jugador. Y entonces vamos a sacar nuestra cámara del niño. Entonces ahora en lugar de que el jugador tenga la cámara principal como mi cámara adelante, va a tener la cabeza como el,
bueno, mi sombrero de cámara. Lo siguiente que queremos hacer es que realmente queremos crear un script que permita a la cámara principal seguir este objeto del juego. Entonces en la carpeta Scripts y los activos, hagamos clic derecho y sigamos adelante y creemos un script C-sharp. Y vamos a llamar a esto la cámara se mueve. Por lo que ahora tenemos un guión llamado movimiento de cámara. Esperemos a que compile eso. Ahí vamos. Entonces moveremos la cámara, trasladaremos a la cámara principal, y la tendremos aquí dentro. Y vamos a seguir adelante y abrirla y unidad. Ahora, ¿qué vamos a hacer aquí? En primer lugar, porque vamos a estar siguiendo o moviéndonos a la cabeza de la cámara, en realidad
necesitamos una referencia al mismo. Entonces vamos a crear una transformación pública. Mi jugador tenía. Genial. Entonces ahora tenemos una referencia a lo que vamos a pasar. Lo siguiente que vamos a hacer es que vamos a movernos ahí y vamos a movernos ahí cada cuadro. Y dirías eso, sigamos adelante y usemos la actualización. Pero en este caso, actualización no es suficiente. ¿Por qué? Pues bien, porque habrá algún tipo de batalla entre quién va primero, el jugador que va primero, o como la cámara va primero, o la cámara debe ir después o antes o durante? Entonces habrá un conflicto. Entonces lo que vamos a hacer es que vamos a quitar Update y vamos a usar algo llamado la actualización tardía. Por lo que la actualización tardía es igual que la actualización. Se llama cada fotograma. Pero la diferencia es que la actualización tardía se llama, bueno, más tarde, actualización tardía, se llama después de que se hayan llamado todas las demás actualizaciones. Entonces lo que pasa aquí es que cuando nuestro jugador termina. Su movimiento, la cámara se moverá a la posición de la cabeza sobre el jugador, y esto eliminará todo el jiteo. Entonces, ¿qué deberíamos estar haciendo dentro de actualización tardía con uno para pasar a la posición de nuestro jugador tenía y querrá rotar a nuestro, con nuestro sombrero de jugador. Y eso es en realidad parte de tu reto. Tu reto va a ser mover y girar la cámara con la cabeza. Por lo que en primer lugar, en actualización tardía, mueva la posición de la cámara a la posición de cabeza del jugador, luego gire la cámara. La rotación con el jugador tenía rotación. Y te voy a dar una pequeña pista. Por lo que necesitarás usar Transformar la posición del punto y transformar el punto para la rotación y ordenado a eso. Así que pausa el video ahora mismo. Tómate tu tiempo. No tengas miedo. Haz lo mejor que puedas y te veré interesado. Oh, bien, bienvenido de nuevo. Entonces, ¿qué deberíamos estar haciendo aquí? Y vamos a acceder a la posición transformada. Y debido a que el guión de movimiento de la cámara está en la cámara, eso significa que cuando
escribimos transformada, estamos haciendo referencia a la cámara. Por lo que la posición de punto de la cámara es igual a mi posición de punto de cabeza del jugador Y la rotación de punto de transferencia es igual a mi rotación de punto de cabeza de jugador. Guardemos eso y ahora de vuelta en Unidad. Por lo que ahora realmente podemos mover nuestra cámara a cualquier lugar que queramos. Entonces podemos ponerlo aquí arriba, guarde eso. Y cuando golpeamos play, podemos ver que la cámara se mueve a la posición de nuestra cabeza y en realidad se mueve ahora con nosotros. Entonces ahora nos movemos y el jittering es mucho menos evidente. Y aún podemos mirar hacia arriba, todavía
podemos mirar hacia abajo, podemos mirar alrededor y podemos movernos. Está bien, muy bonito. Ahora bien, ¿qué más deberíamos estar haciendo? Si bien puedes ver que tenemos este ratón aquí mismo, y es muy molesto que se mueva. Queremos realmente estar bloqueándolo cada vez que entramos al modo de juego. Entonces sigamos adelante y hagamos eso. De vuelta en nuestro guión aquí mismo. Adelante y cogemos el cursor. Y vamos a acceder al estado de candado de este cursor. Y en realidad vamos a acceder
al modo de bloqueo del cursor y vamos a hacer que sea un bloqueado. Guardemos eso, y eso es todo lo que necesitamos. Obtenemos el cursor, accedemos, es estado bloqueado, vamos al modo de bloqueo del cursor y lo hacemos bloqueado. Por lo que de vuelta en nuestro juego, cuando
golpeamos el juego, deberíamos ver desaparecer nuestro cursor cuando teníamos la pantalla. Por lo que ahora podemos movernos libremente sin que nuestro cursor nos moleste en absoluto. Genial, así que tenemos en primera persona moviéndose. Nosotros, o me refiero a movimiento en primera persona. Contamos con movimiento de cámara en primera persona. lo único que necesitamos agregar una orden para terminar esto es sumar un poco de tiroteo y eso es lo que vamos a hacer en la siguiente sección. Entonces te veré ahí. Ah, y antes de irnos, por supuesto
necesitamos poner en escena nuestros expedientes. Entonces escenifica todo. Adelante y llamemos a este compromiso aplicando primero, oops, cámara en primera persona a mi jugador. Y vamos a golpear commit. Ahora tenemos todo en nuestro proyecto mirándolo. Está empezando a cobrar vida. Te veré en el siguiente video.
14. SECCIÓN 3: crear nuestros balazos: Bienvenidos de nuevo a mis compañeros desarrolladores de juegos a un video totalmente nuevo. Y como puedes ver, hemos añadido una gran bala roja con un enorme colisionador sobre ella. Y no sólo esta bala colgando en el aire, realidad
somos capaces de disparar esta bala mientras no nosotros mismos, sino que es disparada por sí sola. Y también podemos aumentar la velocidad a 24. Entonces golpeamos play y nuestra bala, oops, no vimos eso. Probemos esto de nuevo en juego. Y nuestro pájaro vuela lejos, igual que las balas reales hacia adelante. Entonces no perdamos ni más tiempo y empecemos. Oh, vale, entonces sabemos que africano necesita una bala y cada bala también necesita un arma. Entonces lo primero que vamos a hacer es que vamos a crear esa pistola. Ahora, al principio lo estamos, nuestra pistola simplemente será un cubo que vamos a agregar de niño del sombrero. Ahora, ¿por qué es un niño de la cabeza? Bueno, porque queremos que nuestra pistola se mueva a la izquierda y a la derecha
y arriba y abajo con la cabeza mientras miramos alrededor. Por lo que haga clic derecho en la mano, crea un objeto 3D y lo convierte en un cubo. Por lo que ahora r cubed es enorme. Pongamos la ventana del juego justo al lado de nuestra vista aquí mismo. Y en realidad sigamos adelante e hijemos la cámara a la cabeza y reiniciemos su posición. Y te diré por qué estamos haciendo esto. Por lo que ahora podemos tener la cámara desde la perspectiva de las cabezas y ahora quitar la cámara de la posición de la cabeza o del niño del sombrero. Entonces ahora si movemos el cubo, oops, nope, eso no es lo que quise decir. Si movemos el cubo, podemos ver cómo se ve en nuestro juego directamente a nuestro lado. Entonces sigamos adelante y reducimos esto un poco y bajamos así. Vamos a bajarlo, moverlo un poco a la izquierda, y vamos a seguir adelante y crear un material para ello. Entonces duplicemos el material llano. Y vamos a llamar a esto el, sólo
llamémoslo el gobierno. Entonces material de arma. Y arrastrémoslo hasta el arma, y hagámoslo de un color azul. Entonces moveremos esto aquí mismo, lo haremos azul, todo azul, y también haremos azul la emisión. Entonces ahora tenemos esto, o puedes hacerlo lo que quieras. Tenemos esto raro. Bueno, no hace falta que se vea bonita en la escena. Simplemente necesita quedar bien en el juego, pero no hemos terminado de ajustarlo. En primer lugar, cambiemos el cubo por un arma. Y vamos a seguir adelante y hacerlo un poco más delgado arriba y abajo. Y movámoslo un poco a la izquierda y solo ajustémoslo hasta que parezca que viene. Pareciera como si fuera un arma y nuestro modo de juego. Entonces creo que ya es lo suficientemente bueno. A lo mejor si lo movemos un poco así. Y veamos cómo eso. Looks and Okay, así que vamos a mover este juego de vuelta. Cuando teníamos jugada, debíamos ver nuestra pistola moviéndose con nosotros a medida que avanzamos por nuestra ganancia. Entonces ahora lo que necesitamos es que necesitamos algún tipo de bala con la que disparar. Entonces solo imagina que esta es una pistola realmente genial que usamos para destruir monstruos gigantes. Eso va a estar haciendo eso más adelante. Pero por ahora, usa tu imaginación. Lo siguiente que vamos a hacer es crear un barco y para representar nuestro libro, vamos a crear una esfera. Entonces en la jerarquía, haga clic con el botón derecho en objeto 3D, y vamos a crear una esfera. Esta es nuestra esfera. Es un poco grande para una bala, así que vamos a reducirla. Entonces llamemos a esto nuestra bala. Y sigamos adelante y bajemos la escala. Entonces presionamos la tecla y la movemos hacia abajo, hacia abajo, hacia abajo, hacia abajo, hasta que se trata de
lo pequeño, para que aún lo podamos ver. Y es lo suficientemente pequeño como para representar una bala. Por lo que quizá
lo hagamos un escritorio un poco más pequeño que se vea lo suficientemente bien y también lo haga de color rojo. Entonces duplicaremos el material de las encías. Adelante y pongámoslo en rojo. Y este color rojo, lo llamo leer No, quise decir que este es el material de bala. Entonces bala y va a ser roja. No se llama leer, así que lee y la emisión también es muy, muy roja. Vamos a agregarla a nuestra bala. Por lo que ahora tenemos un libro rojo muy claro que podremos ver a medida que se mueve por el aire. Ahora, queremos mover tres aire. Eso significa que queremos agregar comportamiento a nuestra bala. Eso significa que necesitamos crear un guión para ello. Por lo que dentro de los guiones, haga clic derecho en ir a
Crear, Crear un script C-sharp. Y vamos a llamar a esto el controlador de balas. Entonces esperemos a que se compile. No, gracias. ¿ Por qué sucedió eso? Controlador de bala ha compilado y vamos a seguir adelante y añadirlo a la bala. Entonces ahora aquí dentro tenemos el controlador de bala. Y antes de irnos, sigamos adelante y hagamos que este colisionador de esfera sea un poco más grande. Y más adelante será por supuesto, hablando, profundizando en los colisionadores de Esfera y otros tipos de colisionadores. Pero por ahora, solo sepan que nos ayuda a interactuar con diversos objetos. Entonces solo hazlo un poco más grande. Y no te preocupes, vamos a hablar, vamos a profundizar más en ello más adelante. Entonces ahora tenemos nuestras ops, Todavía no. Entonces ahora tenemos nuestro controlador de bala justo aquí. ¿ Y qué vamos a hacer realmente con este controlador de pernos? Bueno, queremos poder agregarle fuerza. Entonces cada vez que esta bala sale del barril de argón, queríamos avanzar en línea recta hacia adelante. Y siempre que queremos agregar fuerzas a nuestros objetos, necesitamos tener un cuerpo rígido sobre ellos. O siempre que queramos hacer que cualquier objeto de juego cobre vida e interactúe con el mundo que lo rodea. Necesitamos un cuerpo rígido sobre él. Y ya hemos hablado de cuerpos rígidos antes. No hemos entrado a profundidad en ello. Entonces ahora voy a cumplir mi promesa. Entonces, ¿qué es un cuerpo rígido? Por lo que nos da el control de la posición de un objeto a través de la simulación física. El objeto cuerpo rígido será tirado hacia abajo por gravedad sin agregar ningún código. Y también podemos aplicar nuestras propias fuerzas sobre ellos. Entonces lo que esto significa es que podemos conseguir cualquier objeto de juego. Podemos agregarle un cuerpo rígido. Y ahora se someterá a la simulación física que tiene Unidad. Vamos a añadir un componente de cuerpo rígido a nuestra bala. Y ahora en Unity, ya
sabes agregar un componente. Entonces te daré solo un par de segundos para que hagas eso por tu cuenta. Vas a bala. Pausa el video si sabes hacer esto, se acabó el tiempo, agrega un componente y tipo N, cuerpo rígido,
no Cuerpo Rígido 2D, eso se usa 40 Cuerpo Rígido 2D. Vamos a añadir un cuerpo rígido, que se utiliza para 3D. Y aquí dentro se puede ver que tenemos la capacidad de ajustar la masa. Tenemos la capacidad de ajustar el arrastre. Tenemos la capacidad de ajustar el arrastre angular. Podemos quitar la gravedad, lo cual estaremos haciendo porque no queremos que nuestras balas
caigan realmente a menos que vayas por un juego muy realista. Podemos agregar una cinemática y cinemática si pasamos el rato, significa que, bueno, no nos está dando nada. Pero cinemático significa que no será sometido a las fuerzas ajenas a ella. Y tenemos la interpolación. Y esto en realidad sólo permite una mejor detección cada vez que choca con diversos objetos. Y también podemos cambiar la detección de colisiones a continua. Esto no es necesario, pero podemos tener, también
podemos agregarle restricciones. Entonces podemos congelar las rotaciones en la x, y, o z, y podemos congelar la posición en la x, y y z necesidad a cualquiera de estas. Y aquí tenemos alguna información que nos da la velocidad, velocidad, velocidad angular, y ex cetera. Genial, así que ahora tenemos una bala que tiene un cuerpo rígido. Y lo siguiente que tenemos que hacer es seguir adelante y agregarle un par de fuerzas y un poco de velocidad. Entonces de vuelta en nuestro código, lo
primero que necesitamos es crear una velocidad de flotación pública, o hagámosla en minúscula. Por lo que esta será una variable para controlar la fuerza sobre nuestro cuerpo. Y entonces necesitamos una referencia. Tan público. Cuerpo rígido, mi cuerpo rígido. Y ahora necesitamos entender en qué dirección se va a mover nuestro cuerpo rígido. Entonces si volvemos a Unity, y aquí tenemos la velocidad y podemos sumar el cuerpo rígido aquí mismo. Y qué dirección queremos. ¿ Queremos que nuestro libro se mueva a donde ABI, obviamente queremos que se mueva en esta dirección, en la dirección z. Esto significa que vamos a estar usando el vector tres puntos hacia adelante. Entonces en cuanto la bala salga del barril, queríamos alejarnos de su camino. Entonces de vuelta en nuestro código y, y por supuesto vamos a estar haciendo esto cada fotograma. Por lo que dentro de actualización, vamos a acceder a mi cuerpo rígido. ¿ Y cómo realmente obtenemos la velocidad? Bueno, he preparado un par de documentaciones aquí mismo. Puedes ir a buscarlos en Unity. Por lo que simplemente ve al cuerpo rígido en unidad. Y deberías encontrar esta página aquí mismo. Y se puede ver que hay un montón de propiedades. En primer lugar, como te he mostrado,
puedes congelar la rotación dentro del código, la posición usa la gravedad y una velocidad. Y el vector de velocidad del cuerpo rígido. Representa el cambio de posición del cuerpo rígido. Entonces si hacemos clic en eso, entramos en las documentaciones de dignidad, podemos ver que el vector de velocidad del cuerpo rígido representa la tasa de cambio de posición del cuerpo rígido. Por lo que le damos un cierto valor a la velocidad, y esta será la velocidad a la que nuestro cuerpo rígido cambie de posición. Podemos darle una velocidad a nuestro cuerpo rígido. Por lo que mi velocidad de punto de cuerpo rígido será igual a, por
supuesto, vamos a estar usando el delantero del transporte. Por lo que el vector de avance de punto de transformación veces la velocidad que tenemos. Y debido a que estamos trabajando en velocidades, no
necesitamos realmente agregar el tiempo.Deltatime, que es muy agradable y fresco. Entonces vamos a guardar eso y veamos si eso funciona de nuevo en la unidad. Y veamos cómo nuestro juego, vale, para que podamos ver claramente las balas o cuando golpeamos el juego, la bala se queda quieta. Quién soy así de bien, porque obviamente no hemos sumado ninguna subida, así que no hemos sumado ninguna velocidad aquí ni velocidad. Entonces retrocedamos un poco. Entonces si somos capaces de acelerar, se
puede ver que se mueve lentamente en la dirección hacia adelante. Entonces si llegamos a la escena, podemos mirar la dirección en la que se está moviendo nuestra bala y es el vector de avance. Entonces salgamos un poco de ahí. Y volvamos atrás y cambiemos. Oops, ¿dónde está nuestra bala? Entonces vamos a sumar un poco de velocidad. Entonces hagámoslo 15 tenía Play. Y ahora nuestro piloto que vuela lejos. Por lo que está empezando a parecer una realmente buena y bala. Y ahora antes de irnos, voy a emitir un reto brava. Tu reto es extraer los métodos. Por lo tanto, extrae el código para el vuelo de bala de actualización a un método separado. Y también extrajo código de movimiento de la cámara, código, perdón por eso en actualización de capas. Entonces si recuerdas dentro de jugador aquí, todavía
tenemos este lío dentro de Actualización y bala. También tenemos este tipo de Por qué no una masa tan grande, pero quería que siguieran adelante y aprendieran cómo podemos extraer métodos. Entonces, de la forma en que hacemos eso, en realidad tomamos el alcance. Hacemos clic derecho, hacemos click en Acciones rápidas y refactorización para que el método de extracción tuviera método de extracción. Y de inmediato tienes la capacidad de nombrar tu método será nombrarlo mosca bala, hit enter, y ahora tienes mosca bala. Entonces ahora que te he mostrado cómo hacer este, adelante y extraer el código de movimiento de la cámara, el
código y la actualización del jugador. Pausa el video ahora mismo, adelante y haz el reto. Gaye, bienvenido de nuevo. Por lo que N jugador elegirá todo este código, hará clic con el botón derecho en acciones rápidas y refracciones. Método de extracción. Y vamos a llamar a esto el movimiento de la cámara. Hit Enter. Y ahora tenemos movimiento de jugador, movimiento cámara como dos métodos separados. Y nuestra actualización se ve extremadamente limpia. Entonces ahora podemos mirar actualización y no, ok, entonces ¿qué hace nuestro jugador? Tiene movimiento y tiene movimiento de cámara. Excelente. Y este es todo el punto de la codificación. Siempre se necesita tener buenos hábitos al inicio. Por lo que siempre tienes código limpio que es muy comprensible. Por último, entramos aquí y los Maestros, los no comprometidos cambian. Se puede ver que creamos material de bala, hemos creado material de arma. Y por cierto, cada vez que veas algo que usa una orden para reconocer sus propios archivos, también
agregamos un controlador de bala. Y si hacemos click en jugador, podemos ver que hemos creado un método de movimiento de cámara, todo en verde, cosas que hemos agregado, todo, leído, cosas que quitamos. Y vamos a escenificar todo eso. Haga clic en Comprometir, creé mi primera bala. Comentario. Acude a maestros. Y he hecho un error tipográfico enorme aquí. No se preocupe por eso. En el siguiente video, realidad
vamos a estar disparando nuestras balas desde el barril y aprendiendo una herramienta muy poderosa en unidad que se llama prefectos. Entonces te veré en el próximo.
15. Lanzar viñetas: Bienvenidos de nuevo, mis compañeros desarrolladores de juegos. En este video, en realidad vamos a prefabricar nuestras balas y el fuego son balas. Entonces como pueden ver, nuestras balas están siendo disparadas desde nuestro arma o en realidad desde cierta posición. Pero como pueden ver, todavía
tenemos mucho trabajo por hacer y llegaremos a eso. Pero antes que nada, necesitamos crear nuestras balas de disparo. Entonces, no perdamos más tiempo y empecemos. Ah, vale, entonces lo primero que tenemos que hacer es
crear una referencia y una posición de disparo para nuestra bala. Entonces vamos a entrar en jugador. Y aquí dentro vamos a seguir adelante y crear un objeto de juego público. Y esta va a ser nuestra bala. Y es un objeto de juego porque más adelante vamos a sumar realmente toda la bala, no sólo su transformación. Queremos que toda la bala sea una referencia a nuestro jugador para poder dispararla. Lo siguiente que vamos a hacer es que vamos a crear una segunda referencia, que va a ser una transformación esta vez. Y esta será nuestra posición de tiro. Por lo que queremos determinar una determinada posición de disparo desde la cual la bala dejará error de montón. De acuerdo, ahora vayamos a Unidad y creemos nuestra posición de disparo. Por lo que esta posición de disparo será un niño de la cabeza. Entonces haremos clic derecho en la cabeza y vamos a crear un objeto de juego vacío. Y vamos a mover este objeto de juego vacío frente a nuestra posición de disparo. Entonces sigamos adelante y tratemos de ponerlo justo delante de nuestra pistola. Entonces de esta manera, será disparando desde nuestro arma. Y antes de seguir adelante, vamos a ir al cubo r y simplemente apaguemos el colisionador de cajas. No lo vamos a necesitar por ahora. Entonces vamos a nombrar esta posición de disparo D. Y aquí es de donde saldrá nuestra bala. Ahora, ¿cómo estamos? Bueno, volvamos atrás. Veamos a nuestros jugadores. Por lo que ahora queremos referirnos aquí a la posición de fuego. Por lo que simplemente arrastraremos la posición de fuego aquí. Ahora queremos la bala, y se podría decir que sí, tenemos la bala aquí mismo. Pero si hacemos referencia a esta bala, cuando debería, dispara y desaparece, querremos dispararla de nuevo. Y debido a que nos estamos refiriendo a la bala que ya está en nuestra escena, esto no va a funcionar y vamos a estar usando la misma bala una y otra vez. Entonces, ¿qué sucede cuando splotch a algún enemigo y se destruye o vuela después de un cierto tiempo y se destruye. Pues entonces no tendremos nada que hacer referencia. Entonces lo que tenemos que hacer es que realmente necesitamos preelaborar esta bala. Y déjame hablarte de prefabs. Por lo que prefabs, un prefab es un objeto de juego previamente fabricado que podemos usar varias veces. Por lo que pre para previamente Fab Four fabricado, vamos a entrar en más detalles. Se trata de una plantilla para cierto objeto de juego. sistema Prefab te permite almacenar un objeto de juego con toda su propiedad. Entonces, ¿para qué lo usamos? Podemos reutilizar un objeto de juego configurado de una manera particular. Por ejemplo, nuestra bala es roja, tiene un cierto tamaño del colisionador. Entonces cuando preferimos, pero todas las demás viñetas creadas usando este prefab tendrán las mismas propiedades de tener este colisionador y el script, por ejemplo, también. Se puede utilizar con el fin de editar muchos objetos a la vez. Entonces digamos que queremos editar esta bala. Y en lugar de editar cada bala y arsine, simplemente
podemos agregar el prefab y también se editarán todas las demás viñetas. Podemos usar los mismos objetos en diferentes escenas mucho más fácil. Y esto es lo que son los prefabs. Entonces vamos y prefab nuestro púlpito. Y en realidad, los prefabs son extremadamente, extremadamente difíciles de hacer. Entonces lo primero que necesitamos hacer es crear una carpeta. Llamaremos a esto los prefabs y ahora viene la parte muy difícil. Y para que la bonita esta bala, tendremos que arrastrarla aquí mismo. Y eso es todo. Es decir, yo sólo quería acumular un poco de suspenso porque esto es muy decepcionante. Es así como creamos un prefabricado. Y la forma en que sabes que cierto objeto en tu jerarquía es un prefabricado. Bueno, simplemente necesitas mirar su color. Si es azul, eso significa que es un prefabricado. Y eso lo puedes encontrar aquí. Ahora cuando añadimos la bala aquí mismo en el inspector de la bala prefab aquí también será editada. Entonces ahora si entramos en jugador, simplemente
puedes arrastrar esta bala aquí. Y ahora hace referencia al prefabricado. Si hacemos click en él,
pinchamos sobre él, podemos ver que aquí está referenciado. Podemos incluso borrar la bala de la escena. Ahora podemos sumar tantas balas como queramos, y todas ellas se moverán hacia adelante, pero por ahora, las eliminaremos. Está bien, genial. Por lo que ahora tenemos nuestras embarcaciones prefabricadas, las
tenemos referenciadas. Lo siguiente que tenemos que hacer es dispararles cada vez que presionamos un botón determinado. Entonces vamos a actualizarnos. Vamos a crear un método que se llama el rodaje. Y más adelante trasladaremos este método a una, otra clase, pero por ahora lo mantendremos en jugador por la simplicidad, se
puede ver que tiene una línea ardiente porque no debe existir. Por lo que hacemos click en esta pequeña lámpara aquí, y nos da la opción de generar el método, por lo que lo generará. Por supuesto que es un vacío, así que borraremos todo el interior. Y ahora queremos estar, bueno, ¿cómo puedo decir esto? Instanciando la bala cada vez que presionamos un determinado botón. Entonces, ¿qué tipo de botón vamos a estar presionando? Vamos a estar usando el sistema de entrada que aprendemos, pero no para conseguir ejes, en realidad lo vamos a estar usando para bajar un cierto botón de ratón. Entonces si vas adelante y buscas el botón get mouse hacia abajo e
ingresas, puedes ver que devuelve verdadero, que es un booleano. Por lo que necesitamos recordar que los booleanos son o verdaderos o falsos. Devuelve true durante el fotograma el usuario presionó el botón del ratón dado, por lo que devuelve true. Y si miramos aquí abajo, podemos ver que utiliza una condición if con el fin de
iniciar el o con el fin de comprobar si sí lo presionamos. Porque como dice en la descripción, cuando lo presionamos, devuelve verdadero. Entonces eso significa que si lo ponemos dentro de la condición if, volverá verdadero y esta condición si funcionará. Ahora bien, no están muy familiarizados con si las condiciones. Entonces, profundizemos más en ellos. ¿ Cuáles son si condición? Ahora bien, si se usan condiciones en casi todos los lenguajes de programación, ya sea C-sharp, Java, C plus plus, o cualquier otra cosa. Entonces esta es la estructura de una condición if. Entonces si alguna condición que necesita ser verdadera es cierta, entonces se ejecutará el código dentro de los corchetes. Entonces es por eso que estamos usando el botón get mouse hacia abajo, porque como has leído en la descripción, cada vez que presionemos uno de los botones del mouse sabremos qué, cuál más adelante, volverá verdadero. Y si lo ponemos dentro de estos dos corchetes aquí mismo, y devuelve verdadero, se ejecutará
un cierto código dentro de estos corchetes garabatos. Y el código que queremos ejecutar será el disparo de la bala. Y otra cosa que se puede agregar a la condición si es otra. Si. Entonces, al else-if toma alguna otra condición que sea cierta. Entonces si la primera condición no es cierta, podemos escribir otra. Si y si esa condición es verdadera, entonces ejecutamos el código que hay aquí. Entonces si esta condición, esta condición es falsa, el código aquí no se ejecuta. Se comprobará. De lo contrario si esta condición es verdadera, entonces se ejecutará este código. Pero, ¿qué pasa si este código es falso y este código es falso? Bueno, tenemos un plan de respaldo que son las apps. Entonces si todas las condiciones son falsas y ninguna de ellas es cierta, entonces si tiene otro, entonces se ejecutará este código. Se puede usar si sin otra, si y sin otra. Puedes usar el if con un else-if sin otro, o puedes usar los tres. Entonces ahora que sabemos cómo si funcionan las condiciones, y volvamos a nuestro código. Y dentro del rodaje, vamos a comprobar si. Entrada, punto, get mouse, botón abajo. Y vamos a usar el 0. Y el 0 de mayo significa que es el botón más izquierdo, que se utiliza para el tiroteo en la mayoría de los juegos de disparos en primera persona. Todos ellos, creo. Y aquí dentro vamos a estar instanciando una bala. Ahora de nuevo, volveremos a las documentaciones de Unidad. Entonces aquí, podemos ver que podemos instanciar objetos. Y tienes muchas iteraciones de esto. Por lo que puedes o bien crear una instancia a partir de solo los objetos que presentamos. Puedes instanciar un objeto con su padre, o puedes hacer estas otras cosas. Y en lo que estaremos enfocados es en esta línea aquí mismo. Entonces vamos a estar instanciando una bala con un origen, con una posición con una rotación que es cuaternión. Porque ya sabemos que los cuaterniones representan la rotación. Y necesito que te enfoques muy claramente en cómo funciona la instanciación porque en realidad es parte de tu reto. Entonces tu reto es primero que nada, leer más para instanciar la documentación, para entenderla completamente, entonces necesitarás crear una instancia de la bala. Ahora, te he dado un par de cosas. Entonces, antes que nada, necesitarás usar el prefab de bala como objeto. Utilice la posición de fuego para la posición y o rotación. Ahora, sé que este video es un poco, tiene una tonelada de información que aprendimos sobre las condiciones de EPS preferidas y así sucesivamente. Pero esto en realidad es extremadamente sencillo. Y te he dado todos los pasos que necesitas para completar este reto. Entonces no tengas miedo. Ten coraje. Tómate tu tiempo. Pausa el video ahora mismo y ve a hacer el Challenger. O K. ¿Cómo te llevaste con eso? Entonces lo primero que tendremos que hacer es realmente seguir adelante y crear instancias. Entonces en fundamentación, abriremos esto. Lo primero que hay que añadir es la bala como objeto del juego. Tenemos entonces que conseguir la posición cinco. Y esta posición de cinco en realidad va a ser la posición desde la que instanciamos la bala. Y también va a ser rotación phi, que tendrá la bala. Por lo que siempre camino estamos enfrentando con nuestra posición de fuego, la cual está apegada a nuestra cabeza. Eso significa que estará directamente frente a nuestra pistola. Por lo que en cuanto instanciemos la bala, tendrá el vector delantero delante de ella y disparará directamente hacia adelante. Entonces de vuelta aquí están jugador tiene la bala y la posición de disparo. Y ahora cuando hacemos clic en jugar, ahora nuestras balas podrían ser capaces de locos, como se puede ver o, y son muy locos. Para que veas que están por todas partes y no queremos eso. Y eso es porque si hacemos click en la bala bajaría al cuerpo rígido. Podemos ver que aquí tenemos estas limitaciones. Y sigamos adelante y congelemos las rotaciones de todos los lados. Guardemos eso y volvamos a hacer clic en play. Y ahora nuestras balas deben ser bajas. Entonces nuestras balas deberían estar un poco menos locas ahora. Para que como puedes ver, nuestras balas vuelan por todo el lugar. Entonces ahora nuestras balas son mucho mejores y en realidad se están
pegando a la pared porque como puedes ver cuando tienen cierta dirección que necesitan estar yendo. Por lo que se están atascando en la pared. En el siguiente video, en realidad vamos a estar destruyendo nuestra bala. Porque como puedes ver aquí mismo, hay muchos clones y todos estos afectan a nuestra computadora. Y ya se puede escuchar a los fans en mi PC y enloquecerse. Por lo que el próximo video, estaremos profundizando en lo que son los colisionadores para estas balas. Y los vamos a estar destruyendo después de que golpeen ciertas cosas, solo para ahorrar un poco de CPU. Entonces hasta entonces, te veré en el siguiente video.
16. Destroying nuestros balones: Bienvenidos de nuevo, mis compañeros de juego los desarrolladores. En este video, vamos a estar destruyendo nuestras balas. Y como dijimos, es muy importante para el desempeño de nuestro juego. Entonces como pueden ver, cada vez que nuestras balas impacten a cierto Collider u objetos en el medio ambiente, se destruirán y ya no estarán acumulándose en nuestra jerarquía aquí mismo. Pero lo que también hemos hecho, si debemos las balas al aire, se
puede ver que también se destruyen después de un cierto tiempo. Entonces, no perdamos más tiempo, y empecemos. O K. Entonces, ¿cuál es el problema? El problema es, digamos que disparamos la bala aquí mismo. Y si disparamos una tonelada de
balas, se puede ver que tenemos muchos clones en la jerarquía. Y esto es lo que sucede cada vez que instanciamos a un prefab, crea un clon justo aquí en la jerarquía. Y se puede ver ahora, por ahora estos, todos estos no son tan grandes de un problema. Pero digamos que estamos jugando un nivel largo y hemos estado jugando alrededor de cinco minutos de tiro y todas estas balas están en nuestra jerarquía. El rendimiento de nuestra computadora tomará un hit. Y poco a poco el juego empezará a rezagarse y no podremos jugarlo. Entonces, ¿qué deberíamos estar haciendo al respecto? Bueno, tenemos que estar destruyendo nuestras balas cada vez que
impactan a un determinado objetivo o a un colisionador. Entonces, ¿qué hace un colisionador? Hemos hablado de colisionadores. Añadamos una bala aquí en nuestra escena, y echémosle un poco de un vistazo. Entonces tú, si recuerdas, hemos añadido este colisionador, que son estas líneas verdes por aquí. Y en realidad podemos ajustar el radio de este colisionador. Y estos colisionadores son en realidad lo que nos
permite interactuar con el mundo físico que nos rodea. Entonces echemos un vistazo a nuestro jugador aquí mismo. Si vamos al cuerpo, se
puede ver que no tiene colisionador, pero nuestro jugador tiene el controlador de personajes y tiene estas líneas verdes abiertas. Y estos representan el colisionador o la forma en que son jugador interactúa con el mundo. Ahora si vamos, por ejemplo,
por este bloque aquí mismo, podemos ver que también tiene un colisionador de caja y en realidad
podemos editarlo con este botón aquí mismo. Ahora bien, no es muy obvio, pero si movemos esta casita, se
puede ver que podemos aumentar el tamaño de nuestro colisionador. Entonces digamos que este es nuestro colisionador ahora mismo. Y dejémoslo así. Y entremos a nuestro jugador. Y solo quería hacer esto un poco más pequeño, así que 300 y pegó Play. Y ahora si queremos subir al frente, se
puede ver que la bala se queda atascada en el colisionador que
acabamos de crear y no podemos movernos hacia los autos. El modo en que los objetos interactúan con el mundo en Unidad es a través de estos colisionadores. Entonces vamos a bajar este colisionador y mantenerlo tan grande como debería ser, no más. Entonces ahora que tienes un poco de comprensión de los colisionadores, ¿qué deberíamos estar haciendo con estos colisionadores? Bueno, queremos,
siempre que nuestra bala impacta a cierto colisionador desde el medio ambiente, queremos que este libro sea destruido y retirado de la jerarquía. Entonces, ¿cómo vamos a hacer eso? Bueno, tenemos un cierto método aquí dentro. Entonces esta es la documentación para el colisionador. Puedes seguir adelante y leer todo al respecto tiene muchas propiedades, muchos métodos, y muchos mensajes también. Y uno de ellos es el On Trigger Enter. Y esto es cuando un objeto de juego choca con otro objeto de objetos de juego, y esto es exactamente lo que queremos. Entonces si vas al disparador del ANC Enter, podemos ver que en la descripción, bueno, es cuando el objeto se droga con otro objeto. Y a este método se le llama tan pronto como el objeto que tiene el colisionador sobre él interactúa con otro objeto de juego que tiene un colisionador sobre él. En unidad, podemos ver que nosotros, para la esfera o para la esfera en los aros de bala, podemos hacer de esto un gatillo. Entonces si hacemos click aquí,
esto se convierte en un disparador y esto nos permite realmente crear el método de trigger enter y nuestro script. Entonces vayamos al guión bala, al guión del controlador de bala. Y justo debajo de la mosca de bala, vamos a crear el propio gatillo entrar. Entonces como se puede ver aquí mismo, ya
hemos hablado de métodos antes y dijimos que a veces puede tomar parámetros y este es un parámetro cadera derecha. ¿ Y qué es este otro colisionador? Podrías preguntar, bueno, este es el, bueno, otros colisionadores. Entonces digamos que nuestra bala golpea, digamos que golpea este objeto aquí mismo, golpea el colisionador de esta rampa justo aquí. El otro parámetro que se envía a través es el colisionador de nuestra rampa. Entonces, ¿qué vamos a estar haciendo aquí? Bueno, como dijimos, queremos que nuestras balas destruidas cada vez que impacten a ciertos objetos. Entonces para destruir objeto, simplemente
escribimos aquí destruir. Y le decimos que queremos destruir el objeto del juego. Y cada vez que llegamos objeto de juego, así como así, destruimos el objeto de juego que tiene el guión del controlador de bala en él, lo que significa que la bala aquí dentro será destruida. Y antes de seguir adelante, necesitamos asegurarnos de una cosa cada vez que creamos un prefab y queremos aplicar al prefab principal de nuestra escena, necesitamos sobrescribir. Entonces aquí arriba, puedes ver que tenemos la opción anular y aplicar todo y esto cambiará, por ejemplo, nos dirá
que hemos cambiado el tamaño de nuestro colisionador de esfera de 0.83 a 0.8. Por lo que podemos aplicar todo eso a los prefabricados. Y ahora el prefabricado y todas las balas creadas a partir de este prefabricado tendrán este radio aquí mismo. Entonces, eliminemos la bala y veamos si eso funcionó. Cuando golpeamos el juego. Deberíamos ver que cada vez que golpeamos el avión o tenemos cierto objeto, la bala se destruye. Entonces ahora se puede ver que ya no tenemos todos estos clones mientras aún lo hacemos, porque algunos de ellos en realidad están volando lejos. Y trataremos también este problema. Pero ahora cuando llegamos a este descanso aquí mismo, se
puede ver que ya no tenemos muchos clones a nuestro alrededor. Entonces cuando golpeamos el avión, algunos de ellos a veces pasan por la velocidad. Y se puede ver que nuestro juego ya no piernas demasiado. Y en realidad las balas se destruyen. Algunos de ellos salen volando. Entonces, ¿qué vamos a hacer con las balas que salen volando al aire? Bueno, vamos a crear un temporizador, balas de cuarenta. Entonces después de cierto tiempo de volar en el aire, los
vamos a destruir igual que lo hicimos en el, sobre el azúcar. Entrar. Adelante y hagamos eso. Entonces lo primero que tendremos que hacer, tendremos que ir y a nuestro guión. Y aquí dentro vamos a crear otra variable que es un flotador. Y puedes nombrar múltiples variables en la misma línea si son del mismo tipo float. Entonces esta va a ser la vida de bala. Y esta es la cantidad que la vida útil de la bala que se está disparando. ¿ Y cómo vamos a reducir esta vida de bala? Bueno, una actualización, vamos a quitarnos la vida de bala y vamos
a estar reduciéndola para el tiempo delta tiempo que pasa. Y si recuerdas, cuando ponemos este menos aquí, nos referimos a que la bala Vida Es igual a
vida de bala menos tiempo dot delta pi. Entonces este es un comentario aquí mismo para que recuerdes en el futuro cómo realmente funciona esto. Entonces, vamos a guardar eso. Y antes de irnos, necesitamos una manera de comprobar siempre esta bala y ver si va por debajo de cierto valor. Nosotros queremos estar destruyéndolo. Y ahí es donde entra el reto. Por lo que tu reto es crear una condición if. Por lo tanto, crea una condición if que compruebe si la vida de Pollock es menor a 0. Y si lo es, necesitas destruir el libro. Asegúrate de hacer eso en la actualización. Así que pausa el video ahora mismo y ve a crear una condición if. De acuerdo, bienvenido de nuevo. ¿ Cómo te pusiste con eso? Aquí mismo bajo la vida de bala. Por lo que cada cuadro que estamos quitando una cierta cantidad de tiempo. Es el tiempo entre cada fotograma y estamos reduciendo bala viva para ese momento. Y eventualmente, si la vida de bala como menos de 0. Por lo que esto significa que supera cierto umbral. Entonces vamos a estar destruyendo el objeto del juego. Y vamos a guardar eso. Y de vuelta en nuestro juego. Ahora, vamos al prefabricado de nuestra bala. Y tenemos la opción, mientras que ella, tenemos la opción de agregar una vida de bala. Entonces hagámoslo un 2 segundo. Vamos a pegarle a Play. Y ahora digamos que disparamos nuestra bala. Se destruye cuando golpea a cierto colisionador. Y si disparamos al aire, podemos ver el clon justo aquí, después de dos segundos desaparece, así que 12 desaparece. Genial. Entonces ahora estamos, sin embargo deberíamos nuestras balas, siempre
podemos estar seguros de que todas fueron destruidas. Y computadora hora no tomará ningún golpe y no se impactará con menores velocidades de fotogramas. Para que ninguno. Espero que hayan disfrutado el video y en el siguiente vamos a estar agregando más precisión a nuestras balas. Entonces te veré entonces.
17. Agregar precisión a los balazos: Bienvenido de nuevo, mis desarrolladores de juegos favoritos. En este video, hemos agregado un pequeño punto en medio de nuestra pantalla. Y eso es todo. Bueno, no, en realidad, como pueden ver, acabamos de disparar una bala muy precisa. Entonces si recuerdas antes de crear este video, cuando deberíamos en cierto punto y nuestro mundo, la bala simplemente va donde quiera. Pero ahora cuando disparamos, va exactamente a donde queríamos ir. Por lo que ahora tenemos balas mucho más precisas. Entonces, no perdamos más tiempo y empecemos. Oh, bien, entonces lo primero que vamos a hacer es que
vamos a crear un crosshair en medio de nuestra vista. Entonces aquí queremos crear un pequeño botón
frente a nosotros para tener un punto a punto. Entonces para hacer eso, vamos a estar creando una imagen frente a nuestro jugador. Y con el fin de poner una imagen frente a nuestro jugador, queremos crear un lienzo. Entonces sigamos adelante y hagamos eso. Y nuestra jerarquía, hacemos clic con el botón derecho, vamos a UI. Y aquí dentro podemos elegir crear un lienzo. Entonces ahora tenemos un lienzo aquí mismo con un sistema infinito. Y este sistema de eventos nos permite presionar ciertos botones en nuestro lienzo. Simplemente podemos niño a nuestro campus. Ahora, ¿dónde está nuestro campus? Podrías estar preguntando, bueno, esta línea enorme blanca como nuestro lienzo. Y si hacemos doble clic en él, se
puede ver que esto es todo. Y tal vez te estés preguntando, ¿por qué es tan grande si miras de cerca, este es nuestro pequeño patio de recreo y este es nuestro lienzo. Y siempre que queramos estar cambiando las cosas en Lona como mantequilla para ir y presionar el 2D justo aquí. Entonces cuando presionamos dos D, Puedes ver que podemos manejar Lienzo mucho más fácil. Ahora bien, ¿por qué Canvas es así de enorme? Esta es una forma de que la unidad agregue imágenes y cosas y las modifique fácilmente haciéndolas hablar. Pero no te preocupes por eso porque déjame solo mostrarte por qué. Si hacemos clic con el botón derecho en Lienzo, Vuelve a tu ojo y sigamos adelante y agregamos una imagen. Por lo que se podría pensar que esta imagen será enorme. De hecho, si miramos en juego, se
puede ver que esta es la imagen y en realidad es un cuadrado de aspecto muy pequeño. Y esto representa lo que se renderizará en la interfaz de usuario frente a nosotros y lo estaremos usando mucho más adelante. Ahora, antes de empezar a cambiar nuestra imagen, tenemos que ir al lienzo. Tenemos que asegurarnos de que en Canvas, lugar de que el escalador de lona sea el tamaño de píxel constante, queremos escalar con el tamaño de pantalla. Y aquí podemos cambiar la resolución de referencia. Y debido a que estamos jugando en el 1920 por 18, por 1080, vamos a hacer lo mismo dentro, lo que 1920 por 1080 y haga clic en Entrar. Y ahora tenemos nuestro lienzo siempre fijado a la resolución. Está bien, genial. Lo siguiente que vamos a hacer es que vamos a dar click en la imagen que no tenemos aquí. Vamos a hacer doble clic y nos llaman la cruz. Cabello. Y queremos que sea un círculo diminuto. Entonces podemos entrar aquí en la imagen fuente. Podemos hacer click aquí y en realidad podemos cambiar cómo se ve nuestra pequeña imagen aquí. Entonces vamos a elegir tenerlo como perilla. Ups. Entonces como perilla, es un círculo. Y vamos a seguir adelante y hacerla más pequeña. Y antes de que hagamos eso, déjame simplemente atracar la vista del juego justo aquí para que podamos verla. Y la forma en que lo hacemos más pequeño es acaparar un borde, mantenga presionada Alt, y luego escalarlo hacia abajo y escalará desde todas las direcciones. Y ahora se puede ver que es mucho más pequeño. Entonces sigamos adelante y lo haremos aún más pequeño. Asegúrese de que su posición esté siempre en 0. No queremos estar poniéndolo de lado. Queríamos estar siempre en 0 justo aquí, así que 00. Y por supuesto que queríamos ser un círculo, así que sigamos adelante y que sea tal vez 25 por 25. Entonces, Y finalmente, cambiemos el color y lo hagamos negro. Entonces ahora en nuestro juego, veamos cómo se ve eso. No, es, creo que sigue siendo grande así que hagámoslo 12 por 12. De acuerdo, así que guarde eso. Esto depende de tu preferencia. Si quieres, ni siquiera puedes convertirlo en un perilla. Puedes convertirlo en un cuadrado si quieres. Por lo que depende de ti y puedes hacerlo tan grande como quieras. Entonces le pegamos al juego. Y ahora podemos ver que tenemos este punto aquí mismo. Pero como puedes ver, las balas no van exactamente a donde queremos que vayan. Se van volando en algún lugar a la distancia. Y en realidad, no es tan preciso como nos gustaría tener nuestras balas. Entonces, ¿cómo vamos a cambiar eso? Bueno, vamos a estar creando algo llamado recast. Entonces, ¿qué es un recast? Un recast es un rayo que se lanza desde cierta posición de tu elección. Si golpeas a cierto colisionador en tu mundo con el punto de física re-cast, devuelve un verdadero. Por lo que debes estar pensando de inmediato que vamos a estar usando esto dentro de una condición si para comprobar si golpeamos a algún colisionador. Y vamos a explorar la estructura de un recast. Por lo que el re-cast, en primer lugar, tiene un origen y va a ser el punto de partida de nuestra matriz. También tenemos la dirección del rayo. Entonces al igual que elegimos la dirección de nuestro punto de fuego, la dirección de la velocidad de nuestras balas. También podemos darle la dirección al rayo a seguir y tenemos la información que obtenemos de ese Ray. Entonces cada vez que golpeamos a cierto colisionador en el mundo usando este rayo en realmente devuelve información sobre el balanceo. Y esto va a ser muy importante para nosotros en el futuro. Y también podemos agregar una distancia máxima al rayo que viaja. Entonces sigamos adelante y creemos un recast. Por lo que en primer lugar, queremos ir a nuestro jugador y dentro disparar. Siempre que en realidad tocamos el botón del ratón, queremos comprobar si hay un recast. Lo primero que vamos a hacer es crear una variable que tenga miedo elenco, cabeza, tipo, y simplemente lo vamos a llamar hit. Ahora, vamos a crear una condición if que verifique un recast de punto de física. Y aquí ante todo, vamos a elegir el origen. Entonces, ¿cuál será el origen de nuestro recast? Bueno, va a ser mi posición de punto de cabeza de cámara. Entonces porque tenemos nuestro crosshair justo en medio de nuestra pantalla, y el medio de nuestra pantalla es en realidad la dirección en que está mirando nuestra cabeza o la cabeza del jugador. Entonces déjame poner el lienzo justo aquí y hacerlo más pequeño. Por lo que la posición aquí mismo será la dirección en la que está mirando nuestra cabeza de la cabeza del jugador. Entonces va a ser el origen. A continuación tenemos que elegir la dirección. Entonces va a ser el punto de cabeza de mi cámara hacia adelante. Y necesitamos crear esto fuera de la cabeza. ¿ Y qué significa fuera? No cubrimos eso. Entonces lo que significa es que pone la información del recast en la cabeza variable que hemos creado aquí arriba. Y por último, necesitamos agregar una distancia máxima. Vamos, hagámoslo 100 por ahora. A lo mejor lo cambiaremos más adelante. Y antes de continuar, sólo
queremos asegurarnos de que tenemos todo configurado correctamente. Entonces vamos a crear un registro de depuración. Y esto imprimirá cosa a nuestra línea de comando. Y lo que queremos estar imprimiendo es que acabamos de golpear. Y aquí vamos a tomar el hit o el objeto que hemos tenido con nuestro recast. Vamos a acceder a la transformación y vamos a conseguir el nombre de la misma. Guardemos eso, y volvamos a Unidad y veamos si eso funciona. Entonces ahora cuando golpeamos el play, veamos, por ejemplo, si golpeamos el avión, podemos ver en la consola que acabamos de tener la jugada. Y ahora si golpeamos este cubo, no
estoy seguro de cuál es el número en él. Entonces cuando golpeamos el cubo, le pega cubo a, veamos, ¿realmente es Q2? Entonces, ¿dónde está nuestro, oops, salgamos de 2D. Haga doble clic en Juego Q2. Y sí, está funcionando. Entonces ahora se puede ver que estamos golpeando diferentes objetos en nuestro mundo y en realidad tenemos información sobre estos objetos. Y esto será muy crucial más adelante a medida que avancemos por el juego porque queremos
saber si estamos golpeando a un enemigo y aliando a un gran enemigo, un enemigo pequeño. Y como pueden ver, nosotros, siempre que no deberíamos el aire, en realidad no
obtenemos respuesta alguna porque a cierta distancia esto no funciona. Está bien, genial. Ahora, lo siguiente que necesitamos hacer es realmente hacer la dirección de nuestra posición de archivo. Mira el punto central. Por lo que de esa manera podremos dirigir realmente nuestras balas al punto de mira en medio de nuestra pantalla. Adelante y hagamos eso. Entonces de vuelta en nuestro código aquí, en lugar de simplemente imprimir cosas, en realidad
vamos a tomar nuestra posición de fuego y lo vamos a estar mirando. Entonces tenemos la mirada a la que rota la transformación. Por lo que el vector delantero apunta a la posición actual de los objetivos. Entonces esto es exactamente lo que queremos porque como se puede ver, la bala va hacia o en la dirección de la rotación de posición de fuego. Y cuando miramos a un objeto determinado, la posición de fuego girará su rotación hacia eso. Entonces esto significa que nuestra bala irá en esa dirección. Entonces ahora tomamos el hit y para poder acceder a él, en realidad
podemos utilizar el punto que el punto de impacto
en el espacio de trabajo donde el rayo golpeó el colisionador. Entonces usaremos punto de tiro a la cabeza. Ahora de nuevo, antes de seguir adelante, lanzamos un recast Desde la cámara, había posicionado el cabezal de la cámara hacia adelante. Obtenemos la información del hit y tiene una distancia máxima. Cuando sí obtenemos una posición de golpe, usamos la posición de cinco para mirar, lo que significa que giramos hacia la cabeza o la posición en la que impactamos con el gas de velocidad. Y obtenemos el punto que es el punto exacto donde nuestro recast golpeó. Y luego cuando tengamos la posición lejana mirando este punto, realmente
vamos a instanciar a nuestra Bullet y será muy precisa. Guardemos eso. Y ahora de vuelta en nuestro juego. Y ahora, como pueden ver, si queremos disparar a esta posición, si miran de cerca la bala,
verán que en realidad va a esa misma posición exacta. Entonces ahora tenemos un arma muy precisa, pero todavía hay un pequeño problema. Y ese problema es lo que pasa cuando disparamos en el aire. Entonces si no hay recast, ¿qué harán las balas POR hacer? Y el problema aquí es, ahora, se podría pensar que, OK, no hay problema. El barco simplemente se alejará volando por su cuenta. Pero a veces esto va a crear muchos errores y queremos evitar eso. Entonces de vuelta en nuestro juego, y aquí vamos a usar lo más. Entonces esto significa que si no obtenemos un valor verdadero así no le pegamos a nada más. Queremos que nuestra posición de archivo esté mirando mi posición de punto de cabeza de la cámara. Y simplemente vamos a estar agregando un poco de mis tiempos de cabeza de cámara hacia adelante. 50. Entonces digamos que tuvimos un recast. No registramos nada, así que no tenemos nada que ver. Entonces, o bien miramos el punto de cabeza o si no encontramos nada, vamos a estar mirando a la cámara, había enseñado posición, y vamos a estar sumando a ella en la dirección hacia adelante, apenas una arriba del jugador cierta dirección. Y ahora si volvemos a nuestro juego, esto podría no ser tan obvio, pero a la larga, será mucho más evidencia. Por lo que como puedes ver, la bala aún desaparece detrás de la cruz aquí. Y ahora tenemos un puesto muy preciso. Está bien, genial. Entonces ahora tenemos balas precisas. Nos aseguramos de que si no tenemos cierta posición de cabeza, aún
tenemos una dirección a la que disparar. Pero todavía hay un pequeño problema que puede causar más problemas en el futuro. Entonces si nos acercamos a una pared, se
puede ver que la bala, en lugar de golpear una pared que debería estar frente a
ella, en realidad también se mueve hacia el centro de nuestra pantalla. Y esto es un poco engorroso en el futuro. Cuándo lo hará, cuándo empezará a agregar efectos a nuestro juego. Vamos a causar muchos problemas. Entonces los vamos a enfrentar antes de que nos lleguen. Entonces aquí, cuando lanzamos un recast y en realidad golpeamos algo, queremos comprobar la distancia entre la posición de la cámara y el punto de golpe. Y si es mayor que un cierto umbral, entonces veremos la posición. Entonces aquí vamos a crear una condición if y comprobar 40 distancias. Ahora bien, ¿cómo comprobamos una distancia? Si entramos aquí, tenemos el vector de tres puntos de distancia, y devuelve la distancia entre dos puntos, que son a y b Y lo que queremos comprobar es la distancia entre mi cabeza de cámara y el punto de cabeza. Y eso es en realidad parte de tu reto. Tu reto va a ser calcular la distancia. En primer lugar, comprobarlo. 40 distancia entre la posición de la cámara, que es mi cabeza y la posición de la cabeza. Y luego si es mayor que un cierto flotador, que voy a ir, voy a ir con 2F. Usa la condición if que aprendimos con el fin de realmente mirar bajo sólo esta condición. Así que pausa el video ahora mismo y ve a hacer el reto. Oh, bien, bienvenido de nuevo. Entonces si condición vamos a acceder al vector de tres puntos de distancia. Y vamos a usar mi posición de punto de sombrero de cámara. Y el otro valor va a ser el punto hit dot. Y si ambos de estos, o si la distancia entre estos dos es mayor que dos f, entonces. Y déjame enseñarte un pequeño truco aquí. Si quieres mover esta línea hacia arriba o hacia abajo, simplemente mantén presionada Alt y usa las teclas de flecha, pulsa pestaña y entrará en su posición. Entonces hagamos esto un poco más limpio. Entonces ahora sólo si la distancia entre la posición de la cabeza de la cámara y
el punto de cabeza o el punto en el que el rastrillo Estates es mayor que dos, entonces estaremos mirando lo demás simplemente estaremos disparando el muro. Entonces volvamos. Y ahora de nuevo, vamos a golpear Play. Por lo que ahora nuestras puletas siguen siendo precisas. Pero cuando nosotros, echemos un vistazo hacia abajo y cuando golpeamos, puede ver que las balas no van directamente a la posición lejana y en realidad se destruyen antes de que lleguen allí. Y cuanto más lejos buscamos, se
puede ver que luego se vuelven precisos cuando se encuentran a una distancia lejana. Tan genial. Ahora tenemos balas muy precisas. Los estamos disparando a las distancias apropiadas. En el siguiente video, vamos a estar haciendo que nuestro rodaje sea mucho más emocionante agregando sistemas de partículas. Entonces te veré en el próximo.
18. Hacer que el rodaje sale de fotos: Bienvenido de nuevo, mis desarrolladores de juegos favoritos. En este video, como puedes ver, nuestro reproductor se ve genial como el infierno. En este video, en realidad vamos a agregar un poco de sabor a nuestro rodaje. Entonces ahora no sólo disparamos balas, también
tenemos este pequeño destello de hocico frente a nosotros. Por supuesto, tendrás la capacidad de cambiar tu destello de bozal dependiendo de tu preferencia. Pero vamos a divertirnos mucho aprendiendo
el sistema de partículas e instanciándolo cada vez que filmemos. Entonces, no perdamos más tiempo y empecemos. Oh, está bien, así que ahora mismo cuando
golpeamos play, tenemos nuestras balas. Son precisos, pero el tiroteo es honestamente un poco desafortunado. Entonces, por ejemplo, cuando en realidad golpeamos una superficie, no
tenemos ni idea de que lo hicimos. Y no hay indicio de que el argón esté disparando en realidad algo así como poder hacerlo. Entonces la forma en que vamos a cambiar todo esto es agregando sistemas de partículas. En primer lugar, por algún destello de hocico. Y luego vamos a sumar otro sistema de partículas para cada vez que golpeemos a un objeto determinado, creará un volátil. Entonces, ¿qué es un sistema de partículas? Si hacemos clic derecho aquí mismo en la jerarquía, podemos entrar en el dónde están los efectos. Y podemos crear un sistema de partículas ha llamado a escenas. Y veamos nuestro sistema de partículas. Entonces esto es todo. Y se puede ver que es un montón de partículas que se renderizan frente a nosotros. Y estos son en realidad a los sprites que siempre miran a la cámara mientras nos movemos. Entonces como puedes ver, si has notado que siempre se están moviendo y hay un montón de cosas que podemos cambiar aquí a la derecha. Pero en realidad queremos ir adelante y agregar sistemas de partículas que ya existen y son mucho mejores que los que podemos crear los nuestros propios más adelante abajo de la línea en este curso, realidad
vamos a estar creando nuestra propia partícula sistemas, pero por ahora, los vamos a conseguir de la Tienda de Activos de Unity. Ahora bien, si nunca has estado en la Tienda de Activos de Unity, en realidad
es bastante fácil. Simplemente vaya a la tienda de activos oportunity.com. Y aquí puedes buscar paquete de partículas de unidad. Y cuando lo encuentres, es un poco un archivo grande, pero no te preocupes, es completamente gratis. Tienes que hacer click en agregar a mis activos. Cuando haces eso. siguiente paso es ir a Unity, ir a ventana, e ir al gestor de paquetes. Y esto debería abrir una ventana en alguna parte. Y este es el gestor de paquetes donde tendrás todos los activos que has importado desde la Tienda de Activos de Unity. Ahora cuando añadas tu activo del sistema de partículas, deberías tener este pack de partículas de unidad, cinco veces x o algo así cuando lo tengas descargado aquí mismo, y luego dar click en importar. Entonces hagámoslo. He hecho clic en la importación. Te dará todos estos. Simplemente asegúrate de revisarlos todos y luego pulsa Importar y esperar a que se importen a tu proyecto. Usaré de nuevo la magia de la edición. Y me saltaré esta aburrida parte importadora. Puede abrir una ventana igual que ésta. Entonces si lo hace simplemente haga clic en Recargar y no te preocupes por ello. Ay, kay, bienvenido de nuevo. Entonces ahora que tenemos el año paquete importante, se llama el ejemplo de efecto. Podemos seguir adelante y hacer clic derecho en gestor de paquetes y cerrar la pestaña también cerrará la configuración del proyecto por ahora. Y abramos este expediente y veamos qué tenemos aquí. Por lo que estos son todos los diferentes hechos que tenemos. Y tenemos la explosión del incendio de sangre y muchas otras cosas. Pero lo que queremos, queremos ir al efecto de armas. Tenemos los prefabs aquí dentro, y tenemos este impacto de bala aquí para carne grande efecto, tenemos impacto para efecto carne pequeña, tenemos el impacto o efecto y este es uno que queremos tener. También tenemos arena, piedra y otras cosas. Por lo que queremos el impacto de la bala en el metal. Entonces lo que hacemos es que realmente vamos a duplicar este. Vamos a renombrarlo por el impacto de bala. Y lo vamos a arrastrar a nuestros propios conjuntos de prefabricados. Así que arrastra el cisne aquí mismo a los Prefabs. Entonces ahora en Prefabs Tenemos la bala y tenemos el impacto de bala. A continuación queremos el destello del hocico. Entonces vamos al ejemplo Effect y de vuelta en los prefabs, vamos a conseguir este destello de hocico. Duplicar eso. Y lo llamaremos nuestro flash de bozal Gone. Y de nuevo, vamos a entrar en nuestras prefabs y arrastrar este estafa, efecto
muscular a nuestras propias prefabs. Genial. Por lo que ahora en Prefabs Tenemos el efecto hocico del arma y el efecto impacto de bala. Y en realidad podemos seguir adelante y agregar esto en arsine y simplemente mirarlos. Vamos a subir esto y vamos a jugar. Entonces cuando golpeamos el juego, se puede ver que este es el efecto muscular que vamos a estar jugando siempre que realmente disparemos con argón. Y este será el impacto de bala. Entonces veamos eso de nuevo en juego. Y este será nuestro impacto de bala. Muy bonito. Eliminemos ambos de nuestra escena, y sigamos adelante e instanciarlos siempre que realmente los necesitemos. Entonces de vuelta en nuestro guión de jugador, y aquí, en primer lugar, necesitaremos una referencia. Entonces vamos a crear un objeto de juego público. Y llamaremos a este hocico flash. Y también necesitaremos otro para el agujero de bala. Por lo que ahora tenemos el destello de hocico y el agujero de bala ES objetos de juego público. De vuelta en Unity, hacemos click en jugador. Adelante y sumamos el impacto de bala al agujero de bala y la estafa, bozal destello al destello del hocico. Guarda todo eso. Lo siguiente que queremos hacer es primero que nada queremos instanciar
el destello de hocico cuando alguna vez realmente disparamos con nuestro arma. Por lo que esto será parte de tu reto. Y tu reto va a ser instanciar. El destello del hocico. Por lo que en primer lugar, revisar la instanciación en la documentación de Unity. Instanciar al hocico madre parpadea cada vez que
disparamos y hacemos que el hocico destelle a un niño de la posición lejana. Y ya veremos por qué en tan solo un poco. Así que pausa el video ahora mismo y ve a hacer estos poco profundos. Ay, kay, bienvenido de nuevo. Entonces, ¿dónde deberíamos estar instanciando? Bueno, cada vez que presionamos el botón, no importa si realmente encontramos un recast para golpear o cualquier cosa. Simplemente queremos instanciarlo cada vez que presionamos el botón del ratón. Entonces aquí vamos a escribir instanciate. Aquí está. Y entonces los orígenes o el objeto que queremos instanciar serán el destello de hocico. Y la posición va a ser la posición de fuego, posición de punto. Y la rotación también será la rotación de puntos de posición lejana. Y por último, permítanme mostrarles por qué queremos tener la posición de fuego como el padre de familia. Entonces de vuelta en nuestro juego aquí. Y ahora cuando nos acercamos al juego, y veamos si eso funciona. Bueno. En realidad el destello del hocico, si miras la jerarquía, en realidad
se está creando, pero parece que no pasa nada. ¿ Por qué es eso? Bueno, pongamos aquí
este destello de hocico y echémoslo un poquito. Entonces, antes que nada, en realidad podemos tocarlo y vemos que en realidad es real. Pero lo primero es que en realidad es muy pequeño. Entonces sigamos adelante y hagamos esto tal vez cuatro por cuatro, cuatro por cuatro, y esto escalará nuestro flash de hocico de arma. Otra cosa que tenemos que hacer es que realmente necesitamos dar click aquí en play on Awake. Y lo que hace esta jugada en Awake es que en realidad empieza a jugar tan pronto como realmente instanciemos esta. Entonces, veamos si eso hace algún cambio. Y antes de irnos, no olvides aplicar todo eso al prefabricado que hemos creado. Elimina el destello del hocico ido y se ven. Y ahora cuando golpeamos el juego, se
puede ver que tenemos un destello de hocico. ¿ Y por qué te dije que necesitamos convertirlo en niño? Porque se puede ver que a medida que nos movemos, el destello del hocico no está instanciando en nuestra pistola. Se está instanciando frente a ella. Entonces, y otro problema que tenemos que resolver son estos, todos estos destellos musculares de arma no se están destruyendo. Y en realidad es una solución bastante fácil. Entonces si lo ponemos aquí o ni siquiera lo ponemos en escena. Si nos
desplazamos hacia abajo, podemos ver que tenemos la opción aquí para detener la acción y actualmente está en non. Podemos dar click aquí y podemos dar click en el destruir. Entonces esto destruirá el sistema de partículas de nuestra jerarquía cada vez que termine de jugar, aplicemos eso y backend nuestro arte del juego aquí, o quiero decir, en nuestro guión aquí mismo, sigamos adelante y lo hagamos el niño de la posición de las FARC. Guarda eso. Y ahora sigamos adelante y lo intentemos de nuevo. Y no deberíamos tener un destello de hocico muy bonito. Así que hit play. Y ahora podemos ver que incluso cuando nos movemos, nuestras armas aún sondean frente a nosotros. Muy bonito. Ahora puedes ajustar esta carne musulmana tanto como quieras. Puedes hacerlo tal vez más grande, escalarlo. A lo mejor quieres cambiar la posición de la posición de fuego. A lo mejor tú uno, no estoy seguro de qué quieres hacer, pero de todos modos, salgamos del modo play. En el siguiente video, vamos a estar agregando el efecto de agujero de bala. Y también vamos a estar aprendiendo todo sobre las capas porque las capas nos permitirán tener agujeros de bala, solo objetos de juego inciertos, no todos ellos. Entonces hasta entonces, te veré en el siguiente video. Y antes de irnos, entremos a los Maestros y cometamos nuestros cambios. Por lo que he comprometido el, como pueden ver aquí, agregué precisión a mis balas y ahora lo voy a contar sobre archivo grande detectado. Ok, entonces veamos, y si estos archivos son demasiado grandes, sigamos adelante e ignoramos todos ellos. Entonces haga clic derecho aquí. Y sigamos adelante e ignoremos todo bajo los ejemplos de efectos. Entonces ignora todo lo que hay debajo. A medida que los activos afectan a los ejemplos, haga clic en Aceptar. Y ahora vamos a escenificar todo eso, comentar,
todo eso, y añadimos destello de hocico a mis armas. Está bien, genial. Con signos de exclamación, comete todo eso. Y te veré en el siguiente video. Estamos donde estaremos agregando agujeros de bala.
19. Agregar agujeros: Bienvenidos de nuevo, mis compañeros desarrolladores de juegos. En este video, vamos a estar usando etiquetas para tener diferentes efectos cuando filmemos cosas. Entonces ahora cuando disparamos a los cubos pequeños que tenemos, se
puede ver que estamos creando agujeros de bala que son perpendiculares a la superficie. Y esto le pasa a todos los cubos que deberíamos. Pero si debemos el avión, se
puede ver que estamos teniendo estas extrañas fugas de agua hacia arriba en el aire. Entonces, no perdamos más tiempo y sigamos adelante y empecemos a aprender sobre los bancos. Te veré en sólo un rato. Oh, bien, entonces lo primero que queremos hacer es
realmente queremos estar instanciando nuestros agujeros de bala. Ahora bien, si quieres retomar este reto extraoficial, puedes seguir adelante y hacer eso. Ok, se acabó el tiempo. Entonces sigamos adelante y abramos el guión. Y dentro de aquí, siempre que realmente tengamos un cierto recast hit, vamos a seguir adelante e instanciar el agujero de bala. Entonces aquí, si también estamos a cierta distancia, vamos a terminar sustanciar y vamos a instanciar el agujero del perno. Va a ser en el punto de punto de cabeza. Esta es la posición del Estado Eureka y vamos a utilizar el cuaternión. Por lo que cuaternion dot look rotación. ¿ Y por qué estamos usando la rotación de bloqueo? Por lo que puedes ver aquí que crea una rotación con una dirección hacia adelante y hacia arriba especificada. Y por eso necesitaríamos utilizar
la rotación de look cuaternión para la rotación de nuestro barco. Esperanza porque queremos que siempre sea perpendicular al punto de golpe en cierta superficie. Entonces vamos a utilizar el punto hit normal y la normal, la normal la superficie a la que golpea el rayo. Tan normal significa que como los ejes perpendiculares, perpendiculares de dondequiera que tuviéramos un punto de esta manera, el orificio del perno siempre estará mirando hacia la dirección perpendicular de cualquier superficie que tuviéramos. Entonces veamos eso en acción. Vamos a guardar eso de nuevo en nuestro juego. Y cuando golpeamos Play, ahora, cada vez que disparamos, se puede ver que en realidad tenemos un agujero de bala instanciados. Ahora, honestamente, estos agujeros de bala son un poco pequeños y no se van a ir, ¿o lo son? Ah sí, efectivamente se van por su cuenta. ¿ Qué tan guay es eso? Ahora quiero hacer estos agujeros de bala un poco más grandes. mejor, digamos tal vez el doble del tamaño, así que también en la báscula, veamos si eso se ve bien. Sólo para que podamos verles las mayordomo o ahora, sí, estas se ven mucho mejor. Por lo que ahora tenemos unos agujeros de perno, bonitos y geniales. Entonces ahora tenemos estos hoyos de bala disparando cada vez que nos movemos. Pero el problema es. Todavía hay cosas sobre las que tenemos que cambiar porque más adelante, por ejemplo, digamos que agregamos, tal vez agregamos el, algún tipo de enemigo y no queremos tener este tipo de agujeros de bala en nuestro enemigo. Nosotros sólo queremos tener estos agujeros de bala cuando disparamos a ciertos tipos de objetos. Entonces tal vez no queremos tener agujeros de bala en el piso. Nosotros sólo queremos tener agujeros de bala en los cubos y el medio ambiente que nos rodea. Entonces para eso, necesitamos usar algo llamado el impuesto y lo que nuestro impuesto. Entonces si seguimos adelante y hacemos clic en el entorno, haga clic en un cubo o cualquier objeto, para el caso, cualquier objeto en nuestra jerarquía, incluso la cámara principal tiene una etiqueta aquí mismo. puede ver que es la etiqueta de la cámara principal. Y cubo, por ejemplo, dQg número dos está sin etiquetar. Por lo que queremos crear una etiqueta para esto o un cierto número de cubos que tenemos aquí y etiquetarlos como un disparo se opondrá. De esa forma, sólo los objetos mutables obtendrán agujeros de bala. Entonces hagámoslo. Para crear una etiqueta, simplemente haga clic aquí. Y puedes elegir uno de los textos que
ya están disponibles o puedes seguir adelante y añadir una tachuela. Y podemos ver que hay una lista de etiquetas que está vacía también tienen las capas de clasificación, y esto se utiliza principalmente para cada vez que estamos creando un juego y 2D, esto permite la clasificación de capa. Entonces, ¿qué capa muestra frente a qué capa? Y entonces tenemos estas capas justo aquí que estaremos usando mucho en el futuro a medida que avanza el proyecto. Entonces sigamos adelante y etiquetas. Aquí, la lista está vacía. Vamos a crear una nueva etiqueta y lo llamaremos el tiroteo compartible. Por lo que ahora tenemos una etiqueta compartible. Y entremos aquí y seleccionemos todos nuestros cubos sin el avión. Y sigamos adelante y etiquetarlos como adecuados. Y vamos a guardar eso. Y ahora lo que deberíamos estar haciendo es ir a instanciar nuestras retenciones de bala sólo si el objeto que teníamos con nuestro recast es una etiqueta adecuada o tiene una etiqueta adecuada en ella. Y para eso, te voy a emitir un reto. Por lo que tu reto es agregar una condición para la instanciación del agujero de bala. Así que comprueba la etiqueta en el hit y asegúrate de que esté en el punto de la cabeza y asegúrate de que sea adecuada. Y si te sientes lo suficientemente seguro, pausa el video ahora mismo y ve a hacer tu propia investigación y descubre cómo puedes revisar las etiquetas de los objetos del juego. O si quieres tener una pequeña pista, déjame que te la dé. Por lo que necesitarás usar el hashtag hit dot collider dot antes de instanciar o dentro de tu condición if para comprobar la etiqueta. Entonces ahora que tienes todas las armas necesarias, no
olvides que la etiqueta es una cuerda. Pausa el video ahora mismo y ve al reto. Ok, bienvenido de nuevo. Entonces vamos a entrar en nuestro código. Y aquí antes de que realmente instanciemos. Vamos a crear una condición if. Nosotros vamos a, oops, vamos a abrir primero los corchetes y conseguir el hit. Vamos a usar el colisionador que está encendido y que está en la cabeza. Y vamos a usar la etiqueta aquí dentro. Y lo vamos a comparar con la etiqueta de nuestros objetos de juego. Entonces debido a que se trata de una referencia de cadena, tenemos que ir y asegurarnos de que lo escribimos correctamente. Entonces mesa Shu, no podemos copiarla, pero podemos recordar que vendió adecuado de nuevo en nuestro código. Adecuado. Y vamos a mover este instanciado aquí. Y un truco inteligente que estoy a punto de mostrarles es que
siempre que tengamos una sola línea de código bajo la condición if, realidad no
necesitamos estos dos corchetes garabateados. Y esto funcionará sólo para una sola línea de código. Porque cuando golpeamos entrar ahora todo aquí está fuera de los límites de la condición if. Entonces, asegurémonos de que todo esto funcione. Entonces vamos a guardar todo eso. Y ahora entraremos en nuestra ganancia, esperaremos a que esto se compile. Y como recordamos, el medio ambiente, el avión está sin explotar. Entonces, siempre que
deberíamos, no deberíamos conseguir un agujero de bala en el avión, sino que deberíamos conseguir un agujero de bala en nuestro cubo. ¿ Qué tan guay es eso? Entonces con eso hecho, podemos hacer una última cosa. Entremos a nuestras escenas aquí dentro. ¿ O dónde están estos? ¿ Dónde están los OK, el material de efecto? Y una última cosa antes de irnos, vamos a seguir adelante y añadir un cierto efecto de partícula a cada vez que golpeamos a un, el avión. Entonces sigamos adelante y agreguemos un contenedor de agua extinguiendo. ¿ Qué hace éste? A ver. Bueno, en realidad la fuga de agua K9 soul o Et 1d celosía. De acuerdo, entonces la forma en que hacemos esto, vamos a borrar. Este es el este es el uno o éste, el efecto contenedor. Cuál es la fuga de agua. Vamos a tocar juego. Está bien. Entonces éste es el que queremos. Haga clic derecho en este recipiente de agua de impacto de bala, y solo queremos el efecto de partícula. Entonces sigamos adelante y pinchemos en prefab y desempaquetados por completo. Por lo que ahora podemos quitar la fuga de agua. Y sigamos adelante otra vez en nuestras prefabs. Y aquí dentro, simplemente arrastra la fuga de agua y ahora es un prefabricado. Volvamos a nuestro guión polar. Y aquí arriba vamos a sumar la fuga de agua. Guarda eso. Y si quieres tomar este pequeño reto, también
puedes seguir adelante y crear una, otra etiqueta añadida al avión. Y luego si golpeamos la cubierta del avión o el HIT Collider tiene una etiqueta de avión o cualquier nombre que quieras darle al avión, se instanciará la fuga de agua. De acuerdo, el tiempo se acabó. Volvamos aquí. Entonces jugador tendrá la fuga de qué y vamos a seguir adelante y vamos al avión aquí. En tanto que deforma plano. Añadamos una etiqueta. Fuga de agua, lo llamaremos. Copiemos la fuga de agua, guardemos eso de nuevo aquí. Vamos a seguir adelante y crear una condición if. Entonces si golpean etiqueta de colisionador de puntos. O también podemos usar algo más que se compara etiqueta. Abre los soportes aquí dentro, y añade la fuga de agua. Entonces esto es exactamente lo mismo que el anterior, pero es solo una forma diferente de usar el S1. Entonces vamos a copiar esta instancia y pegarla aquí. Y en lugar del agujero de bala, vamos a llamar al, se
llamaba, la fuga de agua. Entonces fuga de agua, guarde eso. Y de vuelta en Unidad. Vamos a dar click en el avión, asegurarnos de que sea un licor de agua. Así que hit play. Y veamos si eso funciona. Entonces nos levantamos
y, y como funciona y no desaparece. No, no está desapareciendo. Por lo tanto, asegúrate de que la fuga de agua se destruya. Y detener la acción, destruir, guardar eso. Y ahora le pegamos al juego. Y sé que no es muy lógico tener el agua goteando del suelo, pero sólo queremos demostrar la diferencia que podemos hacer con estas etiquetas y la dinámica que agrega a nuestro juego. Entonces en el siguiente video, vamos a estar agregando un par de enemigos. No olvides cometer tus cambios. Y te veré en el siguiente video.
20. Crear objetivos para Destroy: Bienvenidos de nuevo, mis compañeros desarrolladores de juegos. En este video, vamos a estar sumando un par de esferas en el aire. Entonces nos vemos en solo un poco. No, en realidad estamos sumando estos miedos porque estos miedos son nuestros enemigos. Por lo que siempre que debamos estos, se
están destruyendo. Y cuando deberíamos Otras cosas, creamos agujeros de bala, cuando deberíamos los enemigos que son verdes y aterradores, Todavía no, pero van a estar más tarde, se destruyen. Entonces, no perdamos más tiempo y empecemos. Oh, está bien, así que ahora podemos disparar. Tenemos agujeros de bala o disparar. O disparar es realmente emocionante y todo, pero aún nos faltan enemigos que destruir. Arreglemos eso. Vamos a hacer clic derecho y nuestra jerarquía y crear un objeto 3D. Y sigamos adelante y creemos una esfera. Por lo que ahora tenemos esta esfera en medio del aire y vamos a escalar este pequeño cachorrito hacia arriba. Entonces hagámoslo un poco más grande también, donde su alrededor de 3.92, tal vez tres. Hagamos de este un buen número bonito. tres. Siguiente cosa que vamos a hacer. Vamos a crear un material para estos chicos. Entonces vamos a dejar que digamos duplicar el material de chicle se sumará a este cubo y tal vez lo hagamos, ¿qué debemos hacerle? Vamos a hacerlo verde porque todavía no tenemos ningún color verde. Y sigamos adelante y cambiemos la emisión también a verde. Entonces ahora tenemos este brillante, oops, este verde brillante o flotando alrededor. ¿ Deberíamos hacerlos más claros u oscuros? Vamos a mantenerlo así. Genial. Por lo que ahora tenemos a este enemigo que está flotando alrededor. ¿ Y qué deberíamos estar haciendo ahora mismo? Bueno, deberíamos entrar en nuestro guión y destruir cualquier objeto que sea bala choca con. Entonces, antes de que hagamos eso, quiero duplicar la esfera. Y hagamos un par de enemigos aquí mismo en el aire. Y haga clic derecho en crear objeto de juego vacío. Y llamemos a esto d enemigos. Y ante estos temores Bajo los enemigos, objetos de juego. Por lo que ahora son todos nuestros enemigos. Ok, genial. En realidad vamos a mover este aquí y mover éste por allá, y éste por aquí. Está bien, genial. Ahora tenemos a nuestros enemigos en nuestro patio de recreo. Sólo les estoy dando un poco de campo aleatorio. Genial, así que ahorita eso. Nos pegamos al juego. Y tenemos a estos enemigos en el aire ahora mismo. Pero como puedes ver, no pasa nada, nuestras balas simplemente desaparecen. Entonces lo que queremos hacer es entrar en nuestros guiones e ir a nuestro controlador de bala. Y aquí en el en azúcar entrar, antes de destruir el objeto de juego, queremos destruir. El otro objeto de juego. Entonces ahora el otro es el Otro colisionador con el que colisionamos. Y tomamos el otro colisionador, accedemos al objeto de juego sobre él, y luego lo destruimos. Por lo que ahora de vuelta en nuestro juego, teníamos juego. Y vamos a ver. Entonces, oops, vamos a pegarle esto. Y siempre que el libro choca con nuestro enemigo o estas esferas, se destruye. Pero hay un, sólo un pequeño problema. No es muy notable ni nada. No es rompedor. Pero el problema es, es que cuando llegamos a nuestra rampa y todo lo que nos rodea, el mundo también desaparece. Entonces sí, esa no es tan buena idea. Entonces lo que queremos hacer es que en realidad necesitamos darte un reto. Entonces tu reto va a ser destruir sólo a los enemigos. Entonces si te sientes a la altura, incluso antes de que te muestro a desafiar solo de éste, debes tener una idea de cómo necesitas construir esto. De lo contrario, necesitas crear una etiqueta enemiga. Necesitas comprobar si hay etiqueta enemiga cada vez que choques con un objetivo. Y te daré una pista que ya hemos hecho, pero necesitarás quizá usar el colisionador de hip-hop y comparar la tecnología. Entonces usa ambos métodos para entender cuál te gusta más, si se trata de la etiqueta head dot collider.compare o accediendo a la etiqueta y comparándola con una cadena. Así que pausa el video ahora mismo y ve al reto. De acuerdo, bienvenido de nuevo. ¿ Cómo te llevaste con eso? Entonces sigamos adelante y agregamos una etiqueta. Crea una etiqueta aquí dentro, y éste va a ser el enemigo. Entonces etiqueta enemiga, y vamos a nuestra esfera, selecciónalos a todos y etiquetarlos como el enemigo. Muy bonito. Ahora de vuelta en nuestros guiones aquí dentro, vamos a crear una condición if y vamos a conseguir la etiqueta other .com. Entonces compara etiqueta, y aquí dentro vamos a crear al enemigo. Pero antes de hacer eso, hay algo que no expliqué en el video anterior. Entonces la otra etiqueta de punto, en realidad escribí estos dos iguales, iguales. Ahora algunos de ustedes podrían haber estado confundidos. ¿ Por qué no estamos usando un solo igual? Bueno, cuando usamos un solo igual, si se pasa el cursor sobre esto, no se puede convertir. Bueno, este no es el problema. El problema aquí es que cada vez que escribimos un
solo igual, al igual que aquí, en realidad estamos asignando un valor. Cuando escribimos dos iguales, iguales, estos dos iguales, iguales, significa que los estamos comparando entre sí. Y si son iguales, entonces vamos a volver verdadero o falso. Entonces con eso aclarado. Vamos a seguir adelante y crear al enemigo. Vamos a mantenerlo así. No se preocupe tanto de estos métodos funcionan. Y debido a que sólo tenemos una sola línea, no necesitaremos agregar corchetes. O si te sientes cómodo añadiendo corchetes, puedes, por supuesto, hacer eso. Entonces salvamos esto, volvemos a nuestra ganancia. Nos pegamos al juego, y ahora deberíamos al suelo. No desaparece. Y cuando deberíamos el enemigo, en realidad desaparecen. Ahora el problema es, ya sabes, cómo funcionan las armas cada vez que disparas a un enemigo no toma como cinco segundos antes de que la bala llegue realmente al enemigo. Tenemos que hacer que nuestras balas de bala sean más rápidas. Entonces entramos en el click prefabricado en balas, y la velocidad de bala debería ser tal vez 300. Entonces le pegamos al juego. Y ahora disparamos a nuestra bala. Disparamos a nuestra bala, pero whoa, ¿qué está pasando? ¿ Por qué no desaparece nuestro enemigo? ¿ No estamos golpeando al enemigo? Sí, lo estamos. Ahora desaparece. Pero, ¿qué pasó? ¿ Por qué a veces tardaba tanto? Entonces el problema es, por
supuesto, cuando estamos, tenemos el colisionador de esfera en nuestra bala dos, tenemos el lidar esférico también en nuestros enemigos. Pero el problema es por la velocidad de nuestras balas. El, la forma en que funciona la unidad cuando tiene colisionadores y cuerpos rígidos sobre él es que realmente hace cálculos matemáticos mientras nuestro cuerpo rígido o la bala se mueve. Y en cuanto golpea a un colisionador como
éste, empieza a calcular qué debe hacer y cómo interactuaron estos dos colisionadores entre sí? Ahora el problema es cuando tenemos objetos muy rápidos en unidad, si esto no funciona correctamente. Entonces te voy a enseñar una forma diferente de destruir nuestros objetos de juego. No es muy difícil, pero ya hemos hecho algo similar. Pero es una manera diferente. Y tienes la opción de elegir. La elección a elegir. Tienes la opción entre ya sea usar este método de usar el emprendedor enter, todo usando el método que estoy a punto de enseñarte. Y aquí dentro, vamos siempre que en realidad golpeamos a un enemigo o
golpeamos con el recast, Vamos a comprobar si golpeamos al enemigo o golpeamos a un objeto que tenga una etiqueta en él. Entonces aquí, siempre que en realidad le peguemos a algo con nuestro recast, no
hace falta que sea muy, aunque esté muy cerca, empezaremos por aquí. Entonces si seguimos adelante y sacamos la etiqueta head dot collider.com. Y espero no estar confundiéndote con las diferentes formas en que estamos usando la etiqueta aquí para compararla. Entonces enemigo. Y debajo de ella vamos a destruir el objeto de juego hit dot collider. Entonces vamos a guardar eso. Y en el controlador de bala, solo
etiquetemos ambas de las, ambas líneas. Guarda eso de nuevo en Unity. Espere a que esto se compile. Y ahora cuando golpeamos play, podemos ver que la bala es muy rápida, igual que lo son las balas normales. Y cuando golpeamos a estos objetos, se destruyen de inmediato. Por lo que depende de ti. ¿ Cuál quieres hacer? ¿ Quieres que tus balas realmente destruyan el enemigo que esto causará tener, necesitas hacerlo menos rápido? ¿ O quieres que el recast esté destruyendo a los enemigos? De esta forma en realidad puedes crear movimiento de bala
realista depende de ti, lo que quieras hacer. A lo mejor puedes encontrar un buen umbral entre ellos. Personalmente recomiendo usar el recast y hacer las balas muy rápido porque más adelante estaremos agregando armas realistas, balas realistas. Y realmente no se siente bien cuando ves que la bala se mueve lentamente hacia tu enemigo. Y también es menos precisa. Y cuando se hacen juegos reales o pueden juegos AAA como Call of Duty y otros juegos. Las balas en realidad no son las que destruyen a los enemigos, el recast Como los enemigos de fuerza. Entonces con eso dicho, espero que hayan disfrutado de este video. Espero que hayan disfrutado de esta sección de rodaje. Y en la siguiente sección vamos a estar creando movimiento avanzado con deslizamiento, agachado, saltando, agregando gravedad, y todas esas cosas divertidas. Entonces nos vemos ahí.
21. SECCIÓN 4: añadir gravedad: Bienvenidos de nuevo, mis compañeros desarrolladores de juegos. En este video, en realidad vamos a estar agregando algo de gravedad. Entonces recuerda los buenos viejos tiempos cuando solíamos
subir estas rampas y flotábamos por ahí, bueno ahora que la diversión, la diversión se acabó. Entonces cuando bajamos, en realidad peleamos. Y recuerden nosotros, cuando podríamos haber
caminado en este avión y no preocuparnos si nos caemos. Bueno ahora cuando caminas por el avión, empiezas a caerte. Pero no se preocupe. Agregar poco de reglas y restricciones al juego en realidad a veces lo hacen, lo
hace más divertido. Basta con mirar Dark Souls y lo duro que es y lo divertidas fábricas y ancho. No perdamos más tiempo y empecemos. Ah, caso. Por lo que actualmente, cuando jugamos, nuestro jugador sube la rampa y cuando intenta bajar,
bueno, en realidad se queda ahí dentro. Y se puede ver su sombra aquí mismo. Entonces lo que queremos hacer es que realmente queremos empezar a
bajar a nuestro jugador cada vez que subamos una rampa o tratamos de hacer algo. Por lo que nuestro objetivo es agregar gravedad a nuestro jugador. Ahora, sigamos adelante y hablemos de qué es la gravedad y cómo funciona. Entonces así es como funciona la gravedad. No estoy seguro si recuerdas esta fórmula de la preparatoria, pero esta es la diferencia de la distancia, que es y, xi, que está en el eje y. Y es el g, o uno sobre dos veces g. G es la gravedad tiempos t a la potencia dos. Y tenemos todo eso. Tenemos g como el poder de la gravedad en la Tierra, que es de 9.81. Creo que es un número largo, pero 9.81. Y entonces tenemos t, que es tiempo, que es tiempo.Deltatime, todos y cada uno de los fotogramas. Entonces sigamos adelante e implementemos esta fórmula en nuestro código. Entonces lo primero que vamos a hacer es que vamos a crear una referencia aquí para hacer un seguimiento de la velocidad de nuestro jugador. Entonces vamos a crear un factor público tres. Y esta va a ser la velocidad. Lo siguiente que vamos a hacer es añadir esta ecuación o aplicar esta ecuación en los movimientos del jugador. Entonces vamos al movimiento del jugador, hacemos doble clic sobre él y realmente podemos desplazarnos hacia abajo y ver dónde está eso. Y después de aplicar el movimiento de nuestros insumos, entonces
vamos y creamos, obtenemos la velocidad. Accedemos a prag dot
y. Y esto nos permite acceder al componente y del vector. Y vamos a escribir aquí más iguales,
porque es, la gravedad aumenta a medida que caemos. Física. Gravedad de puntos, punto
y. Y esto significa que es la física real de la unidad es Motor. Entonces si se cierne sobre el motor Unity Dot Physics, accedemos a la gravedad. Y aquí en realidad podemos multiplicar esto por matemáticas. Matemáticas F punto pow, pow, lo que significa que podemos agregar poder. Entonces puedes ver aquí que devuelve F elevado al poder p. ¿
Y qué debería ser? Bueno, va a ser el tiempo.Deltatime elevó el poder de dos. Muy bonito. Nosotros queremos no estar molestando, con sumar el 0.5. ahora mismo. No es tan grande de D. Y lo
siguiente que vamos a hacer es que vamos a acceder a mi mando. Y vamos a sumar esto al movimiento de nuestro jugador. Por lo que ahora mi controlador ese movimiento también se ve afectado por la gravedad. Entonces vayamos a Unidad y probemos esta gravedad. Entonces sigamos adelante y pinchemos en jugar. Y solo notaré algo antes de continuar este material de arma No.1 es el material para los enemigos. Entonces vamos a nombrar esto los materiales del NMI. Espero que nadie se percatara de eso. Simplemente lo haré sin que nadie lo vea. Entonces vamos a guardar eso. Vamos a pegarle juego. Y ahora cada vez que
caminamos, subimos esta rampa. Y cuando bajemos, pinchemos sobre jugador y veamos la velocidad. Entonces va en aumento y ahora caemos. Muy bonito. Y si salimos del borde, woo, empezamos a caer. Pero hay algo realmente mal aquí. Si hacemos click en play, podemos ver eso porque la velocidad aquí mismo es un vector de tres. Entonces tenemos el 0, bueno, tenemos la X, la Y y el desierto. El Y sigue aumentando incluso cuando dejamos de movernos. Entonces aunque estemos quietos, la velocidad sigue aumentando y aumentando y aumentando. Y esto hace que la caída sea muy rápida y no muy natural. Por lo que tendremos que poder restablecer nuestra gravedad siempre que realmente empecemos a pararnos en el suelo. Y este va a ser tu reto. Tu reto va a ser restablecer la gravedad si el personaje está conectado a tierra. Entonces encuentra el método que te permita comprobar si tu controlador de caracteres está conectado a tierra. Este será un reto basado en la investigación. Tendrás que salir de tu camino y en realidad tratar encontrar un método que aún no te he enseñado. Por lo tanto, restablece la velocidad de gravedad al controlador de caracteres. Y si el, esto debería ser si el controlador de caracteres está conectado a tierra y solo te daré una pista de cuál debería ser la velocidad. Debe ser física punteado gravedad punto y veces tiempo.Deltatime. Ahora bien, no necesita ser el valor exacto, pero puedes usar esto bastante bien y funciona. Así que pausa el video y luego sigue adelante y haz alguna investigación, descubre lo que necesitas. Todo lo que necesitas está justo aquí. Entonces te veré en solo un rato. O k caminar hacia atrás. Entonces lo primero que tendremos que hacer es
comprobar si nuestro controlador de caracteres está realmente conectado a tierra. Y si has hecho tu investigación, habrías encontrado que mi controlador de personajes tiene una opción para comprobar si está castigado. ¿ Y el controlador del personaje tocó el suelo durante el último movimiento? Entonces, ¿estaba castigado? ¿ Sí o no? Y si está conectado a tierra, vamos a tomar esta velocidad y vamos a acceder al componente y en él. Y lo vamos a hacer física. Gravedad, esa vez. Ups, no punto y veces tiempo.Deltatime. Entonces ahora tenemos la velocidad aquí mismo aumentando
lenta pero seguramente con la ecuación física correcta para la gravedad. Y luego si mi controlador está realmente conectado a tierra en el suelo, vamos a detener todo esto y luego lo restableceremos. Ahora no tiene que ser el punto de gravedad física y tiempos tiempo.Deltatime. Acabo de hacerlo de esta manera. Para que sea mucho más realista, solo
puedes ponerlo a, digamos minús1 o algo así. Pero sigamos adelante y probemos esto y veamos si funciona. Entonces cuando golpeamos el juego, deberíamos ver que nuestra gravedad como a menos 0.1, lo cual es bastante razonable. Y ahora cuando caemos,
caemos mucho más lenta y razonablemente. Y echemos un vistazo a este y aquí mismo. Entonces cuando realmente empezamos a caer, esto debería estar aumentando. Por lo que aumenta. Pero luego se reinicia cuando golpeamos el suelo. Por lo que de nuevo, se reinicia cuando golpeamos el suelo. Antifouling es en realidad mucho más agradable. Pero si puedes ver ahora mismo, cuando tratamos de caer, es más como deslizarnos. Y eso no queremos. Queremos una manera de poder controlar realmente son la gravedad. Entonces sigamos adelante y creemos una variable que nos permita modificar nuestra gravedad. Entonces abriremos nuestro guión de jugador, se moverá aquí. Y vamos a seguir adelante y separar esto y llamarlo la gravedad añadida. Y aquí abajo vamos a crear una flotación pública. Y lo llamaremos el modificador de gravedad. Entonces tendremos aquí un modificador de gravedad que es público y podemos controlar. Y aquí abajo vamos a seguir adelante y multiplicar nuestra velocidad por el modificador de gravedad. Guardemos eso. Y ahora de vuelta en Unidad, tenemos este modificador de gravedad justo aquí. Entonces ahora, ahora porque es 0, esto no funcionará en absoluto. Creo que ni siquiera estarás flotando. Ops, Bueno, sí flota, pero si lo multiplicamos por cinco, debería empezar a caer mucho más rápido. Sí, ahí vamos. Por lo que ahora la gravedad funciona más fuerte en nuestro jugador. Siempre que se caiga, incluso podemos hacer esto tal vez diez si quieres. Por lo que de esta manera la gravedad será mucho más rápida. Por lo que ahora nuestro jugador cae más rápido al suelo. Por lo que esto será un reto para ti. Un reto extra para seguir adelante y modificar tu gravedad tanto como sientas que quieres que tenga tu juego. Entonces sólo lo mantendré alrededor de 30. Y creo que ese es un buen modificador de Gravedad. Entonces espero que hayan disfrutado el video. En el siguiente video, la progresión obvia es ahora que tenemos gravedad para empezar definió esa gravedad saltando. Entonces te veré en el próximo.
22. Saltos: Bienvenidos de nuevo, mis compañeros desarrolladores de juegos. En este video, vamos a estar definiendo la gravedad. Nos vamos a definir la fuerza de la gravedad agregando un mecánico de salto. Ahora, va a ser un salto más de estilo saltando. Entonces vamos a estar aprendiendo muchas cosas sobre capas, saltos, fórmula para el salto. Entonces, no perdamos más tiempo y empecemos. O K. Entonces lo primero que vamos a hacer es que vamos a estar abriendo nuestro guión. Y aquí dentro, después de mover nuestra cámara, o no importa realmente, vamos a crear un método llamado Jump. Y vamos a crear un salto de vacío. Y vamos a abrir nuestros corchetes. Y aquí dentro vamos a tomar cierta entrada desde el botón de salto. Y cuando obtengamos esta entrada, vamos a estar sumando velocidad en la dirección y. Entonces, ¿qué deberíamos estar usando mientras tenemos este pequeño método aquí que se llama el botón de entrada de punto get down. Y si lees la descripción, puedes ver que devuelve lo verdadero durante el marco,
el usuario presionó hacia abajo el botón virtual identificado por el nombre del botón. Por lo que nos están pidiendo un nombre de botón. Y por suerte sí tenemos en unidad, si vamos a la edición, buscaremos ajustes de proyecto. Tenemos este botón de salto justo aquí que se utiliza con el botón positivo siendo espacio. Ahora tenemos otro botón de salto aquí mismo. Y por lo general el segundo salto se usa con un joystick, por lo que es para una consola o algún tipo de cosa. Entonces ahora tenemos el salto y volvamos a nuestro juego o a un guión R. Y aquí vamos a escribir si input, dot get, pero sustantivo, get, button down. Y nos va a pedir el nombre de la cuerda. Entonces entraremos en el porque es una referencia de cadena y podemos copiarlo. Entonces copiaremos esto. Y lo vamos a pegar aquí. ¿ Y qué vamos a hacer y aquí? Bueno, vamos a sumar cierta velocidad en la dirección y, y va a ser igual a la altura del salto. Y esta altura de salto será una variable que vamos a crear aquí arriba. Entonces aquí vamos a crear una altura de salto flotador público. Y vamos a seguir adelante y ponernos a diez. No estoy seguro de cuánto debe ser, pero por ahora lo mantendremos a las diez f. Muy bonito. Ahora volvamos a Unidad. Vamos a seguir adelante y cerrar este gestor de entrada. Y juguemos y veamos si eso funcionó. Entonces ahora podemos disparar, podemos movernos. También tenemos gravedad. Y cuando presionamos la barra espaciadora, creo que nuestro salto sólo un poco exagerado. Entonces vamos a arreglar eso. Entonces si entramos en jugador, reduzcamos esto a dos. Y saltamos. Y sí, esto parece más razonable, pero todavía hay muchos problemas. Entonces, en primer lugar, se ve raro. En segundo lugar, la guerra con caminar y a veces el salto no funciona. Entonces cuando llegamos al espacio no funciona. Entonces este es un segundo problema. Y el último problema y el más innovador Uno es que podemos saltar y seguir saltando, podemos seguir saltando fue presionando la barra espacial hacia el infinito. Y luego cuando nos detenemos, bajamos. Perdón, hay un par de inconsistencias con nuestro salto. En primer lugar, queremos abordar la capacidad de saltar infinitamente, y esto se abordará utilizando algo llamado esfera superpuesta. Entonces, ¿qué es una esfera superpuesta? Permítanme mostrarles aquí en la documentación. Por lo que la física punto superpone esfera. Tiene los parámetros de la posición o el centro de la esfera. Tiene cierto radio, que es el radio de nuestra esfera. Y también puede tomar una máscara de capa. Por lo que esta Máscara de Capa le permite interactuar solo con ciertos tipos de capas. Y qué hace realmente devuelve una matriz con colisionadores tocando o dentro de la esfera. Entonces, ¿qué es una matriz? Si bien aún no hemos hablado de matrices, profundizaremos mucho más en ellas. Pero por ahora, así como una simple explicación, o levantar o como una mesa que tenga dentro de ella valores. Y este punto de la física se superpone el miedo regresa. Estos valores o estos objetos que están dentro de la esfera. ¿ Y por qué estamos usando la esfera de superposición? Si bien porque queremos contar los objetos que esta esfera se superpone está tocando. Y si está tocando algo bajo la capa de tierra, entonces, y sólo entonces permitiremos nuestra esfera o permitiremos que nuestro jugador salte. Entonces si está en el aire y no está tocando nada que esté bajo tierra, entonces no podrá saltar. Entonces comprobaremos cuánto hay dentro de estas matrices. Si no hay nada ahí, no
podremos saltar. Con eso dicho, sigamos adelante y empecemos a crear una pareja, un par de variables para todo eso. Entonces de vuelta en nuestro juego, movamos esto y llamemos a esto la sección de saltos. Sólo para que tengamos un poco más organización también nombrará a todos estos más adelante. Pero por ahora, vamos a crear un booleano privado. Y se va a llamar listo para saltar. Muy bonito. Entonces ahora si presionamos el botón de salto y estamos listos para saltar, entonces podremos saltar. Por lo que siempre que queramos agregar una segunda condición junto a cualquier condición aquí, podemos agregar estas pequeñas y marcas. Lo siguiente que vamos a hacer es que lo vamos a hacer, antes de crear algo aquí en unidad, vamos a sumar el centro de nuestra esfera. Entonces este va a ser un objeto de juego vacío que se llama ronda. Y ya está en el fondo de nuestro jugador. Entonces aquí es donde se va a
crear nuestra esfera para que incluso podamos moverla hacia abajo solo un poquito. Y aquí dentro, se creará la esfera,
creada alrededor de este objeto de juego. Y va a estar revisando el terreno. Guardemos eso de nuevo en unidad, y sigamos adelante y hagamos referencia a ello. Por lo que el público transforma, y simplemente lo llamaremos la subvención. Y otra cosa que necesitaremos es la máscara. Entonces vamos a crear una Máscara de Capa pública y
va a ser la llamada capa de suelo. Y por último, también necesitaremos crear una flotación pública. Flotar, distancia al suelo. Entonces distancia de tierra, y lo pondremos en, digamos 0.5 solo por ahora. Está bien, genial. Entonces ahora que tenemos todos estos, lo
siguiente que tendremos que hacer es que vamos a tener que seguir adelante y crear una capa para el suelo y poner al suelo todos los objetos de nuestro entorno. Y en realidad es parte de tu reto. Tu reto es crear un terreno. En primer lugar, sigue adelante y crea una capa de suelo. Si recuerdas cómo creamos capas, déjame solo mostrarte si algunos de ustedes lo olvidaron. Entonces al igual que creamos etiquetas aquí, podemos ir a la capa, podemos ir a la capa de edición. Y se puede ver que tenemos la opción de crear etiquetas, Clasificar capas, y por supuesto, las capas justo aquí. Por lo tanto, crea una capa de suelo, coloca todos los objetos del entorno al suelo y asigna la capa de suelo a la Máscara de Capa y a los jugadores y espectro. Y si quieres ir aún más lejos, puedes seguir adelante e implementar esta superposición esferas. Ahora podría que te den un par de errores. Es posible que no entiendas lo que está pasando. No te preocupes por ello, solo llega a cierto punto. Bueno, ¿en realidad estabas agregando esta capa de superposición de puntos de física
si quieres, si quieres asumir ese reto extra. Pero por ahora, adelante, pausa el video y crea un chorale. Oh, bien, bienvenido de nuevo. ¿ Cómo te pusiste con eso? Espero que se estén tomando el tiempo para hacer estos retos porque son muy importantes. Entonces ahora tenemos el terreno. Y cuando haces el reto,
es, se arraiga en tu mente incluso cuando fallas. Entonces de vuelta en nuestro jugador, y ahora necesitamos darle el transporte terrestre. Y la capa de suelo necesita fijarse en el suelo. Y qué más deberíamos estar haciendo en nada, ya
terminamos aquí, creí. Ahora de vuelta en Unidad, espero que intentes crear la esfera superpuesta. Entonces, ¿cuál va a ser la esfera superpuesta? Si bien vamos a crear la esfera de superposición de puntos de Física. Y aquí dentro, en primer lugar
, necesitará el origen. Por supuesto que tenemos la posición de punto de tierra como origen. Necesitamos el radio, así que va a ser la distancia terrestre. Y por último, necesitará una Máscara de Capa, que va a ser por supuesto, la capa de suelo. Ahora si llegaste a este punto, muy agradable. Te felicito. ¿ Qué debemos estar haciendo a continuación? Bueno, ahora tenemos esta esfera superpuesta. Con un origen un cierto radio, y sólo comprobando el suelo. Por lo que esto devolverá algún tipo de matriz o la cantidad que tenemos dentro de nuestra esfera. Entonces queremos comprobar si la longitud de esta matriz, por lo que si la longitud de los objetos, si la cantidad de objetos y lado de la esfera es mayor que 0, eso significa que estamos tocando algún tipo de terreno, entonces nuestra lista saltar va a ser igual a verdad. Entonces esto significa que se le asigna el valor de esta condición aquí mismo. Y si es cierto, esto devuelve verdadero. Entonces estamos listos para saltar y presionamos el botón, y luego saltamos. Pero si no tenemos nada dentro de esta esfera superpuesta y la longitud es menor a 0, entonces listo para saltar será igual a falso y no podremos saltar. Muy bonito. Adelante y probemos esto y veamos si nosotros, oops, nos olvidamos de guardar todo eso. Y ahora de vuelta en la unidad, vamos a golpear juego. Y vamos a ver si podemos saltar multi. Entonces saltamos, saltamos y no estamos saltando para nada. Entonces oh, bien, entonces el enorme problema que se puede hacer y espero que no hayas hecho el mismo problema. Fue incluso en el reto, necesitamos poner al suelo todos nuestros objetos en el medio ambiente. No se puede creer cuánto tiempo me llevó entender eso. Pero como puedes ver, hasta el gran Instructor Michael comete errores. Entonces ahora k, Así que ahora deberíamos poder saltar muy alto, OK,
pero debido a que el salto se restablece, volvamos a ponerlo de nuevo a dos, o tal vez incluso a uno solo para las pruebas. Entonces golpeamos el juego y ahora saltamos, y no podemos saltar varias veces a menos que estemos en el suelo. Ahora, todavía hay un par de cosas. En primer lugar, el salto es raro por alguna razón. Y lo segundo es que cada vez que nos movemos, a veces cuando golpeamos la barra espaciadora, no
está respondiendo muy rápido. En primer lugar, abordemos el problema del bicho raro saltando. Ahora, después del reto, tenemos la altura afectada por la gravedad. Entonces, ¿cuál es la velocidad real que queremos sumar cuando saltamos? Ya que esta es la fórmula. Por lo que la velocidad es igual a la raíz cuadrada de menos dos veces la altura de salto que queremos veces la gravedad. Ahora, algunos de ustedes podrían estar mirándome a mí o a esta fórmula y pensando whoa, minús2 y sitio sobre la raíz cuadrada, eso nunca sucede. Pues porque la gravedad es menos 9.81, esto significa que todo este valor y aquí es positivo. Eso significa que podemos usar la raíz cuadrada. Las matemáticas nunca mienten. Entonces sigamos adelante e implementemos esta fórmula de nuevo en nuestro juego, vuelta en nuestro guión. En lugar de que el punto de velocidad y sea el tubo de salto, va a ser la matemática f, una raíz cuadrada de punto. Y dentro de la raíz cuadrada, vamos a utilizar la altura de salto. Vamos a estar multiplicándolo por menos dos f. Y vamos a estar
accediendo al punto de gravedad física y, k. muy bonito. Y como toque final, vamos a hacer que sea velocidad de cuadro y dependiente. Y esto por supuesto,
cambiará el valor de nuestra altura de salto. Ahora como paso final, o solo probemos esto y veamos cómo funciona. Y creo que tendremos que hacer la altura del salto al menos 15. Por lo que había jugado. Y ahora cuando nos movemos, se
puede ver que nuestro salto es mucho más natural. Déjame hacer este 100 solo para que en realidad saltamos. Por lo que nuestro salto es mucho natural, mucho más natural en este momento. Pero el problema sigue siendo que no estamos saltando cada vez que quieras. Y es porque aquí tenemos esta velocidad, así que la estamos configurando. Pero a medida que nos estamos actualizando y nuestro jugador se mueve, también
estamos cambiando la velocidad. Entonces hay un conflicto entre la velocidad que estamos sumando al salto y la velocidad que estamos sumando aquí mismo. Y a veces la velocidad del salto se está superponiendo. Entonces la forma en que
solucionamos esto, simplemente terminamos aquí, mi controlador se mueve de punto, y actualizamos la velocidad en nuestro controlador de caracteres. Y ahora cuando tocamos play, deberíamos ver que cuando presionamos el botón de reproducción, nos movemos. Y en cuanto presionamos el botón del espacio, realmente saltamos. Y como toque final, hagamos este 100. Guardemos eso. Y déjame solo mostrarte un pequeño experimento que ella puede hacer. Por lo que vamos a elegir este cubo, lo
haremos un jugador por defecto. Vamos a pegarle juego. Y ahora podemos saltar al avión, saltar a esta rampa. Pero cuando llegamos a este cubo, no podemos saltar. Tan muy agradable ahora que sabemos cómo funciona todo eso, podemos seguir adelante y finalmente, ir a nuestro árbol de fuentes y todos nuestros cambios no comprometidos y agregó la capacidad de saltar. Muy bonito. En el siguiente video vamos a estar creando un mecánico agachado. Esto cambia de nuevo a tierra sable que vamos a estar agregando el mecánico agachado y vamos a estar jugando con la escala de nuestro jugador. Entonces te veré en el siguiente video.
23. Círculo: Bienvenidos de nuevo, mis compañeros desarrolladores de juegos. En este video, vamos a estar implementando el mecánico agachado. Entonces abramos las escenas justo al lado del juego. Y cuando golpeamos el juego, se
puede ver a nuestros jugadores, por lo que está normal en este momento. Pero cuando presionamos la tecla Alt izquierda, se
puede ver que se convierte en un poco de munchkins. Entonces ahora podemos movernos y a medida que nos
movemos, podemos iniciar el agachado. Y como has notado, nuestra velocidad también se reduce cada vez que estamos agachados. Entonces, no perdamos más tiempo y empecemos. Oh, bien, entonces es hora de empezar a corromper. Ahora, ¿cómo vamos a hacer esto? Entonces si entramos en jugador, podemos ver que aquí dentro tenemos la escala y
realmente podemos manipular la escala de nuestro jugador. Y eso es exactamente lo que vamos a hacer. Por lo que ahora se puede ver que el jugador tiene una escala de uno en el eje X, eje y, y eje z. Y lo que vamos a hacer es que en realidad vamos a tomar la escala en el eje y y reducirla a la mitad. Entonces ahora tenemos a este pequeño chico fresco. Y de esta manera vamos a poder agacharnos y movernos bajo ciertos objetos como el nuestro, ¿dónde está nuestro limbo? Ahí mismo, si recuerdas, creamos al inicio del curso, tan genial. Vamos a estar manipulando la escala de nuestro jugador y dividiéndolo por la mitad. Entonces lo primero que vamos a hacer es entrar en nuestro guión de jugador. Vamos a crear una sección aquí para el agachado. Y debajo de ella vamos a crear nuestro primer vector privado tres. Y esta va a ser nuestra escala agachada. Y esta escala agachada va a ser igual a un nuevo vector tres. Y en el eje x no vamos a cambiar nada. En el eje Y. Nosotros lo vamos a hacer 0.05. y en el eje zed, se va a quedar en una. Eso lo ahorraremos. Lo siguiente que queremos hacer es que queremos conseguir la escala de jugador inicialmente antes de que empecemos a agacharse. Entonces crearemos otro vector privado tres, y llamaremos a esta escala de capa profunda. Y ahora lo que vamos a hacer es dentro del método de inicio, vamos a establecer nuestra escala inicial de jugador. Entonces al inicio, vamos a crear el o café u obtener la variable de la escala de jugadores. Y vamos a acceder a la transformación del jugador y conseguir la escala local a partir de ahí. Entonces ahora tenemos la escala real al principio. De acuerdo, bueno eso hecho. Lo siguiente que vamos a hacer es ir a una actualización, crear un método. Ese es el agachado, agachado. Y vamos a generar este método. Por lo tanto generar el jugador agachado. Y vamos a eliminar lo que sea que sea esto aquí. ¿ Y cómo vamos a conseguir el agachado? Bueno, vamos a estar usando la tecla Alt izquierda, y esta es la clave estándar para la entrepierna. Ahora el problema con el uso de la tecla vieja izquierda es que no tenemos ningún botón. Por esto. Vamos a usar algo llamado código clave. Y un código de teclas es una forma de, que nos permite mapear las teclas físicas en un teclado. Y tenemos dos tipos de llaves. Entonces tenemos la entrada Schottky abajo y tenemos el gatekeeper de punto de entrada arriba. Entonces, ¿cuál es la diferencia entre ellos? Es una diferencia que podría ser muy familiar. Entonces cuando bajamos la entrada Schottky, esto devuelve un verdadero durante el fotograma el usuario comienza a presionar hacia abajo la tecla. Entonces cuando empecemos a presionar hacia abajo el Alt, queremos estar agachados y la clave está identificada por un nombre que te mostraré en tan solo un poco. Y otra cosa que podemos hacer es nosotros, u otra opción que tenemos es el get key up. Y esto devuelve cierto durante el fotograma que el usuario libera la clave. Siempre que soltemos a lo viejo, queremos que nuestros jugadores dejen de agacharse. Entonces sigamos adelante y hagamos eso. Vamos a crear dos métodos que van a ser el inicio agachado y el stop agacharse. Y los vamos a poner dentro de estas dos condiciones si. Entonces el primero si condición va a ser el punto de entrada get key down. Y vamos a acceder al código clave. Y esto nos permitirá obtener cualquier clave que queramos. Entonces si empezamos a escribir a la izquierda, se
puede ver que nos da todas las opciones de la izquierda. Por lo que dejaron ventanas, control izquierdo, izquierda. No estoy seguro de qué es Apple. De todos modos, la izquierda es lo que necesitamos. Y aquí dentro vamos a empezar a agacharse. Y bajo ella vamos a crear otra condición si. Y aquí vamos a conseguir el punto de entrada, conseguir clave arriba usando el código clave. Se rió. Y vamos a parar, parar. Agachado. Está bien, genial. Entonces ahora que tenemos todos estos establecidos, el siguiente paso natural es realmente seguir adelante y crear el agachado almacenado. Entonces aquí arriba, sigamos adelante y generemos este método. Y sigamos adelante. Y aquí dentro vamos a estar implementando el mecánico agachado. Y ahora generemos estos agachados superiores. Por lo que generará este método también. Y déjame simplemente mover esta parte superior agachada bajo el agacharse Inicio. Simplemente se siente más natural. Está bien, genial. Entonces ahora tenemos estos dos métodos y ¿qué vamos a hacer dentro de ellos? Bueno, es muy sencillo. Nosotros sólo vamos a tomar la escala local. Por lo que la escala local de punto de transformación será igual a la escala agachada. Y cuando dejemos de
agacharnos, Vamos a recuperar nuestra transformación, tanto a escala local y vamos a volver a ponerla de nuevo a nuestra escala de jugadores original. Está bien, genial. Entonces sigamos adelante y probemos esto en Unidad. Ahora sólo habrá un poquito de problema aquí. Y sólo te mostraré qué es eso. Entonces cuando golpeamos el play, y se puede ver que cada vez que golpeamos la tecla ALT, nuestro jugador se vuelve mucho más pequeño. Y sólo quería mostrarles cómo funciona todo esto. Por lo que nuestro jugador tiene su arma, sus gafas frescas, y cuando hacemos clic en la tecla Alt, se convierte en un pequeño duende, y en realidad también puede disparar. Entonces el problema es lo que quería mostrarles es que cada vez que estamos presionando la tecla ALT y presionando la w es un atajo a las ventanas, y ahora tenemos que dejar de usarla. Bueno, podemos usar el CQI si quieres, o siempre puedes asegurarte de que pulses la tecla W antes de empezar a agacharte. De acuerdo, genial, así que ahora podemos movernos. Podemos golpear la tecla ALT y también abrimos activos cuando teníamos alt y a, pero no se preocupe por eso. Y tal vez deberíamos hacer este limbo un poco más pequeño. Ahora, la otra cosa que queremos cambiar, déjame hablar del juego aquí atrás. La otra cosa que queremos cambiar es cada vez que estamos agachados, queremos realmente hacer nuestra velocidad un poco más pequeña. Entonces en lugar de ser, de tener esto, mientras que es la velocidad como velocidad normal, queremos tenerla reducida y queremos tener una velocidad agachada siempre que estemos agachados. Y va a ser parte de tu reto. Tu reto es controlar la velocidad agachada. Entonces, en primer lugar, crear una variable de velocidad agachada, igual que hicimos con la velocidad normal. Entonces necesitarás crear un booleano que verifique si estamos agachados. Por lo que necesitarás crear un booleano y tendrás que
cambiarlo en función de si estamos agachados, de si ya no estamos agachados. Y luego necesitarás multiplicar el movimiento por velocidad
agachada y no la velocidad normal usando la condición else. Entonces crea una variable para la velocidad, crea un booleano para el agachado. Y cuando estamos agachados, así que necesitas crear una condición else-if dentro del movimiento del jugador. Y nosotros, cuando nos acerquemos a la velocidad o el movimiento se multiplicará por la velocidad agachada. Pausa el video ahora mismo y ve a hacer el reto. Oh, bien, bienvenido de nuevo. Entonces lo primero que vamos a hacer es aquí arriba o sabes qué, vamos a mantenerlo aquí abajo. Vamos a crear una flotación pública. Flota, por favor. Y vamos a llamar a esto la velocidad agachada. Y va a ser igual a seis f solo por ahora. Y lo siguiente que vamos a hacer es que vamos a crear un bool privado. Y vamos a llamar a esto el está agachado. Y por ahora lo vamos a poner en falso porque al inicio de la agricultura, por
supuesto, el agachado será falso. Así es agacharse es igual a falso. Y ahora siempre que todos agachados, Vamos a poner el, está agachado a verdad. Cuando dejamos de agacharnos, simplemente
se dijeron esto se agachó a falso. Y finalmente, y nuestro, ¿dónde está nuestro movimiento de jugadores? Entonces aquí, podemos ver que siempre estamos multiplicando el movimiento por la velocidad normal. Bueno, ya no porque vamos a crear una condición si aquí dentro y vamos a comprobar si está agachado. Agacharse, agacharse es cierto. Entonces en este caso, nuestro movimiento, déjame simplemente copiar todo esto, copiar esta línea. Nuestro movimiento va a ser igual al movimiento veces la velocidad de agachamiento. De lo contrario, vamos a utilizar los tiempos de movimiento la velocidad normal. Y vamos a salvar todo eso. Volvamos a Unidad. Vamos a golpear Play. Y ahora deberíamos ver que tenemos una multitud acelera en algún lugar de aquí. Por lo que la velocidad de muleta es de seis, por lo que ahora nos movemos con cierta velocidad. Y cuando empezamos a agacharnos, se
puede ver que nuestro movimiento es mucho más lento y eso es exactamente lo que queremos. Entonces ya sabes, cada vez que estás jugando videojuegos, cada vez que comienzas a agachar a tus jugadores la velocidad se reduce
en realidad y es muy normal y realista. Y ahora lo que necesitamos arreglar es en realidad cada vez que estamos agachados, puede ver que nuestra pistola también está siendo apretada y también se está dividiendo por dos. Y esto no es bueno porque más adelante vamos a estar agregando pistolas realmente geniales. Y estas armas en realidad van a ser machacadas también, que no es lo que queremos. Entonces en el siguiente video, vamos a separar el agachado o la bajada de nuestro jugador de las armas y todo eso. Entonces te veré en el siguiente video.
24. Cabrillo (parte 2): Bienvenidos de nuevo, mis compañeros desarrolladores de juegos. En este video, si recuerdas en el video anterior, cada vez que nos agachamos, nuestra pistola se hizo mucho más pequeña. Pero ahora cuando nos agachamos, el
argón se mantiene del mismo tamaño y podemos ver estas pequeñas líneas aquí. Arreglaremos eso tal vez más adelante. Pero por ahora nos hemos ido, se mantiene del mismo tamaño, sin embargo somos capaces de agacharnos y pasar por debajo de ciertos objetos y nuestra velocidad se reduce. Entonces, no perdamos más tiempo y empecemos. Oh, bien, entonces, ¿cuál es el propósito de este video? Durante tu viaje de desarrollo de juegos o cuando realmente te conviertas en desarrollador de juegos, notarás que a veces hay diferentes soluciones a tu problema. O cada vez que creas un mecánico de juego determinado, hay problemas que necesitas arreglar. Y aquí es exactamente donde. Bueno, este es el caso. En un principio, quería simplemente seguir adelante y crear solo este video. Pero ahora, mientras pasaba por esto y encontré este problema, en realidad
quería llevarte a través del proceso de arreglar varias mecánicas de juego así. Entonces en este momento, si recuerdas del video anterior, cada vez que nos agachamos, puedes ver que nuestra pistola se adelgaza y esto no es bueno. Entonces este es un problema creado por un mecánico que hemos agregado. Entonces, ¿qué vamos a hacer al respecto? Bueno, en lugar de reducir el tamaño del jugador, sólo
vamos a estar reduciendo el cuerpo del jugador. Y luego vamos a mover la cabeza hacia abajo. Y por último, vamos a reducir la altura del controlador de caracteres. Ahora, todos estos se descubren a través de la experimentación, pero no voy a estar sentado aquí a experimentar contigo. Te mostraré cómo vamos adelante y pensaremos en todo eso. Entonces, en primer lugar, tomamos el cuerpo, queremos reducir, por supuesto, la
escala de nuestro cuerpo a la mitad. Cuando hagamos eso, notaremos que nuestra altura de Character Controller sigue siendo del mismo tamaño y sigue interactuando con el limbo aquí mismo. Y antes de continuar, déjame simplemente mover este limbo un poco hacia arriba para que
en realidad podamos hacer esto más grande y también aumentar el tamaño de este cubo justo aquí. Está bien, genial. Por lo que ahora tenemos que el cuerpo se reduce a la mitad, y tenemos los controladores se esconden al reducirse a la mitad. Y entonces tenemos la cabeza. Entonces debido a que la cabeza no está unida al cuerpo, cuando reduzcamos la escala del cuerpo, la cabeza permanecerá en su lugar. Entonces lo que vamos a hacer es que en realidad también moveremos la cabeza, sin embargo. Genial. Y ahora empecemos con todo eso. En nuestro guión, vamos a seguir adelante y mientras que el agachado, lo que en lugar de la escala de jugadores, vamos a llamar a esto la escala
Body. Y oh, esta es una gran oportunidad para mostrarte algo realmente genial. Entonces digamos que queremos cambiar la escala del jugador a la escala del cuerpo. ¿ Cómo podemos hacer eso? Y cambiar también todas las diferentes referencias aquí dentro. Entonces tendremos que cambiar este y éste de aquí dentro y éste de aquí. Entonces digamos que tenemos 100 referencias. ¿ Cómo los cambiamos a todos? Bueno, muy sencillo. Haga doble clic en la escala de jugador, tenía control o R. Y ahora esto le permitirá modificar esto. Por lo que vamos a nombrar esta escala de cuerpo y todas las referencias se cambian también. Y aplicaremos todo eso. Lo siguiente que vamos a hacer es que vamos a crear una referencia al cuerpo real. Entonces aquí vamos a crear una transformación pública. Y lo llamaremos mi cuerpo. Y debajo de él también obtendrá, crear una altura de controlador inicial inclinada privada. Por lo que ahora tenemos la altura inicial del controlador. Tenemos una referencia al cuerpo, y tenemos el cuerpo escalado. Lo siguiente que vamos a hacer aquí, vamos a cambiar de escala corporal que es igual a la transformación. Va a ser mi cuerpo. Por lo que va a ser la escala inicial del cuerpo en nuestro jugador también
fijará aquí la altura inicial del controlador como el microcontrolador. Bueno, altura de punto. Genial. Ahora entremos al inicio agachado. Y aquí, la transformación que escala local se cambiará a mi cuerpo escala local. Y va a ser igual a la escala agachada, que es la mitad del tamaño. Y ahora cambiemos la posición de nuestra cámara. Por lo que se reducirá la posición de punto de la cabeza de la cámara. Entonces este es el menos igual que hemos aprendido por un nuevo vector. Y este vector se va a quedar 0 en la escala x. Va a estar reduciendo la altura de la cámara en 1.3. Y en el eje zed no hará nada. Entonces Y1, Y1, 0.3. Bueno, porque ya tengo esto antes, así que 1.3. Y aquí puedes cambiar la transformación escribiendo realmente en 1.3. Y esta será la altura de nuestra nueva cámara, que es perfecta porque nuestro cuerpo también se reducirá. Entonces de vuelta en nuestro guión, lo
último que deberíamos estar haciendo es que vamos a conseguir mi controlador. Vamos a acceder a la altura y vamos a estar dividiéndolo por dos. Entonces al igual que menos es igual a obras, dividir igual funciona igual. Toma el microcontrolador, altura, lo
divide por dos, y luego lo vuelve a poner en la altura de mi controlador. Y veamos si todo eso funciona. Y por supuesto, es aplastante será igual a verdadero. Uh, de vuelta en nuestro juego. Vamos a pegarle juego. Y ojalá todo esto funcione. Entonces ahora, oh, no hemos asignado el cuerpo. Entonces en nuestra consola nos está diciendo que la variable mi cuerpo no ha sido asignada y jugador, así que backend player y vamos a asignarle el cuerpo, guarde todo eso. Ahora no deberíamos tener ningún problema esperemos. Y antes de continuar, déjame simplemente atracar esto aquí mismo para que podamos ver al jugador. Entonces ahora en realidad podemos agacharnos y se puede ver que tenemos el, por lo que en primer lugar, el cuerpo sólo cambia. Ups. Está bien. Entonces detente. Detente, por favor. Está bien. ¿Sabes qué? Esto no me está gustando para nada. Vamos a cambiar el Alt izquierdo al CQI. Está bien, genial. Entonces guarda todo eso de nuevo en nuestro juego. Y ya no tendremos este problema. Y ahora podemos ver que cuando nos agachamos por el lado izquierdo, se
puede ver que el arma sigue siendo la misma. Ahora, tal vez necesitamos mover un poco la cabeza hacia arriba. Y ahora podemos movernos. Podemos, así que las góndolas desapareciendo bajo el piso, lo cual no es bueno. Y ahora podemos avanzar por esto aquí mismo nos estamos moviendo a una velocidad agachada. Y cuando eliminemos el CQI, se
puede ver que todavía tenemos muchos problemas y eso va a ser parte de tu reto, va a ser terminar este top agachado. Por lo que necesitarás volver a poner la escala corporal a su escala original. Tendrás que volver a poner la cámara había posicionado a su posición original. Y necesitarás volver a poner la altura del controlador a su altura original. Así que pausa el video ahora mismo y ve a hacer cada poco profundo. De acuerdo, bienvenido de nuevo. Entonces lo primero que vamos a hacer es volver a poner la escala corporal. Entonces cuerpo, no, esto debería ser mi cuerpo dot escala local es igual a escala corporal. Por lo que esta será nuestra multi-escala inicial. Y luego nos vamos a llevar el sombrero de la cámara. Entonces esta es la posición del cabezal de la cámara y simplemente vamos a cambiar esto a un plus. Y por último, vamos a tomar la altura de
punto de mi controlador y estamos ajustándolo de nuevo a su inicial, inicial. Inicial, por favor. Vamos a seguir adelante y copiarlo aquí. Por lo que la altura inicial del controlador por alguna razón, estudio
visual simplemente
no, no quiere cooperar. Y por supuesto vamos a detener el agachado. Solo agreguemos un poco de espacio entre estos para
que no estén apretados y atascados del todo. De vuelta en nuestro juego. Ahora bien, una cosa pequeña que me gustaría cambiar es en realidad la altura de nuestras cámaras. Entonces ahora cuando golpeamos el CQI, estamos agachados. Cuando liberamos, todo vuelve a la vida y es normal. Otra vez. Ahora la altura de la cámara es un poco molesto porque el arma está desapareciendo bajo el suelo, lo cual no es bueno. Entonces tal vez podamos realmente reducir esto de 1.3 a uno. Entonces guarda todo eso de nuevo en nuestro juego. A ver cómo se ve eso. Y ahora cuando llegamos al CQI, Sí, es mucho mejor siento que tal vez podamos reducirlo. Bueno, esto también puede depender de tu preferencia. Entonces, ¿cómo quieres que tu juego se vea realmente? ¿ Cuánto quieres agacharte cada vez que golpeas la tecla C? Y tal vez no quieras usar el CQI, tal vez quieras usar el peaky o el alce o la clave de salida. Eso no lo recomiendo, pero sí se puede. Entonces pero dicho eso, espero que hayan disfrutado el video. Antes de irnos, sigamos adelante y escenificemos todos nuestros expedientes. Entonces en maestros, tenemos los cambios no comprometidos, ¿en qué etapa? Todos ellos. Hacemos click en el commit y que, oops, un mecánico agachado, cometemos todo eso. En el siguiente video, vamos a aprender cómo podemos agregar animaciones y otra vez, así que los veré en el próximo Michael aquí desde el futuro. Entonces vi que en el, siempre que, cuando hice la intro, noté que cada vez que estamos agachados, podemos ver esta línea negra justo aquí, que es muy molesto. Entonces, ¿qué es esto? Bueno, en realidad es, si vamos a la escena, podemos ver que aquí es nuestra cabeza y se está interponiendo en el camino de nuestra cámara. A lo mejor para algunos de ustedes es mucho más grande de lo que esto puede ser para algunos de ustedes. Ha estado ahí desde hace un tiempo. Espero que no. El modo en que arreglamos esto es que en realidad podemos ir a la cámara. Y aquí dentro podemos ver que tenemos algo llamado la máscara de culling. Y esta máscara nos permite a veces sacar cosas de nuestra visión. Entonces si hacemos click en el MEXT y nos quitamos terreno, se puede ver que en modo juego ya no vemos nada que esté bajo la capa de suelo. Entonces vamos a hacer lo mismo agregando algún tipo de capa a los ojos. Si quieres tomar esto como un reto, te animo a pausar el video ahora mismo e ir a hacer esto. Ok, se acabó el tiempo. Así que ve a capas, edita capas, crea una capa invisible. Tan visible. Y ahora de vuelta en nuestros ojos pondrá la capa para el, Considerando que lo invisible y visible. Entonces ahora nuestros ojos deben ser invisibles. Vamos a la cámara principal, vamos al llamado y vamos a quitar lo invisible. Entonces ahora cuando jugamos, ojalá esto funcione primero desde la primera vez y sí, ya no
tenemos el Así que algunos de ustedes podrían haber estado teniendo muchos problemas con esto. Espero que no. Espero que te mantengas a salvo y te veré de nuevo en el siguiente video.
25. Animaciones 101: Bienvenidos de nuevo, mis compañeros desarrolladores de juegos. Sé que este video es un poco largo, pero es porque vamos a aprender muchas cosas nuevas y geniales. Entonces como puedes ver, tenemos un Animador, tenemos la animación inactiva. Tenemos transiciones entre ellos. Creamos nuestra propia animación. Hemos agregado un animador. Habíamos hecho tanto en este video. Y ahora se puede ver que cuando necesitaremos una referencia, se
puede ver que transitamos entre caminar y ocioso. Y cuando estamos parados
respiramos, respiramos, respiramos, respiramos, respiramos. Y cuando estamos caminando, realidad
empezamos a peinar más rápido. Entonces todo esto es posible por las animaciones. Entonces, no perdamos más tiempo. Este video ya es tan largo y comienza lógicos. O k animaciones. ¿ Por qué vamos a estar usando animaciones? Bueno, actualmente, cuando
jugamos, podemos ver que simplemente estamos parados aquí y no pasa nada. Y estamos, cuando estamos caminando. Además, no está pasando nada. Entonces lo que queremos hacer es que realmente queremos sumar un poco de movimiento, un poco de bopping y nuestra ganancia. Entonces así como ves un Call of Duty, cada vez que estamos caminando, el arma se mueve un poco hacia arriba y hacia abajo. Y cuando estamos sprinting, el Khan se mueve más arriba y abajo. Y cuando estamos quietos, Bueno, el arma,
sólo, el personaje, sólo respira arriba y abajo. Por lo que vamos a estar agregando animaciones a que nuestros jugadores tuvieron específicamente. Y lo vamos a estar moviendo así de arriba y abajo usando animaciones. Entonces lo estaremos moviendo así y simulando una respiración. De acuerdo, entonces, ¿qué son las animaciones? ¿ Qué necesitamos para ellos? Y todo eso enfría las cosas y nuestras diapositivas aquí, hablemos de animaciones de 101. En primer lugar, tenemos algo llamado el controlador animador. Y esto permite organizar y mantener un conjunto de clips de animación. Por lo que el controlador del animador es donde guardamos todas nuestras animaciones almacenadas y pasamos de la animación a la otra usando parámetros de los que hablaremos en tan solo un poco. Lo siguiente es el componente Animator. Y siempre que queramos estimar un determinado objeto, se requiere de un componente Animator. De esa forma podemos agregar el controlador de animador que creamos componente de animador 2D. Y entonces podemos seguir adelante y crear animaciones. Y las animaciones son varias acciones renderizadas una tras otra. Entonces, ¿qué quiero decir con acciones y por qué no decir sólo posición? Bueno, porque puedes usar la animación para modificar la rotación, puedes usar para modificar la posición, escala ,
color, diferentes booleanos si
quieres, puedes hacer muchas cosas con animación, y eso veremos más adelante. Pero por ahora simplemente vamos a estar cambiando la posición. Y por último, transitamos entre animaciones utilizando los parámetros que mencionamos anteriormente. Y veremos los diferentes tipos de parámetros y
también estaremos accediendo a ellos desde nuestro script. Está bien, genial. Ahora volvamos a Unity y empecemos a animar a nuestro jugador. Entonces lo primero que necesitaremos lo que ya tenemos estas dos pestañas aquí mismo, que es, que son la animación y el enemigo enseñado. Si no los tienes, podemos entrar a la ventana. Se puede entrar en la animación e inhalar. Se puede agregar la animación y el animador. Está bien, genial. Entonces, ¿cómo empezamos a animar? Bueno, hacemos click en el jugador y pinchamos aquí en el botón Crear. Y esto para empezar a animar jugador, crea un Animador y un Clip de Animación. Por lo que esto creará automáticamente un componente Animator en nuestro reproductor. Y empezará a crear el Eclipse. Entonces da click en Crear. Necesitará cierta carpeta. Por lo que vamos a crear una nueva carpeta aquí. Y este es el patrimonio y nuestro proyecto. Tan nueva carpeta. Y esto se va a llamar las animaciones. Y dentro de aquí vamos a crear una carpeta para el, son animaciones. Y la primera animación que vamos a tener es la ociosa. lo guardamos. Y ahora tenemos esta pequeña línea de tiempo rara aquí. Y antes de hablar del Tyler, Déjame mostrarte a nuestro animador. Puedes atraparlo aquí si quieres o en cualquier lugar que quieras. Vamos a ponerlo al lado de nuestra escena de juego. Para que puedas ver cómo la forma en que manipulamos o nos movemos en el animador, realidad
puedes mantener pulsado el botón del ratón o el botón de rueda del ratón y puedes moverte, puedes acercar y alejar. Entonces tenemos tres cosas o cuatro cosas justo aquí. Entonces, en primer lugar, tenemos la entrada, y esto es en cuanto iniciamos alguna ganancia, esta es la transición por defecto que irá a los oligos. Entonces en cuanto iniciemos el juego o jugador iniciará la animación, entonces tenemos cualquier estado. Y aquí dentro también podemos crear diferentes animaciones que transitarán de cualquier estado a cualquier estado entre uno y nosotros tenemos la salida, así sucesivamente la x Por ahora, simplemente enfoquémonos en lo inactivo. Y en realidad necesitamos crear esta animación y agregar el movimiento, esta animación. Entonces de la forma en que hacemos eso, volvamos a nuestra escena, vamos a nuestro jugador. Y para empezar a animar, puedes ver aquí podemos elegir qué animación queremos. Empieza a animar. Haremos clic en este botón rojo aquí mismo. Entonces ahora lo que hagamos en esta línea de tiempo, vamos a ser grabados por el animador. Entonces, ¿cuál es la animación ociosa? Bueno, lo que quiero hacer, actualmente
estamos nuestra cabeza está en 2.5, así que quiero mover un poco la cabeza hacia arriba y luego retroceder cada 1 segundo o cada dos segundos. Entonces haremos que esta línea de tiempo aquí sea más pequeña. Entonces esta es la marca 2.5. O 60 segundos. Y también tenemos los marcos aquí dentro. Y entonces esta es la marca de 1 segundo, esta es la 1.3 y esta es la marca de 2 segundos. Entonces en la marca de 2 segundos, vamos a cambiar esto a 0.5 a 8.72. Y se puede ver que hemos añadido un par de nodos aquí. Por lo que este nodo original es la posición inicial. Entonces si podemos mover la línea de tiempo y ver cómo se ve la animación. Entonces ahora en el 0 segundo, tenemos aquí la posición transformada, 2.5. y conforme nos movemos a la segunda herramienta, podemos ver que lentamente se mueve hacia arriba hasta llegar a ser 2.7, la marca de 2 segundos. Y luego en la marca de 4 segundos, queremos volver a 2.5. pero un truco muy inteligente siempre que
estés creando animaciones y quieres mantenerlas lo más suaves posible. Necesitas copiar los nodos iniciales, copiarlos, ir a la línea de tiempo donde quieras. Entonces es a la marca de 4 segundos y simplemente pegado. Por lo que ahora podemos golpear el juego y podemos ver cómo nuestro jugador respira dentro y fuera moviendo la cabeza hacia arriba y hacia abajo. Y cuando termines de animar, simplemente vuelve a hacer clic en el botón rojo. Y ahora tenemos la barry de animación. Agradable. Ahora, detengamos esto. Guarda esto, y pongamos al animador En realidad, quiero meterlo aquí. Por lo que esto podría no verse muy bien. Entonces voy a hacer lo mejor que pueda. Amplía tanto como sea posible. Entonces ahora cuando golpeamos el juego, deberíamos ver que nuestro personaje realmente está respirando. Entonces déjame acercarme a uno de estos, para que no sea estable. Para que veas que nos movemos arriba y bajamos a medida que respiramos, pero sigue habiendo un problema. Creo que te habrías dado cuenta de que la animación es un poco torpe. Entonces cuando jugamos, se puede ver que se mueve hacia arriba y de repente comienza a moverse hacia abajo y no es tan suave como queremos, para que podamos cambiar. Para que podamos elegir todas estas, hacer clic derecho e ir a las dos tangentes y hacerlas lineales. Por lo que ahora el movimiento es mucho más suave y mejor. Veamos eso en acción en nuestro juego. Entonces ahora pasemos a cierta referencia y se puede ver que respiramos, respiramos, respiramos y respiramos. Y no te preocupes por recortar arma a través de los diferentes objetos. Oh, bien, genial. Entonces lo que queremos hacer ahora es realmente queremos
crear otra animación para la caminata. Por lo que actualmente simplemente estamos respirando adentro y afuera. Cuando empezamos a trabajar, queremos hacer la transición a otra animación, que es la caminata. Por lo que la forma en que creamos otra animación, haga clic en jugador. Deberíamos ver la animación aquí. Y si no simplemente va a la consola o a cualquier otra pestaña, y luego regresa y animación, asegúrate de tener Player encendido. Y luego pincharemos aquí y crearemos un nuevo clip. Y vamos a ir a animación de jugador de animación. Y esta será la caminata. Por lo que caminando, salva. Y ahora tenemos una página en blanco para empezar a animar. Ahora bien, ¿cómo vamos a animar el trabajo? Por supuesto, esto depende de ti, pero si sigues siendo principiante, no
estás seguro de cómo animamos las cosas. Te llevaré por el proceso. Entonces lo que quiero hacer es cada diez fotogramas, quiero mover 0.5. Yo quiero mover la cabeza 0.5. así que en la marca de tiempo, oops, déjame dar click en el registro. En el marco diez vamos a ir al 2.5. o 55. Y luego en el aquí vamos a volver a 2.5. Y entonces aquí dentro vamos a ir a 2.45. Y finalmente, en el marco 0.4. o el 40, copiaremos la posición inicial y la pegamos aquí. Entonces ahora si golpeamos el juego, Este es nuestro caminar, es un Yankee. Entonces vamos a guardar eso, vamos a elegir todo esto, clic con el botón derecho tanto tangente como hacerlo lineal. Entonces guarde eso. Vamos a tocar juego. De acuerdo, entonces ahora tenemos este tipo de animación respiratoria y caminata. Es más obvio que estamos caminando, así que juega. Y podría no ser tan notable. Entonces respiramos. Y cuando o, si bien en realidad no hemos creado la transición. Entonces animador, ahora tenemos esta animación caminando y en realidad podemos crear transición desde la AIDL haciendo clic derecho sobre ella y hacer una transición al caminar. Y la transición a pie en realidad requiere si hacemos clic en la flecha y aquí, esta transición a pie requiere cierta condición para ser cumplida. Y la forma en que creamos las condiciones, como en la sección Parámetros. Entonces, si eres dueño de capas, asegúrate de estar en el parámetro, puedes seguir adelante y agregar un parámetro. Por lo que el parámetro puede ser ya sea un flotador o un entero. De esa manera podemos elegir siempre que este flotador o entero supere un cierto límite, vamos a transitar. O puede ser un booleano, o puede ser un gatillo. Verá más adelante qué son los booleanos y desencadenantes. Pero por ahora, queremos hacer la transición al estado Walking o a
la animación caminante siempre que la velocidad del jugador pase por encima de un cierto valor. Entonces crearemos un flotador y llamaremos a esta velocidad de capa profunda. Y ahora en nuestras condiciones aquí dentro, vamos a dar click en el plus. Y la velocidad del jugador puede ser mayor o menor que. Entonces cuando la velocidad del jugador es mayor que un cierto número. Y aquí vamos a la transición a la, a la animación caminante. Y desde la animación de caminar hará la transición de vuelta a inactivo. ¿ Cuándo alguna vez? Ya lo haremos yo, si te has dado cuenta, he hecho clic en la segunda flecha. Entonces esta es la flecha que va hacia la caminata. Este es el error al ir de caminar a medio. Y vamos a añadir una condición más aquí que siempre que la velocidad del jugador sea menor a 0, ahora, ¿cómo vamos realmente a la transición? En primer lugar, ¿cuáles son los valores que necesitaremos para transitar? Bueno, para conseguir esos entrarán en nuestro código. Y vamos a estar imprimiendo nuestro movimiento. Entonces mientras que nuestro movimiento, y aquí antes de empezar a
movernos, podemos imprimir algo en la consola haciendo clic en el registro de depuración. Y simplemente imprimiremos el movimiento para que sepamos qué, cuál es nuestra velocidad siempre que estemos caminando y sabremos cuándo debemos estar transitando. Entonces vamos a pegarle juego. Y podemos ver en nuestra consola aquí puedes ver que nuestra animación es actualmente el Idle. Y cuando estamos caminando, déjame solo, oh, sólo hay un pequeño problema. Si vamos a la consola, podemos ver que el movimiento es en realidad un vector tres. Entonces para obtener el valor absoluto o el valor total del vector, podemos usar la magnitud y esto nos dará la suma de todos los vectores en la dirección específica que nos estamos moviendo. Entonces ahora cuando golpeamos el juego, deberíamos ver un valor y es 0 porque estamos
parados cuando empezamos a movernos, es alrededor de 0.3. Entonces si nuestro movimiento se termina, digamos 0.2. Digamos que si es más de 0.2, porque nunca va por debajo de 0.2. De acuerdo, entonces 0.2. Entonces si nuestra velocidad de jugador es mayor, volvamos al animador. Si nuestra velocidad de jugador es mayor a 0.2, entonces haremos la transición al caminar. Y si nuestra, si estamos entrando, nuestra velocidad de jugador es menor a 0.2, entonces vamos a transitar de nuevo al inactivo. Ahora, ¿cómo vamos realmente a establecer este parámetro de velocidad de jugador donde podrías estar confundido ahora mismo, pero esto es parte de tu reto. Tu reto va a establecer el parámetro V. Ahora es tu primera vez que usas animadores y todo eso. Te recomiendo que sigas adelante abra documentación de Unity y
mires las animaciones de animador y veas cómo puedes establecer parámetros. Pero te diré, en primer lugar, necesitarás crear una referencia a nuestro animador creando una variable de tipo animador. Entonces al igual que siempre hacemos, crear una referencia al animador, hacerla pública, por supuesto, y ponerla en el inspector y en nuestro jugador. Siguiente cosa que debes hacer para establecer la lentitud que hemos creado como el movimiento de nuestro jugador y una pista llegó te dio. Aquí está el flujo establecido. Entonces lo que te recomiendo que hagas para completar este reto, tenemos que ir a la documentación y necesitarás buscar animador, set float y buscar la documentación de unidad ahí encontrarás cómo realmente
puedes configurar el flotador y será una referencia de cadena. Por lo tanto, asegúrese de que los dos se copiaron correctamente. Y te veré en sólo un rato. Hey, bienvenido de nuevo. Entonces una pequeña observación que quiero dar antes de seguir adelante es que tal vez esto sea diferente a ti. Por lo que he citado. Es por ello que hice el ve depurado en punto para que podamos ver cuál es la magnitud real e. Por lo que dependerá de tu juego. De acuerdo, con eso configurado aquí, vamos a crear una referencia a nuestro animador, y lo vamos a crear aquí. Entonces va a ser el público. Y él puede, él puede hablar. Y vamos a llamar a esto mi animador. Y él puede Tor. Y aquí abajo, siempre que nos
movamos, vamos a seguir adelante y acceder a mi animador, dot set, whoops, dot set float. Entonces tenemos el set Boolean, tenemos esto un gatillo, y tenemos el set float. Y aquí dentro necesitamos una referencia. Entonces referencia de cuerdas, vayamos a la unidad, al animador. Copia la velocidad del jugador para que sepamos que es 100% correcta. Y el valor que vamos a dar a este parámetro de flotación es la magnitud de punto de movimiento real. Y sigamos adelante y guardemos todo eso ahora tal vez algunos de ustedes hayan llegado al punto justo aquí donde se puede establecer el flotador con el cierto parámetro. Y tal vez te quedaste atrapado aquí, aunque ya hicimos esto. Pero si conseguiste al
menos dos tribu busca esto en float y creaste una referencia al animador. Te felicito por intentarlo. Todos empezamos en un punto determinado. Nosotros ninguno de nosotros nacemos profesionales. Will eso dicho, guardamos todo eso de nuevo en nuestra ganancia, menos en juego. Y estamos ahora y o k Así que nos olvidamos de poner al animador en el reproductor, para que sus egos guarden todo eso. Ahora estamos listos para jugar, así que hit play. Y ahora nos quedamos quietos. Nosotros o estamos así que nos presentamos sin y cuando empezamos a caminar arriba, oh, ahí va. Entonces iniciamos la caminata y no lo es,
no echamos a perder a menos que estemos realmente cerca de ciertos cubos para que podamos conseguir una referencia. Entonces cuando nos
detenemos, podemos ver que respiramos, respiramos. Y cuando empezamos a caminar de alguna manera toma un poco de tiempo. Pero sí funciona. Lo puedes ver en el animador y lo puedes ver en el juego. Ahora bien, ¿por qué la transición no es lo suficientemente suave? Bueno, si hacemos click en una de las flechas, podemos ver que tenemos la opción de quitar el tiempo de salida y tenemos cierta duración de transición. Entonces esto hará lo que significa. Tiene el tiempo de salida después de que un cierto tiempo sale. Entonces apagaremos esto y la duración de transición, te
recomiendo ponerlo a 1.10. Esto hará que la transición sea mucho más rápida y de caminar a inactividad, también quitará el tiempo de salida y hará la transición 0.01. ahorraremos eso. Y ahora deberíamos ver eso de inmediato. En cuanto empezamos a caminar, vamos a la animación de caminata. Y ahí tienes. Cuando empezamos a caminar, cuando nos detenemos, nos Idle. No, no es muy obvio. Necesitamos un punto de referencia. Entonces respiramos, respiramos. Empiezas a caminar y nosotros empezamos a bobbing. De acuerdo, este no es el mejor lugar para hacer eso. Aquí dentro. Se puede ver que estamos caminando hacia arriba gay, genial. Eso fue ninguno. El siguiente paso es seguir adelante y crear una animación de sprint, pero ni siquiera estamos esprint. Entonces eso es lo que vamos a hacer en el siguiente video. Te veré entonces. Y no te olvides de quedarte Joel y escenificar todo, comprometer todo agregado. En primer lugar, animaciones con signo de exclamación porque esta es una parte muy importante de nuestro viaje. Bueno, dicho eso, próximo video, empezaremos a correr y nos vemos entonces.
26. Sprinting: Bienvenidos de nuevo, mis compañeros desarrolladores de juegos. En este video vamos a estar agregando este mecánico de impresión. Por lo que actualmente se puede ver que podemos caminar, podemos pararnos inactivo, o podemos empezar a correr por ahí. Para que veas que nuestra velocidad es mucho mayor. Entonces ahora mientras nos movemos por el mundo, Pero cuando golpeamos el CQI y de repente llegamos a unos bots decepcionantes. Entonces, no perdamos más tiempo y empecemos. Oh, bien, así que empecemos con el sprint. Ahora, creo que este video será muy fácil para algunos de ustedes porque ya casi hemos cubierto todo esto. Entonces lo que vamos a hacer es que vamos a subir aquí y vamos a crear otra variable, y vamos a llamar a esto la velocidad de carrera. Y va a ser alrededor de 25 F porque será más rápido que nuestra velocidad normal. Y simplemente vamos a seguir adelante y tomar una entrada dentro de movimiento. Y en base a esa entrada cambiará el movimiento o
cambiará lo que se multiplique el movimiento. Entonces aquí, si estamos agachando nuestro movimiento es algo así. Entonces vamos a añadir un, otro si condición y aquí, así que esto va a ser si entramos punto get ki. Entonces esto sólo volverá cierto mientras sostenemos, y esto es lo que queremos. Entonces mientras estamos sosteniendo un cierto código clave que es el turno de la izquierda, entonces vamos a conseguir nuestro movimiento y vamos a estar multiplicándolo por la velocidad V R1 y cambiaremos la condición en cerca de F2. contrario, si es así, ahora si entramos el, bueno, si presionamos el turno de mejilla izquierda o lo haremos, estamos manteniendo pulsado el turno de la izquierda. Nuestro movimiento se multiplicará por la velocidad de p Ron. De lo contrario, si estamos agachados que nuestro movimiento se va a multiplicar por la velocidad de la multitud. Y de lo contrario el movimiento se multiplicará por la velocidad normal. Entonces si sólo estamos de pie. Entonces sigamos adelante y probemos esto. Cuando golpeemos play o antes de hacer eso, vayamos con el jugador. Y vamos a añadir un poco de velocidad de Ron para que sea más obvio. Entonces pongámoslo hasta 50. Guardemos eso y probemos nuestras nuevas velocidades de carrera. Entonces ahora mientras nos estamos moviendo, se
puede ver la velocidad o nuestra velocidad de movimiento. Entonces ahora cuando empezamos a sostener el Shift hacia abajo, se
puede ver que es mucho más rápido. Por lo que ahora estamos corriendo en un peloteo. ¿ Qué es eso? Alrededor de 0.8 a 0.9. Muy bonito. Por lo que este juego es rápido y puedes ajustar la velocidad de carrera al deseo de tu corazón y no te caigas desde el borde. Vale, genial, así que ahora que tenemos esta carrera Spitzer arriba y una cosa más me olvidé de mostrarte. El problema aquí es que si estamos agachados y moviéndonos, tenemos la velocidad, pero si empezamos a mantener el turno hacia abajo, volvemos a entrar en la ultra super velocidad. Entonces la forma en que arreglamos esto es que en realidad volvemos a nuestro código. Y aquí, si tenemos la entrada o si estamos sosteniendo turno abajo y no estamos agachados, ¿entonces es falso agacharse? Entonces ambas condiciones, y siempre que añadimos un signo de exclamación detrás de cualquier booleano, Esto significa que necesitamos el reverso. Entonces si mantenemos pulsado el turno y no estamos agachados, entonces multiplicaremos la velocidad con la velocidad de Ron. Pero si estamos agachados, entonces esta condición, toda esta condición es falsa. Entonces pasamos a la otra f, menos que ese sea el sol, sólo para asegurarnos de que no estoy mintiendo. Y le pegamos al juego. Y ahora cuando estamos agachados cuando avanzamos a una velocidad lenta e incluso cuando presionamos el turno de la izquierda, no pasa nada. Mientras estamos corriendo. Podemos correr, correr, correr, correr. Si golpeamos el CQI, repente volvemos a nuestra velocidad agachada. Está bien, muy bonito. Ahora lo siguiente que queremos hacer es realmente queremos crear una animación para nuestro running. Y esto es parte de tu reto. Tu reto va a ser crear una animación corrida. Entonces lo primero que debes hacer es crear una animación en ejecución. Y obviamente, entonces necesitarás crear una transición entre el caminar y correr y asegurarte de que creas también una transición de correr a caminar. Por último, es necesario determinar a qué velocidad de movimiento debe declarar estar en movimiento para poder transitar a correr. Así que adelante y crea tu animación. Prueba lo mejor posible, aunque no estés seguro de lo que debería ser, solo te daré una pequeña guía. Entonces lo que voy a hacer es mover la cabeza cada cinco cuadros. 0.1 unidades de unidad absorbidas en el cuadro 0 tendrán un 2.5. en el marco, cinco tendrán un 2.6, luego bajaremos a 2.4 y luego volveremos a 2.5. Así que pausa el video ahora mismo y ve a crear tu animación de running. Oh, bien, bienvenido de nuevo. ¿ Cómo te metiste en eso? De vuelta en nuestro jugador, vuelta en un, en nuestra animación. Entonces la forma en que creamos una nueva animación es dar click aquí. Vamos a crear un nuevo clip. Y vamos a ir a animación animación Claire animación. Y vamos a llamar a esto la carrera. Y vamos a ahorrar eso. Ahora sigamos adelante y creemos esta animación. Daremos click en el botón rojo. Se irá a la cabeza. Quién moverá estas cinco ofrendas. Y vamos a pasar esto de 2.5 a 2.6. Y luego en el siguiente cuadro lo moverá de nuevo hacia abajo a 0.5. Y en los próximos marcos de diapositivas, esto irá a 2.4. Entonces veamos esto. Se moverá automáticamente a 2.5. mantener los ojos puestos aquí en la posición. Entonces a partir de los cinco, es 2.6. Después bajamos a 2.5, se
mueve hacia abajo automáticamente. Entonces, finalmente, estamos en 2.4 y eventualmente volveremos a nuestro estado inicial. Entonces, detengamos la grabación. Vamos a tocar juego. Y esto es, esta será nuestra animación corriendo ahora. Es decepcionante, pero si hacemos click en la cabeza, podemos ver cómo se mueve. Está bien, genial. Entonces con eso hecho, pausemos. Esto. Lo siguiente es crear las transiciones. Entonces hagamos esto un poco más grande. Entonces nos moveremos inactivo, pondremos la caminata, y luego pondremos la carrera aquí, crearemos la transición de USTED caminando a la carrera y luego de la corrida de vuelta a la caminata se quitará la salida el tiempo pondrá la duración de transición a 0.1, hará lo mismo en nuestro camino de regreso. Y vamos a poner la condición aquí para ser jugador habla debe ser mayor que, bueno, vamos a revisar. Vayamos a la consola. Y ahora mientras nos mudamos, y vamos a buscar un poco de cuenca aquí. Oops, así que esto se está jugando por todas partes. Se puede ver que la animación en realidad no se detiene. Entonces si vamos al animador, habíamos hecho clic en jugador, podemos ver que ya estamos corriendo y no nos estamos deteniendo. Eso se debe a que la transición no va a retroceder. Entonces, centrémonos en primer lugar en el sprinting. Entonces cuando estamos corriendo, estamos por encima del 0.5 y nunca vamos menos de 0.5. Genial. Así que detente eso de nuevo en nuestra transición de animación hacia arriba. De acuerdo, así que era 0.240 caminando y vamos a 0, hagámoslo seis. Y para la transición de vuelta de la carrera, haremos que esto sea menos de 0.6 para mantenerse en el lado seguro. Ahora de vuelta en nuestra ganancia, necesitamos asegurarnos de que el con el que estamos trabajando nunca vaya por encima del umbral y nunca dejemos de correr. De acuerdo, entonces hay un poco mal, algo malo ahí dentro. Entonces, incluso aumentemos un poco el umbral. Entonces hagámoslo 0.68. Y aquí dentro hagámoslo también 0.68. Ahora guardamos todo eso. Ahora volvemos a nuestro juego y deberíamos tener inactivo. Entonces estamos respirando ahora cuando empezamos a caminar, dale así que estamos trabajando, estamos trabajando, estamos trabajando y no corremos. Y cuando llegamos al turno, empezamos a correr. Y se puede ver cómo está funcionando la animación en ejecución. Ahora es un poco cecina. Nos olvidamos de hacerlo lineal. Entonces de vuelta en nuestro jugador, elige, oops, nope, no el ND ocioso corriendo. Elige todo eso. Haga clic derecho, vaya tanto al motor y hágalo lineal. Por lo que ahora tenemos animación ociosa. Entonces mientras estamos ahí parados, respiramos adentro y afuera. Déjame hacer esto más grande. Entonces respiramos adentro y afuera a OK. Entonces estamos de pie, ensanchando, podemos disparar, entonces empezaremos a movernos. Y conforme nos estamos moviendo, movemos nuestra cámara. Pero así no se nota, pero es cuando tenemos un punto de referencia. ¿ Cómo recortamos eso? Entonces nos movemos, tenemos la animación, y cuando empezamos a correr, puede ver que la animación es más dramática e incluso se nota mientras nos movemos, puede ver la cabeza balanceándose un poco. Y si sientes que necesitas agregar más a eso, entonces adelante. Puedes aumentar el bobbing aquí para que puedas hacer esto. Entonces podemos grabar esto y se puede aumentar estos dos, tal vez 2.8 y este 12, o este es el inactivo a la carrera. Se puede aumentar esto a 2.7 tal vez, y luego llevarlo de vuelta a 2.3. Entonces intentemos eso. Pongamos esto a 2.7. Hay muchas maneras en que gallina que este disco nope, no lo hizo. Por lo que 2.72.3 y esto será mucho más dramático. Ya verás. Y ahora cuando golpeamos el juego, por lo que las animaciones están puramente basadas en tu preferencia. Entonces ahora puedes ver que el bobbing es mucho más obvio y ya sabes, en realidad, creo que lo mantendremos en eso. Por lo que aumentar la animación hace que nuestro juego sea mucho más realista. ¿ Se hizo eso? Por fin podemos ir y comprometer o cambia etapa todo commit, agregado. Sprinting con animaciones, comprometer todo eso. Y en el siguiente video vamos a estar deslizando a nuestro reproductor. Entonces mientras estamos corriendo, si golpeamos el CQI y
empezamos a agacharnos, de hecho comenzaremos a deslizarnos hacia abajo con cierta velocidad. Hasta entonces, te veré en el siguiente video.
27. Sliding: Bienvenido de nuevo, mis desarrolladores de juegos favoritos. En este video, vamos a ser algunos colisionando, alejándose de nuestros problemas. Es decir, así que esa fue probablemente la peor intro de la historia. Por lo que de vuelta en nuestro juego. Ahora cuando corremos, podemos golpear el CQI y empezar a iluminar. Entonces no podemos movernos hasta que nuestras velocidades de deslizamiento se detengan. Podemos ajustar la velocidad de deslizamiento. Hagámoslo 60 y enloquecemos con él. Entonces ahora cuando corremos, teníamos el CQI y es súper rápido. Entonces como pueden ver, este es nuestro deslizamiento. También podemos detenerlo después de un segundo paso, determinamos por nosotros mismos. Entonces con eso dicho, no perdamos más tiempo. Este video es lo suficientemente largo y empecemos. Oh, bien, entonces ¿cómo vamos a estar deslizando? Bueno, queremos estar deslizando cuando alguna vez estamos corriendo y presionamos la tecla C. Y lo que queremos hacer es realmente queremos empezar a deslizar nuestro jugador en la dirección que ya se está moviendo. Y no queremos poder controlar a nuestro jugador
ya que se está deslizando tan bien que estableció, en
primer lugar, comprobar o tener la capacidad de comprobar cada vez que nos estamos deslizando o quiero decir, cada vez que estamos corriendo. Entonces lo primero que vamos a hacer es crear aquí una sección para el deslizamiento. Y vamos a crear un booleano público se está ejecutando y lo pondremos en falso al principio. Y ahora siempre que estamos golpeando la tecla Shift hacia abajo y el movimiento del jugador, y aquí vamos a establecer el está corriendo a verdad. Genial, eso es si eso. Y cuando no estamos corriendo en lo más vamos a poner el está corriendo a falso. De acuerdo, genial, así que ahora tenemos el está funcionando Verdadero y luego es falso cuando no estamos corriendo. Genial. Lo siguiente que vamos a hacer es que vamos a comprobar si estamos corriendo, entonces queremos seguir adelante y conseguir el avión en el que estamos trabajando. ¿ Y qué quiero decir con eso? Entonces si entramos aquí, déjame solo mostrarte. Entonces vector 3.Qué proyecto en plano y qué
hace esto es que devuelve la ubicación del vector en el plano. Entonces si quieres seguir adelante y leer más al respecto,
es un poco confuso honestamente, pero déjame solo darte lo esencial de todo esto. Entonces tomamos un vector, que va a ser el vector delantero de nuestra cabeza, y vamos a utilizar el vector normal del plano en el que queremos deslizarnos. Entonces va a ser el punto vector hacia arriba. Y esto nos permitirá realmente conseguir el avión en el que queremos estar deslizando o el vector, la dirección del vector en el que queremos estar deslizando. De esta forma, podremos sumar velocidad en esa dirección y tendremos la velocidad de las diapositivas, pero también habrá que normalizar. Entonces tendremos que normalizar este vector tres para mantenerlo en una magnitud de uno. Entonces, ¿qué quiero decir con esto? Vayamos a nuestra mano. Pintar, nuestro buen viejo amigo, amigos de la infancia. Entonces, ¿qué hacemos cuando normalizamos? Entonces digamos que tenemos este vector aquí arriba y nos estamos moviendo en esta dirección. Por lo que este será el vector APP y este será el vector de avance. Y cuando creemos esta proyección en el plano realmente
creará un vector que es como éste. Por lo que será v vector hacia adelante. Entonces lo que hacemos cuando
normalizamos, en realidad creamos una especie de factor que sólo será uno a la vez. Por lo que esto nos permitirá tener una velocidad consistente a medida que avanzamos. Y no será sólo creciente en base a nuestro hacia adelante y hacia arriba. Entonces si eso no es muy entendido, puedes seguir adelante y leer al respecto. No es tan difícil. No es algo muy lejos por ahí. Simplemente nos permite tener nuestro vector siempre apuntando en la misma dirección. Pero de todos modos, vamos a estar implementando el proyecto en el avión. Y con desormalizado, vamos, vamos a mantenerlo consistente. Entonces de vuelta en nuestro guión de jugador, Vamos a la, ¿dónde deberíamos estar revisando? Bueno, lo vamos a revisar cada vez que empecemos a agacharnos. Entonces aquí, si estamos corriendo, entonces vamos a crear una velocidad, o vamos a establecer la velocidad para que sea el vector tres. Y vamos a proyectar en avión. Por lo que necesitaremos la transformación de punto de mi cámara hacia adelante. Y vamos a usar los vectores 3.El arriba. Y vamos a normalizarlo. Y luego lo vamos a multiplicar por algún tipo de velocidad de deslizamiento que creará una variable para. Y por supuesto estaremos sumando el punto de tiempo en el tiempo delta. Entonces, vamos a guardar eso. Y vamos a seguir adelante y crear esta velocidad de diapositiva aparece. Entonces vamos a hacer de esto una velocidad de deslizamiento de flotación pública, y sólo vamos a ponerlo. No sé, ¿quizá dos cuándo? A lo mejor 30. Adelante y pongámoslo a los 13. A lo mejor eso es demasiado rápido o demasiado lento. mejor quieres cambiarlo, tal vez quieras hacerlo muy rápido, por lo que dependerá de tu preferencia. Ahora vamos a probar esto fuera y unidad. Entonces ahora tenemos el está corriendo público y tenemos la velocidad de deslizamiento. Entonces cuando golpeamos el juego, en realidad
podemos seguir adelante y comprobar si estamos corriendo. Entonces tenemos al pequeño booleano ahí con un, ¿cómo se llama? Comprobando que estamos puestos en verdadero y cuando dejamos de correr, vuelve a ser falso. Entonces ahora cuando estamos corriendo y golpeamos al CQI, se
puede ver que nos deslizamos y oh, ¿a dónde fuimos? Probemos eso una vez más. Vamos a seguir adelante y hacer de este deslizamiento un plus. Entonces hagámoslo tal vez diez. Entonces diez solo para que no nos caigamos del filo inmediatamente. Entonces iremos aquí al borde y nos dejan de correr y golpeamos el CQI. Y como pueden ver, seguimos adelante. Entonces aunque nos
detengamos, seguimos adelante. Probemos eso una vez más. Se puede probar esto en casa, aunque no se mete sentado aquí. Y empezamos a deslizarnos y nos detenemos. Y sin embargo seguimos teniendo esta velocidad que nos sigue jalando hacia adelante. Entonces ahora necesitamos detener esa velocidad. Y nuestro, quiero decir, detener el deslizamiento. Entonces, ¿cómo vamos a hacer esto? Bueno, vamos a crear un temporizador. Entonces la forma en que funcionan los temporizadores es, bueno crear primero que nada, un temporizador deslizante de inicio. Por lo que este será un booleano. Siempre que sea cierto, iniciaremos el temporizador deslizante. Y luego vamos a crear otras dos variables. Uno, ambos son, ambos serán carrozas. Por lo que uno hará un seguimiento de nuestro temporizador deslizante actual, y el otro será el tiempo máximo de deslizamiento, el tiempo. Y vamos a ponerlo en dos F. Ahora vamos a hacer que ambos sean privados, pero por ahora vamos a mantenerlos públicos para que siempre podamos verlos en el inspector y saber qué está pasando en realidad. Entonces cada vez que iniciemos el deslizamiento, vamos a ajustar el tiempo del deslizador de inicio a verdadero. Y luego vamos a iniciar algún tipo de contador de diapositivas que comprobará si nuestro temporizador de diapositivas de inicio es cierto, entonces vamos a estar agregando a la diapositiva actual, tiempo de
deslizador a la actual. Hagamos de este el temporizador de diapositivas actual. Y va a ser para seguir sumando tiempo.Deltatime hasta que llegue a un cierto deslizamiento Max. Y cuando lleguemos a la corredera de smack, vamos a restablecer el tiempo del deslizador actual y vamos a dejar de deslizarnos. Entonces veamos cómo va a funcionar eso. En primer lugar, vamos a crear un método aquí abajo. Y vamos a llamar a este método el contador de diapositivas de vacío privado. Y esto seguirá revisando nuestro slider. Entonces si queremos iniciar el temporizador deslizante, entonces vamos a tomar nuestro temporizador de diapositivas actual y vamos a sumar con time dot delta times. Por lo que esto seguirá aumentando a medida que siga adelante. ¿ Y cuándo realmente vamos a dejar de deslizarnos mientras que aquí arriba, cuando empezamos a agacharnos? Considerando que así aquí, cuando dejamos de presionar el CQI o así este es el símbolo o. O si nuestro temporizador ligero actual es más grande que, por lo que estamos rebasando el tiempo máximo ligero, entonces también vamos a dejar de deslizarnos. Y por último, ¿cuándo arrancamos el temporizador deslizante? Cuando es cuando realmente empezamos a deslizarnos. Entonces aquí, agreguemos estos corchetes porque estamos agregando otra condición. Entonces aquí, vamos a ajustar el temporizador de deslizador de arranque a True bearing ice. Y antes de ir a probarlo, por supuesto
necesitamos detener el deslizamiento aquí. Entonces, ¿qué deberíamos estar haciendo cuando es parte de tu reto? Entonces, ¿cuántas veces has terminado el alto agachado? Por lo que necesitarás antes que nada, restablecer el control deslizante de tiempo actual a 0. Tendrás que restablecer las velocidades, por lo que tendrás que ponerlo en nuevo vector tres, es
decir, 0002 para evitar que nos deslicemos o seguir deslizándonos hacia adelante. Y luego necesitas configurar el control deslizante de inicio en falso o necesitarás apagar el temporizador de control deslizante. Entonces tres cosas. Restablecer el control deslizante de tiempo actual, restablecer la velocidad de entrada del tiempo del control deslizante. Pausa el video ahora mismo y ve a hacer el reto. De acuerdo, bienvenido de nuevo. Entonces, ¿qué vamos a hacer aquí? En primer lugar, vamos a conseguir nuestro temporizador deslizante actual. Vamos a ponerlo en 0. F entonces tomará nuestra velocidad y la vamos a poner a un nuevo vector tres, eso va a ser 0, f, 0,
f y 0 fue desactivada o reto más duro. Bueno, bien. Eso significa que lo intentaste y fallaste. Y ahora esto es lo que estamos haciendo. Entonces, en primer lugar, donde nuestro deslizador actual ha restablecido su tiempo de vuelta a 0, nuestra velocidad está en 000, y nuestro temporizador de deslizador de inicio vuelve a falso. Ahora una última cosa es que en realidad necesitamos estar llamando a este ligero contador. Entonces, ¿dónde vamos a llamar a esto? Bueno, sólo lo configuraremos aquí en la actualización. Vamos a empezar, oops, que, ¿cómo se llamaba de nuevo? Entonces fue este contador de luz. Entonces n aquí, se llamará contador de diapositivas en la actualización. Adelante y probemos esto y revisaremos nuestro código una vez más. Entonces tuvimos jugada. Nos fijamos para que sean dos segundos. Podemos ver que estamos corriendo cuando empezamos a deslizarnos
tendremos este pequeño slider de arranque cheque booleano, ¿verdad? Nos detendremos. De acuerdo, entonces reiniciemos esto de nuevo a 0. Nuestra vida útil máxima será de 2n, nuestra velocidad de deslizamiento. Volvamos a ponerlo a cinco. Y ahora cuando corremos, tuvimos ver nos deslizamos durante dos segundos y luego nuestra velocidad vuelve a 0. Muy bonito. Entonces esto está funcionando. Pongamos el tobogán de vuelta a diez. Y veamos esto en acción. Entonces estamos corriendo del monstruo y nos deslizamos hacia abajo, le
disparamos y luego volvemos a subir y luego seguimos corriendo, corriendo, corriendo. Nos deslizamos y seguimos deslizándonos en dirección. Estamos, inicialmente lo estábamos ejecutando. Entonces vamos a ver, estamos corriendo. Nos deslizamos, no podemos movernos a la izquierda y a la derecha y caemos. Bueno, intentemos eso otra vez. Para que puedas ver al igual que la vida real deslizándose cuando te estás deslizando, no
puedes moverte a la izquierda y a la derecha. Entonces esto es exactamente lo que sucede. Corremos, teníamos ver que no podemos movernos a izquierda y derecha hasta que nos pongamos de pie y luego podamos movernos de nuevo. Entonces de vuelta en nuestro código, vamos a revisar esto para algunos de ustedes que no lo entendieron del todo. Y no hay vergüenza en no entenderlo. Honestamente, incluso yo, cuando escribí este código, estaba un poco confundido de lo que realmente está pasando. Entonces. Tomemos unos momentos para revisar lo que está pasando. Si ya entiendes cómo funciona esto, adelante y escenifica todo lo que estás en el escenario. Archivos, comprometer todos estos y ese mecánico deslizante, comentan, todo eso. Y volvamos a nuestro código y veamos qué está pasando. Por lo que en primer lugar, estamos buscando nuestro running. Entonces si estamos corriendo, lo
pondremos en realidad en el movimiento. Y cuando dejemos de correr o no estamos corriendo, lo
volveremos a poner en falso. Esto nos permitirá empezar a deslizarnos si empezamos a agacharnos. Entonces cuando empecemos a agacharnos, si estamos corriendo, entonces vamos a sumar cierta velocidad que está en el plano en el que estamos actualmente en dirección de. Y también agregamos una velocidad de deslizamiento. Entonces la forma en que obtenemos el avión es usando el vector de avance de la cámara, que es la forma en que estamos mirando. Y mediante el uso del vector OP, que es lo normal a ese plano. Y aquí también iniciamos una imprimación deslizante. Y lo que este temporizador deslizante nos permite hacer es que empiece a contar atrás aquí. Entonces si es cierto, empieza a contar hacia arriba por mí, sin contar atrás. Por lo que el temporizador deslizante actual comenzará a aumentar cada fotograma por el tiempo.Deltatime. Y cuando llega a un cierto umbral cuando los temporizadores del control deslizante actual. Entonces volvamos aquí arriba. Cuando llega a un cierto umbral más que el tiempo máximo de diapositiva, que podemos determinar a partir de nuestro Inspector. Entonces vamos a dejar de agacharnos. Y aquí dentro este es el o. Entonces si soltamos el CQI o el temporizador deslizante actual ha terminado, dejaremos de agacharse y dejaremos de agacharse. Reiniciamos el tiempo que es de dos segundos ahora, o por encima de dos segundos. Entonces vamos a restablecer la velocidad en la que nos estamos moviendo para detener el movimiento de deslizamiento. Y por último, volveremos a ajustar el temporizador deslizante de inicio a falso, y esperaremos hasta que empecemos a deslizarnos de nuevo. Entonces espero que esto no sea demasiado complicado. Espero que mi explicación te haya ayudado sólo un poquito a entender mejor todo. Y en la sección creo que se acabó. Y en la siguiente sección vamos a estar sumando tiro avanzado. Por lo que estaremos agregando mejores armas o armas de mejor aspecto y agregaremos balas de mejor aspecto, empezaremos a controlar nuestros índices de disparo, por lo que no tendrá que pulsar siempre el botón. Tendremos como un rifle para poder ir y vamos a sumar un poco de munición, se mostrará la munición en nuestra pantalla usando el lienzo. Y aprenderemos cómo podemos empoderarlo por el costado. Para que ninguno. Espero verte en el siguiente video. Fue sección muy divertida. Nuestro movimiento es excelente, y nos vemos en el siguiente.
28. SECCIÓN 5: crear nuestro sistema de pistolas: Bienvenido de nuevo a mis desarrolladores de juegos favoritos a una nueva sección y a una pistola totalmente nueva. Entonces, finalmente, nuestro jugador se ve, bueno. Nuestro jugador tiene un arma tan fresca como sus ojos. Por lo que ahora cuando nos
acercamos al juego, tenemos una pistola totalmente nueva que dispara a Pulitzer. ¿ Qué tan guay es eso? Por último, se siente como si estuviéramos destruyendo algo con algo que en realidad puede destruir cosas. Entonces, y ahora con nuestra nueva pistola, hemos creado un nuevo sistema GUN. Hemos creado una nueva jerarquía para nuestras armas. Con eso dicho, no perdamos más tiempo y lleguemos a nuestras armas geniales. De acuerdo, así que empecemos. Lo primero que vamos a hacer es que vamos a estar importando nuestras nuevas pistolas cool. Entonces, entremos a los recursos y sigamos abriendo estas armas de ciencia ficción. Aquí, recomendé zapato. En primer lugar, echa un vistazo al readme y aquí es donde obtuve todos estos activos. Son completamente gratis y puedes ir y revisar el sitio web aquí mismo. También tienen otros activos muy cool que puedes descargar e incluso usar en tu juego de forma gratuita. Ve a mostrarles algo de amor. Ahora, simplemente nos arrastramos a nuestros activos. Por lo que los arrastramos, comenzarán a importar. Por lo que podemos ver todos esos simplemente golpean Import y esperaremos a que importen. No tienes que esperar conmigo. Usaré la magia de la edición y te veré en solo un poquito. De acuerdo, bienvenido de nuevo. Eso fue más rápido de lo que esperaba. Entonces ahora tenemos estas armas de ciencia ficción o aquí mismo. Ahora antes de continuar, déjame solo crear una carpeta. Y este será todos nuestros activos de juego y pondremos los efectos extra dentro del año. Y en cualquier segundo ahora, OK, armas de
ciencia ficción, también dentro de los activos o caso del juego. Entonces, entremos a nuestro activo de juego y veamos estas armas de ciencia ficción en el pack base. Podemos ver que tenemos un rifle de francotirador, una pústulas, pesadas, y los Prefabs para todos estos. Entonces vamos a conseguir nuestra pistola y vamos a seguir adelante y añadirlas a nuestra escena. Entonces esta es nuestra
diminuta, diminuta pistola ahora mismo. Entonces creo que probablemente vamos a aumentar la escala a dos por dos y hacerla un poco más grande, tal vez incluso la haga más grande que eso. Actualmente es muy pequeño, pero se ve muy cool. Entonces ahora que tenemos la pistola tal vez incluso la haga más grande, sigamos adelante y sumémosla a nuestro juego aquí mismo, así que en nuestras manos de jugadores. Entonces, en primer lugar, tenemos la cabeza y nos hemos ido, vamos a crear aquí un objeto de juego vacío, y lo llamaremos las armas. Y luego pondremos el arma debajo de las armas y lo
apagaremos por ahora porque vamos a estar usando esta pistola aquí mismo. Y lo primero que vamos a hacer es quitarle esta bota. Y antes que nada necesitamos ir a prefabs desempacar por completo. Y ahora entramos en nuestras prefabs. Y vamos a tomar v bala aquí y vamos a seguir adelante y arrastrarlo justo a las balas. Y en realidad nuestros prefabs necesitan un poco de organización. Entonces crearemos una carpeta de balas aquí mismo, y luego crearemos otra carpeta para lo que deberíamos llamarlos, los hechos. Y pondremos el agua, el gas, el arma, el músculo, y el impacto de bala y el lado de los efectos. Está bien, genial. Entonces ahora tenemos la bala, vamos a borrar. Sólo necesitamos la piedra. Y vamos a renombrar esto a la postal, simplemente pistola. Y en armas de fuego. Y vamos a seguir adelante y crear un objeto de juego. Y lo llamaremos la pistola. Entonces, ¿dónde está actualmente? Entonces está ahí y vamos a seguir adelante y poner el postal debajo de la pistola en realidad, eso se llama como el cuerpo de la pistola o prefabricado. Y sigamos adelante y reiniciemos la posición de esta pistola. Pondremos la vista de juego justo al lado, y ahora podremos ver lo que nuestro jugador C. Así que pondremos la pistola,
así que la posición de la cámara está aquí y la posición de nuestro jugador está aquí. Entonces, pongamos la posición del jugador en 00 y la posición de la cámara debe estar en la cabeza. Entonces lo pondremos en el, como un niño de la cabeza restablecerá su posición y luego la sacaremos del niño. Por lo que ahora tendremos que ajustar la posición de la pistola en base a eso. Entonces las armas de aquí, la pistola está aquí. Y retrocedamos un poco esta pistola y luego la movamos hacia arriba. Y pasemos a la derecha. Y ahora solo sigue ajustando la pistola y hasta que se vea lo suficientemente bien. Y ahora, creo que esto es lo suficientemente bueno. Entonces ahora aquí es donde nuestra pistola Así van a quedar nuestras pistolas. Ahora puedes ajustarlo, tal vez incluso podamos hacerlo un poco más grande. Entonces vayamos al prefabricado de pistola y quizá lo hagamos tres por tres. De esta manera es mucho mejor. Podemos incluso restablecer la posición de la misma. Y ahora podemos modificar desde la pistola directamente. Entonces sí, eso se ve genial. Y vamos a bajarlo un poco. Entonces, sí, así es como queremos nuestra persecución. Mira, tal vez sólo un poco más abajo y un poco adelante. Yo lo estoy ajustando. De acuerdo, genial, así que vamos a guardar eso. Y ahora de vuelta en nuestro juego aquí dentro, así que golpeamos el juego. Y ahora lo son, todavía en realidad comienza a disparar. Ahora tiene balas son muy raras, pero nos ocuparemos de eso más adelante. Y si eres cinco posición no está en el lugar correcto, necesitamos realmente moverlo. Entonces vamos a subir esto. Atrás, bueno, atrás y pongámoslo aquí. Más adelante será realmente cambiar la posición de la oblea funciona por completo. Pero por ahora, vamos a quedármela. Teníamos jugada y todo lo que podemos disparar nuestras balas. Y el fuego en realidad se ve fresco ahora con la nueva pistola. Muy bonito. Ahora lo siguiente que vamos a hacer es que en realidad vamos a mover todo nuestro sistema de tiro a su, a un guión separado. Ahora, de nuevo, podríamos haber hecho esto desde el principio, pero quería mostrarte cómo a veces cada vez que
comienzas a crear mecánicas más profundas en tu juego, comienzas a cambiar de un solo guión para hacer todo en un script separado para una creación más detallada. Entonces aquí haremos clic con el botón derecho y crearemos un nuevo guión. Por lo que un nuevo guión C-sharp. Y llamémosle el sistema de encías. Y esperemos a que se compile. Por qué sigues abriendo Visual Studio y haciendo doble clic en Khan System. Y aquí dentro vamos a mover el rodaje. Entonces bajará aquí. Vamos a mover todo este método de disparo desde jugador. Entonces, elijamos todo eso. Corte por, usando Control X. Y lo vamos a mover al sistema GUN. Y como pueden ver, hay muchas cosas que necesitamos mover. Entonces lo primero es la cabeza de la cámara. Entonces sigamos adelante y movamos eso. Y aquí arriba, veamos dónde está nuestra cabeza de cámara. Así debe, debe ser removido aquí. Y cabeza de cámara, ¿dónde está? Cámara tenía doble clic en eso. ¿ Lo usamos en cualquier otro lugar? Entonces vamos a ver, sí lo usamos siempre que queremos proyectar. Entonces lo mantendremos aquí y simplemente copiaremos esto, lo
pondremos dentro de nuestro sistema Guns. Entonces esto es un poco engorroso, pero confía en mí, va a pagar dividendos. Guarda eso. Por lo que ahora nuestro sombrero de cámara es bueno. Necesitamos una posición lejana, así que aquí dentro, mientras que nuestra posición de fuego, ¿la usamos en cualquier parte? Entonces no, no usamos la posición cinco en ninguna parte. Por lo que en realidad podemos cortar esto desde aquí y ponerlo dentro de nuestro sistema GUN. Y lo siguiente que vamos a hacer, necesitamos un agujero de bala. Entonces pensaremos que necesitaremos todos estos, así que vamos a seguir adelante y ponerlos aquí. ¿ Y qué más necesitamos? Guardemos todo eso. ¿ Qué más necesitamos? Necesitamos la bala. Sí, eso fue predecible. Entonces, ¿la bala usamos la bala en algún otro lugar? No, no lo hacemos. Entonces también vamos a cortar la bala. Por lo que ahora nuestro jugador ya no está preocupado por el carenado y el tiroteo o el sistema GUN es responsable de todo lo demás. Está bien, genial. Entonces una actualización, simplemente
vamos a llamar al rodaje. Y ahora es el momento de entrar en nuestro espectro en Unidad. Espere a que eso se compile y armas, sigamos adelante y sumamos el sistema GUN a la pistola porque cada arma tendrá su propio sistema KM. Entonces ahora tenemos mi cabeza de cámara. Vamos a seguir adelante y añadir la cámara tenía posición de fuego def es el flash hocico y hechos
prefabs y Prefabs van a volver a la pistola para que no haya pistón. Entonces el hocico del arma destello, la bala, toda la vista fuga de agua, y ahora es el momento de la bala. Y hablando de balas, es hora de tu reto. Y tu reto va a ser armar la bala pústulosa. Entonces ops antes de que hagamos eso, lo siento. Por lo que ya sacamos la bala de la tienda y la hicimos prefabricada. Entonces tu trabajo va a ser agregar un cuerpo rígido a la bala, agregar el guión o el controlador de bala, si no recuerdo correctamente, así se llama. Y configura la velocidad y asegúrate de que todo funcione. Así que pausa el video ahora mismo y ve a configurar el PESTEL. Oh, bien, bienvenido de nuevo. Entonces en bala, así tenemos a esta gente justo aquí. Entonces le vamos a agregar un cuerpo rígido. Nosotros vamos a, vamos a congelar las rotaciones. Vamos a añadir el controlador de bala aquí. ¿ Y qué más deberíamos estar agregando? Deberíamos ir a la pistola y añadir aquí este Boletín. También queremos seguir adelante y poner la bala. Tenemos que añadir el cuerpo rígido. Tenemos que cambiar la bala vivió dos, y hagamos de la velocidad unos 250. Digamos eso, déjalo jugar y veamos si está funcionando. Entonces ahora disparamos. ¿ Y se está creando realmente la bala? No puedo verlo. No parece estar funcionando bien. Al menos el tiroteo está funcionando. El Salón de balas, los agujeros de bala se están creando, el agua algo se está creando. El destello del hocico está funcionando, pero la bala, vamos a poner la bala aquí, así que es muy pequeña. Y sigamos adelante y cambiamos para arriba. Entonces lo haremos tres por tres por tres. ¿ Ver? Sí, eso se ve bien. Entonces aplicaremos eso. Y borrado de arsine. Hit play. Y ahora nuestra pistola dispara esta pequeña bala blanca justo aquí que podemos ver volando. A genial, por lo que ahora tenemos la bala. Y una última cosa que quería hacer es darle a Play y veamos eso de nuevo. Entonces cuando nos movemos, se
puede ver la bala a la derecha y a la izquierda del arma. Y eso es porque la bala no es hijo de esa pistola. Entonces hijemos al cono, al igual que hicimos con el destello del hocico. Y aquí en donde estamos instanciando la bala, vamos a sumar al padre y hagamos que sea la posición lejana. Guardemos eso. Y ahora nuestras balas deberían ser de aspecto más realista. Por lo que ahora dispara un movimiento libre izquierda y derecha. El balazo no va a todas partes y se puede ver esta pequeña bala blanca. Incluso podemos hacerlo más lento depende de tus preferencias. Voy a hacerlo 1-20 y básicamente terminamos. Eso es todo. Eso es todo lo que necesitábamos hacer. En el siguiente video. Vamos a estar controlando nuestros índices de tiro, por lo que podremos tener el rifle GOP, pero no estaremos agregando el rifle todavía. Te veré en el siguiente video. Ah, antes de irnos, necesitamos ir con los maestros y comprometer nuestros cambios y nuestros archivos son demasiado grandes, así que tendremos que entrar en los activos. Y vamos a hacer clic aquí dentro, ignorar. Y todo debajo de los activos. Los ejemplos afectan a los ejemplos. Por qué me dicen un casero porque creamos un nuevo archivo. Y de nuevo, vamos a dar clic derecho aquí y vamos a seguir adelante e ignorar todo bajo las armas de ciencia ficción porque son demasiado grandes de un archivo. Entonces escenifica todo eso, comete, todo eso. Agregó mi primera nueva pistola Cy5 de aspecto fresco dentro del nuevo sistema GUN. Comete todo eso. Y te veré en el siguiente video.
29. Controlar nuestra velocidad de toma: Bienvenidos de nuevo, mis compañeros desarrolladores de juegos. En este video, vamos a sumar, primer lugar, el auto disparo. Aprenderemos sobre las coroutinas. Y finalmente vamos a sumar un tiempo entre tomas. Entonces hagámoslo más emocionante. Pongamos el tiempo entre tomas a 0. Cuando tocamos play, en realidad
podemos mantener pulsado el botón del ratón y se puede ver que podemos crear muchos fotones. Ahora eso no es práctico porque por lo general las armas no disparan botellas infinitas a un segundo. Por lo que hemos sumado un tiempo entre tomas. Entonces ahora por ejemplo, podemos ajustarlo a 0.05. e incluso cuando mantenemos pulsado el botón del ratón, tarda 0.5. segundos para empezar a disparar de nuevo. Y eso es todo lo que hemos hecho. Entonces, no perdamos más tiempo. Y empecemos. Oh, vale, así que empecemos a controlar nuestra tasa de disparo. Lo primero que vamos a hacer es seguir adelante y crear dos variables. La primera variable va a ser un booleano que nos
dirá si realmente podemos auto disparar. El siguiente será un booleano privado, ese es el tiroteo. Entonces, ¿cuáles son estas dos variables que esto no puede disparar será cierto si tenemos un rifle que pueda auto disparar, o sería falso si no podemos Water Fire. Y el tiroteo en realidad será la entrada desde la que determinaremos si realmente estamos usando el botón del ratón hacia abajo o una otra importación. Entonces en lugar de esto aquí vamos a poner el tiroteo y el tiroteo será creado por ustedes. Sí, es un reto al inicio de un video, el peor tipo de retos. Por lo tanto, comprueba si hay condición de incendio automático antes de disparar y permite que el jugador mantenga presionado el botón del ratón para disparar si fuego
automático es verdadero configurando el disparo Boolean como entrada. Por lo que ya hemos cubierto la última parte. Entonces si el auto fuego está encendido, entonces tendrás algún tipo de entrada para el disparo. Si los incendios de entonces tendrás un tipo diferente de entrada para el tiroteo. Si te sientes lo suficientemente seguro como para salir y encontrar solución por tu cuenta, pausa el video y ve, si no, aquí tienes una pista. Busca arriba, consigue el botón del ratón. Con eso dicho, pausa el video ahora mismo y ve a hacer cada Harlan. Oh, bien, bienvenido de nuevo. Entonces aquí vamos a seguir adelante y crear una condición if. Y si puede, auto fire tiene entonces vamos a establecer el tiroteo a medida que la entrada aparece. No, oh sí. Trabajo. Entonces punto de entrada, obtener el botón del ratón. Y si lo miras, regresa cuando se mantiene pulsado
el botón de lunares dado y esto es exactamente lo que queremos. Entonces si se sostiene, estaremos compartiendo. De lo contrario. El tiroteo va a ser igual a la entrada que bajan el botón del ratón, igual que lo hicimos anteriormente. Y ahora, vamos a guardar todo eso ahora el tiroteo dependerá de si podemos auto disparar. Entonces entraremos a la unidad en el sistema GUN para nuestro pistón. Tendremos la opción de pedir archivo. Abramos al jugador para que podamos ver nuestra pistola y acción. Entonces pistolas, pistola no puede disparar, hit play. Y ahora veamos qué pasa cuando nosotros, whoa, ok, podemos Lejos, tanto
como queramos. Pero como pueden ver, esto no es muy práctico porque queremos, aunque podamos auto disparar, también
queremos tener algún tipo de reglas sobre el auto disparo. Entonces déjame escribir aquí mi nombre, mi código. acuerdo, de todos modos, así que pongamos una restricción en nuestro tiroteo. Lo primero que tendremos que hacer es crear una variable aquí que se va a llamar lista para disparar. Y esta variable será propia. Esta variable será la variable que nos permita disparar. Por lo que el disparo debe ser presionado o la entrada debe estar disponible. Y deberíamos estar listos para disparar. Y listo para disparar siempre será o, o al principio será cierto. Pero cuando realmente empecemos a disparar, lo listo para disparar será igual a falso. Ahora bien, ¿cómo vamos a darle la vuelta a la verdad? Ahora podrías estar diciendo tal vez al final del disparo o algo así. Pero no, queremos realmente volverlos a ser verdaderos después de cierto tiempo. Y la forma en que pospusimos el cambio de algo en nuestro juego es usar los recubrimientos. Entonces tal vez has oído hablar de las corutinas y tal vez no lo has hecho, pero vamos a explicarlas a fondo. Entonces, ¿qué hace una coroutina? Se trata de un método que puede suspender la ejecución de instrucciones hasta que se cumplan ciertas condiciones. A estas suspensiones se les conoce como sanadas, por lo que nuestra nariz como rendimiento. No estoy seguro de cómo estoy escribiendo estas diapositivas. De todos modos, esto se gasta suspensiones se conocen como yield. En nuestro ejemplo, estaremos pasando el tiempo hasta que nuestro jugador esté listo para disparar de nuevo. Entonces básicamente lo que vamos a hacer es que vamos a poner el listo para disparar dos de nuevo a cierto después de que se cumpla cierta condición usando el rendimiento. Entonces sigamos adelante y creemos una codificación. Ahora. No, aquí no, pero gracias. De todos modos, vamos a crear un tribunal en, y la forma en que hacemos eso es en realidad aquí. El coroutine es de enumerador tipo II. Y no necesitas preocuparte demasiado por eso. Si quieres ir profundizando en él búsquedas en la documentación de Unity, vamos a restablecer la toma. Y aquí dentro, lo primero que hacemos es que vamos a ceder. Entonces antes, déjame solo mostrarte que está pidiendo por nosotros un cierto retorno porque no todos llamados Path devolvieron el valor. Entonces la forma en que regresamos es en realidad tecleamos en yield return mu. Y aquí dentro podemos hacer varias cosas. Por lo que podemos esperar hasta esperar cuatro segundos donde espere cosas diferentes. Lo que vamos a hacer es que vamos a esperar cuatro segundos. Y dentro de aquí simplemente podemos escribir dos Fs para esperar dos segundos o tres, o cuatro. Pero porque cada arma tendrá su propio tiempo hasta que esté lista para disparar de nuevo. Por lo que la pistola tendrá cierto tiempo. Un francotirador, por ejemplo, necesitará más tiempo hasta que se restablezca. Entonces lo que vamos a hacer es que vamos a crear un tiempo entre tomas porque cada estado tendrá su propio tiempo entre tomas. Haremos doble clic, copiaremos esto creará aquí. Entonces, ¿qué? Vamos a crear una flotación pública, tiempo entre tomas. Y ahora aquí dentro, después de que esperemos el tiempo entre tomas, entonces
vamos a poner la vista lista para volver a disparar a verdad. Entonces vamos a guardar eso y ahora volvamos a Unidad. Esperemos a que se compile. Tendrá el tiempo entre tomas. Vamos a ponerlo en tres, sólo para que entiendas cómo está funcionando todo esto. Entonces tres segundos, Esto es un poco de mucho tiempo, pero esto es para el propósito de las pruebas. Entonces deberíamos, no podemos disparar si me oyes hacer clic. Entonces estamos disparando con tiroteo. No dispara. Tenemos que esperar tres segundos y no está disparando para nada. Y es eso. Ah, porque cometimos el mayor error posible Después de que
deberíamos, en realidad necesitamos llamar al rodapié. Entonces el camino, así la forma en que llamamos a la rutina de puntaje es que en realidad vamos adelante e iniciamos un Curtin y llamamos al reinicio de tiro. Y eso es todo. Revisaremos el código justo después de probar todo. Así que hit play. Y no deberíamos disparar más hasta que hayan pasado tres segundos. Deberíamos así 12312312, me pueden escuchar haciendo clic en el ratón tanto como yo pueda, pero no está funcionando. Entonces, agreguemos un uso práctico para esto. Entonces digamos que no podemos disparar. Y la pistola que tendremos tal vez un tiroteo de, no
estoy seguro de cuánto, así que tal vez 0.2. Por lo que ahora se puede ver que nuestro tiroteo mientras estoy sosteniendo es mucho más controlable. Y esto nos permitirá tener,
bueno, este tipo de tiroteos. Genial. Entonces ahora que están disparando está funcionando, todo está funcionando. Déjame repasar el código una vez más y sobre un enumerador de ojos. Entonces lo que son las rutinas de puntaje de cortejo son métodos que funcionan sólo después de un cierto tiempo. Entonces si quieres gastar la ejecución de ciertas acciones igual que lo estamos haciendo ahora. Queremos nuestra lista para disparar, para esperar un par de segundos tal vez, hasta que vuelva a ser verdad. Utilizamos Coubertin's. Entonces aquí, hemos creado una co-rutina y una calidad es siempre del enumerador tipo i. Lo hemos llamado reset shot. Y siempre que creamos un método de tipo enumerador de ojos, siempre
necesitamos que este rendimiento vuelva nuevo, y luego elegimos si queremos esperar cuatro segundos o esperar hasta otras cosas. Ahora, sobre todo en este curso estamos casi en todas partes vamos a estar usando espera cuatro segundos. Entonces no te preocupes por otras cosas. Si alguna vez lo necesitas, solo debes saber que tienes la opción de ir y tener diferentes tipos de devolución. Entonces debido a que cada arma tendría su propio tiempo para esperar entre disparos, hemos creado una variable que es pública que podemos cambiar de la Inspectora. Y luego cuando cedamos retorno y esperemos los segundos de un cierto tiempo entre disparos, entonces el listo para disparar se volverá a realidad. Y como nota final, ¿de qué más deberíamos estar hablando? Bueno, este tiroteo de aquí, creo que es bastante sencillo y ya está. Entonces vamos a entrar en nuestro árbol de fuentes. Tomemos todo eso y comprometidos. Y ahora tenemos control sobre nuestra tasa de disparo. Comete todo eso. Y eso es todo. Eso es todo lo que necesitábamos. En el siguiente video, vamos a estar agregando munición, por lo que ya no tendremos la libertad de disparar tanto como queramos. Tan cool como suena eso, agregar munición en realidad va a ser más divertido y como un poco de suspenso a nuestro juego. Entonces te veré en el siguiente video.
30. Añadir munición: Bienvenido de nuevo, mis desarrolladores de juegos favoritos. En este video, como se puede ver, tenemos balas disponibles, el total de balas, el tamaño de la revista, y cierto tiempo real. Entonces cuando golpeamos play, podemos ver que podemos disparar balas hasta que las balas disponibles sean 0 y ya no podemos disparar. Cuando hacemos click en la R, No
podemos disparar hasta que esperemos dos segundos. Y ahora podemos disparar de nuevo. Y podemos, claro que yo, está probando a nuestros enemigos. Ahora podemos volver a cargar y esperar dos segundos y luego podemos disparar. Entonces, no perdamos más tiempo y empecemos con este nuevo mecánico dinámico. Oh, bien, entonces agregando un sistema de balas o munición. Entonces, en primer lugar, vamos a seguir adelante y quitar la lata auto disparo porque las pistolas no disparan auto y el tiempo entre disparos, hagámoslo 0.1 porque no queremos estar esperando todo el día. Está bien, genial. Ahora para empezar, primer lugar, necesitaremos por supuesto, para seguir adelante y crear la cantidad de balas disponibles. Entonces vamos a crear un int público y van a ser las balas disponibles para que estén disponibles. De acuerdo, entonces tal vez desenlace la sal disponible. Lo siguiente que vamos a hacer es cuando queramos disparar. Si estamos disparando y estamos listos para disparar, y tenemos suficientes balas están disponibles. Eso significa que las balas están disponibles son mayores a 0. Entonces vamos a disparar. Y cada vez que disparen, vamos a por supuesto, reduciendo la cantidad de balas disponibles. Entonces menos y nunca lo hicimos antes, pero menos menos significa que estamos reduciendo sólo uno. Entonces pongamos esto de nuevo aquí. Y Genial. Entonces ahora esto es exactamente lo que quieres. De acuerdo, así que vamos a salvar esa unidad de back-end. Y no estoy seguro si te has dado cuenta o simplemente lo miré como si no fuera nada? Pero no lo hicimos antes, pero hemos creado un entero. Por lo que los enteros no son como flotadores, no lo hacen, no
son como 0.1 o 0.5 o 2.7. Son 12345 o minús1, minús2, y así sucesivamente. Entonces enteros, básicamente. Ahora, de vuelta en nuestro juego, balas disponibles, hagámoslo cinco Guardar que tenía jugada. Y en realidad podemos mirar en el inspector 12341 y entonces deberíamos
, no, ya no podemos disparar porque ya no hay balas disponibles. Ahora bien, ¿qué es un buen sistema de municiones sin recarga? Vamos a seguir adelante y crear una forma para que nos recarguemos. Entonces lo primero que vamos a hacer es que vamos a crear un entero público. Y esto va a ser el total de balas que tenemos. Vamos a crear un tamaño de revista porque por supuesto, conservar el tamaño de la revista, vale, genial. Y en realidad saber qué? Porque todos estos son iguales. Son enteros, los enteros todos son públicos. Simplemente pongámoslos uno al lado del otro. Por lo que tenemos las balas están disponibles, la cantidad total de balas y el tamaño de la revista. Ahora, dentro de inicio, vamos a poner todas estas vendidas. El monto total de balas se reducirá por el tamaño de la revista. Porque cada vez que empezamos a sostener un arma, en primer lugar, tomamos todas las balas y llenamos el tamaño del cargador para que la cantidad total de balas se reduzca por el tamaño del cargador. Después tomamos las balas disponibles. Y por supuesto, en cuanto iniciemos el juego, nuestro tamaño de revista o las balas disponibles serán del tamaño máximo. Ahora, queremos empezar a recargar, pero antes de hacerlo, en realidad
queremos crear un gestor de armas porque más adelante
tendremos muchas cosas que queremos manejar en nuestras armas. Por lo que empezaremos creando un gestor de armas. Y sigamos adelante y generemos este método. Por lo tanto generar ve go manager. Y aquí dentro vamos a comprobar si un
punto de entrada get key down usando un código clave que es el r, porque siempre recargamos los son y
las balas disponibles son menores que el tamaño de la revista. Entonces lo que esto significa es que si las balas disponibles son menores que los suelos de revista y nosotros golpeamos los arcas, entonces vamos a recargar. Entonces básicamente esto aquí asegura que no recarguemos si tenemos una revista completa. Entonces lo siguiente que vamos a hacer es que vamos a crear la recarga y vamos a seguir adelante y crearla bajo el rodaje. Tan privado vacío, recargar. Y aquí dentro vamos a, en primer lugar, vamos a calcular las balas que necesitamos sumar. Por lo que nt balas para sumar. Y va a ser igual al tamaño de la revista menos las balas disponibles. Entonces digamos que queremos recargar antes de que nuestra revista esté vacía. Entonces tomamos el tamaño de la revista, que siempre es constante. Retiramos las balas disponibles. Y luego estas son las balas que tendrán que sumar. A continuación vamos a hacer, vamos a comprobar si el total de balas que
tenemos es mayor que las balas que necesitamos sumar. Entonces vamos a, primer lugar, conseguir el total de balas. Y claro que los vamos a estar reduciendo por las balas que queremos sumar. Whoops. Y luego queremos sacar las balas disponibles y
vamos a hacerlas iguales al tamaño de la revista. Entonces, ¿qué estamos haciendo aquí? Vamos a detenernos un momento. Calculamos la cantidad de balas que necesitamos sumar. Es el tamaño de la revista el cual siempre es constante, digamos 30 voltios por revista. Y reducimos las balas que están dentro de la revista. Después tomamos el total de balas y comprobamos si hay más que las balas que necesitamos sumar, lo cual es genial. Reduciremos el total de balas por las balas a sumar, y pondremos las balas disponibles al tamaño del cargador. Entonces básicamente hemos recargado. Pero qué pasa si las balas o el total de balas son menores que las balas que tendrán que sumar. Bueno, en ese caso, sabemos que las balas a sumar siempre serán menores que el tamaño de la revista. Por lo que tomaremos las balas disponibles y sólo les sumaremos el total de balas. Y también, antes de que nos
olvidemos, necesitamos poner el total de balas en 0. Entonces lo que pasa aquí dentro, si la cantidad total de balas es menor que las balas que necesitamos sumar, entonces simplemente tomaremos todas las balas que quedan. pondremos en las balas disponibles y luego pondremos la bala o el total de balas que nos quedan a 0, y eso es todo. Así que vamos a guardar todo eso y pasemos de recargar. Entonces tenemos un montón de cosas nuevas aquí. Por lo que las balas disponibles serán 0, el tamaño máximo de una pistola debe ser de diez, y el total de balas tendrá para, digamos que son 18, solo para que podamos probar nuestro sistema. Entonces le pegamos al juego. Y miramos las balas disponibles o no diez talla de revista T es de diez. Y debido a que reducimos el total de balas por el tamaño de la revista al principio, lo que ahora el total de balas se fueron u ocho. Entonces empezamos a disparar, a disparar, a disparar. Y como se puede ver, las balas están disponibles o dos. Ahora si
recargamos, veamos qué pasa. Bueno, hemos sumado las ocho que estaban en el total de balas a las dos de las balas disponibles, y ahora no tenemos nada. Entonces cuando volvemos a disparar, recargamos y no pasa nada porque no hay más balas totales. Probemos un experimento diferente. ¿ Y qué más deberíamos estar probando aquí? No estoy seguro. Hagamos este 26. Eso está en juego. Y veamos, 84. Y vamos a necesitar, esto se convertirá en diez. De acuerdo, genial, así que recargaré el sistema funciona, pero ahora hay un ligero problema si empezamos a recargar y disparar. Y podemos recargar mientras se dispara y podemos recargar mientras se recarga. Y este es un enorme problema FET, necesitarás resolver la coz, es parte de tu reto. Y tu reto es crear un recubrimiento de recarga. Entonces lo primero que debes hacer es crear un flotador para el tiempo real. Entonces necesitarás crear un Boolean que verifique si todos recargamos. Tendrás que crear también una co-rutina en que
espera a tiempo real y luego restablece la recarga. Por último, si todos recargamos, asegúrate de que no podamos disparar. Porque claro siempre que estamos recargando, eso significa que no hay balas y no queremos estar disparando. Y por supuesto la recarga no es instantánea. Posteriormente estaremos sumando unas emisiones a nuestra recarga. De acuerdo, así que sé que acabas de aprender co-rutina y las coroutinas suelen ser muy complicadas, sobre todo cuando empiezas a aprenderlas. Entonces te recomiendo ese zapato ahora mismo, aunque pienses que no tienes idea, retrocede, mira el video anterior, ve cómo estamos creando el numerador y cómo estamos usando el retorno de rendimiento. Y trata de hacer lo mejor que puedas porque aunque intentes un nuevo fallar miserablemente,
cuando, cuando me veas hacer el reto, solo
será un poco más fácil la próxima vez que intentes crear un recubrimiento. Así que pausa el video ahora mismo y ve a hacer el reto. Oh, bien, bienvenido de nuevo. Entonces aquí, vamos a primero de todo estar creando una variable que es el flotador público, en tiempo real. Y luego vamos a crear un booleano privado. Va a haber recarga v0. Y eso es lo siguiente que vamos
a hacer es que vamos a seguir adelante y crear un enumerador de ojos aquí. Entonces yo enumerador y lo llamaremos la recarga. Porque ya tenemos un método de recarga. Vamos a llamar a esto el cortejo de recarga. Ups. Y aquí dentro simplemente vamos a ceder, volver. Nuevo peso cuatro, oops, qué hace esto esperar cuatro segundos. Y va a ser el tiempo real. Es así de sencillo. Y cuando sí esperemos a que los segundos se recarguen, vamos a configurar la recarga,
cargando de nuevo a falso. Y cuando recarguemos aquí, vamos a, después de poner todo, la recarga, recargar, quiero decir, va a ser igual a verdad. Y vamos a empezar el frío. Empezar coroutine y ¿cómo se llama? Recarga la co-rutina, cierra todo eso. Y finalmente, ¿qué fue? Tenemos que asegurarnos de que no podemos disparar, así que no podemos disparar mientras que el tiroteo aquí dentro, así que comprobamos y no estamos recargando, entonces podemos disparar.
31. Mostrar Ammo: Bienvenidos de nuevo, mis compañeros desarrolladores de juegos. En este video, vamos a estar ahondando nuevamente en el lienzo. Entonces lo que hicimos, creamos una GUI. Entonces vamos a dar click en nuestra pistola. De acuerdo, entonces tenemos el total de balas de 26. Hagamos este 30 y el tamaño máximo es de diez. Entonces ahora cuando tocamos play, puede ver que no sólo se renderiza en el inspector, también se renderiza en nuestra pantalla, así que nos quedan 20 balas y cada vez que disparas una bala, todo está actualizado. Nos recargamos. Estamos seguros de nuevo, recargamos y todo funciona perfectamente bien. Por lo que en este video estaremos profundizando en cómo crear fuentes, cómo agregar imágenes, cómo manipular textos usando código. Y va a ser muy divertido y emocionante. Entonces, no perdamos más tiempo y empecemos. Oh, bien, entonces volvamos a nuestro campus. Y si recuerdas, el campus fue esta enorme plaza blanca en el año que hoy presionamos para poder editar. Entonces el lienzo es básicamente donde podemos poner todas las imágenes y textos que queremos. Y lo primero que vamos a poner ahí es la imagen de una bala para representar la munición. Entonces sigamos adelante y vayamos a los activos y tal vez vayamos a los activos de juego o no, mantengamos esto en activos. Crea una carpeta, y estas van a ser nuestras imágenes. Vayamos a los recursos y saquemos la foto de bala que nos proporcioné. Entonces esta imagen, en realidad me adelanté y usé Photoshop con el fin de quitar el fondo. Entonces vamos al default y hagámoslo un sprite 2D. Ahora en nuestro lienzo, sí, aplica eso. En nuestro lienzo. Vamos a hacer clic derecho. Y en realidad, vamos a abrirla. Haga clic derecho, vaya a u I, y sigamos adelante y creemos una imagen. Ahora esta imagen se va a llamar la imagen de bala. Y vamos a seguir adelante y moverlo aquí abajo. Y pongamos la imagen fuente como las balas, o simplemente arrastremos la sangre a la posición. Y ahora tenemos una bala en la pantalla. Pongamos la vista del juego justo al lado para que veamos dónde está esa bala y qué tan grande debemos hacerla. Y por supuesto, todo esto se basa en tu preferencia. Entonces eliges lo grande que quieres hacer tu bala. Si queremos hacer esto más grande, simplemente mantenga presionado uno de los bordes, mantenga presionada Alt y expandido. Entonces, o incluso puedes ponerlo a su tamaño nativo, que no es la mejor idea, pero al menos se ve un poco bien. Y veamos aquí, es 800 por 600. Sigamos adelante y podemos dividir esto por dos y dividirlo por dos también sabemos, pero aún grande. Dividamos de nuevo esto por dos y esto por dos para que siempre podamos mantener el tamaño nativo. De acuerdo, entonces creo que este es un buen tamaño para todas las balas. Lo siguiente que vamos a hacer, vamos a descargar algo llamado sonda de malla de texto. Y usamos la tecnología debe textear mucho pero con el fin crear nuestras propias fuentes y agregar más sabor al texto en nuestro juego. Entonces para hacer eso, simplemente acuda al Gestor de paquetes. Ya lo tengo. Por lo que aquí, ve al registro de Unity y debes encontrar el texto mesh pro descargado o actualizado e importar todo. Y eso es todo. Es tan simple como eso. De acuerdo, entonces ahora que tenemos configurada nuestra imagen, es hora de agregar un poco de texto. Entonces, entremos al lienzo. Vamos a hacer clic aquí, y vamos a ir a u I, y vamos a añadir la malla de texto pero. Entonces haga clic en eso. Y ahora vamos a acercarnos un poco. Y vamos a arrastrar esto junto a nuestra bala. Y esto representará las balas que
tenemos actualmente y las balas que quedan en la revista. Entonces podemos seguir adelante y hacer muchas cosas aquí dentro. Podemos cambiar la alineación. Podemos cambiar la alineación también en la horizontal. Podemos hacerlo audaz. Podemos cambiar el tamaño de la fuente. Podemos hacer muchas cosas. Entonces hagamos esto un poco más grande. Por lo que muestra claramente. Y lo genial del text slash pro y por qué en realidad lo estamos usando es porque déjame simplemente mover esto un poco a la izquierda. En realidad, quiero hacer esto quizá dividido por 1.5 y éste también dividido por 1.5. Entonces esta es nuestra bala aquí mismo. Y lo genial de text mesh pro es que en realidad podemos agregar nuestra propia fuente y un gran recurso que puedes usar con el
fin de conseguir los mejores teléfonos es usar el phone.com. Y puedes buscar y usar esta fuente aquí mismo. Entonces vamos a entrar y esto es, puedes usar cualquier teléfono que quieras. Pero encontré que esta es la fuente más cool buscando para nuestra consistente. Entonces vamos a entrar en los recursos. Me he ido a jugar RG aquí mismo. No queremos usar el 3d1. Simplemente arrastremos esto a la interfaz de usuario. Y cambiamos el nombre de imágenes a tu ojo. Patrón representa lo que vamos a hacer en este expediente. Entonces, vamos a entrar en la ventana. Vamos a la malla de texto pro, y vamos a hacer clic en creador de activos de fuentes. Por lo tanto, toma la chaqueta de orgy econ play y
al archivo fuente fuente fuente y da click en Generar Atlas formado. Esto se abrirá automáticamente. No estoy seguro de que te pase. Esto es muy molesto. Guardemos eso y lo vamos a guardar dentro del archivo UI. Entonces haga clic en guardar. Y ahora se abrirá de nuevo. Molesto, Moveremos la orgía de jugabilidad en el activo de fuentes en nuestro texto mesh pro. Y ahora vamos a tener este texto aquí en la fuente de chicle play. Entonces cambiemos esto por algo para representar nuestras balas. Por lo que será 100 por 100. Por supuesto, vamos a estar cambiando todo esto dinámicamente a partir de nuestro código. Hagamos esto un poco más grande. Aumentemos el tamaño de la fuente. Y esto se basa puramente en tu preferencia y en cuánto quieres realmente. Tengo todo tu texto, así que voy a multiplicar esto de nuevo por 1.5 porque siento que es un poco pequeño. De acuerdo, Así que esto se ve muy bien. Vamos a comprobarlo en nuestro juego. Whoa, ¿qué guay es eso? De acuerdo, entonces ahora tenemos las balas representadas aquí. Y qué, en realidad estoy querido solo retocar esto un poco a mi propia preferencia y puedes hacer lo que quieras. Está bien, genial. Entonces ahora tenemos esta bala aquí. Tenemos los textos que representan el tamaño de la revista y las balas disponibles. Entonces sigamos adelante y empecemos a cambiar todo esto dinámicamente. Eso se ha desplazado del texto al texto de las balas. Oh, bien, genial. Sigamos adelante y entramos en nuestros guiones. Haga clic derecho aquí, y vamos a crear un script C-sharp que llamará al controlador de lienzo de
la interfaz de usuario y asegúrese de escribirlo correctamente. Espero haberlo hecho. Y el controlador de lona de la UI. Está bien, genial. Y vamos a seguir adelante y agregar estafa UI canvas controller end a nuestro campus. Entonces ahora nuestro Canvas Controller tiene este guión aquí mismo. Muy bien. Ahora, lo siguiente que vamos a hacer es abrir el guión, hacer doble clic en él, lo abrimos. Y aquí vamos a añadir una sola variable que se va a llamar la malla de texto Público pero. Pero como pueden ver, no lo tenemos disponible porque no tenemos la biblioteca para ello. Y la forma en que podemos agregar la biblioteca para ello está aquí. Vamos a añadir un nuevo espacio de nombres usando DMP pro. Y ahora cuando queremos crear una variable, realidad
podemos seguir adelante y crear una GUI de libertad condicional de malla de texto. Y vamos a llamar a esto el texto de munición. Oh, bien, genial. Ahora de vuelta en nuestro sistema de cañones aquí arriba, vamos a crear una referencia a este controlador, pero no de la forma en que normalmente lo hacemos. Entonces aquí bajo la mi cámara adelante, vamos a crear un privado eres controlador de lona. Y lo llamaremos el lienzo de mi UI. Y por lo general sabemos que siempre que queremos conseguir una referencia a un objeto que creamos y lo hacemos público. Después lo colocamos en el inspector. Pero esta vez vamos a utilizar un método diferente. Vamos a seguir adelante y empezar realmente encontrar el objeto en nuestro mundo y entonces vamos a conseguir la referencia al mismo. Entonces la forma en que hacemos eso es crear mi lienzo de UI y escribimos aquí encontramos objeto de tipo. Y esto irá y encontrará todos los objetos de tipo que le demos. Entonces va a ser el controlador de UI. Y no va a haber ningún otro controlador de lona de la interfaz de usuario. Y ahora lo que esto hace es que en realidad va a seguir adelante y buscar la UE, cualquier objeto que tenga controlador de lienzo de UI en ella en nuestra escena y obtener una referencia a. Entonces ahora lo tenemos. En nuestras manos. Lo siguiente que vamos a hacer es ir una actualización, llamada, Algo que es el texto de munición de actualización. Y lo que hará este método, sigamos adelante y
creamos, vamos a copiar el nombre. Va a estar al fondo de nuestro guión. Y aquí dentro vamos a crear un vacío privado y actualizar texto. Y aquí dentro vamos a acceder a mi controlador de lienzo de UI. Vamos a acceder al texto de munición y vamos a fijar el texto. Y van a ser las balas disponibles. Además, vamos a añadir este símbolo de división y el tamaño de revista. De acuerdo, así que vamos a guardar eso. Entonces, ¿qué estamos haciendo aquí? Lo primero que hicimos es crear una variable, mientras que así creamos una variable privada para el lienzo de UI. Es de tipo UI canvas controller porque tiene el script en él. Después conseguimos una referencia al encontrarle el objeto del juego en nuestro mundo, esta es una forma diferente de conseguir realmente una referencia. ¿ Es mejor, quizá más eficiente? No estoy seguro si estás hablando de la velocidad en la que encuentra el objeto, pero es necesario aquí porque, uh, tal vez tendremos un tipo diferente de Canvas y otra escena. Por lo que es mejor encontrar un lienzo que referirlo realmente en un objeto. Y finalmente, dentro de actualización, creamos un método o estamos llamando a un método que es la munición de actualización. Y lo que hace en realidad es que sigue actualizando la munición o configurando el texto del texto de munición en mi campus de la UI. Entonces, ¿qué hace el texto de la munición? Bueno, creo que es bastante obvio que la variable aquí en realidad va a ser el texto de bala. Entonces el texto de la bala, oops, el texto de la bala es el texto de la munición. Por lo que esto se actualizará cada vez que debamos poder y así sucesivamente. Entonces vamos a probar esto y a ver si funciona. Por lo que hacemos click en jugar. Y ahí puedes ver, déjame revisar al jugador. Entonces ahora cada vez que disparamos, ¿qué tan genial es eso? Entonces ahora tenemos un URI y para algunos,
oh, se me olvidó, por qué no podía disparar. Y ahora podemos disparar y recargar y podemos ver todo el texto que se está actualizando. Entonces eso es super, super cool, muy bonito. Creo que haré la bala un poco más pequeña porque es enorme y pantalla. Entonces sí, ahí vamos. Creo que eso es suficiente. Tan genial. Ahora lo último que queremos hacer es que en realidad queremos poner todas las balas disponibles a nuestro lado en la interfaz de usuario, pero hoy no me siento bien, así que te voy a emitir un reto para que lo hagas. A ver qué hice ahí. Entonces exhibe el total de balas alrededor. Crear una variable a la cantidad total de texto AMOLED. Entonces harás ese controlador de interfaz de usuario envidia y luego establecerás la cantidad total de texto de munición en el texto de la interfaz de usuario. Y por supuesto lo estarás utilizando a lo largo, a través del método de texto AML de actualización que hemos creado y el sistema Egon. Y te voy a dar una pequeña pista porque podrías llegar a este problema. Tendrás que usar las dos cadenas para convertir cualquier variable en una cadena. Entonces, debido a que la munición disponible va a ser un entero, necesitarás convertirla en una cadena usando el punto toString. Así que pausa el video ahora mismo y ve a hacer el reto. De acuerdo, bienvenido de nuevo. Entonces en nuestro lienzo de UI, vamos a crear el texto total de munición. Guardemos eso. Y la unidad, vamos a seguir adelante y tomar este texto bala. Nosotros lo vamos a duplicar. Y vamos a poner este 100000 lo hará un poco más pequeño. Y vamos a bajar el tamaño de la fuente porque no tiene que ser tan grande como el resto de esos. Entonces si tienes mejores habilidades de interfaz de usuario que
yo, realmente recomiendo eso para seguir adelante y crear tu propio tipo de estilo porque honestamente me he dado cuenta en estas cosas, suelo evitar crear UI. No soy bueno en los colores y todo eso. Entonces ahora sigamos adelante y cambiemos esto por un texto total de balas. Guarda eso. Yo soy más de un ¿por qué no cambió? Ok. Por lo que soy más una barra de programación desarrollando diseño de barra diagonal de juegos. En realidad no voy a entrar en todo esto. Pero de todos modos, sigamos ahora y actualicemos el texto, que en realidad es la parte más fácil en el sistema Guns. Y vayamos hacia abajo y el texto de actualización de munición. Vamos a acceder al lienzo de UI. Vamos a acceder al texto total de munición. Vamos a establecer este texto y vamos a conseguir el total de balas y convertirlas en una cadena, y eso es todo. Y ahora guardamos todo eso. Guardamos el controlador de interfaz de usuario. De vuelta en nuestro juego. Tenemos que hacer referencia. Por lo que se hace referencia al texto total de las balas. El ahora cuando golpeamos play, deberíamos ver la cantidad total de balas es de 16. Y cuando deberíamos, ahora deberíamos, cuando recarguemos, no
deberíamos tener diez por diez y el monto total debe ser de 120. Está bien. Entonces, ¿cuánto tuvimos amature? No, creo que las matemáticas estaban bien en eso. Simplemente estoy demasiado cansada. Entonces con eso hecho, vamos a guardar todo eso. Y veamos quizá el texto papilla pro necesita ser ignorado. Entonces ignora debajo del texto mesh pro o K ¿Y qué más? Está bien, no se preocupe. Esos son pequeños archivos. Vamos a escenificar todo eso. Comprometen nuestros cambios. Y vamos a llamar a esto
exhibió la munición usando papel de malla de texto como un profesional. De acuerdo, así que esperemos que nadie vea esto. Entonces como puedes ver en este momento, esto, estas son todas las entradas que hemos creado y hemos añadido muchas cosas obviamente, pero nuestro proyecto está cobrando vida y aún nos queda mucho por cubrir. Entonces esto es muy emocionante. En el siguiente video, vamos a chispear apuntando hacia abajo el sitio usando nuestro arma. Y con eso dicho, te
veré en el siguiente video.
32. Atender el Sign: Bienvenido de nuevo, mis desarrolladores de juegos favoritos. En este video, vamos a estar apuntando por el costado. Entonces, ¿qué quiero decir con eso? Ahora están a nuestro lado, dispara se recarga. Y si queremos acercar sólo un poco para más precisión, y ahora podemos hacerlo. Por lo que vamos a estar aprendiendo cómo podemos mover nuestra
posición de armas ya que queremos empezar a apuntar hacia abajo por el sitio para más precisión. Entonces, no perdamos más tiempo y empecemos. Oh, bien, entonces, ¿cuál es nuestro esquema de colon? Entonces nuestro objetivo es que, cada vez que presionamos el botón más a la izquierda, queremos poner nuestra pistola justo en medio y frente a nosotros. Entonces lo que quiero decir con eso, déjame hablar el juego aquí mismo. Y cada vez que presionamos el botón izquierdo del ratón, quiero mover la posición del arma. Entonces déjenme elegir el arma de aquí. Entonces nuestro pistón en realidad, y quiero moverlos a los 000, por lo que estará justo delante de nosotros, así como eso. Entonces, ¿qué deberíamos estar haciendo para hacer esto? En primer lugar, tendremos que crear aquí mismo una posición que nos
permita mover el arma a esa posición. Entonces la forma en que vamos a hacer eso es que vamos a crear un objeto de juego vacío en la pistola. De esa manera será en medio. Y vamos a llamar a esto la posición de AIM. Y vamos a inestar eso de nuestro pistón. Y lo vamos a poner en el 00. Por lo que de esa manera este será el destino que se han ido necesita pasar
a una orden para estar en el medio. Entonces, vamos a guardar eso. Lo siguiente que vamos a hacer es que vamos a crear un, una referencia a ello en nuestro sistema. Entonces vamos a movernos aparecer y vamos a seguir adelante y crear la sección de puntería del argón. Y vamos a crear una transformación pública. Y esta será nuestra posición puntual. Lo siguiente que vamos a hacer es establecer la velocidad de puntería. Entonces a qué velocidad vamos a movernos desde la derecha de la izquierda porque no queremos que sea instantáneo. Queremos tener cierta velocidad a ella. Entonces vamos a crear un privado que no queremos
poder determinar esto desde el inspector. Esto será un valor establecido. Vamos a llamar a esto la velocidad de puntería. Y vamos a ponerlo en f. Y ahora vamos a entrar a nuestro inspector y a nuestra pistola. Esperémoslo. Y ahora ellos en la pistola, vamos a seguir adelante y dar la posición AIM como la posición well am. Genial. Y lo siguiente que vamos a hacer es que vamos a entrar a nuestro gerente de armas. Y aquí dentro vamos a comprobar si hay cierta entrada, que por supuesto va a ser el botón del ratón. Y comprobará el botón derecho del ratón. Y siempre que presionemos el botón derecho del ratón, vamos a movernos. Nuestras armas están disparadas hacia la posición AIM, y esto en realidad es una función. Entonces aquí tenemos algo llamado el vector de tres puntos moverse hacia. Y lo que esto hace, devuelve una nueva posición por supuesto, pero lo que hace es calcula una posición entre los dos puntos especificados, que son el actual y un determinado objetivo. Y lo mueve a la velocidad de un delta máximo que le damos. Entonces sigamos adelante e implementemos eso. Pero en realidad es parte de tu reto. Entonces tu reto es aplicar el movimiento hacia, así que asegúrate de entender cómo funciona el método desde los perros, determinar cuáles son la corriente y cuáles son las posiciones objetivo, y luego aplicarlas al método con el delta de distancia máxima. Entonces con eso dicho, pausa el video ahora mismo y ve a hacer el reto. Oh, bien, bienvenido de nuevo. Entonces debido a que este movimiento hacia devuelve cierta posición, entonces vamos a acceder a la transformación del argón. Y vamos a fijar su posición al refactor
3.El movido hacia y ¿qué deberíamos estar sumando aquí? Entonces, ¿cuál es la posición actual? Si bien la posición actual es la posición de punto de transformación. Entonces esta es la posición de nuestro arma. Entonces queremos avanzar hacia el objetivo, que es la posición AIM, posición de punto. Y finalmente, queremos moverlo a la velocidad de la velocidad AME, pero es tiempos tiempo, tiempo delta. Entonces, vamos a guardar eso. Y vamos a probar esto y ganar nuestra unidad. Entonces cuando tocamos play, deberíamos ver que cada vez que teníamos el botón derecho del ratón, nos movemos se han ido hacia el centro. Como pueden ver, algo definitivamente está mal aquí. Por lo que la posición de disparo no está en su, en su posición correcta y no podemos movernos se han ido atrás. Entonces arreglemos todo eso. Ahora, el problema de la posición de disparo es que en realidad no es un niño de la pistola. Entonces cada vez que nos estamos moviendo, en realidad no se está moviendo sino nosotros. Entonces sigamos adelante y hijemos la posición de disparo a la pústula. Y esto debería hacer todo esto mucho más fácil. Entonces ahora cuando nos movamos, deberíamos, siempre que el arma esté frente a nosotros. Muy bonito. Y la otra cosa que quieres arreglar ya que en realidad queremos que nuestra pistola se mueva hacia atrás. Entonces para hacer eso, en primer lugar, necesitaremos una referencia. Y aquí también, la posición inicial de las armas. Y esto puede ser un privado. Por lo que vector privado tres puntos ido. Inicio es ese punto que tripulé espacio, posición de inicio. Y lo vamos a poner en el inicio. Entonces aquí, en algún lugar. Pongámoslo aquí. Por lo que la posición de arranque del arma será igual a la posición de punto de transformación. Es tan simple como eso. Y finalmente, aquí dentro, si estamos presionando el botón GetMax, uno, que significa el ratón derecho o el sí, el botón derecho del ratón o de lo contrario vamos a copiar todo esto. Y solo te daré un par de segundos para que completes esto si aún no has hecho el reto. Entonces esta es tu oportunidad. O K se acabó el tiempo. Entonces, ¿qué deberíamos estar haciendo aquí? Por lo que la posición actual será la posición transformada y la posición objetivo será la posición de arranque del arma. Entonces, vamos a guardar eso. Y como ya es un vector tres, no
necesitamos poner realmente en la posición de punto. Entonces porque la posición de AIM fue una transformación, por
eso hemos agregado la posición de punto dos. Solo quería dejar eso claro si algunos de ustedes siguen confundidos. Por lo que de vuelta en nuestro juego, vamos a golpear el juego. Y el, algo obviamente está mal. Entonces nuestra pistola es una especie de actuar no como un arma de verdad, así que todavía podemos disparar cosas. Apunta correctamente. Pero por alguna razón, cuando soltamos el botón izquierdo del ratón, se mueve hacia algún lugar y en realidad se está moviendo. ¿ Dónde está nuestro jugador de resultados de arma? Por lo que en realidad está tratando de pasar a la posición en la que estaba originalmente y no se puede culpar. ¿ Por qué es eso? Pues bien, porque aquí dentro podemos ver que nos estamos moviendo la posición de punto transformado. Si no estamos tocando ningún botón del ratón, vuelta a la posición de inicio gon, que así lo hemos determinado, y todo es para moverlo a cierta velocidad de puntería. Nuestra pistola siempre está tratando de volver a la posición de arranque del arma. Entonces, ¿cómo vamos a arreglar esto? Bueno, en realidad es muy fácil. Lo único que tenemos que hacer es cambiar la posición transformada, que es la posición espacial mundial, en su posición local. Entonces vamos a cambiar primero el gon, posición de
inicio a la posición local. Y esta es la posición de la transformada respecto a la transformada de los padres. Con ese Don, también necesitamos cambiar la posición transformada de la posición normal a la posición local. Y también tenemos que cambiar este aquí mismo. Vamos a guardar todo eso de nuevo en nuestro juego. Y ahora deberíamos tener una pistola que funcione correctamente y no una que esté flotando por ahí. Entonces sí, argón está con nosotros. Y cuando tocamos el botón más izquierdo o el botón derecho del ratón, podemos ver que estamos apuntando hacia abajo y todo parece estar funcionando correctamente. Entonces con eso hecho ahora tenemos nuestro arma apuntando por el sitio. Podemos aplicar esto a cualquier arma en nuestro juego. Y lo siguiente obvio que hay que hacer es realmente acercar sólo un poquito. Y eso es lo que vamos a hacer en el próximo video. Entonces te veré entonces.
33. Acompañar con FOV: Bienvenidos de nuevo, mis compañeros desarrolladores de juegos. En este video, vamos a realzar nuestro mecánico de puntería no sólo moviendo nuestro venir al centro, sino también apuntando hacia abajo el sitio correctamente. Por lo que ahora hacemos zoom cada vez que mantenemos pulsado el botón derecho del ratón y como puedes ver cuando lo soltamos, ya no
se acerca. Y así ahora tenemos armas más precisas. Con eso dicho, no perdamos más tiempo y empecemos. Oh, bien, entonces ¿cómo vamos a estar acercando? ¿ Y qué no es un 4V? Bueno, si vamos a nuestra cámara principal y aquí podemos ver que tenemos un campo de visión. Y si tratamos de disminuirlo, puede ver que estamos acercando y nosotros, si tratamos de aumentarlo, puede ver que estamos alejando. Y esto es lo que vamos a estar tratando de manipular en nuestro código fin de acercar n Siempre que terminamos abajo de lado con nuestra brecha. Entonces volvamos a poner esto a 60, y vamos a guardar todo eso. Y ahora abramos nuestro código. Y en realidad vamos a ir a nuestro movimiento de cámara. Entonces aquí vamos a estar accediendo al F0 v Y vamos a estar manipulándolo o acercando y alejando usando diferentes métodos y así sucesivamente. Entonces lo primero que vamos a hacer es heredar. Vamos a crear una flotación privada. Y este va a ser el arranque para v y el objetivo 4V. Ahora estos van a ser privados porque vamos a estar usando métodos para cambiarlos. Y ahora aquí dentro vamos a crear una flotación pública. Y esta va a ser la velocidad FOB. Por lo que esto representará a qué velocidad estará acercando y alejando el FOB. Y vamos a utilizar un método similar para avanzar más hacia, pero será diferente. Y por último, vamos a conseguir una referencia a nuestra cámara con el fin de acceder a la 4V. Ahora, estamos, hemos aprendido a lo largo de las partituras cómo, primer lugar, obtener una referencia utilizando una variable pública. Hemos aprendido a encontrar un objeto de juego, pero y si queremos acceder a un juego o a un componente que ya está en el objeto en el que tenemos nuestro guión. Por lo que tenemos los movimientos de cámara y queremos acceder al componente del Cameron aquí. Por lo que hay una forma muy sencilla de hacer esto. Entonces, antes que nada, hagamos de esta una cámara privada porque
en realidad estamos accediendo al componente de la cámara y lo llamaremos mi cámara. Y la forma en que obtenemos un componente es en realidad entramos aquí y le diremos que mi cámara es igual para obtener el componente de tipo cámara. Y eso es, entonces lo que esto hace, digamos que tenemos el movimiento de la cámara, que es el guión en el objeto de la cámara principal. Y este objeto de cámara principal tiene componentes, y uno de ellos es la cámara. Entonces lo que esto hace es aquí, en el arranque, cuanto empezamos obtenemos el componente de cámara que está en el objeto de juego de nuestra cámara principal. Entonces esta es una forma mucho más fácil y es similar a definir objeto, pero solo funciona si realmente tenemos un componente de tipo cámara en nuestro objeto de juego. De acuerdo, así que con eso hecho, sigamos adelante y empecemos. Vamos a establecer el arranque o 4V. Por lo que el inicio para v por supuesto será mi campo de visión de punto de la cámara. Entonces ya está ahí. Y entonces vamos a fijar el objetivo I 4V como el inicio de por cuota cada vez que realmente iniciemos el juego. Ahora, ¿cómo vamos a estar cambiando el 4V? Bueno, aquí dentro y actualización tardía, vamos a estar interpolando el campo de
visión de la cámara al campo de visión del objetivo y lo que está interpolando. Bueno, déjame mostrarte aquí. Entonces vamos a usar algo llamado el punto F matemático. Y lo que esto hace es que interpola o devuelve el resultado flotante entre la interpolación de dos valores. Entonces tenemos el valor de inicio de una, que va a ser el campo de visión de nuestra cámara. Vamos a tener el valor final, que es el objetivo de 4V. Y luego los vamos a interpolar usando algún tipo de valor, que va a ser, por supuesto, el campo de tu velocidad que hemos creado. ¿ Y qué significa la interpolación? Bueno, significa que nos movemos hacia o no realmente perdimos obras. Esa no es la forma correcta de decirlo. Entonces déjame mostrarte aquí. Entonces usemos pintura. Entonces avanzando hacia, digamos que aquí tenemos un objetivo. Y la forma en que nos movemos es que en realidad vamos a esta posición usando el desplazamiento constante. Por lo que estas distancias son las mismas y seguimos
moviéndonos hasta llegar a nuestra interpolación objetivo. Por otro lado, como tenemos un valor aquí dentro, queremos llegar a este valor aquí dentro. Por lo que empezamos moviendo este espacio. Después nos movemos en este espacio, en esto, en esto, en esto y esto y la distancia se sigue haciendo más pequeña hasta que finalmente llegamos a nuestro destino. Por lo que esto funciona mejor siempre que estamos trabajando con zoom y este MOOC funciona mejor siempre que tengamos posiciones en las que queremos movernos. En realidad no queremos ir más despacio a medida que vamos, llegamos a nuestra meta. Entonces con eso explicado, Nope, no guardes esa obra maestra. De vuelta en nuestro guión. Vamos a conseguir mi cámara FOB. Y vamos a crear un mapa f lóbulo de punto. Y aquí dentro vamos a establecer el a float o el valor inicial en el punto de la cámara del micrófono. Campo de visión, que es el valor inicial. Entonces vamos a fijar el FOB objetivo como el valor objetivo. Y vamos a hacer esto a una velocidad del F0 v veces tiempo, oops, tiempo, punto delta tiempo. Ok, genial. Pero aún no hemos terminado porque esto no va a hacer nada. Actualmente el objetivo de un v es el startup 0V y The Startup 0V es la cámara para v Así que eso significa que no estamos haciendo nada. Aquí vamos a crear dos métodos. El primero será un vacío público, x2, n y su público porque vamos a ser x accediendo a él desde el sistema ve gone. Y este método tomará en un parámetro que es el zoom de objetivo flotante. Y aquí dentro vamos a cambiar el objetivo de 0V y al objetivo x2. Y también vamos a crear un método para alejar el zoom. Entonces esto va a ser un vacío público zoom hacia fuera. Y esto simplemente restablecerá la apatía objetivo y al arranque de 4V. Y eso es todo. Ahora, vamos a crear un método y el sistema GUN que en realidad no va a ser un método. Vamos a revisar en nuestro encargado de armas algún tipo de entrada. Y cuando lo hagamos esa entrada vamos a acceder al Considerando que V acercándose. Y vamos a establecer un determinado objetivo, zoom para él. Y luego cuando lanzamos la entrada de set, vamos a alejarnos. Y es parte de tu reto. Por lo que tus retos para terminar de acercar y alejar. Entonces lo primero que tendrás que hacer es crear una variable de cantidad de zoom que será única para África porque por ejemplo, Pasteur zoom a cierta distancia, entonces tienes, por
ejemplo, francotiradores que pueden acercar aún más que eso. Y tal vez tengas un francotirador muy grande que se acerca en todo el camino. Por lo que lo siguiente que debes hacer es en gestor de armas, comprueba si se detiene el más abotonado hacia arriba o hacia abajo. Y en base a eso, necesitarás acercar y alejar y finalmente, encontrar que la cámara mueve objeto, tal y como lo hicimos anteriormente. Por lo que necesitaremos encontrar el objeto en cada condición y acceder al método en él. Así que pausa el video ahora mismo y ve a hacer el reto, aunque sea un pensamiento, sobre todo la última parte. Oh, bien, bienvenido de nuevo. Entonces lo primero que vamos a hacer es mantener la variable aquí para que sea un flotador público, cantidad de zoom superior. Y vamos a guardar eso. Lo pondremos en el inspector y porque es parte de la puntería lo mantendrá aquí. Y aquí dentro vamos a comprobar si tenemos el punto de entrada, bajar el botón del ratón. Eso significa que estamos presionando el botón derecho del ratón hacia abajo. Vamos a encontrar el objeto de tipo. Y por supuesto vamos a encontrar el movimiento de cámara. Y vamos a estar acercando. Y debido a que toma un parámetro, si no le damos un parámetro, nos dirá
que hay un error y necesitamos asignar un parámetro que es por supuesto el zoom out. Y si usamos la entrada, mientras que el punto de entrada consigue el botón del ratón arriba. Entonces cuando soltemos el botón del ratón uno, queremos, vamos a copiar esto, ponerlo aquí. Y en realidad vamos a estar alejándonos. Y si no puedes usar el zoom alejar y acercar, asegúrate de que tengamos estos dos públicos. Entonces es la primera vez que estamos accediendo a un determinado método desde un guión diferente, creo que si no estoy engañando. Entonces si al menos llegaste a crear estos a chequear por ellos y la cantidad de zoom, te felicito si te fuiste todo el camino y averiguaste cómo hacer esto, eres increíble. Mantente al día el gran trabajo. Entonces con eso hecho, vamos a guardar eso. Y asegurémonos por última vez cuando disminuyamos. Entonces vamos a ver cuánto queremos apuntar abajo el sitio es de 40, no de cuarenta demasiado, creo que del 60 al tal vez 55 para un arma es suficiente. Entonces Vamos a restablecer eso de nuevo en nuestra pistola. Hagamos la cantidad de zoom, el 55. Entonces ahora cuando presionamos play, podemos y cuando apuntamos en el sitio con el botón derecho de ruta del ratón, deberíamos estar acercando solo un poquito. Y permítanme que esto sea más obvio o hagámoslo 50. Y se puede ver cómo funciona la interpolación. No nos movemos hacia el valor. En realidad acercamos lentamente hasta llegar al valor final o al objetivo 4V. Si eso aún no está claro, déjame hacer este 40. Y ahora cuando tocamos play, podemos acercar el sitio y se puede ver cómo cambia lentamente. Incluso después de un par de segundos, seguimos acercando un poco. Entonces con eso hecho, espero que hayan disfrutado de este video. Espero que hayan disfrutado de esta sección. Y en la siguiente sección vamos a estar agregando no sólo la culpa, no sólo de estos simples enemigos, estos orbes raros. Y aquí en realidad vamos a sumar grandes enemigos, enemigos aterradores, y sobre todo enemigos inteligentes que la perseguirán,
perseguirán a nuestro jugador y le dispararán y le harán daño. Entonces lo que eso decía, espero que disfrutaran de este video y no olvidemos poner en escena nuestros archivos o escenificar todo eso. Y vamos a decirle que hemos creado y apuntado mecánico con zoom en. Y cometamos nuestros cambios. Y con eso, los veré en la siguiente sección y siguiente video.
34. SECCIÓN 6: animar nuestros enemigos: Bienvenidos de nuevo, mis compañeros desarrolladores de juegos. Sí, esto es un revelador facial. No, en realidad, hemos añadido dos nuevos demonios a nuestro mundo y no se quedan sentados ahí y nos miran fijamente. En realidad, oh, y por cierto, hemos hecho que nuestro patio de recreo sea más grande. Y cuando golpeamos el juego, estos demonios realmente vuelan alrededor y siempre nos están
mirando, mirándolo, siempre nos mira y rebotando arriba y abajo. Entonces lo que también creamos es este demonio Que podemos disparar. ¿ Dónde está ese demonio? Por lo que Él Xin nos mira donde z. Y ahora podemos dispararle mientras se mueve y no son rival para nosotros. Entonces en este video, vamos a crear a los enemigos demonios. Vamos a sumarles un poco de movimiento dinámico. Y no perdamos más tiempo y empecemos. De acuerdo, entonces actualmente nuestros enemigos son solo esferas y son muy aburridos y muy estáticos. Entonces vamos a cambiar eso muy rápido. En primer lugar, vamos a sumar un poco de demonios a nuestro juego. Por lo que actualmente vamos a estar usando el demonio de cacao y es un monstruo del juego hacer maternal si alguna vez lo has jugado, es realmente genial y realmente aterrador. Y el que vamos a usar en realidad es de este sitio web que se llama el sketch Fab.com. Y es una página web realmente bonita si alguna vez quieres descargar modelos 3D. Es de V creadores a las cuatro, caramba, no sé quién es. Para que puedas seguir adelante y descargar el modelo o utilizar el que he proporcionado en los recursos. Así que simplemente arrastra este archivo aquí y asegúrate de descomprimirlo. En primer lugar, arrástrelo a nuestros activos de juego. Y ahora podemos hacer doble clic aquí, y en realidad tenemos un par de texturas que vamos a estar agregando a un material específicamente para este demonio y simplemente arrastrar este objeto en montón. Por lo que actualmente, nuestro demonio es muy, muy pequeño. Entonces lo que vamos a hacer es que vamos a aumentar su escala a 200 por todos lados. Por lo que 200 x 200 en la y y 200 en el zcat. Entonces ahora tenemos un gran monstruo gigante. Y, pero él es actualmente no tiene ningún color y no tiene ninguna textura. Entonces, entremos aquí. Duplicemos el material que ya está en el objeto. Y este es el material que vamos a estar usando sobre este demonio. Entonces haga clic en ellos. Se puede ver que tiene un renderizador de malla y simplemente arrastra este material aquí. Y ahora podemos empezar a modificar el material. Entonces lo primero que vamos a hacer es añadir esta carga y M al mapa normal. Por lo que puedes ver de inmediato se pone más Texturas sobre él. Haga clic en fijo. Ahora, lo siguiente vamos a añadir la a o, que es la occassión. Entonces aquí mismo. Por lo que ahora puedes cambiar esto, moverlo hacia arriba y hacia abajo dependiendo de cómo quieras que se vea. Y por último, adelante y agrega el cacao, La M al albedo aquí mismo, y tenemos a nuestro monstruo siguiente. Entonces le agreguemos un poco de misión y también le agreguemos el que estoy aquí. Entonces ahora nuestro monstruo tanto más brillante, pero es demasiado brillante. Entonces lo que puedes hacer es jugar con lo metálico, puedes jugar con la suavidad. Y puedes jugar por aquí. Puedes hacer esto por tu cuenta y comprobar cómo quieres que se vea tu demonio. Entonces lo haré un poco más oscuro. Y sí, así que esto me queda bastante bien. También puedes cambiar, oops, también
puedes cambiar los colores en la emisión, haciendo más rojo o manteniendo y depende de cómo quieras que luzca tu demonio. También puedes jugar y ver qué funciona para ti. Pero ahora si hacemos clic en jugar, podemos rodar por ahí. Pero si disparamos a nuestro demonio, bueno, no pasa nada. Y eso es porque no tiene ningún colisionador sobre él. Y la forma en que podemos agregar un colisionador es entrando aquí para agregar componente. Podemos buscar colisionador de malla. Y en realidad podemos agregar el colisionador que está con este objeto de juego. Entonces en lugar de simplemente agregar un líder esférico o un coloidal cuadrado, podemos agregar este colisionador de malla, que es específico de este demonio de forma. Y por último, tenemos que etiquetarlo también como enemigo. Entonces eso cambió su nombre por el cuerpo del demonio de carga. Y ahora cuando golpeamos play, podemos disparar, y podemos disparar demonio y él muere. Muy bonito. Ahora, lo siguiente que vamos a hacer es añadir un poco de movimiento o Neiman. Entonces para hacer eso, primero
vamos a crear un objeto de juego vacío. Y aquí lo llamaremos el cuco, demonio de cuco. Y vamos a engañar el objeto en este cargamento demolido objeto demonio y ponerlo debajo de los enemigos. Y eliminemos nuestras esferas. Ya no los necesitamos. Lo siguiente que vamos a hacer es añadir un animador aquí. Y vamos a empezar a animar nuestro edema. Entonces haz click en el demonio del cacao, Ve a la animación y crea una animación cuatro, y ve al archivo de recursos de tu proyecto. Entonces en animaciones, crearemos una nueva carpeta que no es la animación del jugador. Tan nueva carpeta, Esta será la animación demoníaca, animaciones demoníacas. Y aquí dentro simplemente crearemos uno que esté inactivo. Tan animación inactivo, si eso, y esta básicamente será la animación inactivo. Y ahora tenemos al animador y un animador en el componente animador del demonio del cacao. Ahora queremos crear una animación que moverá a nuestro demonio hacia arriba y hacia abajo. Así que haga clic atrás en el demonio de carga consiguió animación, crear un nuevo clip. Y esta será la, solo
llamémoslo la animación en movimiento. Y vamos a guardar eso. Genial. Entonces ahora tenemos el movimiento, vamos a dar click en el botón rojo y lo vamos a mover hacia arriba cada 1 segundo. Y veamos cuánto debemos subirlo. Entonces creo que esta es una altura apropiada. Y luego a los 2 segundos Mark, volverá a bajar. Entonces echemos un vistazo a la animación. Se mueve hacia arriba, se mueve hacia abajo. Guardemos eso. Y hagamos ambos lineales. Entonces veamos la animación que tenemos. Por lo que se mueve arriba y abajo. Es un poco peculiar. Puedes cambiarlo y jugar con él dependiendo de tu preferencia. De acuerdo, genial, tan bien que ninguno, es hora de realmente desencadenar estas animaciones y crear transiciones. Entonces sigamos adelante y creemos una transición aquí del petróleo al movimiento. Pongámoslo así de hecho y movamos la salida sobre el cualquier estado. Entonces ahora tenemos movimiento e inactivo, y vamos a crear en realidad un booleano. Y aquí eso se va a llamar el parámetro de movimiento. Y aquí vamos a sumar que eliminará cualquier tiempo de salida y eliminaremos la duración de transición. Y vamos a agregar la condición aquí para moverse se establece en true. Lo siguiente que vamos a hacer es ir al demonio cacareo. Vamos a añadir un componente aquí, y vamos a crear un guión que llamará al movimiento básico enemigo enemigo. Y cuando escribimos aquí, en realidad
podemos crear un nuevo guión. Por lo tanto, crea un anuncio. Y esperaremos a que se compile. Y esto se abrirá automáticamente por alguna razón. Y entonces tendremos un activo el guión. Así que simplemente arrástrelo a nuestros guiones aquí dentro. Y Visual Studio se abre de nuevo. Por lo que de vuelta un guión R. Hagamos doble clic en el movimiento básico enemigo. Y aquí dentro vamos a, por supuesto, primer lugar, seguir adelante y crear un Animador. Y él puede Tor, y lo llamaremos mi animador. Y puede torr. De acuerdo, así que vamos a guardar eso. Ahora vamos a obtener los componentes de mi animador es igual al componente get y animador. Y eso se debe a que el animador está en realidad en el mismo objeto de juego de nuestro guión. Y lo siguiente que vamos a hacer aquí y empezar, vamos a conseguir mi animador y vamos a poner el booleano. Y este booleano va a ser la referencia de cuerdas. Siempre que tenemos una referencia de cadena, siempre
vamos y la copiamos en base a aquí. Y vamos a establecer el valor para ello, lo cual es cierto. Entonces ahorremos eso y sigamos adelante y probemos esto y
veamos cómo se ve nuestro demonio y honorarios realmente funcionando. Entonces le pegamos al juego. Y podemos ver que nuestro demonio se mueve arriba y abajo, arriba y abajo, y podemos dispararle y matarlo. Está bien, genial. Lo siguiente que queremos hacer es realmente queremos que este demonio esté
mirando a nuestro jugador mientras se mueve hacia arriba y hacia abajo. Entonces la forma en que hacemos eso es que entraremos en nuestro guión. Aquí vamos a crear un transformador. Y va a ser nuestro jugador. Y no queremos estar siempre asignando al jugador. Entonces lo que vamos a hacer es, y aquí vamos a llevar a este jugador y vamos a encontrar el objeto de tipo. Y nuestro jugador es de tipo jugador porque tiene el guión sobre él. Y vamos a acceder a la transformación de ese objeto. Entonces ahora nos llevamos a este jugador, tenemos los objetos de hallazgo y tenemos eje X, el transporte de este objeto de juego. Lo siguiente que queremos hacer como actualización, en realidad
queremos empezar a mirar a este jugador. Por lo que ya hemos cubierto de buscar. Entonces Transformar punto mira y vamos a darle el transporte del jugador. Guardemos eso. Y echemos un vistazo a nuestro demonio ahora mismo. Por lo que debería estar mirándonos a medida que se mueve hacia arriba y hacia abajo. Entonces empezamos de nuevo, vemos que en realidad nos está mirando, pero no estoy seguro si es obvio o no. Sí, lo es. Entonces a medida que nos movemos, el demonio siempre está mirando al jugador y podemos destruirlo. Vamos a ver eso otra vez porque es realmente intimidante. Entonces nuestro mover nuestro demonio vuela por ahí y hasta va hacia y sintió, oh Dios mío, ¿qué es eso? Por lo que está cambiando de posición en función de dónde se está moviendo nuestro jugador. Entonces, vamos a ver. Y sí, eso parece aterrador como el infierno. Ahora lo que podemos hacer es seguir adelante y aplicar el movimiento radicular. Y volvamos a ver eso. Entonces ahora nuestro Neiman debería estar en su lugar y no debería estar rompiendo nuestro juego. Ah, en realidad estaba aterrorizada ahí. Está bien, genial. Entonces ahora tenemos a nuestro demonio moviéndose hacia arriba y hacia abajo, pero queremos quizás agregar un poco más de animaciones a nuestro demonio. Entonces va a ser parte de tu reto. Por lo que se te desafía va a ser crear una animación rotativa. Así que crea una animación giratoria para el enemigo. Puedes seguir adelante y duplicar al demonio cacareo. Se crea un booleano para activar esa animación. Crea dos variables booleanas para elegir entre moverse, entre mover y girar y el guión. Y luego establece las animaciones que quieras en el inicio. Entonces espero que tengas el reto, lo que tienes que hacer. Por lo que necesitarás crear dos booleanos en tu guión. Y para cada uno, podrás elegir entre el inspector si este demonio vamos a estar volando por ahí o moviéndonos por ahí o él estará girando por ahí. Así que pausa el video ahora mismo y ve a hacer el reto. De acuerdo, ¿cómo te llevaste con eso? Entonces tomemos a nuestro demonio Kochab. Vamos a duplicarlos. Y vamos a trasladarlo aquí. Y vamos a mover este de ahí fuera. Y tomemos este y vamos a crear un poco de animación para él. Entonces vayamos a las animaciones y creemos un nuevo clip. esto lo llamaremos en activos, animaciones, animaciones demoníacos, y Rotación. Entonces vamos a crear la rotación y vamos a empezar por, vamos a verlo desde el, desde aquí arriba. Por lo que ahora vamos a seguir adelante y empezar a grabar en la marca 2.5. Nosotros lo vamos a trasladar aquí. Entonces en la marca de 1 segundo lo moverá aquí. En el aquí. Lo trasladaremos aquí. Y aquí dentro, vamos a moverlo aquí arriba y tal vez un poco arriba. Por último en v2 30, así que 2.5 segundos, volvamos a ponerlo de nuevo a su posición original. Y ahora esto podría ser un poco rápido, así que juguemos. A ver cómo se ve eso. Y sí, una especie de rápido, pero se ve lo suficientemente bien. Por lo que haciendo clic derecho aquí, ambos motores los hacen lineales. Y ahora nuestro movimiento es un bot peculiar, pero es una especie de degradante, disminuyen que incluso un verbo. A lo mejor podemos hacerlos un poco más grandes así que duplicamos el tiempo. Por lo que ahora es un poco más lento y más fácil de golpear. Guardemos eso. Y ahora necesitamos determinar realmente si este demonio vamos a estar volando o moviéndonos o rotando. Entonces un animador, agreguemos esto aquí. Vamos a crear otro booleano, y llamaremos a esto la rotación. Y vamos a crear una transición del ídolo a la rotación. Y vamos a sumar quitará el tiempo de salida. Quitaremos la transición. Y vamos a añadir la condición de que la rotación en este momento debe ser cierta. Guardemos eso. Back-end nuestros guiones aquí. Vamos a crear dos booleanos. Y por supuesto van a ser bool público. Y crearemos un movimiento y rotaremos. Y aquí dentro vamos a poner al animador no sólo para verdad cuando queramos movernos, sino para movernos. Y el segundo sería mi animador dot set wall, y va a ser V. Vamos a copiar esto. Por lo que el guión palabra por palabra haga doble clic en la rotación, cópielo, póngalo aquí, y esta será la rotación. Entonces ahora tenemos a estos booleanos que nuestro público, podemos cambiarlos directamente del demonio. Entonces si haces click aquí, podemos elegir al demonio para mover y a este demonio para rotar. Eso lo ahorraremos. Y ahora este demonio rotará y este demonio se moverá porque los hemos puesto aquí mismo. Entonces cuando la película sea cierta, ésta será cierta y ésta será falsa. Y aquí será falso. Por lo que nuestro comportamiento o el comportamiento de nuestro animador dependerá de estos booleanos que hemos creado y aquí, así que de vuelta en nuestro juego, nos aseguramos de que éste sea rotado. Este es movimiento. Vamos a tocar juego. Y ahora tenemos a este demonio girando alrededor y volando alrededor y mirándonos todo, OK. Creo que necesitamos hacer nuestro patio de recreo un poco más grande. Entonces hagámoslo 20 por 20. Entonces tenemos mucho espacio para movernos y eso se movió estos dos porque, ¿por qué no? Y también movamos estos. Entonces vamos a mover esto también. Y dejemos de sostener el lienzo. Mueve esto allá arriba. Mueve esto allá arriba, y mueve estos cuatro cubos aquí a la esquina del,
Vale, genial, así que guarda eso de nuevo en nuestro juego. Y ahora tenemos un patio de juegos más grande para jugar y ojalá no caiga. Y estos son los demonios arrojados por ahí para que podamos disparar a uno de ellos. Incluso podemos acercar con nuestro nuevo mecánico. ¿ Y por qué no se está muriendo? De acuerdo, no le pegamos. Está bien, genial. Por lo que ahora tenemos enemigos más aterradores, enemigos dinámicos. En el siguiente video, vamos a empezar a crear enemigos inteligentes. Lo que eso decía, espero que disfrutaran del video y no olvidemos cometer nuestros cambios no comprometidos. A ver, tal vez no necesitamos el PNG real. Entonces haga clic derecho aquí, y sigamos adelante e ignoremos el demonio de línea, monstruo. Ok, escenifica todo eso. Cambios compromistales, agregó un demonio aterrador, monstruo, monstruo. Comenta eso y con eso dicho, próximo video serán los enemigos inteligentes. Y allí te veré.
35. Guardado de enojos: Bienvenidos de nuevo, mis compañeros desarrolladores de juegos. En este video, hemos agregado otro enemigo, pero esto no es cualquier enemigo. Si haces clic en él, puedes ver que es un enemigo inteligente con un guión enemigo y un agente de malla de navegación. Entonces, ¿qué pasa cuando golpeamos el juego? Podemos ver que empieza a moverse por su cuenta y
en realidad está custodiando todo este avión. No estamos haciendo nada, así que ni siquiera estamos jugando el juego. Se puede ver que no estamos tocando el teclado, no haciendo nada, solo compramos,
ocupándonos de nuestros propios asuntos. Si bien nuestro pequeño enemigo verde de aquí anda por ahí con su mirada amenazante verde, tratando de encontrarnos. Entonces con eso dicho, no perdamos más tiempo. Y vamos a crearnos algunos i o, vale, así que ahora queremos crear un enemigo que
en realidad estará vigilando por todas partes por aquí en el avión. Ahora lo primero que tendremos que abordar es cómo está nuestro enemigo o cualquier objeto para ese asunto, saber dónde debe estar caminando y vigilando. Bueno, hay una herramienta muy poderosa en la unidad que se llama agente de malla suficiente. Entonces déjame mostrarte qué es eso. Entonces vayamos a la ventana y pinchemos en navegación. Por lo que tendrás esta rara pestaña aquí mismo que se abrirá. Por lo que simplemente docket junto a la iluminación. Y ahora permítanme explicar qué significa esta navegación. Entonces, antes que nada, vayamos con el agente. Este es el agente que podremos andar por el mundo que creamos para él. Por lo que tiene una altura de escalón para que pueda aumentar el escalón que el agente pueda caminar. Vamos a restablecer eso. Puedes aumentar la altura de tu agente. También se puede cambiar el radio y así sucesivamente y así sucesivamente. Y esto determinará cómo, cuál es el ángulo en el que puede caminar el agente. A continuación tenemos el área. No estoy seguro de cuáles son estos. Esto es para cálculos más complicados, no te preocupes, no estaremos cumpliendo con esos. Y tenemos la horneada. Y esta es la parte más importante de la navegación, es que nos permite crear el mundo alrededor del cual nuestro jugador podrá o no nuestro jugador en realidad nuestro agente, que será nuestro enemigo, fue capaz de caminar. Entonces, ¿cómo vamos a crear esta primera cosa que necesitamos para entrar en el medio ambiente. Y tendremos que elegir todos nuestros cubos. Y tenemos que ir con el inspector y hacerlos no estáticos todos. Necesitas hacerlos la navegación estática. Por lo que esto le dirá a la malla de navegación o navegación que estos objetos no se moverán en nuestro mundo. Y no queremos tropezar. Lo siguiente que haremos es dar click en el avión y haremos una pila justa. Y ahora que lo hemos configurado, vamos a ir a la navegación y vamos a golpear tocino aquí. Entonces espera un par de segundos. Y como puedes ver ahora mismo, todo
nuestro avión se ha convertido en este color azul brillante y en esta plaga azul. Color azul brillante representa toda la zona en la que un agente de malla nav va a poder caminar. Entonces, ¿quién es nuestro agente de malla nerviosa? ¿ Quién es ese? Vamos a seguir adelante y crearlo. Entonces ve al objeto 3D, crea un cilindro. Y reiniciemos su posición. Entonces, ¿dónde estás? Restablecer la posición? Y pongámoslo aquí. Y vamos a acercarnos y echarles un vistazo. Entonces este será nuestro enemigo. Enemigo tan inteligente, eso se llama enemigo inteligente. Y vamos a aumentar su Y 22. Y ahora en realidad eso está haciendo 1.6. Y lo bajaremos un poquito. Ahora vamos a añadir un componente llamado el agente nav Nash. Entonces busca agente y tendrás aquí al agente de mash nav. Entonces como se puede ver, es el humanoide, que es un agente de malla suficiente. Por lo que de vuelta en
el agente de navegación, el humanoide, podemos crear múltiples agentes. Pero por ahora, vamos a quedarnos con éste. Y como se puede ver, tiene cierta velocidad, cierta velocidad angular. También tiene, tiene muchas cosas pasando para él que no vamos a estar molestando. Vamos a mantener todo como está, tal vez solo aumente la velocidad un poco más adelante. Ahora, entrémonos en la codificación de nuestro enemigo inteligente. Entonces y nuestros guiones, vamos a crear un guión C-sharp que se llama la IA enemiga. Y ahora Visual Studio se abre por su cuenta. Mira, predigo estas cosas. Por lo que la IA enemiga, compila. Añámoslo al enemigo inteligente. Bueno, Visual Studio se abre por sí mismo. No, no lo hizo. Y ahora haga doble clic en la IA enemiga. Entonces, ¿qué vamos a estar haciendo aquí? En primer lugar, vamos a conseguir una referencia al agente de malla suficiente. Pero si intentas esto ahora mismo puedes ver que
no hay nada correspondiente a una malla de navegación. Eso se debe a que necesitamos agregar la biblioteca. Por lo que usando Unity motor dot AI. Genial. Por lo que ahora podremos crear una variable que sea de tipo nav mesh agent. Lo llamaremos mi agente. Y también vamos a crear una capa. Tan pública Máscara de Capa. Y a esto se le va a llamar lo que está tierra. Y averiguaremos más adelante por qué vamos a usar esto. En realidad, vas a usar esto cualquier reto. De acuerdo, sigamos. De inicio, vamos a conseguir los componentes. Entonces mi agente es igual a get component, y va a ser el agente de malla nav. Entonces ahora tenemos una referencia al mismo, y ahora nuestro agente en realidad puede realizar múltiples tareas y una de ellas estará yendo a un destino determinado. Por lo que antes de continuar, necesitamos crear el destino para él. Entonces crearemos un vector público tres. Y esto se va a llamar el punto
Destino también
creará un booleano para comprobar si ya hemos dicho el destino. Así conjunto Destino. Y esto será falso si no hemos encontrado un destino y cierto cuando sí lo encontremos. Y por último, vamos a crear una gama en la que nuestro agente pueda caminar. Entonces rango de destino. Entonces, ¿eso es correcto? Destino, destino. Ok, entonces ahora que tenemos todo eso en actualización, vamos a empezar a hacer jardinería. Entonces estaremos jardinería o nuestro enemigo estará vigilando. Generemos este método. Y dentro de custodiar, vamos a estar buscando cierto punto de destino. Entonces si no fijamos un destino determinado, entonces vamos a estar buscando o buscando o buscar destino. Y sigamos adelante y generemos de nuevo este método. ¿ Y qué vamos a estar haciendo mientras buscamos? Bueno, vamos a crear un punto aleatorio en nuestra malla de navegación. Y a ese punto, nuestro agente va a caminar, ¿cómo creamos puntos aleatorios mientras vamos a crear un flotador? Se va a llamar la posición aleatoria x_hat. Y por supuesto que sólo vamos a tener posiciones en estos. X e y se mantendrán igual. Entonces la forma en que hacemos esto es que en realidad maduramos rango de puntos aleatorios. Y algunos de ustedes pueden encontrarse con este problema. Algunos de ustedes pueden no tener este problema, pero a veces aleatorio es inequívoco. Eso significa que no está seguro si está usando el motor Unity aleatorio o el sistema aleatorio. Por lo que hay dos soluciones. Podemos o bien eliminar estos sistemas aquí mismo, pero no lo recomiendo. O podemos seguir adelante y hacer clic derecho aquí. Nos ofrecerá una solución y simplemente comprobará que estamos usando la unidad que ahí arriba creó. Rango de puntos. Entonces ¿Está funcionando ahora? Sí, está funcionando. Y la forma en que usamos el rango, en realidad establecemos el valor mínimo que queremos y el valor máximo que queremos. Y este rango de puntos aleatorios devolverá algún flotador aleatorio dentro de estos dos valores. Entonces, ¿cuál es nuestro mínimo y máximo? Bueno, es el rango de destino y en realidad menos rango de destino y más rango de destino. Y quitemos el plus porque es positivo, será positivo. Y el, la posición aleatoria x, copia esto y pegarlo aquí y cambia esto a x y el resto es lo mismo. Por lo que llamaremos a esto crear un aleatorio, crear, un punto aleatorio para que nuestro agente camine. De acuerdo, genial, así que ahora tenemos dos puntos aleatorios en el SAT y X. Lo
siguiente que tenemos que hacer es crear el punto de destino. Entonces punto de destino. Será igual a un nuevo vector. Tres abrirán los corchetes y vamos a golpear Enter porque esto será capaz de tener un vector largo tres. Entonces a primera hora vamos a conseguir la posición transformada pero x. Y vamos a sumar con la posición aleatoria X sobre la que hemos creado. A continuación estamos tomando el punto de posición transformada
y, y se mantendrá igual. Y por último, vamos a tomar la transformación esa posición punto z, y le vamos a sumar la posición aleatoria x que encontramos. A genial, entonces, ¿qué hicimos aquí? En primer lugar, comenzamos la jardinería en la actualización por supuesto,
agregaremos más a esto. Si en guardia, comprobamos si no tenemos destino, comenzaremos a buscar un destino. Crearemos un punto aleatorio, y luego vamos a establecer el destino. Por lo que hemos dicho el destino usando nuestra posición actual más la posición aleatoria x que encontramos. Ahora aquí dentro, cuando finalmente encontremos un destino, vamos a poner el conjunto de destinos, oops, a verdadero. Entonces esta no es la forma exacta en que vamos a hacer esto, pero por ahora sólo lo vamos a mantener así. Entonces si no estamos buscando un destino, eso significa que el destino establecido es cierto. Nos vamos a llevar al agente y vamos a fijar el destino para él. Por lo que se puede ver que establece o actualiza destino, activando
así el cálculo de una nueva ruta. Entonces lo pondremos aquí y le daremos el punto de destino. Así que vamos a guardar eso y vamos a seguir adelante y ver si nuestro enemigo realmente camina. Y antes de continuar, vamos sólo al donde nuestros materiales en el material Enemigo a él. Por lo que se ve un poco más enemigo como. Y pongamos el juego aquí, así que tenemos un buen ojo en nuestro enemigo. Y aumentemos el rango a 100. Ahorra que teníamos jugada. Y veamos si se mueve. Y como puedes ver, nuestro enemigo tiene al azar, tiene un punto de destino aleatorio al que está caminando. Entonces vamos a aumentar la velocidad o OK, así que ha terminado, así que se ha detenido. Como se puede ver, la navegación en realidad está funcionando. Ahora, ¿cuál es el siguiente paso? El siguiente paso es determinar realmente si estamos o si el destino que hemos establecido está en realidad en el suelo. Y para hacer eso, voy a emitir un reto. Tu reto es comprobar terreno usando el recast. Entonces, después de haber establecido nuestro destino, comprueba si está en la capa del suelo antes de movernos allí. Y te daré una pequeña pista sobre la dirección del recast. Usa d menos vector de punto de transformación como tu dirección de refundición. Entonces, después de haber establecido el punto de destino, crea un recast a partir de él con una distancia máxima pequeña. Y comprueba si en realidad está en el suelo usando la máscara de capa que hemos creado. Entonces con eso dicho, pausa el video ahora mismo y ve a hacer el reto. Gaye, bienvenido de nuevo. Entonces antes de que hagamos esto, Déjenme borrar esto por ahora. Vamos a crear una condición if que comprueba 40, el punto de física re-cast. Y aquí dentro vamos a crear en primer lugar el punto de origen, que es el punto de destino. Vamos a usar la dirección de la que les hablé, que es la transferencia o la transformación menos. Pero arriba, de esa manera podemos mirar hacia abajo o echar matriz hacia abajo. La distancia máxima será de dos f, creo que es suficiente. Y le vamos a dar la capa como el, lo que está tierra. Entonces el terreno, por supuesto, lo que es terreno se fijará en el inspector. Y aquí, si sí golpeamos el suelo, entonces estableceremos el destino establecido en igual verdadero. Está bien, genial. Salvemos eso de nuevo en la unidad. ¿ Qué es terreno? Bueno, es tierra, vale, pero ahora mismo nada va a cambiar porque solo hacemos esto como medida cautelar para nuestro jugador o para que nuestro agente no caiga desde el borde del mundo. Y aumentemos la velocidad a quizás siete. De acuerdo, entonces ahora lo que queremos hacer es que queremos llegar
al destino y luego queremos empezar a buscar de nuevo un nuevo destino. Entonces la forma en que hacemos eso es que subiremos aquí. Y en la guardia, vamos a crear un vector tres. Y va a ser la distancia al destino. Y va a ser igual a la posición transformada. Por lo que la posición de nuestro personaje actual al bote de destino. Y cuando esta distancia llega a menos de un cierto valor, queremos volver a establecer el destino establecido en falso, lo que significa que hemos llegado a nuestro destino y ahora necesitamos buscar uno nuevo. Entonces crearemos una condición if. Si la distancia al destino es menor a una f Así que básicamente estamos ahí. Vamos a establecer el destino, volver a ser falso y empezar a buscar de nuevo. Y lo que me está diciendo este mal no se puede aplicar a un vector 30. Ok, entonces necesitamos hacer de esto una magnitud. Y funciona muy bonito. Entonces guarde eso. Y de vuelta en nuestro juego, veamos a nuestro enemigo custodiando una acción. Entonces vamos a fijar el juego y aquí vamos a pegarle juego. Y ahora deberíamos ver a nuestro enemigo simplemente paseando y moviéndose cuando llegue a su destino. Eventualmente, hagámoslo un poco más rápido. Entonces está haciendo diez, así que llegó al destino, sigue adelante. Debería llegar a cierto punto. Y luego, Yup, como puedes ver, hemos creado un enemigo inteligente. E incluso cuando se topa con algo, entonces se dio cuenta de eso y luego comienza a moverse de nuevo. En serio, ¿qué tan genial es eso? Tiene mente de su hogar. No estamos haciendo nada en realidad. Simplemente estamos atascados y de nuevo, ni siquiera
estamos disparando a nada. Entonces veámoslo caminar por ahí siendo un lujo con su inteligencia IA. Y así, así espero que hayan disfrutado el video. El siguiente video, en realidad vamos a estar no sólo jardinería con nuestro enemigo, realidad
perseguirá al jugador cuando llegue a as en cierta zona, muy cerca del enemigo. Entonces lo que eso decía, espero que disfrutaran del video y no olvidemos escenificar o comprometer todos nuestros archivos. Etapa todo. Y llamaremos a esto creado un enemigo inteligente que resguarda la malla de navegación. Comentar eso. Y te veré en el próximo.
36. Jugador Chasing: Bienvenidos de nuevo, mis compañeros desarrolladores de juegos. En este video, en realidad agregamos la capacidad a nuestro, para que nuestro jugador nos persiga. Entonces aquí tenemos el rango de persecución que podemos ajustar con esta pequeña esfera cool que hemos creado. Y cuando jugamos a nuestro enemigo mina su propio negocio, ¿dónde está? Ahí se ocupa de sus propios asuntos, pero si tratamos de acercarnos, vuelta y empieza a perseguirnos. Quiere un pedazo de este pastel y no muere. Entonces intentamos dispararle, no muere, pero no tiene idea de qué espacios personales. Entonces, no perdamos más tiempo e intentemos obtener una orden de restricción. O K. Entonces queremos que nuestro jugador, o quiero decir, nuestro enemigo comience realmente a perseguir a nuestro jugador cuando nos acerquemos lo suficiente, porque actualmente que acabamos de poner esto vino aquí, hit play. Si nos acercamos al enemigo, bueno, él no reacciona en absoluto. Por supuesto, más adelante podremos dispararle y matarlo. Pero justo por ahora queremos verlo caminar. Entonces, ¿cómo vamos a hacer esto? En primer lugar, tendremos que ir con nuestro enemigo y terminar aquí, o aquí dentro. Sigamos adelante y creemos una transformación pública. Y lo llamaremos el jugador. Y lo que vamos a hacer en el inicio es que en realidad vamos a encontrar a este jugador. Entonces plus es igual para encontrar objetos de tipo, que es jugador, jugador. Y eso es todo lo que necesitamos. Ah, no, en realidad porque su transformación, necesitamos tenerla como transporte. Lo siguiente que vamos a hacer es crear aquí un par de variables para la persecución. Entonces sigamos adelante y llamemos a esto perseguir. Y esto de aquí dentro será la guardia. Entonces persiguiendo, ¿qué necesitamos para perseguir? Bueno, en primer lugar, necesitaremos un rango de persecución porque sólo perseguimos algo cuando está en cierto rango, rango de cadenas de búsqueda. Y también crearemos un booleano que
comprobará si el jugador es en realidad el rango de la industria, tan público, o lo haremos privado más adelante. Pero por ahora, mantengámoslo como público para que podamos verlo en el inspector y el jugador en rango de persecución. Está bien, genial. Ahora lo siguiente que necesitamos para crear un sistema que nos permita
realmente comprobar a nuestro alrededor y ver que el jugador está en cierto rango. Y lo que podemos usar es en realidad algo llamado los cheques miedo. Y lo que esto hace es que devuelva verdadero si algún colisionador superpone a la esfera definida por posición y radio en las coordenadas mundiales. ¿ Qué significa todo esto? Por lo que la física punto esfera checa crea una esfera en el centro de una determinada posición que le damos con un cierto radio que le damos y busca una cierta máscara de capa y
se utiliza y se ignora los otros colisionadores en esta esfera de cheques . Entonces esto es lo que vamos a usar para revisar la esfera. Y no quise decir que no conociera lo que vamos a usar. Es lo que vas a usar en tu reto. Tu reto es comprobar si el jugador está en rango. Usando el miedo cex para comprobar si el jugador está en rango. Entonces te daré un par de insinuaciones. Entonces usa la posición del enemigo como origen. Utilizas el rango de persecución como radio, y creas una capa de jugador para las esferas Máscara de capa. Y por supuesto necesitas asignar la capa de jugador al jugador. Con eso dicho, pausa el video ahora mismo y ve a hacer el reto. De acuerdo, bienvenido de nuevo. Entonces lo primero que vamos a hacer es inhere va a crear lo que es Player. Y lo siguiente vamos a entrar en actualización. Y aquí dentro no sólo vamos a estar vigilando. Ahora vamos a crear un jugador en rango de persecución, mientras que para jugador y cambiar rango de Chase será igual al miedo de los controles de punto de física. Y aquí estamos ante todo, les
dije que el centro será la posición transformada o la posición del enemigo. El radio sería el rango de persecución, y sólo vamos a estar persiguiendo lo que es Player? Genial. Entonces aquí dentro, lo siguiente no siempre estará vigilando. Entonces sólo si el jugador no está en rango de chinks, entonces estaremos vigilando. Y lo que haremos aquí es quitar todos estos espacios. Entonces estaremos vigilando. De lo contrario. Si, de lo contrario, si el jugador no es chinks range, entonces estaremos persiguiendo al jugador o el enemigo perseguirá al jugador. ¿ O sabes qué? Vamos, bueno, ¿qué es eso? Entonces para mantenernos consistentes, guardando plata, estamos persiguiendo jugador. Entonces esto mantendrá la consistencia y sabrás por qué más adelante la hemos escrito. Sway. Pero por ahora, sigamos adelante y creemos al jugador perseguidor y generémoslo. Entonces genera método, y quiero moverlo bajo resguardo. Entonces veamos eso. Y, y sí, entre la guardia y la búsqueda de destino. Entonces sigamos adelante y quitemos esto, y quitemos este poco espacio aquí. Y aquí dentro, lo que vamos a hacer es muy complicado porque simplemente vamos a establecer mi destino de conjunto de puntos de agente. Y va a ser la posición del jugador. Sí, eso es todo. Genial. Entonces ahora si vamos a nuestro juego, vamos al enemigo inteligente. Y aquí vamos a bajar a ver qué es el jugador o no creamos la capa. Entonces capas, edite capas, y vamos a crear la capa de jugador. De vuelta en nuestro jugador. Ahora es jugador. Sí. Cambió a los niños. ¿Dónde está? ¿ A dónde fue nuestro pequeño gung-ho y todo? Entonces por alguna razón, al parecer, no podemos ver al jugador. ¿ Por qué es eso? Bueno, porque el mixto aquí dentro no nos permite ver al Jugador O. Y antes de continuar, vamos a asegurarnos de que los ojos no sean el jugador, son invisibles. Ok, entonces con eso todo hecho, volvamos a nuestro inteligente enemigo. Ahora el jugador sólo está siendo perseguido. Y vamos a darle al jugador. Entonces dale el jugador aquí dentro. ¿ Qué más deberíamos estar haciendo? O? Por lo que esto es sólo para comprobar rango 40. Gama Chase. ¿ Cuál es el rango de persecución? Bueno, el rango de persecución será tal vez hagámoslo 40
o 20, o 30, hagamos 30. No estoy seguro de qué es eso. Así que hit play, Ops, hit play. Y ahora veamos qué pasa. Por lo que nuestro enemigo se mueve por ahí. Entonces definitivamente no estamos en el rango de persecución o si o no está funcionando. Entonces cuando nos acercamos Wo Puedes ver que en realidad está bien. Está bien. Está bien. Está bien. Está bien. Está bien. Entonces ahora está persiguiendo un así si huimos un poco, vale. Entonces ya no nos persigue. Muy agradable y no lo eran. Entonces Vamos, quiero matar a ese enemigo ahí. Y no se está muriendo porque está demasiado lejos para que
nuestro recast lo arregle más adelante en nuestro juego. Pero de todos modos, una cosa más que quería agregar es que en realidad queremos
intentar visualizar el perseguir que eran rango de persecución. Entonces la forma en que estamos haciendo esto es mediante el uso de algo llamado el vacío
privado en artilugio de dibujo,
en artilugio de dibujo seleccionado. Y lo que esto hace es que nos permita dibujar algo en los artilujos. Y si recuerdas qué son los artilujos, Es lo que me molestó hace un par de videos. Entonces está aquí. Estos son todos los iconos que están en la pantalla. Entonces, por ejemplo, ¿dónde está la cámara? Entonces la cámara, veamos si acercamos un poco. Entonces como puedes ver, estos dos son el artilugio, así que si aumentamos el tamaño, vale, entonces estos son demasiado grandes. Se puede ver que la cámara y el pequeño foco aquí aumentan de tamaño. Podemos disminuir de tamaño. Podemos apagar los iconos 3D, y esos son los artilujos. Entonces vamos a usar esto con el fin de dibujar un pequeño alambre alrededor del rango de persecución. Entonces la forma en que hacemos eso es ir a los artilujos. Elegimos color y puedes elegir el color que queramos usando punto de color. Y voy a hacer que el rango de persecución sea amarillo. Y vamos a escribir los artilujos dot draw wire sphere porque estamos usando una esfera. Por lo que esta será la posición transformada, que son los orígenes o el centro, y el radio será el rango de persecución. Entonces mira lo genial que sería esto ahora mismo. Entonces de vuelta en nuestro juego, deberíamos ver y somos enemigos inteligentes, vale, así que este es el rango Chase y ahora puedes ajustarlo en Seguro, ocio. Y sigamos adelante y hagamos esto privado aquí. Entonces enemigo AI, hagamos esto privado. Ya no lo usaremos ni lo necesitaremos. Sólo queríamos asegurarnos de que en realidad nos están persiguiendo. Por lo que de vuelta en nuestro juego, esta es nuestra gama. Nos pegamos al juego y todo debería estar funcionando completamente bien cuando nos
acercamos, podemos ver que empieza a perseguirnos. Muy bonito. Adelante y comprometamos todos esos. Por lo que de vuelta aquí, la puesta en escena URL. Vamos a decir que aquí dentro creamos un a i que persigue el desenfoque dentro de cierto rango. Seguro que hice un par de errores tipográficos tontos, así que comete todo eso. Genial. En el siguiente video, realidad
vamos a estar atacando al jugador a cierto rango. Entonces con eso hecho, espero que hayas disfrutado el video y te veré en el siguiente.
37. Ataque de rango: Bienvenidos de nuevo, mis compañeros desarrolladores de juegos. En este video, vamos a estar agregando un ataque al enemigo. Ahora por lo general en mis introducciones, empiezo mostrándote lo que hicimos. Pero como es tan divertido en este video, realidad lo
voy a mantener como sorpresa hasta que llegues al final. Y con eso dicho, no perdamos más tiempo y empecemos. De acuerdo, así que ahora mismo, nuestros enemigos simplemente siguen a nuestro jugador y él guarda el mundo que les rodea. Lo que queremos es que el enemigo realmente comience a atacar cuando nosotros, cuando llegue a cierto rango de nuestro jugador después de perseguirlo un poco. Entonces vamos a entrar en nuestro código. Y aquí dentro vamos a crear un par de variables. Entonces, antes que nada, llamaremos a esto el atacante. Y aquí dentro crearemos una flotación pública a esa gama. Y también crearemos un volumen privado para asegurarnos que el jugador y el rango, bien, genial, ya terminamos. Es hora de tu reto. Entonces sí, en cuanto iniciemos el video tienes un reto. Así que revisa a los jugadores y rango de ataque y luego crea declaraciones de giro para comprobar que la IA enemiga dentro de la actualización sea vigilando, persiguiendo o atacando. Pausa el video ahora mismo y sigue adelante y haz todo eso. Ok, bienvenido de nuevo. Entonces, ¿cómo te llevaste con eso? Ya hicimos todo esto. Por lo que el jugador en este momento necesita estar en el rango de ataque y vamos a crear un punto de física comprueba miedo. Y ahora la transformación, la posición del enemigo se quedará en el centro. Por supuesto, el rango de ataque será el radio y ¿qué es jugador? Entonces, ¿cuál es el jugador? ¿ Qué es el amor? Y lo siguiente que vamos a hacer es que en realidad vamos a cambiar aquí un par de cosas. Entonces, en primer lugar, vamos a revisar aquí si no estamos en la tasa de cambio en el rango de persecución y no estamos en el rango de ataque, pero no estamos en rango de ataque de capa profunda, entonces empezaremos a hacer jardinería. Pero si estamos en cadenas en rango de persecución y no estamos en el rango de ataque del jugador, entonces empezaremos a perseguir al jugador. Y en realidad creo que ni siquiera necesitamos esto más
aquí porque estamos siendo meticulosos con nuestras condiciones. Añadamos un espacio aquí. Y por último, si estamos en el rango de persecución de jugadores, ¿
y dónde termina? Estamos en el jugador de gama Tech, entonces vamos a estar atacando jugador. De acuerdo, entonces espero que tengas todo esto sólido para los ciegos. No te dije que necesitaremos quitar las L. Puedes conservarlo, puedes crear diferentes tipos. Si está funcionando, entonces es bueno. No tienes que hacerlo exactamente. Entonces ahora sigamos adelante y creemos el método de ataque. Por lo que generará el método de atacar a un jugador. Y aquí dentro vamos a, primer lugar, quiero moverlo. Entonces vamos a moverlo bajo la búsqueda de destino. Entonces estamos vigilando, persiguiendo y luego, está bien, así que atacando aquí, vamos a añadir un espacio. Y simplemente vamos a, primer lugar, vamos a conseguir nuestro nav,
nuestro agente, y vamos a fijar el destino como la posición de punto de transformación. Y lo que esto hace es que en realidad detiene al jugador, o me refiero al agente, que es el enemigo en sus huellas. Y entonces podremos empezar a disparar el proyectil que va a crear. Y una cosa más que haremos es que necesitemos realmente tomar la transformación y vamos a mirar al jugador. Por lo que queremos poder mirar al jugador cuando queremos empezar a atacarlo. Eso es obvio. Lo siguiente que queremos hacer es que queremos crear algún tipo de proyectil para atacar. Nuestro jugador con tendrá diferentes tipos de ataque. Pero ahora mismo vamos a crear algún tipo de proyectil o tal vez una granada de algún tipo. Seremos despedidos de nuestro enemigo y golpeamos al jugador y aplasta sombrero. Entonces sigamos adelante y hagamos eso. Por lo que de vuelta en nuestro juego. Y sigamos adelante y creemos un objeto de juego vacío. Y reiniciemos su posición. Entonces lo podemos ver aquí dentro. Y vamos a llamar a esto la granada. Y vamos a crear un objeto 3D, que es una esfera como su hijo. Y también vamos a crear un material
aquí dentro que vamos a duplicar del material de bala. Lo agregaremos al niño o a la esfera aquí mismo. Llamaremos a esto el material de bala tal vez NMI, NMI. Sí, seguro. ¿Por qué no tan enemigo material de bala. Y vamos a cambiar el color a tal vez azul. Y hagamos esto también azul. De acuerdo, entonces ahora tenemos este azul o disparando a nuestro jugador. Y en realidad vamos a seguir adelante y quitar el colisionador de esfera de aquí, se
puede agregar de inmediato. No, quitemos de aquí el colisionador de esfera. Y agregémoslo a la granada, el padre. Por lo que esto nos ayudará a tener un mejor control de nuestros objetos de juego. Entonces ahora tenemos este miedo. Es exactamente la misma forma de texto inmediatamente, pero está en el padre. También queremos agregar un cuerpo rígido. Por lo que ahora tendrá, se verá afectada por la gravedad, pero no sólo eso, podremos agregarle fuerzas. Y nosotros, lo que más quieres hacer es realmente queremos seguir
adelante y crear un rastro para esta granada. Sí, va a ser muy guay. Entonces, antes de que
hagamos eso, entremos a nuestras prefabs y nuestras balas. Adelante y un prefabricado, esta bala de granada. Entonces en la granada. Vamos a seguir adelante y añadir un componente, y vamos a añadir un Renderador de Trail. Entonces haga doble clic en la granada. Y aquí el, en realidad
podemos cambiar los materiales, así que vamos a elegir que opere, no,
esto es un material, así que este es el material de bala enemigo. Y ahora cuando nos movemos puedes ver que creamos un rastro detrás de nosotros y podemos hacer muchas cosas. Por lo que te recomiendo que te tomes tu tiempo y juegues con todas estas opciones y veas qué,
cuál te gusta más. Entonces, en primer lugar, vamos a reducir el tiempo. Entonces veamos 0.06 también. Hay un montón de cosas que podemos retocar por aquí para que quizá podamos hacer esto un poco más pequeño. En realidad, ¿sabes qué? Déjame abrir esto por su cuenta para que podamos jugar y verlo. Y la forma en que hacemos eso, vamos a guardar eso y hacer doble clic, mientras que las balas prefab, así que haga doble clic en la granada Y ahora jugaremos con ella. Y aquí por nuestra cuenta o no lo aplicamos. Perdón por eso, perdón por eso hasta así. Y ahora tenemos un Renderizador de Trail. Entonces ahora podemos ajustarnos aquí para que podamos hacer esto más pequeño y aumentemos el tiempo. Entonces hagámoslo cinco, manténganlo a las cinco para que no salga de inmediato. Por lo que ahora podemos crear este sendero aquí mismo. Podemos ajustarlo para que podamos hacer doble clic aquí y tal vez hacerlo más pequeño a medida que va. Y vamos a crear de nuevo la recta. Por lo que ahora se puede ver que tenemos este bonito efecto de aspecto y tal vez hacerlo un poco más pequeño. Incluso podemos ajustar la forma en que sube y baja. Entonces como pueden ver, estamos creando este sendero el cual se ve realmente bonito, no lo
tendrá como cinco segundos. Entonces vamos a mantenerlo a 1 segundo. Entonces esto es todo, por ejemplo. Y no se va a ir tan pronto como queramos. ¿ Y qué más deberíamos estar cambiando aquí? Entonces creo que esto es todo. Por lo que sólo queremos ajustar el ancho y queremos ajustar el tiempo. Entonces esta es nuestra bala a medida que se mueve. Y no, creo que el rastro es largo
de EBIT, claro que lo estará cambiando más adelante mientras empezamos a lanzarlos. Pero sí. Entonces deberíamos la bala y ahí pasa por boo, boo. Ah, está bien. Tal vez incluso menos es mejor. Está bien, genial. Entonces esta es nuestra bala. Esto es, esta es la bala de los enemigos, la granada de enemigos, si lo fueras, si quieres. Y lo siguiente que vamos a hacer es ir al guión del enemigo inteligente. Y en el ataque jugador querrá realmente instanciar cuando estemos en el rango. Entonces cuando queremos estar atacando, queremos seguir adelante e instanciar una o, por lo que no conseguimos una referencia. Entonces sigamos adelante y creemos aquí una referencia. Entonces este va a ser un objeto de juego público. Y va a ser el proyectil de ataque. Y leemos proyector, proyectil de ataque. Y aquí abajo vamos a conseguir el proyectil. Entonces, ¿qué retroproyector? Va a estar en la posición transform.py. Y la rotación será la identidad cuaternión. Y usaremos este cuaternión, esa identidad porque ya estamos mirando al jugador. Entonces ahora guardemos eso y visualicemos también esto. Por lo que aquí abajo en el gizmo onDraw select, vamos a elegir el gizmos color punto para ser igual al color dot read, creo que sí, el rojo es una buena la ocasión de atacar. Entonces los gizmos copian esto, es lo mismo. Copia esto, pegarlo aquí. De acuerdo, así que aquí está rango de ataque. Ahora bien, mientras que así cambia rango, rango de
ataque, es negativo. Entonces ahora este será el rango de ataque. Entonces vamos a probar esto. Nos pegamos al juego. Nos acercamos al enemigo. Va hacia nosotros y luego se detiene. Por lo que cuando vamos a la escena, se
puede ver que se detiene en cuanto el jugador entra en el rango de ataque y mira. También el problema es que no hemos asignado nada. Sí. Entonces, pero de vuelta en el jugador aquí, el proyectil de ataque, vamos y le damos la granada. De acuerdo, así que vamos a guardar eso. Quitemos la granada. ¿ Aplicamos todos los cambios? Sí. Entonces vamos a quitar la granada para de nuestra escena, salvo que tenía Play. Y ahora no creo que esto sea visible todo k Así que obviamente, ¿estás bien? Oh Dios mío. Entonces creo que mi juego está a punto de estrellarse. Por lo que como puedes ver, tiene un poco de senderos. A lo mejor podemos cambiarlo. Whoa, en serio, vamos, mira. Incluso caminar sobre ellos. ¿ Qué tan guay es eso? Y todo se está cayendo. Entonces con eso hecho en el siguiente video, realidad
vamos a ajustar estos proyectiles y tal vez parar de los movimientos jurados. Por lo que obviamente necesitamos ajustar la dirección y necesitamos agregar algún tipo de fuerza de la norma. Por lo que no esperaba esto honestamente cuando lo probé por mi cuenta y no fue tan guay. Entonces con eso dicho, te
veré en el siguiente video.
38. Proyectivo Enemy: Bienvenidos de nuevo, mis compañeros desarrolladores de juegos. En este video, en realidad hemos arreglado a nuestros enemigos incorruptibles, habilidades de lanzamiento calvo. Por lo que ahora simplemente nos lanza y a cierto ritmo y con gran precisión. Podría agregar así que dispara o aspecto, todavía
podemos holandeses m Así que en este video vamos a estar potenciando nuestra IA va a reducir la cantidad de balas que bien puede,
vale, lanzarnos a nosotros. Y también los dirigirá hacia nuestro jugador. Con eso dicho, no perdamos más tiempo y empecemos. Oh, bien, entonces el primer paso que
queremos hacer es realmente queremos ir a la granada aquí dentro. O en realidad vayamos a los guiones y sigamos adelante y
creemos un controlador de proyectiles enemigo. Por lo que crearemos un controlador de archivos de proyecto enemigo. Hit Enter. Sí, claro. Y espere a que se compile. Y ahora sigamos adelante y vayamos a nuestras balas, abran la granada. Vuelva al guión, y vamos a adjuntar esto. Hagamos este rastro un poco más pequeño y coloquemos aquí el proyectil enemigo. Entonces por favor déjame agregarte en algún lugar de aquí. Entonces, está bien. Por lo que ahora tenemos este control de proyectiles enemigos adherido a nuestra granada o a la granada enemiga. Hagamos doble clic y abramos esto. Entonces aquí lo que vamos a hacer es realmente ir adelante y sumar un par de fuerzas a nuestra bala para que salte hacia el jugador. Por lo que para sumar fuerzas se necesitará acceder al cuerpo rígido. Porque vamos a utilizar este cuerpo rígido punto agregar fuerza. Y hace exactamente lo que dice. Agrega una fuerza al cuerpo rígido. Puedes elegir la cantidad de fuerza que quieres agregar con un factor de tres. Y puedes elegir el modo del cuarto año de la fuerza. Vamos a estar sumando una fuerza de impulso. Entonces que la fuerza esté contigo, y empecemos esto. En primer lugar, obtenemos una referencia al cuerpo para que podamos seguir adelante y crear un cuerpo rígido y lo tenemos como componente. Por lo que mi cuerpo rígido, podemos acceder de inmediato a él. Y vamos a crear un público. En realidad, vamos a crear dos variables aquí. Por lo que uno de ellos será la fuerza aplicada y uno de ellos será la fuerza delantera. Por lo que esto, estas dos fuerzas se sumarán a nuestro proyectil y saltará en cierta dirección, que debería ser el jugador. Entonces y aquí, en primer lugar, vamos a conseguir los componentes de mi cuerpo rígido serán iguales al componente get y al cuerpo rígido. Por lo que ahora tenemos acceso. Y lo siguiente que vamos a hacer dentro de inicio, vamos a crear un método que lanzará granadas. Y vamos a seguir adelante y generar este método. Por lo que tan pronto como se instancie esta granada o este proyectil, inmediatamente
vamos a seguir adelante y añadir una fuerza a mi cuerpo rígido punto añadir una fuerza y el transformador punto hacia adelante. Por lo que en la dirección hacia adelante tiempos la fuerza hacia adelante. Y va a ser un modo de fuerza de impulso. Entonces es un impulso, modo
fuerza, impulso puntual. Por lo que no es continuo. Ajusta, golpea la pelota y luego vuela en la dirección que necesita ir. Y la dirección es calculada por la unidad es física. Y aquí dentro vamos a sumar una fuerza, lo que en la dirección arriba u y multiplicada por la fuerza también, también
va a ser un impulso de fuerza. Guardemos eso. Y ahora sigamos adelante y asignemos esta fuerza arriba y fuerza de avance. Y aquí dentro vamos a hacer que el AP fuerza alrededor de las ocho y la fuerza de avance alrededor de 32. Guardemos eso, y probemos esto. Ahora. Obviamente, esto no va a funcionar. tanto que r pequeños munchkins, por lo que dispara bolas increíbles. Así que las bolas son realmente algo para contemplar, pero esto no es lo que queremos. En realidad queremos arreglar dos cosas aquí. Entonces, en primer lugar, queremos cambiar la dirección. Y en segundo lugar, queremos realmente controlar la cantidad de disparo de nuestras bolas. Entonces sigamos adelante y te mostremos un reto. Por lo que tu reto es controlar la velocidad de disparo de nuestro enemigo. Entonces crea una co-rutina que esperaremos un cierto tiempo antes de que esté lista para archivar. Si ya sabes hacer esto y ya lo hemos hecho, pausa el video ahora mismo y ve a hacer el reto. Si no, déjame darte un par de eventos. Así que crea un tiempo de ataque y crea un booleano para comprobar si el enemigo está listo para disparar. Así que pausa el video ahora mismo y ve a hacer el reto. Oh, bien, bienvenido de nuevo. Entonces al enemigo vamos. Y aquí dentro vamos a crear el primero de todo, el tiempo de ataque. Entonces va a ser un flotador público, para que podamos ajustarlo si queremos. Y luego vamos a añadir un, ¿dónde está el booleano aquí me acuerdo. Por lo que vamos a sumar un listo también en Tech. Guarde eso. Ahora sigamos adelante y creemos un recubrimiento. Por lo que la co-rutina esperará a que termine
el tiempo de ataque y luego volverá a establecer el ataque listo a verdadero. Entonces, ¿dónde debemos ponerlo? Pongámoslo aquí. Por lo que enumerador. Entonces yo enumerador, y llamaremos a esto la tachuela de reinicio. Y aquí vamos a ceder retorno, nuevo, esperar cuatro segundos, y va a ser el tiempo de toma. Y cuando terminemos este tiempo de ataque van a volver a hacer realidad los listos para atacar. ¿ Y dónde vamos a poner esto en falso y Encala la co-rutina? Bueno, y aquí después de
instanciarnos, Vamos a seguir adelante y ¿cómo se llamaba? El listo para atacar. De acuerdo, así que listo para atacar será igual a falso. Y luego vamos a
empezar, arrancar el recubrimiento y va a ser el ataque de reinicio. Y como paso final, por supuesto, necesitamos hacer imposible que nuestro enemigo
pueda disparar a menos que esté listo para disparar. Entonces sigamos adelante y creemos esta condición aquí que establece la renta, nos
permite solo instanciar cada vez que estemos listos para atacar. Entonces volvamos a nuestro juego y aquí, vamos a nuestro enemigo inteligente. Y hagamos que la hora de ataque sea nuestra ronda uno. Entonces esto debería estar limitando nuestro ataque o los ataques del enemigo. Entonces le pegamos al juego. Nos acercamos al enemigo. Nos mira y no dispara para nada. Entonces lo que da, creo que es porque están listos para atacar ya es falso. Entonces aquí arriba, sigamos adelante y pongamos lo listo para atacar para que sea cierto al principio como su valor predeterminado. Y ahora sigamos adelante e iniciemos el juego. Jugar. Vamos, hit play. Y nuestros enemigos deberían estar disparando cuando nos acerquemos. Oh, bien, genial. Pero algo sigue mal. Por lo que parece como si no nos estuviera disparando. Está disparando en algún tipo de dirección rara. Entonces cambiemos eso. Entremos a nuestros guiones. Y aquí dentro, no creo que deba ser cuaternión. Creo que debería serlo. Cambiemos esto por la transformación, la rotación local. Entonces esto definitivamente, oops, rotación local. Por lo que de esta manera definitivamente estará señalando hacia nosotros. Entonces ahora golpeamos play y cuaternion que la identidad suele ser para la posición mundial, ok, entonces la rotación mundial. Entonces ahora puedes ver que en realidad nos disparó uno y luego pasa algo raro. Entonces intentemos esto otra vez. Nos acercamos y no, nos
disparó uno, pero algo anda mal, así que algo no está funcionando. Y algunos de ellos están disparando muy extrañamente y algunos de ellos no están funcionando. Entonces ahora el problema es,
es que nuestra granada antes de que realmente lanzara palabras son jugador se está quedando atascado por el colisionador sobre el enemigo. Ahora podemos quitar el colisionador al enemigo, pero entonces ¿cómo vamos a matarlo? Entonces lo que haremos es crear una capa aquí dentro. Por lo que vamos a editar las capas, vamos a crear un enemigo pero jet táctil. Y algo muy cool de estas capas es que en realidad podemos ir a la Configuración del proyecto. Y vamos a desacoplarlo aquí. Vayamos a nuestra física. Y aquí dentro se puede ver que tenemos esta gran matriz. Y lo que esta matriz nos permite hacer es
impedir que ciertas capas interactúen con otras capas. Entonces, por ejemplo, tenemos aquí el proyecto enemigo, y éste interactúa con todo. Y debido a que nuestro enemigo inteligente está en la capa predeterminada, podemos seguir adelante y apagarnos. Apagemos todo y mantengamos la interacción solo con el suelo, con el jugador y con otros proyectiles enemigos. Entonces, vamos a guardar eso. Y ahora creo que si jugamos eso, dijimos la granada como proyectil enemigo. No, no lo hicimos. Entonces capa y nosotros proyectil, Sí, cambió niños. Vamos a jugar. Y ahora cuando nos acercamos al enemigo, nos dispara directamente y
no hay nada que salga mal con el movimiento del proyector. Genial. Con eso hecho, lo haré, vamos a asegurarnos de que tal vez algunos de ustedes se encuentren con este problema. Ve si no puedes ver las balas, ve a la máscara de mateo y asegúrate de que el enemigo sea, bueno el proyectil enemigo lo puedes ver, no es invisible. Entonces con eso dicho, espero que hayan disfrutado el video. Y el siguiente estará agregando un enorme monstruos de miedo con un enorme robot. Bueno tal vez el robot no sea tan grande. Pero de todas formas, espero que hayas disfrutado el video y te veré en el siguiente.
39. Reproductor de ataque meloso: Bienvenidos de nuevo a mis compañeros desarrolladores de juegos en un video muy largo, pero valdrá el 100% porque ahora no solo tenemos algún estúpido cilindro que anda por ahí tratando de matarnos. Tenemos este robot complicado realmente genial, y también tenemos este monstruo aterrador realmente genial. Cuando golpeamos el juego. Veremos que estos monstruos caminan por ahí. Nos persigue, nos golpea, y si nos escapamos, sigue haciendo jardinería hasta que nos encuentra de nuevo. Detengan eso. Por lo que nos encuentra de nuevo y empieza a golpearnos de nuevo. Podemos dispararle y matarlo. También tenemos a este robot caminando por aquí. Entonces si nos encuentra un inicio disparando a nosotros también, y no hemos sumado la capacidad de destruirlo, pero lo haremos más adelante. Entonces, no perdamos más tiempo. Este video es lo suficientemente largo, pero como viste, vale la pena. Entonces ahora tenemos monstruos de la vida real y nuestro patio de juegos. Con eso dicho, no perdamos más tiempo y empecemos. Oh, bien, entonces ¿qué vamos a hacer en este video? Vamos a sumar la capacidad para que nuestro enemigo nos ataque cuerpo a cuerpo. Entonces, o bien podemos hacer eso con este pequeño cilindro aquí mismo o podemos seguir adelante y agregar un MI aterrador. Entonces la forma en que vamos a hacer eso es a menos que vayamos a la Tienda de Activos de
Unity y busquemos a la criatura fantástica. Número uno, es un activo gratuito en el codirector de la Tienda de
Activos de Unity y agregado a tus activos. Y debería aparecer. Entonces y también debes asegurarte de que estás registrado o de lo contrario esto no funcionará. Entonces cada vez que lo hagas agréguelo a tus activos e ingresa a tu gestor de paquetes, asegúrate de que estés en los mis activos y tendrás a la fantástica criatura con eso. Adelante e importarlo. Y sí, importar todo. Entonces es bajo el nombre verdadero horror, algo. Así que espere eso en Port au. De acuerdo, bienvenido de nuevo. Entonces tenemos aquí a esta verdadera criatura de terror. Entonces vamos a arrastrarlo y ponerlo bajo los activos de juego o caso. Entonces aquí, entremos a la criatura de terror. Y se puede ver que aquí tenemos muchas cosas. Por lo que este monstruo en realidad viene con sus propias animaciones, con su propio colisionador de malla y con sus propios guiones. Entonces vamos a entrar en la prefabulosa. Y este es el monstruo que vamos a sumar. Entonces antes de que hagamos eso, sigamos adelante y creemos un objeto de juego vacío. Y lo llamaremos el monstruo. Y reiniciemos la posición. Ponlo aquí, y sigamos adelante y sumamos el prefabricado. Así que asegúrate de que estás en las prefabs y sigue adelante y agrega el THC como el hijo del monstruo. Entonces ahora tenemos al pequeño monstruo justo aquí. Entonces como puedes ver, tiene un controlador de animador,
un Controller de caracteres y animador y algunos guiones. Por lo que necesitarás quitar todo eso. Pero antes de que hagamos eso,
lo siento, hay que ir al prefabricado y desempacar por completo. Por lo que ahora puedes seguir adelante y quitar todos los componentes que están en el. Niño. Y luego ve al monstruo y termina aquí. Adelante y vayamos a HCI. Vamos a restablecer la posición de nuestro monstruo. Y en monstruo aquí, sigamos adelante y sumamos un componente. En primer lugar, vamos a añadir un colisionador de malla. Por lo que este colisionador de malla agregará un colisionador a nuestro monstruo. Y como puedes ver, el colisionador de malla es al revés. Eso es por la rotación de nuestro hijo. Así dijo la rotación a 0, y ahora el colisionador de malla debe estar exactamente en el monstruo. Por lo que ahora puedes ver visiblemente cómo funciona este colisionador
de malla, claro que lo llevará más adelante como enemigo. Pero por ahora, vamos a sumar otro componente y va a ser el enemigo. Ai también seguirá adelante y agregará agente de mash nav. ¿ Qué más deberíamos estar agregando? A ver, este es nuestro agente de malla suficiente. Y también agregaremos un animador porque estaremos animando a nuestro enemigo más adelante. Entonces, ¿qué es tierra? Pongamos esto como el suelo. ¿ Cuál es el jugador pondrá esto como el jugador, le
dará la transformación del jugador. Nosotros, él tiene destino establecerá un cierto rango que tal vez va a perseguir cambiará más adelante. A ver, agregamos un rango de persecución. Y antes de hacer eso, en realidad
queremos seguir adelante y escalar a este enemigo. Entonces déjame volver a poner esto a 0 antes de que hagamos eso. Y todo esto, restablecerlo. Y pongamos la escala a, digamos tal vez ocho por ocho. Entonces ahora tenemos un gran monstruo gigante. Y si estas líneas verdes te están molestando, en realidad
puedes seguir adelante y cerrar esto. Y tenemos a nuestro monstruo. ¿ Cómo, qué guay es eso? Entonces con eso hecho, sigamos adelante. Entonces ahora sigamos adelante y aumentemos el rango de persecución. Entonces hagámoslo así de grande, tal vez más grande. El rango de ataque en realidad debería ser un poco más pequeño. Entonces debido a que este enemigo en realidad no estará disparando nada a cierta distancia, solo nos
estarás atacando usando sus garras. Y lo haremos en un poco. Vamos también al agente de malla NAV y necesitamos asegurarnos de que sea un grande, incluso
podemos aumentar el, aumentar el radio aquí para llenar todo
el Monster y tal vez solo darle un poco de calor. Está bien, genial. Entonces ahora tenemos monstruo enorme. Hagamos el radio uno en realidad. Y lo siguiente que vamos a hacer, vamos a etiquetarlo como el enemigo. Por lo que agregamos la etiqueta enemiga aquí. ¿ Y qué más deberíamos estar haciendo? Tenemos que crear un animador para nuestro enemigo. Y no necesitamos añadir ningún proyectil, pero esto nos dará un poco de problema más adelante. Por lo que para sumar las animaciones a nuestro enemigo conjunto, necesitamos primero entrar en nuestras animaciones. Crea una carpeta aquí dentro, y lo llamaremos las animaciones de monstruos. Y sigamos adelante y creemos un controlador animador. Y lo llamaremos el monstruo. Y ahora queremos seguir adelante y conseguir las animaciones que se proporcionan con el monstruo. Ahora si entramos a donde z, así en las verdaderas criaturas de terror dentro de aquí, se
puede ver que tiene todas estas animaciones y se pueden echar un vistazo. A ver si esto aparece aquí. Pongámoslos aquí arriba. Entonces este es el árbol de las animaciones, y obviamente es súper complicado. Y este enemigo en realidad viene con su propio guión y todo eso. Pero queremos cambiar las cosas. Entonces todo en lo que necesitamos es la animación caminante y animación de ataque V. Por lo que nuestro enemigo estará caminando por ahí. Y mientras anda por ahí, cuando encuentre al jugador, se acercará a él o lo perseguirá. Y cuando esté en el rango de ataque, empezarás a acariciarlo. Entonces busquemos la animación caminante. Haz que todos estos símbolos sean más pequeños usando el deslizador aquí. Y vamos a ver. Entonces vamos a caminar y vamos a duplicar la caminata. Y entonces tomaremos esto. Y vamos a entrar en nuestro, dónde están nuestras animaciones y arrastrarlo a la animación monstruo. Entonces, siempre que quieras usar una de las animaciones aquí, asegúrate de que debería duplicarla y luego configurarla en tu propia carpeta de animación. Ahora entremos a nuestras animaciones de monstruos. Ve a Monster. Y aquí dentro vamos a sumar la animación de caminata. Por lo que este será nuestro estado por
defecto, por defecto para el monstruo. Y entremos al monstruo. Démosle al controlador. Por lo que el controlador de monstruo será el controlador de nuestro monstruo. Y también necesitaremos asegurarnos de que dijimos el avatar y aquí. Así que da click en el pequeño círculo y aquí y elige el avatar de seis THC. Entonces haga doble clic en eso. Y lo que esto hace es que en realidad permite la animación caminante vaya y maneje todas las diferentes piezas de nuestro enemigo. Entonces volvamos a acercarnos aquí y veamos a nuestro enemigo. Se puede ver que tiene la armadura de arco en la parte superior de eso es tan grosero. Se puede ver que tiene patas delanteras. Piernas delanteras, ¿verdad? Tiene la llave y toda la saudita. Volvamos aquí. Por lo que el avatar nos permite realmente controlar eso. Entonces ahora vamos a golpear juego y ver cómo se ve nuestro enemigo. Entonces vamos a ver. Sí, anda por ahí, pero parece estar haciendo el Paseo de la Luna. Si nos acercamos a
él, nos mira y camina hacia el jugador, carenado Nas. Entonces ahora como viste, espera, déjame solo probar esto una vez más. A ver, está caminando en su lugar, y eso se debe a que el rango de destino es 0. Entonces hagámoslo 100 a arriba. Y ahora anda por el mundo, pero a un ritmo muy lento. Entonces si nos acercamos a
él, empieza a caminar hacia nosotros. Abramos el agente de malla de nav muffin y quizá hagamos este diez. Entonces veamos cómo se ve eso. Sí, así que nuestro enemigo está caminando alrededor del mundo. ¿ Dónde está? Está bien, bien. Para que veas que nuestro enemigo camina por ahí. Él patrulla por todas partes, y también persigue a nuestro jugador cada vez que nos acercamos. Entonces, obviamente, hay un par de cosas que necesitamos arreglar. Entonces simplemente caminamos casualmente por nuestros cubos justo aquí. Pero no se preocupe por eso por ahora, sigamos adelante e implementemos el ataque cuando llegue al jugador. Entonces volvamos a poner esto a diez, a diez. Y pongamos el rango de destino a 100. Entonces, ¿qué vamos a estar haciendo ahora? Vamos a utilizar la animación de ataque que nos proporciona en el juego. Pero antes de hacer eso, necesitamos asegurarnos de que esto sea un, un atacante principalmente y no sólo un lanzamiento de proyectiles. Entonces para hacer eso, necesitamos ir a nuestros guiones. Y aquí dentro vamos a crear el cuerpo a cuerpo al atacar. Entonces, solo llamémoslo el malayo. Y vamos a crear un booleano público que será el atacante malayo. Por lo que esto asegurará que nuestro enemigo actualmente sea un atacante cuerpo a cuerpo. Vuelve aquí y revisa el ataque malayo. De acuerdo, genial, así que guarde eso. Y vayamos con el enemigo inteligente y nos aseguremos de que no sea un mero atacante. Está bien, genial. Ahora de vuelta aquí, lo que vamos a hacer es que en realidad vamos a seguir adelante y crear un camino. Y vamos a evitar que nuestro ataque un jugador arroje o instancie las granadas. Si es varón, el atacante, así que si Meli atacan cierto, eso significa que todo
este, esta condición aquí es falsa y toda esta condición no funcionará. Por lo que no estaremos instanciando. Estaremos haciendo otra cosa. Estaremos activando una animación siempre que queramos atacar. Entonces lo primero que necesitamos hacer es conseguir la animación y eso va a ser parte de tu reto. Tu reto es agregar la animación de ataque. Entonces déjame mostrarte eso de vuelta en Unidad. Vayamos a la verdadera criatura de terror. Puedes entrar aquí. Vamos a hacer doble click aquí para que veas que tiene múltiples ataques para que uno abra la vista previa y nosotros dentro. Entonces tiene este ataque, tiene el ataque a, y tiene los ataques tres. Entonces usaremos el ataque tres porque es con ambas manos y es mucho poderoso. También tiene un golpe de poder. O. Entonces es cuando lo golpeamos. Está bien, genial. Entonces usaremos el ataque tres, asegúrate de que eso debería duplicarlo. Y déjame volver al reto. Por lo tanto, agrega la animación de ataque al animador monstruo, haz posible la transición con un gatillo. Entonces hemos aprendido lo que es un booleano. Hemos aprendido a usar un flotador y ahora es el momento de que un gatillo para que lo descubras. Después agrega un tiempo de salida a la transición de vuelta. Por lo que crearás una transición de caminar a atacar. Y eso no debería tener tiempo extra ni tiempo de transición. Después crearás una transición de regreso del atacante y al caminar. Y eso debería tener un tiempo de salida. Y te diré por qué más adelante. Y luego usa el gatillo establecido para activar la animación si el enemigo es un atacante cuerpo a cuerpo. Por lo que necesitarás obtener una referencia al Animador. Y en tu IA, un guión, no necesitarás configurarlo. Y entonces necesitarás realmente desencadenar cuando atacemos, si somos un atacante cuerpo a cuerpo. Así que pausa el video ahora mismo y ve a añadir la animación o la animación de ataque a nuestro enemigo. Ok, bienvenido de nuevo. Entonces vamos primero que nada duplica el ataque tres, y vamos a añadirlo a las animaciones de monstruos e ir al Animador. Y sumémosle éste aquí. Por lo que vamos a crear una transición de la caminata al atacante. Y como les he dicho, tenemos que quitar el tiempo de salida. Y vamos a establecer la transición a 0. Lo cambiaremos más adelante en base a cómo se ve nuestro juego. Ahora necesitamos agregar la condición para hacer eso aquí. Haga clic en este plus ahora mismo, haga clic en el gatillo y lo llamaremos el ataque. Entonces ahora tenemos un gatillo que disparará. Por lo tanto, agrega una condición para atacar. Lo siguiente que vamos a hacer es crear una transición de regreso de atacar a caminar. Y vamos a quedarnos con estos como están aquí mismo. Y vamos a guardar eso. Ahora necesitamos entrar realmente en nuestro código. Y aquí dentro vamos a crear una referencia a nuestro animador. Por lo que nuestro animador llamará a esto mi animador. Y en el inicio, vamos a conseguir los componentes. Por lo que mi animador será igual al animador de componentes get. Y eso es todo. Ahora podríamos encontrar un problema aquí. Y ese problema es que el enemigo inteligente no tiene en realidad ningún animador sobre él. Entonces si vemos ese problema, lo
arreglaremos, lo arreglaremos. Pero más adelante en este video, realidad
vamos a intercambiar el cilindro enemigo inteligente por un robot más mirando. Entonces lo que han hecho, lo que hacen. Entonces este es el atacante malayo. Y entremos aquí. Entonces si estamos listos para atacar, de lo contrario, si estamos listos para atacar y somos un atacante cuerpo a cuerpo, entonces vamos a conseguir mi animador. Vamos a poner el gatillo. Y ese gatillo se va a llamar el ataque. Ahora esto es una referencia de cuerda, pero ataque debería ser una palabra muy fácil de recordar. Entonces, asegurémonos de que sea lo mismo. ¿ Y por qué te digo eso? Siempre hay que asegurarse de que la referencia de cadena sea correcta porque no aparece como un error. Entonces no tienes idea de por qué algo podría no estar funcionando. Y confía en mí, toma mucho tiempo
descubrir que has escrito una letra mal y aquí, así que siempre trato de copiar una referencia de cadena. ¿ Se hizo eso? Y sigamos adelante y probemos esto y veamos si funciona. Por lo que de vuelta en nuestra escena, tenemos juego.
40. Reproductor de ataque meloso: A ver si funciona. Por lo que de vuelta en nuestra escena, jugamos a nuestros enemigos caminando por
ahí, nos encuentra, nos persigue, y empieza a golpearnos. Oh, bien, muy bonito. Pero como puedes ver, es un poco peculiar, Así que es un poco raro con su ataque. Entonces pongamos aquí al animador para que podamos verlo. Por lo que puedes ver que va hacia atrás y ahora empieza a caminar de nuevo Normalmente encontrando sus destinos y así sucesivamente. Entonces nos acercamos. Nos persigue, empieza a pegarnos. Y el otro enemigo también está aquí. Entonces detente eso. Y veamos cuál parece ser el problema. Entonces creo que esto sólo necesita un poco de ajuste en la animación. Así que asegúrate de que la transición aquí sea 0.25. la mantiene, dale el tiempo de salida tal como está, ya que el tiempo de salida se calcula cuando termina la animación. Y aquí dentro, tal vez deberíamos el tiempo de transición para ser 0.25. ahorremos eso. Probemos esto otra vez. Queremos que la animación sea sin problemas, pero así camina hacia nosotros y sí, sí, así que ahora se puede ver que la animación se ve realmente bonita y podemos matarlo también porque es nuestro enemigo. Entonces lo último que quiero hacer es realmente quiero crear un método
aquí dentro que voy a llamar al vacío
público daño malayo. Y vamos a llenar esto más adelante. Pero si nuestro jugador es un alcance de ataque, entonces vamos a dañar al jugador más adelante y más adelante. Es decir, en la siguiente sección cuando vamos a estar agregando el sistema de salud a nuestro jugador y a nuestro enemigo. Entonces con eso hecho, el siguiente paso es realmente seguir adelante y agregar aquí el botón de rol. Entonces esperaremos a que esto se compile. Está bien, genial. El siguiente paso es agregar el robot. Entonces vamos a entrar en nuestros recursos y dejame solo mostrarte de dónde conseguí mis pequeños robots. Por lo que fui al 3d.com gratis y encontré este robot de aspecto fresco. Ahora es gratis. Puedes descargarlo, descargarlo como unidad, o puedes seguir adelante y usar los recursos. Este también es un sitio web muy bonito si alguna vez quieres encontrar activos 3D geniales para agregar a tu juego. Entonces en nuestros recursos, vamos al robot y tendrás este tipo de paquete Unity. Por lo que simplemente arrástrelo a Unidad. Y oops, nope, déjame sólo ir a mi proyecto. Y ahora volvamos a los recursos. Arrastra nuestro robot. Dónde debemos ponerlo en unidad y ponerlo dentro de bienes e importar todo eso. Entonces ahora esto es importador y OK, Así que de vuelta en los activos, tenemos este partido de cuello. Walker simplemente lo arrastra a los activos del juego. Por lo que dentro de los activos de juego, tendremos nuestra malla de cuello Walker que es doble clic y ver qué tenemos aquí dentro. Entonces hagámoslo un poco más grande. Entonces básicamente vamos a hacer lo mismo que hicimos con el monstruo. Entonces, antes que nada, vamos a, duplicemos al enemigo inteligente. Y apaguemos éste por ahora, y tendremos éste y aquí. Entonces déjame cerrar esta herramienta. Este será el enemigo robot. Y aquí dentro, veamos qué tenemos. Entonces tenemos todo esto. No necesitaremos la cápsula, no
estaremos necesitando el cilindro no estará necesitando el renderizador de malla. Y sólo necesitaremos la IA enemiga y la malla de navegación. Entonces ahora llevaremos a este robot y lo pondremos bajo el enemigo robot. Echemos un vistazo a eso o bonito. Entonces este es nuestro enemigo robot el que se aplaste. Y está machacado porque tiene una escala de 1.6. Entonces vamos a bajar eso y ahora tenemos este robot no machacado. Lo siguiente que vamos a hacer es que en realidad vamos a seguir adelante y desempacar el prefabricado por completo, moverá un poco a tierra este robot. Entonces, sí, eso se ve bien. Por supuesto que vamos a quitar aquí al animador y vamos a estar accediendo a él en el padre. Y no es un atacante masculino y tendrá una granada. Por lo que este enemigo se ve bien. Lo siguiente que vamos a hacer es que en realidad vamos a seguir adelante y usar todas las animaciones que tenemos para nuestro robot. Entonces vamos a caminar. Y vamos a ver, vamos a hacer esto más pequeño. Y no, eso no ayudó en absoluto. Tenemos que hacerlo aún más pequeño. Entonces aquí abajo se puede ver que estas son todas las mallas para las piernas y así sucesivamente. Y ahora vamos a entrar en el, vamos a entrar en las animaciones cercanas. Vamos a crear una carpeta. esto lo llamaremos las animaciones de robots. Y si sientes lo cierto, puedes seguir adelante y hacer esto por tu cuenta. Te animo a que sigas adelante y hagas esto. Ya aprendimos cómo podemos crear animaciones para que estés a salvo. Eso ha cambiado este nombre largo por el cuerpo del robot, y vamos a cambiar esto por el monstruo bot. Entonces cuerpo robot, animación robot. Vamos a crear un controlador de animador. Llamaremos a esto el robot. Y vamos a seguir adelante y sumar esto aquí. Entonces cuando pongamos el robot y el emisor, lo tendremos. También necesitaremos agregar el, por
supuesto, avatar aquí al animador lo ahorrará. Ahora vamos a ver el pergamino esto hacia abajo. Vayamos al Walker y nuevos, busquemos algún tipo de salto. Nos hemos arriesgado. Tenemos muchas animaciones aquí dentro. Entonces si quieres ir a buscar todos ellos, te animo si puedes crear mejores animaciones, solo
quiero hacer lo básico aquí dentro y podemos querer, así que vamos a hit play, veamos eso. Entonces sí, parece agradable. O la caminata hacia adelante o sí, me gusta este más sin alma. Duplicar este. Y arrastrémoslo a las animaciones del robot. Y pongamos al animador aquí arriba. ¿ Y dónde estamos? Entonces, pongamos aquí las animaciones enemigas. Entonces ahora deberíamos ver cuando golpeamos play que nuestro robot está caminando. Entonces, vamos a asegurarnos de eso. Y mientras se mueve
y camina y se me acerca y en realidad empieza a dispararme,
así que Oh, detente, detente, detente. Está bien. Por lo que al menos es una especie de caminar. Entonces volvamos a ver qué está pasando. Y aquí le pegamos a juego. Echemos un vistazo a nuestro robot. De acuerdo, así que caminaba, ¿no? Acabo de verlo caminando de peso. Ni siquiera está activando la animación. Entonces, ¿por qué es eso? De acuerdo, entonces este es el problema. Es muy sencillo. Tenemos que ir a la animación aquí dentro y asegurarnos de que sea un lazo. Entonces ahora cuando golpeemos el juego, el robot estará caminando y él está haciendo algún tipo de paseo raro. Entonces para arreglar eso, vamos al robot. Creo que se trata de la rotación. Entonces algún extraño problema de rotación. Y veamos, veamos,
veamos quizá su rotación debería estar en la y, así como así. Entonces pongámoslo a 90 grados, salvo que tenía jugada. Y el robot está caminando en la dirección correcta. Entonces ahora tenemos estos dos monstruos y en realidad los brotes somos nosotros. Pero vamos a cambiar el tiroteo ahora mismo de la caminata porque actualmente sigue caminando y realmente nos saca del juego cuando hace eso. Entonces lo que vamos a hacer es que vamos a entrar de nuevo al robot. Entonces donde z aquí dentro, veamos, tiene el ataque en alguna parte. Tan ocioso para, sí, éste se parece al que usaremos para el atacante. Vamos a duplicar eso, y vamos a moverlo a nuestra animación robot. Entonces este video es un poco largo, lo sé, pero estamos haciendo las cosas meticulosamente. Entonces eso se movió el respaldo del animador aquí. Vamos a añadir el inactivo. Por lo que éste será utilizado para el ataque. Vamos a crear una transición, una transición hacia atrás ya hemos hecho todo esto,
se eliminará el tiempo de salida y vamos a añadir un gatillo que llamará también al ataque. Entonces lo mantendremos igual y le agregaremos una condición aquí. ¿ Están condicionadas para atacar? Muy bonito. Y las animaciones serían 0.5. ¿qué más deberíamos estar haciendo? Oh, bien, entonces lo que tenemos que hacer también aquí es que realmente queremos cambiar la posición desde la que nos está disparando el robot. Entonces ahora cuando golpeamos play, veamos si funciona la animación. Además, no es un atacante cuerpo a cuerpo. Entonces si te acercas. Todavía está en la rara animación de es, porque no es un atacante cuerpo a cuerpo. En realidad no va a ir a la animación aquí dentro. Entonces lo que podemos hacer es simplemente copiar esto y ponerlo aquí. Entonces ahora volvamos aquí. Y siempre se puede cambiar esto, pero vamos a ver. Entonces le pegamos al juego. El robot caminará hacia nosotros y ahora está parado ahí y nos está disparando. Pero lo que queremos hacer es que realmente queremos cambiar el tiroteo del,
bueno, lo que sea que esto no sea para el robot y empieza a disparar desde el sombrero. Entonces para hacer eso, podemos ir al robot y hacer clic aquí. Y vamos a seguir adelante y crear un niño vacío y llamaremos a esta posición de fuego D. Y en realidad va a ser muy sencillo. Vayamos a las animaciones de nuestro robot. Y ahora ellos. Entonces esperaremos esto. De acuerdo, así se puede ver que esta animación es extremadamente complicada. Entonces elegamos el inactivo y veamos si podemos realmente, ok, para que podamos jugar esto. Vamos a mover la posición de fuego a la cabeza. Vamos a asegurarnos de que sea de la cabeza y vamos a moverlo frente a él. De acuerdo, así que vamos a guardar eso. Y ahora vamos a entrar en nuestro guión. Y en lugar de los inconformes Considerando, así que en lugar de la posición transformada, vamos a disparar esto desde una posición de fuego, pero que necesitan seguir adelante y crear una posición por fuego aquí dentro. Por lo que aparecen entrar. Vamos a crear una transformación o una transformación pública. Posición de disparo de punto, opta posición de fuego. Y vamos a estar compartiendo desde la posición lejana. En tanto que nuestro jugador de ataque aquí dentro, va a ser la posición de fuego. Y la rotación será la rotación de posición lejana. O podemos mantenerlo como el normal. Y tenemos que asegurarnos de que la posición del archivo también esté mirando a nuestro jugador. Entonces aquí, antes de atacar, necesitamos asegurarnos de que la posición de fuego esté mirando al jugador. Y ahora de vuelta en nuestro juego. Volvamos de aquí, porque esto es demasiado complicado. Y cuando jugamos, deberíamos ver eso. Asegurémonos antes que nada, que nos golpee. De acuerdo, entonces cuál es el pro así que no asignamos la posición de fuego. Entonces asignemos la posición de fuego. Guarda eso de nuevo en nuestro juego. Ojalá no sea un problema para nuestro Cerdo enemigo del, por lo que ahora y él está disparando, pero no está disparando correctamente. En realidad va en otra dirección, pesar de que lo estamos diciendo para asegurarnos en la cara. Entonces, ¿cuál parece ser el problema? Entonces tal vez sea por la dirección. Entonces, vamos a ver. Entonces intentemos v rotación normal. Guarda eso de nuevo en nuestro juego. Entonces tal vez porque el, oops, así que tal vez porque el jugador ya nos está mirando o veamos, hey robot, dispárame. Sí, ahora está funcionando. Entonces el robot nos está disparando. ¿ Y por qué ese era el problema? Bueno, porque antes usábamos una posición lejana, usábamos la rotación local de toda la transformación del jugador. Pero ahora porque la posición del archivo también está mirando al jugador y es un hijo del, un gran enemigo, queremos realmente usar la rotación de la posición de fuego tan bien que hacia abajo. Espero que hayas disfrutado del video y disfrutado de la sección. En el siguiente apartado, obviamente
vamos a sumar un sistema de salud al enemigo. Entonces nosotros sólo, no simplemente lo destruimos. Vamos a agregar un sistema,
un sistema de salud al jugador para que no lo destruyamos de inmediato en también. Entonces tendremos un poco de salud y también aprenderemos cómo podemos mostrar todo eso en nuestra pantalla al igual que hicimos con nuestra bala. Bueno, dicho eso, espero que hayan disfrutado de todo esto y vayamos a aplicar. Está bien. Entonces algunos archivos o demasiado grandes, tendremos que quitar el vamos a ver, vamos a ignorar todo bajo activos y cuello malla Walker. Y también ignoremos todo bajo la verdadera criatura de terror. Ojo. escenificar todo eso. Seguro que estos son. Está bien. Entonces sigamos adelante y agregamos un monstruo y un robot. Entonces este fue un video realmente divertido. Es un poco largo, pero espero que lo hayas disfrutado y te veré en el siguiente.
41. SECTION 7: sistema de salud Enemy: Bienvenido de nuevo, mis desarrolladores de juegos favoritos. En este video, hemos creado un sistema de salud para los enemigos. Entonces ahora cuando queremos disparar a nuestro gran enemigo aquí dentro, toma múltiples tiros. Tiene este efecto de sangre, y también agregamos un daño al argón. Entonces no todas las armas funcionan igual. Por lo que este enemigo y ahí también, como se puede ver, su alabanza sangre por todo el lugar y eventualmente muere. Entonces, no perdamos más tiempo y empecemos. Ah, está bien, así que actualmente siempre que queramos disparar a un enemigo, así que digamos que aquí tenemos a este enemigo. Por lo que cada vez que le disparamos, muere de inmediato. Y siempre que debamos estos enemigos, también
mueren de inmediato. Y este enemigo de aquí no se está muriendo, y en realidad está flotando. Entonces sigamos adelante y arreglemos eso. No lo arreglamos la última vez. Entonces Pack y nuestro robot enemigo, sigamos adelante y porque tiene muchos colisionadores, Simplemente
vamos a añadir un, ¿dónde está? Entonces le agregaremos un colisionador de esfera. Puedes agregar cualquier esfera que quieras o cualquier colisionador soy lingote que quieras. Por lo que vamos a añadir un colisionador de esfera. Aumentemos el radio y movámoslo hacia arriba para que esté por aquí. Y la razón por la que está de pie es por el déjenme mostrarles la malla de navegación. Por lo que actualmente si nos movemos hacia arriba el robot, puede ver que la malla suficiente del cilindro anterior sigue aquí. Entonces la forma en que arreglamos eso, movamos un poco el desplazamiento base hacia arriba. Y vamos a seguir adelante y aumentar el, Tal vez deberíamos hacerlo 0. Y sigamos adelante y aumentemos la altura. Entonces volvamos la esfera del radio, aumentemos el radio, aumentemos la altura, y eso debería hacer el truco. A lo mejor deberíamos incluso aumentarlo un poco más. Por lo que moveremos el desplazamiento base apenas un poco hacia arriba. Eso lo ahorraremos. Y ahora cuando entramos en nuestro modo de juego, no los
hemos etiquetado como el enemigo. Por lo que ahora camina en el suelo. Cuando le disparamos, debe ser etiquetado como el enemigo. Cuando le disparamos, queda destruido. Está bien, pero esto no es suficiente. Queremos crear algún tipo de sistema para la
salud enemiga para que en realidad podamos dispararle y sacar un poco de salud y luego debería morir. Entonces sigamos adelante y hagamos eso. Hagamos esto un poco más grande, y vayamos a nuestros activos y a nuestros guiones. Y aquí dentro queremos crear un guión C-sharp que se va a llamar el sistema de salud enemigo. Entonces salud enemiga, vamos a asegurarnos, vale, entonces sistema de salud enemigo, hagamos doble clic en el sistema de salud enemigo. ¿ Y qué vamos a hacer aquí dentro? Entonces lo primero que vamos a darle a cada enemigo su propia salud. Entonces vamos a crear un público, y va a ser un entero porque la salud no es un flotador, suele ser un entero. Entonces, ¿cuántos golpes puede aguantar este enemigo? Así que fin. Vamos a crear esto como la salud actual. Y sigamos adelante y pongámoslo en cinco, así que nunca es 0. Entonces lo siguiente que vamos a hacer, vamos a dar el inicio y la actualización por ahora, tal vez no los vamos a usar. Entonces lo que vamos a hacer aquí es crear un método que sea el vacío público, recibir daños. Y esto nos permitirá recibir daños. Entonces esto es, este método se llamará cada vez que nuestro enemigo sea golpeado. Entonces vamos a reducir la salud actual en una. Entonces como recordamos, el menos significa que reducimos uno de nuestra salud actual. Y luego si nuestra salud actual va menor o igual a 0, entonces menor o igual a 0. Entonces vamos a destruir al enemigo. Destruyendo llegó objeto. De acuerdo, así que paja, un objeto de juego, guarda todo eso. Después de que terminamos de crear el daño de toma, necesitamos ir a nuestro sistema de armas. Y cuando disparamos aquí, en lugar de simplemente destruir al enemigo, en realidad
vamos a conseguir la cabeza. Entonces esta es la información del recast. Vamos a acceder al colisionador y vamos a conseguir el componente que es el sistema de salud enemigo. Y cuando sí lo
tengamos, vamos a sufrir daños. Entonces vamos a llamar a llevarlos cada método. Y si no puedes encontrar el daño de toma, asegúrate de que sea público. Ahorramos todo eso ahora de nuevo en unidad y esto debería funcionar. Jugar. Y ahora podemos ver que cuando golpeamos a este monstruo, déjame simplemente darle click sobre él para que podamos ver en el inspector, así es la salud actual es de ocho. Deberíamos tener una, dos, tres veces. Para que veas que su salud está bajando. Recarguemos nuestra arma y ahora lo debemos por última vez y desaparece. Y lo mismo es cierto para el enemigo robot. Entonces ahora tiene la mitad de tres, así que deberíamos tener una vez, pero como puedes ver, en realidad no le
pegamos. Y eso es porque teníamos la bala. Entonces ese es un buen mecánico de juego
dependiendo de cómo quieras que tu juego coloque sobre dispararle una vez. Y en realidad no es oh, así que necesitamos asegurarnos de que sea etiquetado como el enemigo. Porque lo hicimos mientras en modo de juego y en modo de juego nada guardado. Entonces deberíamos tener una, dos veces, y deberíamos tener una última vez y él dice, genial. Ahora bien, ¿qué más deberíamos estar haciendo? Bueno, digamos por ejemplo, bueno, en el futuro tendremos muchas armas. Por lo que por ahora la pistola una cierta cantidad de daños. Pero por ejemplo, si estás usando un francotirador, Bueno, claro que eso va a infligir más daño. Por lo que queremos sumar esta habilidad a cada uno ido para tener su propia cantidad de daño. Entonces la forma en que hacemos eso es que entraremos en el sistema. Y aquí arriba vamos a crear una variable que se va a llamar el público y cantidad de daños alrededor. Por lo que ahora cada arma con tiene su propia cantidad de daño. Y lo que haremos es en el sistema de salud enemigo, en lugar de solo tener el daño de toma y reducir uno de la salud actual. En realidad vamos a tomar un parámetro que va a ser un entero y va a ser la cantidad del daño. Y aquí dentro, en lugar de reducir uno, vamos a llamar a esto el menos igual a la cantidad de daño, guardar todo eso. Una última cosa. Tenemos que ir al sistema GUN y siempre que disparemos al enemigo. Por lo que se puede ver que aquí hay un error porque necesitamos agregar un parámetro. Y ese parámetro va a ser el monto de daños de nuestros ingresos. Por lo que de vuelta en nuestro juego. Y por eso, y por eso, por cierto. Entonces digamos que la cantidad de daño de nuestro arma es de cinco y la salud de nuestro monstruo lo es. Entonces, cuando le disparamos dos veces, uno pensaría que debería morir. Pero qué pasaría si dentro de aquí estableciéramos la salud actual para ser igual, sólo igual a 0. Bueno entonces cuando le disparemos la primera vez, su salud se convertirá en tres, cuando deberíamos tener la segunda vez, su salud se convertirá en menos dos. De esa manera, la salud actual no es igual a 0, por lo que el enemigo no será destruido. Entonces por eso hemos puesto un menos de igual a 20. Entonces solo quería asegurarnos de que nadie se confunda por esto de vuelta en nuestro juego ahora. Y vamos al jugador, va al cuerpo, quiero decir, ve a la cabeza, vas a las armas, vas a la pistola, y la cantidad de daño que esta pistola hará. Pongámoslo a las dos. Eso lo guardamos de nuevo en nuestro juego. Entonces ahora vamos a revisar al monstruo. Y deberíamos ver que cuando su salud es de ocho años, cuando le disparamos una vez, se convierte en 642 y finalmente 0. Muy bonito. Pero tenemos este hermoso sistema de salud enemiga. Tenemos los disparos infligiendo daño, pero aún falta algo y ese es el impacto de nuestros disparos. Entonces esto va a ser parte de tu reto. Y tu reto es agregar efecto de sangre a los disparos de bala para que obtengas el efecto de sangre de los ejemplos del sistema de partículas instanciados cada vez que golpeemos a un enemigo con nuestro recast y te daré una pista para la rotación del instanciación. Así que asegúrate de que la rotación sea la rotación del punto cuaternión y el hit Normal. Así que pausa el video ahora mismo y ve a hacer reto de lixiviación. De acuerdo, bienvenido de nuevo. Por lo que nos olvidamos de hacer una cosa más es que necesitamos
agregar el guión de salud enemiga a los demonios tacos. Entonces ambos obtienen su propio guión de salud y su cantidad de daño que pueden tomar será de seis y x Vale, vamos a guardar eso. Ahora entremos a nuestros activos de juego y abramos los ejemplos de efectos. Abramos el lote. Abramos las prefabs y veamos cuál usaremos. A lo mejor este no es el que vamos a usar. Entonces. Y esta es la sangre continua. Por lo que puedes agregar esto o este es el charco de sangre. También puedes agregar esto si quieres, pero estos no son lo que estamos buscando. Estos no son los droides que estamos buscando. Entonces es el impacto, el efecto de las armas de impacto, y los prefabs aquí dentro. Entonces vamos a conseguir el flash. Si usas la sangre, está bien. No te preocupes por eso, pero vamos a usar los impactos de carne o
pongámoslo aquí para que veas rezando a los Bloods. Puedes usar ambos. Puedes integrar este con el efecto de sangre del juego. Entonces vamos a usar este. Vamos a borrarlo aquí y vamos a llevarlo a nuestras prefabs. Espero que lo hicieras. Entonces tomaremos este,
que es el gran efecto de sangre. Lo agregaremos a nuestros prefabs y lo añadiremos a los efectos. Y este es el demonio del cacao pre-fab, que es no estoy seguro de qué es eso. ¿ Lo tenemos en alguna parte? No. Eliminemos eso. Y nuestros efectos, tenemos el impacto en la sangre. Este es el impacto sanguíneo. Hagámoslo un poco más grande. Entonces tres por tres, aplicaremos todos estos cambios y lo eliminaremos de aquí. Y ahora lo que deberíamos estar haciendo es entrar en nuestro guión, nuestro consistente, y aquí arriba donde tenemos todos nuestros objetos de juego de los efectos. Vamos a sumar mucho. Efecto, guarde eso. Y aquí abajo cuando golpeamos a un enemigo. Entonces aumentemos esta condición si. Vamos a mover el colisionador de cabeza. Y aquí dentro vamos a instanciar un efecto de sangre. Vamos a ponerlo en el punto de cabeza. Entonces este es el recast, el punto que golpea el recast. Y lo vamos a poner como el cuaternión, no la rotación de bloqueo, y va a ser el punto de cabeza normal. Por lo que espero que hayas podido hacer el reto. Espero que la sangre te confunda con el impacto de la carne. Si te hiciste la sangre, está perfectamente bien. Es tal vez sea aún mejor. Entonces vamos a guardar todo eso de nuevo y nuestra ganancia. Ahora lo único ilógico y aquí es que el enemigo robot en realidad va a estar derramando sangre. Y ahora cuando disparamos, Por supuesto, por supuesto nos olvidamos de agregar el efecto de sangre. Entonces esta es la carnosa de nuevo a la pistola al efecto de sangre. Y ahora deberíamos tener algunos efectos de blot. Entonces ahora cuando disparamos, puede ver que viene mucho hecho y si incluso se queda, podemos destruir estos eran los, así que ahora cuando deberíamos de este enemigo, también
deja un efecto de sangre. Vamos a recargar y vamos a disparar a nuestro, vale, así que se está muriendo. Muy bonito. Entonces con eso hecho, Esto es todo lo que necesitábamos hacer. Por supuesto vamos a estar cometiendo nuestros cambios. Entonces escenifica todo. Y aquí dentro nosotros, ¿qué hicimos? Bueno,
agregamos un sistema de salud a nuestros enemigos, comete todo eso. Y en el siguiente video vamos a agregar un sistema de salud al jugador. No lo son. Entonces te veré que él, Michael aquí desde el futuro. Ahora hay un pequeño problema con nuestro juego. Y algunos de ustedes quizá hayan notado esto. Entonces si vamos ahora mismo a nuestro demonio de cacarela, algunos de ustedes pudieron haber intentado apagarlo, pero él no va a bajar. Y el problema con esto es que es la forma en que se configura nuestro código. Entonces si entramos en nuestro código, podemos ver aquí que cada vez que golpeamos una etiqueta enemiga, en realidad
vamos a coger el colisionador. Y de este colisionador obtenemos el componente en el objeto de juego que tiene este colisionador y accedemos al sistema de salud enemigo. Ahora, ¿cuál es el problema? Bueno, el problema es que nuestro demonio cacareo en realidad tiene su colisionador en el niño y el sistema de salud enemigo está en el padre. Por lo que hay dos soluciones a este problema. En primer lugar, puedes mover aquí el sistema de salud enemigo al cuerpo del demonio cacao. O cuál es mi solución preferida, es que en realidad podemos seguir adelante y quitar el colisionador de malla De los cuerpos. Y vamos a entrar a nuestro cuerpo humano CaCl2 porque no está en su ubicación adecuada, asegura de que tuviera ceros 00, haga doble clic sobre él. Y aquí dentro vamos a añadir un colisionador de esfera. ¿ Y por qué sugiero la solución y no ir realmente por el colisionador de malla? Bueno, porque nuestra demanda de cacao aquí ya es una esfera, así que eso no es problema. Y otro pequeño problema que tenemos, y es con la animación giratoria. Y el problema con ello es que en realidad estamos girando el cuerpo y no el objeto de juego real. Entonces si golpeamos el juego, se
puede ver que el colisionador de esfera se queda aquí y el cuerpo simplemente sigue moviéndose. Entonces para arreglar eso, necesitamos cambiar. Y este es mi error. Puede ser que no cometiste este error. Yo sólo quería quedártelo y mostrártelo para que lo sepas, por qué a veces las cosas no funcionan y no funcionan y aparentemente No hay error. Crees que todo está funcionando bien, pero resulta, no, ahí el error. Entonces lo cambiaremos más adelante. Adelante y arreglemos este antes de irnos. Entonces restableceremos la posición. Y estamos restableciendo la posición porque vamos a estar sumando el, lo que llevó a este aquí. Entonces mueve esto hacia arriba y vamos a seguir adelante y añadir un colisionador. Por lo que temen planeador y lo incrementarán. Entonces solo quería mostrarte que a veces añades otro mecánico y resulta que algo andaba mal antes de eso. Entonces sólo quería guardarlo sólo para que se lo supiera. Y éste, es la animación en movimiento. En realidad cambia todo el cuerpo. Este de aquí. Necesitamos rehacer la animación para asegurarnos de que los cambios se hagan en la animación al objeto del juego real. Otra cosa que noté, tal vez no tuviste este problema. Pero si hacemos clic en el robot enemigo, y vamos a quitar la animación aquí porque es muy chatarra. Y el problema es que cuando teníamos jugada, tal vez no se mueve. Por lo que es por que el agente de nano malla esté bajo tierra. Por lo que siempre manténgalo en 0, no lo hagas menos de 0, al menos 0. Entonces, vamos a guardar eso. Hit play. asegura de que el robot esté caminando por ahí. Está bien, genial. Entonces y el sistema de efectos de trama no ha sido firmado. Impacto sanguíneo. Y por supuesto que necesitamos etiquetar son ambos demonios Geico como los enemigos. Entonces ahora todo debería estar funcionando. Perdón por molestarte. Genial. Entonces ahora todo está funcionando como se dice, pero laggy a veces con el, todos estos cálculos, pero funciona sólido preso Gu, tal vez algunos de ustedes podrían estar pensando, whoa, este tipo está cometiendo errores. Bueno en realidad todo el mundo comete errores. Incluso los desarrolladores de juegos más experimentados y cyberpunk 2077 es el mejor ejemplo. Pues dicho eso, te veré en el próximo.
42. Sistema de salud del jugador: Bienvenidos de nuevo, mis compañeros desarrolladores de juegos. Nuestro monstruo parece estar en una posición permanente sentada. Pero no te preocupes por eso porque cuando golpeamos Play, ahora cuando se acerca a nosotros, así que hey pequeño monstruo, empieza a sentarse como una, dos, tres veces terminan VDD, desaparecen y ya no podemos jugar. Eso es porque morimos. Eso se debe a que nuestro jugador ahora ya no es invencible. En realidad muere y sólo nos lleva dos balas morir el robot y simplemente se aleja casualmente. Entonces dicho eso, no perdamos más tiempo y sigamos adelante y
creemos un sistema de salud para nuestro Jugador. O K. Entonces, ¿qué deberíamos estar haciendo primero? Bueno, vamos a entrar en nuestros guiones y vamos a crear un nuevo guión C-sharp que viene a llamarse el sistema de salud de los jugadores. Entonces sistema de salud de jugadores, y por supuesto, cada vez que esto se va a abrir por sí mismo. Y sigamos adelante y sumamos el sistema de jugadores al jugador. Entonces ahora tenemos el guión aquí y ahora abramos Visual Studio. Lo primero que vamos a hacer aquí dentro, vamos a crear un int público y vamos a establecer un cierto Max Health. Y luego vamos a crear un privado y un entero y esta va a ser nuestra salud actual. Entonces no queremos tenerlo siempre frente a nosotros,
o en realidad por ahora, hagámoslo público. Lo haremos privado más adelante y empezaremos. Siempre que iniciemos un determinado juego o iniciamos un nuevo nivel, nuestra salud actual será igual a nuestra salud máxima. Muy bien. Guardemos eso. Lo siguiente que queremos hacer es crear un método similar al del sistema de salud enemigo, es
decir, el daño de toma. Entonces aquí vamos a crear un público y asegurarnos de que sea público se haga daño. Y de inmediato le vamos a dar un cierto parámetro. Entonces es la cantidad de daño. Y aquí dentro vamos a hacer exactamente lo mismo. Entonces si quieres, puedes pausar el video y hacer el reto por tu cuenta. Por lo que taus actual es igual a la cantidad de daño. Y si la salud actual es menor o igual a 0 tiene entonces aquí dentro vamos a conseguir nuestro objeto de juego y vamos a poner activo en falso, así que no queremos destruir a nuestro jugador. Queremos simplemente poner el objeto del juego en falso, y de esa forma se detiene el juego. No podemos, ya no podemos movernos. Acabamos de tener la cámara atascada ahí. Pero, ¿dónde vamos a llamar a este método aquí? Bueno, lo vamos a llamar en primer lugar, si vamos a nuestro enemigo IA. Entonces aquí, en el ataque malayo, cada vez que nuestro jugador realmente ataca el, quiero decir, siempre que nuestro enemigo realmente. A continuación, el jugador, y estamos en rango. Nosotros vamos a quitar esto aquí mismo. Entonces aquí es donde íbamos a agregarlo. Y vamos a llevarnos al jugador porque tenemos una referencia a él. Y vamos a conseguir el componente, que por supuesto será el jugador Sistema de Salud. Y vamos a conseguir los daños. Entonces es el daño malayo. De acuerdo, no hemos creado que se haya creado principalmente daño. También tenemos daños de Aemilia. De acuerdo, así que el daño malayo, vale, algo anda mal. ¿ No lo tenemos? No lo cree. ¿ Y por qué nos dieron la opción? También, está usando el método o caso o daño malayo. Llamemos a esta cantidad. Y quitaremos la gran M y aquí. Entonces haga doble clic en eso. Volvamos a copiar ese código aquí y vamos a crear un público. Y va a ser qué,
cuál es el parámetro es un entero, por lo que entero. Y esta será la cantidad de daño, lo
pondrá en dos solo por ahora. Y esto debería estar funcionando. De acuerdo, genial, vamos a guardar eso. Pero, ¿dónde estamos llamando en realidad a este daño cuerpo a cuerpo? Bueno, señoras y señores, permítanme presentarles a lo que dije, señoras y señores, me refería a mis desarrolladores de juegos favoritos. Permítanme presentarles algo llamado los eventos. Entonces porque tenemos a nuestro monstruo como el principal atacante, por lo que un monstruo, tenemos todas estas animaciones. Entonces puedes ver aquí que estamos caminando y queremos empezar
a dar daño cuando alguna vez atacamos realmente. Entonces vamos a los ataques. Esto tomará un poco de tiempo por todos los asentidos raros. Entonces vamos a movernos y en cierto momento cuando llegue a este punto. Entonces creo que este punto es bueno. Vamos a sumar este evento aquí. Por lo que al hacer clic en Agregar Evento, agregamos un evento aquí mismo. Y lo que este evento nos permite hacer, nos permite acceder realmente a las funciones que están en el guión adjunto al objeto del juego que está siendo enemigo. Eso es un bocado. De acuerdo, entonces el monstruo tiene un animador, algunas animaciones. Podemos agregar eventos que puedan acceder al script en el NMAI. Entonces ahora si hacemos click en este pequeño, lo
puedes ver aquí mismo, esta pastilla blanca o algo así. Se puede entrar al evento de animación, los guiones y al evento de animación. Y en realidad se puede ir y elegir una de las animaciones y fallable. Para que puedas restablecer los ataques, buscar destino daño malayo. Y eso es lo que necesitamos. Este es el daño malayo. Y vamos a guardar eso. Y un monstruo de
la hora, el daño malayo también es, ya basta. Y nuestro jugador, el máximo de salud, ¿dónde está el sistema de salud? Entonces Max Health será, digamos seis. Hit play. Vamos a probar esto. Entonces tenemos juego. A ver eso. Entonces nuestro atacante viene aquí, empieza a sentar a EU y Europa, se
puede ver la salud actual a 0 y ahora nos destruyen, por lo que el jugador ya no está activo en la escena. Muy bonito. Lo siguiente que queremos hacer es que también queremos sumar la capacidad a los proyectiles del robot enemigo de golpearnos. Y va a ser parte de tu reto. Y tu reto es dañar jugador con proyectiles robot. Por lo que en primer lugar, crear una variable por la cantidad de daño infligido por el proyectil enemigo. Después tendrás que llevar al jugador como etiqueta declarada. Se podría pensar que sí. ¿ Por qué no estamos usando las capas y demás mientras comparamos capas y comprobar las capas es un poco engorroso, sobre todo cuando no tenemos ningún colisionador en el objeto del jugador, simplemente
estamos usando el controlador de caracteres. Hay muchos enteros, así que pensé que usar etiquetas es mucho más simple y más fácil. Y ya hay un jugador tech en Unity. Y por último, es necesario que, cada vez que el proyectil golpee un objeto etiquetado como jugador, haga que el jugador sufra daños. Con eso dicho, paren el video ahora mismo, y les daré una pequeña pista que ni siquiera está escrita aquí. Tendrás que usar el Intro Onsager. Así que pausa el video ahora mismo y ve a hacer el reto. Oh, ok, bienvenido de nuevo. Entonces vamos a la granada. Ya estamos aquí. Y vayamos a nuestro guión de proyectiles enemigos. Y aquí dentro vamos a crear el método de On Trigger enter, así sucesivamente azúcar Enter. Y aquí dentro vamos a comprobar si el otro punto una etiqueta de objet.com juego. Y si la etiqueta es el jugador, y lo estoy haciendo porque ya sé que esa etiqueta de jugador existe. Y aquí dentro vamos a conseguir el otro, el juego objeto dot get componente y el componente que vamos a conseguir como sistema de salud de capa profunda. Y desde el sistema de salud del jugador vamos a recibir daños y por supuesto vamos a crear algún tipo de cantidad de daño. Así que vamos a crear cantidad de daño aquí. Haga doble clic en esta parte superior aquí. Sigamos adelante y creemos un público. Lo haremos, por supuesto público. Va a ser un entero y es la cantidad de daño. Y hagámoslo, digamos tres. De acuerdo, guarde todo eso. Vamos a asegurarnos de que todo aquí está bien. Por lo que de vuelta en nuestra ganancia de unidad, necesitamos asegurarnos antes que nada, que etiquete a mi jugador. Por lo que tengo un problema con recordar etiquetar objetos y asignar cosas en el inspector. Y lo otro que debemos hacer es ir a nuestra granada y asegurarnos de que el colisionador de esfera sea un gatillo. De lo contrario esto no estará funcionando. Por lo que golpeamos el juego y en realidad también podemos destruir aquí. Entonces vamos a destruir el objeto del juego después de haber infligido algún daño al jugador. Por lo que de vuelta en nuestro juego, golpeamos el juego. Y ahora vamos a nuestro y quiero decir aquí, así que nos dispara. De acuerdo, nos destruyó. Entonces porque nuestra salud era de seis. Entonces aquí nuestra salud era de seis. Y la granada hace seis daños cuando destruyó la ciudad, simplemente casualmente se alejó y ya no estamos vivos. Está bien, genial, muy agradable. Con eso hecho, vamos a comprometer nuestra etapa de cambios, todo eso. Se agregó una capa Sistema de Salud. Comete todo eso. Y espero que hayas hecho reto. Espero que hayan disfrutado de este video. Y al siguiente vamos a estar exhibiendo nuestra Salud de Jugadores frente a nosotros porque por supuesto, cualquiera que esté jugando nuestro juego no tiene el lujo de mirar al inspector. ¿ Se hizo eso? Te veré en el próximo.
43. Muestra la salud del jugador: Bienvenidos de nuevo, mis compañeros desarrolladores de juegos. En este video, vamos a estar realmente exhibiendo nuestra salud justo aquí en la parte superior, se puede ver, así que ahora cuando el robot nos ataca 123, puede ver que nuestra salud se está bajando y ¿cuándo nos empieza enorme Dude a ponernos? Se puede ver que nuestra salud baja. Y cuando llegamos a 0, ya no
podemos movernos porque nuestro jugador ha sido desactivado. Entonces, no perdamos más tiempo y empecemos. Ah, está bien, entonces lo primero que vamos a hacer es entrar en el modo 2D y hagamos doble clic en el lienzo. Y aquí dentro vamos a estar creando un par de imágenes. Por lo que la primera imagen que vamos a crear representará la barra. Entonces vamos a crear una barra deslizante para mostrar la salud que aún nos queda. Entonces vamos a crear una imagen. Y esta imagen en realidad será uno de los componentes que te he dejado bajo recursos. Entonces tenemos el corazón, el tornillo, algún corazón. Elegí hacer el corazón más realista porque
estamos usando armas realistas y la frontera aquí dentro. Entonces haga clic en esos. Déjame sólo ver dónde los vamos a estar agregando. Entonces aquí y DUI de vuelta en, nuestros recursos, arrastran eso aquí. Y ahora tenemos la frontera que,
que debería hacer que el sprite a D aplique eso. Y el corazón también debe ser el, Considerando que sprite a la, aplicar eso. Entonces ahora ve a la imagen y aquí, la imagen de origen debe ser el tamaño nativo de ajuste del borde. Y vamos a seguir adelante y ponerlo aquí arriba. Entonces tal vez cambiemos esto más adelante. Echemos un vistazo a esa nota. En realidad se ve lo suficientemente bien. Ahora sigamos adelante y llamemos a esto la frontera. Lo siguiente que vamos a hacer es crear una imagen más aquí. Entonces esta será la, esa imagen de la interfaz de usuario y esta tendrá el corazón ya que su imagen de origen se establecerá en tamaño nativo. No, no queremos que tan grande de un corazón, aunque se ve muy guay. Vamos a hacerlo mucho más pequeño. Y en realidad, ya sabes qué, déjame hacer esto por cinco y tal vez esto por cinco. Y vamos a seguir adelante y ponerlo aquí en la esquina y vamos a poner la frontera justo detrás de ella. Entonces de esa manera parece que nos estamos muriendo. Echemos un vistazo a eso. Entonces sí, eso se ve bien. Entonces ahora lo que queremos hacer es realmente queremos seguir adelante y Canvas y crearemos un objeto de juego vacío. Llamaremos al Colegio de Salud. Y debido a que está en la UI, tendrá cierta forma o tamaño. Entonces lo que queremos hacer es que le hagamos del tamaño exacto de nuestra frontera. Para ello, simplemente podemos seguir adelante y hacer llegar a la frontera nuestra barra de salud. Y luego podemos seguir adelante y anclarlo
al aquí adentro para que podamos mantener presionada Alt y podamos dar click en esto. Por lo que de esta manera se anclará al, todos los lados del lienzo y también tomará la misma nave. Ahora cambiemos la imagen del corazón a la, o la imagen al corazón. Imagen. Y sigamos adelante y desmarquemos la Barra de Salud. Y luego infantil la frontera y la imagen del corazón a la barra de salud. Por lo que ahora tenemos esta parte de salud que podemos movernos. Lo siguiente que vamos a hacer es que vamos a añadir un poco de relleno aquí mismo. Entonces la forma en que hacemos eso es hacer clic derecho e ir a tu ojo y una imagen. Y esta imagen será el relleno. Y esto es lo que vamos a manipular
para aumentar y disminuir nuestra salud nacida. Entonces claro que vamos a, primer lugar, niño a la frontera. Y entonces vamos a seguir adelante y hacer lo mismo. Entonces, y aquí en los anclajes mantenga presionada Alt, haga clic en eso. Y luego en la infancia desde la frontera. Y si tienes la imagen frente a la frontera, así que si la tienes así, asegúrate de que el relleno esté por encima del puerto. Está bien, genial. Entonces ahora tenemos el relleno y ahora iremos a la Barra de Salud. Y aquí vamos a añadir un componente de deslizador. Así que sigamos adelante y añadamos un componente de deslizador. Y aquí hay muchas cosas, así que apagaremos lo interactable hará que la transición sea ninguna, y la navegación tampoco será ninguna. Entonces tomaremos a nuestro Fuller y lo arrastraremos al rectángulo. Por lo que ahora tenemos la capacidad de manipular el tamaño de nuestro relleno. Y si aumentamos esto de 0 a uno, digamos que puedes ver que podemos empezar a aumentar y disminuir cuánto tenemos dentro. De acuerdo, así que con eso hecho, un siguiente paso que vamos a hacer es realmente
vamos a controlar este relleno de nuestra salud comprada. Entonces debido a que estamos controlando el comportamiento, entraremos al guión, click
derecho aquí dentro, y veremos que tenemos unos controladores de lona que, de
acuerdo, así que este es un Canvas Controller. Ya tenemos un guión para eso, que no estamos usando para nada. Y ahora es el momento de empezar a usarlo para algo. Entonces aquí, lo primero que vamos a hacer es añadir un punto u usando Unity engine Y esto nos permitirá meternos en el slider y las imágenes. Debajo de aquí vamos a crear un slider público y un slider de salud. Bien, entonces ahora tendremos una referencia al deslizador. A continuación crearemos un método. Entonces no creo que necesitemos actualización. Podemos crear más adelante si sí lo necesitamos. Por lo que estamos creando un vacío público y esto nos permitirá establecer V Salud cada vez que iniciemos el juego. Entonces crearemos un parámetro para ello. Y esta va a ser la Salud. Y entenderás a lo que me refiero en un poco. Entonces tomaremos el deslizador de salud al que tenemos referencia. Y en realidad iremos a acceder al valor. Y estableceremos el valor como cualquier salud que se nos envíe a través del método establecido. Entonces déjame mostrarte lo que quiero decir aquí atrás. Y si vamos a la barra de salud, podemos ver que aquí tenemos el valor. Por lo que estamos accediendo al valor del slider y estamos configurando a lo que sean los centros de salud. Está bien, genial. Por lo que el siguiente paso va a ser fijar la máxima salud que tenemos. Entonces vamos a crear un vacío público set max health. Y también va a tomar un entero que es la salud. Y aquí dentro vamos a acceder al slider de salud. Vamos a establecer el valor máximo de nuestro slider de salud. Y sólo vamos a ponerlo a la salud. ¿ Y por qué estamos haciendo esto? Bueno, solo te mostraré y estableceremos el valor de punto del deslizador de salud a la salud que ya tenemos. Entonces, ¿por qué estamos haciendo esto? Digamos que aquí podemos ver que nuestro deslizador en realidad tiene un valor máximo. Entonces digamos que tenemos 30. Entonces ahora a medida que aumentamos el valor de 0 a 30, así nuestro jugador obviamente tendrá
diferentes, diferentes tipos de salud basados en el nivel, basado en el ,
tal vez, no sé, tal vez creas algunas pastillas y cuando las recojas, aumentas la salud máxima. Entonces esa es una posibilidad. Y también podemos asegurarnos de que estos son números enteros ahora porque estamos usando enteros dos representan la salud de nuestro jugador, esto no será un problema, pero se puede ver que esto aumenta ahora de 0 a 30 sin tener ningún flujo . Genial. Entonces ahora que estamos fijando la máxima salud, tenemos una manera de establecer la salud cada vez. Es hora de tu reto. Y tu reto va a ser poner al máximo la Barra de Salud V. Entonces lo primero que debes hacer es conseguir
una referencia a la Barra de Salud y al sistema de salud de los jugadores. Lo siguiente que debes hacer es configurar el tobogán de barra para que esté a la máxima salud cuando iniciemos el juego. Entonces es bastante simple. Aquí la única diferencia es que estamos tratando con cosas diferentes. Por lo que ya sabes cómo conseguir referencias. En realidad puedes usar los objetos de búsqueda de tipo si no
quieres seguir adelante y en realidad establecerlo desde el inspector. Y puedes establecer la máxima salud usando el método que acabamos de crear con todo eso, todas esas pistas que te di. Pausa el video ahora mismo y ve al reto o k Entonces, ¿dónde está nuestros sistemas de salud de capa? Entonces aquí vamos a crear una variable que es de tipo UI canvas controller. Y vamos a crear llamada esta variable la Barra de Salud. Y N aquí, después de fijar la salud actual o antes de que no importe, vamos a conseguir la Barra de Salud. Y va a ser igual a los objetos hallazgo de tipo. ¿ Y de qué tipo es este? Bueno, es el controlador de lona de la interfaz de usuario. Y vamos a hacerlo así. Y ahora vamos a conseguir la Barra de Salud. Vamos a acceder al conjunto max health. Y vamos a ponerlo intmax salud que tenemos para nuestro jugador, sistema de salud de jugadores. Guardemos todo eso. Y volvamos a nuestro juego aquí. Entonces cuando golpeamos play, deberíamos ver que la barra se ha llenado. Y no, no se llenó porque claro, claro que nos olvidamos
de poner algún tipo de referencia. Entonces en Canvas, estableceremos el control deslizante Barra de Salud, y aquí vamos a guardar eso. Y ahora le pegamos al juego. Y vemos que lo hemos llenado todo. Ahora cuando nos golpeen, no vamos a tener nuestra salud reducida por nada. No va a aparecer aquí porque en realidad no estamos actualizando esto. Entonces sigamos adelante y actualicemos. Entonces de vuelta aquí, vamos a entrar en nuestro tomar daño en el ¿dónde está nuestro sistema de salud de jugadores? Entonces dentro de aquí, cada vez que recibimos daños, vamos a acceder a nuestra Barra de Salud y sólo vamos a fijar la salud y la salud actual. Entonces vamos a guardar eso de nuevo en nuestro juego. Entonces ahora cada vez que te golpean, en teoría, deberíamos haberlo hecho, nuestra vida se reduce. ¿ Y dónde está nuestro jugador? Déjenme darle un poco más de salud porque su patético tan 20, guarden eso de nuevo en nuestro juego. Y ahora deberíamos ver que cada vez que nos golpeen teh robot dispárame. Entonces 12, se puede ver que nuestra salud está bajando muy cool, entonces, y cuando se acabe, bueno, el juego ha terminado. Y por último, sólo quiero hacer una cosa más, y esto es puramente estético. Puedes optar por hacer esto como quieras, pero déjame ir a la Barra de Salud, aumentar este valor aquí, ve a la carpeta y haremos una amenaza. Entonces ahora nuestra salud, o incluso puedes elegir tener el color de tu relleno aquí, el color de tu corazón. Entonces elige uno de los colores. Se pueden ver los píxeles de la derecha, y yo elegiré la amenaza. Ok, entonces esto se ve muy sangriento. Teníamos Play y ahora tenemos nuestra barra de salud
aquí arriba mostrándonos lo que está pasando con nuestro jugador. Entonces, ¿eso se hizo? Y vamos a poner en escena todos nuestros archivos
que un sistema de salud de jugadores cometa estos cambios. Y en el siguiente video, realidad
vamos a estar exhibiendo a los enemigos, enemigos barra de salud. Y lo vamos a estar exhibiendo sobre cada enemigo que tenemos en nuestro mundo. Entonces te veré en el siguiente video.
44. Muestra la salud Enemy: Si bien remontamos a mis compañeros desarrolladores de juegos, en este video, hemos agregado una barra de salud no solo a nuestro jugador sino a nuestros enemigos. Entonces ahora cuando deberíamos de ellos, en realidad
podemos ver que su salud se reduce. Y ahora matamos a todos estos y a todos nuestros enemigos cuando se baja su barra de salud. Entonces, no perdamos más tiempo y empecemos. Oh, está bien, empecemos. Lo primero que queremos hacer, haremos doble clic en nuestro robot enemigo para acercar. Y sobre nuestro enemigo robot, en realidad
vamos a crear un nuevo lienzo. Entonces ahora tendremos el lienzo enemigo aquí. Y lo que vamos a hacer si podemos verlo, es ginormoso. Por lo tanto, haga doble clic de nuevo en el robot enemigo. De acuerdo, entonces ahora ya no podemos hacer eso. Pero lo que podemos hacer es ir al Lienzo enemigo y en realidad queremos ir y cambiar las palabras aquí dentro. Cambiémoslo por el espacio mundial. Y ahora podemos bajar a 0.001 por todos lados, y
y la z Vale, así que ahora es un lienzo muy pequeño y cambiemos la Posición a 0 lados. Ahora vamos a hacer doble clic en el robot y varios. Ahora nuestro lienzo es mucho más pequeño. Y vamos a seguir adelante y hacerlo aún más pequeño que eso. Entonces vamos a dar click en el botón T o elegir éste aquí mismo, que es la herramienta rec. Y elige un lado y hazlo todo el camino más pequeño. Ahora aquí dentro, vamos a hacer lo mismo nos
gustaría que hiciéramos en el jugador normal medio horneado o 40. Entonces vamos a crear una imagen de UI. Esta será nuestra frontera. Por lo que la frontera. Y también vamos a seguir adelante y mientras que ¿se suma la frontera como la imagen fuente? Nosotros lo vamos a anclar por todos lados. Por lo que ahora podemos controlar el tamaño de nuestro lienzo y el tamaño de nuestro borde será más pequeño. Entonces vamos a crear el relleno. Por lo que imaginas esta será la pluma. Y también vamos a seguir adelante y cambiar el color del relleno para leer y anclar a todas las posiciones y ponerlo sobre la frontera. Entonces ahora tenemos este tipo de Tu, pongámoslo aquí abajo. Y en realidad este u i, claro que qué, lo vamos a cambiar más adelante, pero por ahora sólo queremos asegurarnos de que todo funcione. Ahora como cosa final, necesitamos agregar un slider aquí para que no necesitemos crear el, ¿qué hicimos aquí dentro? Por lo que no necesitamos crear la barra de salud real. Podemos agregar de inmediato el componente de deslizador aquí. Vamos a resultar interactable, hacer la transición no, y la navegación ninguna. Y agregaremos el relleno como el rectángulo de relleno. Entonces ahora podemos seguir adelante y mover esto hacia arriba y hacia abajo. Y como puedes ver, en realidad es del otro lado. Entonces es de aquí, lo
cambiará elevarse. Más tarde. En realidad podemos cambiar la dirección de derecha a izquierda si
sentimos que tenemos que hacer eso. Está bien, genial. En realidad vamos a crear un truco muy inteligente que verás al final de este video, pero sigamos. Uno se quedará con la sorpresa para después. En realidad, ya lo has visto en la intro. De todos modos, sigue adelante y crea un script C-sharp, y este será el controlador de lienzo de NMI UI. Así es que controla correctamente el controlador Lienzo, tu enemigo golpeó Enter. Visual Studio se abrirá automáticamente por alguna razón y agregaremos al enemigo tú Canvas Controller al lienzo enemigo. Y ahora el lienzo enemigo, hagamos doble clic y se abra. Y en realidad va a ser casi exactamente lo mismo que nuestro. En tanto que es el controlador de lona de la interfaz de usuario, el normal. Y simplemente copiaremos todo eso. Y lo vamos a pegar aquí. Por lo que basado eso y no se utilizará el inicio. Si lo usamos más adelante, lo estableceremos. Y el deslizador me está diciendo que falta algo,
y ese es el espacio de nombres para el motor de unidad que usa. Por lo que ahora podemos acceder al deslizador de salud. ¿ Qué más deberíamos estar haciendo aquí? Bueno, creo que esto es todo lo de abajo. A continuación tendremos que seguir adelante y en realidad retocar con esto en nuestro sistema de salud enemigo. Entonces aquí, vamos allá y crearemos un NME y Canvas Controller. llamaremos la barra de salud. Por lo que es exactamente lo mismo que en el jugador. Lo siguiente que vamos a hacer y empezar, vamos a seguir adelante y conseguir el componente. Pero esta vez, algo diferente sucederá porque vamos a usar el componente get en los niños. Ahora bien, ¿por qué estamos haciendo esto? Actualmente, el sistema de salud enemigo, si volvemos aquí, está en el enemigo robot. Por lo que sólo podemos acceder al componente get en el lienzo de la interfaz de usuario. Sólo podemos acceder a los componentes aquí. Entonces lo que hacemos es acceder a los componentes en los niños y el lienzo enemigo es uno de los niños y tiene el lienzo de UI enemigo. Tenemos que añadir el deslizador para guardar eso. Podríamos incluso haber usado el componente Get y aquí porque estas bibliotecas ya, pero no se preocupe por eso. Ahora que entiendes por qué estamos usando los niños GET y aquí vamos a conseguir al enemigo te Canvas Controller. Y lo siguiente que vamos a hacer, claro, vamos a poner las barras de salud. Valor máximo establecido max health, y va a ser Max Health. Por lo que Max Health, aún no hemos creado esta variable. Entonces vamos a crearlo. Por lo que es un público, max, ops, public int, max health. Y ya no vamos a necesitar poner un cinco aquí. Y esta es la máxima salud. Y la salud actual será igual a la salud máxima. Y vamos a guardar eso. Lo siguiente que tendremos que hacer es
actualizar la Barra de Salud cada vez que recibimos daños. Entonces aquí vamos a conseguir la parte de salud. Nosotros vamos a fijar la salud. Son los mismos métodos que hicimos con el jugador. Muy bonito. De vuelta en Unidad. Vamos a probar esto y parece que hay un problema. Olvidamos un punto y coma aquí arriba. Y ahora de vuelta en Unidad. Y por último, veamos nuestra invención. Y por alguna razón hay un problema. En primer lugar, hay tres errores y son para cada uno de los enemigos aquí arriba que no tienen barra de salud. Y tampoco tenemos la Barra de Salud poniéndose correctamente en el robot. Entonces vamos al enemigo robot y pongamos la salud actual en 0. Y vamos, en realidad necesitamos que la salud actual sea privada aquí porque no queremos estar accediendo a ella. Y en el sistema de salud de jugadores, también, la salud actual debe ser privada, por lo que en realidad no tenemos acceso a eso. Entonces Max Health será, digamos ¿qué fue? Entonces fueron seis. Guarda eso de nuevo en nuestro juego. Y ahora deberíamos ver la barra encima de esto, Philip. Y cuando le disparamos, se puede ver que en realidad estamos reduciendo la salud de nuestro enemigo. Ahora el Bar de Salud se ve mal, muy mal. Pero puedes ajustarlo a tu propia preferencia. Simplemente lo haré un poco más grande o más pequeño. Es decir, así que vamos a tratar de
hacerlo, así vamos a mover esto un poco hacia abajo y en realidad vamos a tratar de ajustarlo, tal vez hacerlo un poco más largo. Entonces Walters, eso parece ser lo suficientemente bueno. Guardemos eso. Y tu reto va a ser agregar la junta de salud a los otros enemigos. Por lo que en primer lugar, prefab la Barra de Salud con su deslizador. Entonces necesitarás agregarla de niño a todos los demás enemigos. Por último, necesitarás establecer el conjunto V max health para cada uno de ellos porque actualmente no tienen una salud actual que salió mal. De todos modos, pausa el video ahora mismo y ve al reto. Bienvenido de nuevo. Entonces lo primero que vamos a hacer es entrar en nuestros proyectos prefabs. Y aquí eso es crear una carpeta para la UI. Y de no pensarlo no estará usando esto para nada que no sea el lienzo enemigo por ahora. Por lo que agregaremos el Lienzo enemigo aquí. Y ahora vamos a ir a nuestro monstruo, vamos a poner el campus aquí. Entonces haga doble clic en eso. Es un pero alto, así que bájalo. Y por supuesto que es grande, grande, así que tendremos que cambiar también su tamaño. Entonces la forma en que estoy haciendo esto, si aún no lo sabes, sostengo una esquina, sostengo Alt y lo hago más pequeño. Entonces vamos a ver, eso se ve bien. Vamos a ponérselo en la cabeza. Y hagámoslo más pequeño así. Ahora vamos a nuestros monos voladores aquí arriba. Entonces agreguemos el lienzo y el lienzo a éste. Y éste. Pongamos la salud máxima de los demonios en cuatro, así que cuatro por cuatro. Y hagamos doble clic y veamos,
OK, así que esto se ve lo suficientemente bien. Por lo que sólo moveremos esto hacia abajo. ¿ De acuerdo? ¿ Y dónde más está? Por lo que esto aquí moverá esto también hacia abajo. Y el monstruo es una salud máxima. Entonces hagámoslo 12. Guardemos eso. Vamos a pegarle juego. A ver si todavía tenemos un error. No, ya no tenemos errores y podemos disparar a los enemigos y podemos ver que en realidad los estamos dañando. Y claro que éste todavía está roto. Y tenemos este robot aquí dentro que matamos cuando su barra de salud se baja. Entonces con todo eso hecho, lo último que queremos hacer es dejarme sólo mostrarles. No te mostré ahora mismo. Para que veas que el enemigo tiene la Barra de Salud y está caminando por ahí. Pero el Health Bar simplemente se ve raro porque se está moviendo con nuestra y entonces lo que queremos hacer es realmente queremos tener la salud comprada, siempre mirando en la dirección de nuestra cámara. Entonces sigamos adelante y hagamos eso. En primer lugar, entraremos en nuestro guión. Crearemos guiones, crearemos un guión y lo llamaremos el script de mirar las cámaras aquí dentro. Esperemos a que se compile y haga doble clic aquí. Y lo primero que vamos a hacer es crear una referencia a la cámara principal. Entonces va a ser un privado porque necesitamos encontrar la cámara cada vez. Por lo que va a ser una transformación privada Cámara Principal. Y en un inicio, en realidad vamos a encontrar las cámaras. Entonces encuentra objeto, encuentra objetos de tipo, y tiene la cámara mueve script sobre él. Script de movimiento de cámara en él. Y vamos a conseguir la transformación, porque esta es una transformación y simplemente vamos a ir a actualizarnos. Nosotros vamos a tomar la transformación. Vamos a mirar a UPS, mira. Y lo que vamos a estar viendo es la posición de punto de transformación más V cámara principal punto hacia adelante. Entonces, vamos a guardar eso. Y ahora vamos a tomar el guión. Y aquí dentro vamos a agregar esto a cada lienzo enemigo sobre la mirada a la cámara al enemigo Lienzo, lo
agregará a este lienzo enemigo sobre el monstruo. O en realidad lo que podemos hacer es ir al lienzo y vamos a ver, podemos aplicar todo eso. Y veremos que todos y cada uno de los lienzos ahora tienen la mirada a las cámaras. Entonces esta es la belleza de usar prefabs. Con eso dicho, peguemos a Play y veamos cómo se ve eso. Por lo que ahora podemos ver que la Barra de Salud siempre mira en nuestra dirección. ¿ Qué tan bueno es eso y qué tan efectivo es eso? Ahora, necesitamos cambiar la Barra de Salud acentuada aquí sólo un poquito. Por lo que ahora a todas partes que vayamos, la Barra de Salud siempre nos está mirando. ¿ Se hizo eso? ¿En el siguiente video? No vamos a estar apagando a nuestro jugador cada vez que moramos, en realidad
vamos a estar respondiendo todas y cada una de las veces. Antes de que nos vayamos. Vayamos aquí. Etapa todos nuestros archivos. Hice una barra de salud enemiga que siempre mira a la capa, comprometer todo eso. Y por supuesto antes de irnos, hay
que no hacer las mismas barras de salud que la de Minnesota necesita un poco de cambio, y así sucesivamente y así sucesivamente. Hazlo bastante más bonito, más grande, mejor mirándolo todo está basado en tu preferencia. Sería ese set en el siguiente video, como ya les he dicho, vamos a estar respondiendo. Entonces te veré entonces.
45. Respawning: Bienvenido de nuevo a mis compañeros desarrolladores de juegos en un video totalmente nuevo. Y en este vamos a estar no sólo apagando a nuestro jugador cada vez que moramos, sino que en realidad vamos a estar
respondiendo cada vez que nos sumergamos en la escena que estamos actualmente. Entonces ahora cuando el robot nos mata y
morimos, esperamos dos segundos y respondemos en nuestro mundo de nuevo con todo radón. Entonces déjame mostrarte una vez más cuando morimos, puedes ver que su salud está en cierto momento y mi salud también está en 0. El incluso las balas están de vuelta de nuevo en Dan y su salud está de vuelta de nuevo a las diez. Podemos matarlo, podemos matar a todos porque tenemos armas increíbles. Con eso dicho, no perdamos más tiempo y empecemos. Ah, vale, así que ahora que somos capaces de mostrar nuestra salud, somos capaces de matar a nuestro jugador cuando recibe demasiado daño. Sigamos adelante y creemos un sistema de respuesta. Entonces cómo va a funcionar esta respuesta, un sistema de respuesta. Nos vamos, en lugar de simplemente apagar a nuestro jugador cada vez que muera o renderizarlo y discapacitado, en realidad
vamos a llevarlo de vuelta y reiniciar el nivel en el que estamos actualmente. Posteriormente ampliaremos el sistema y lo haremos llevar a un nivel anterior y tal vez incluso utilizar el sistema con el fin de llevarnos al siguiente nivel. Ahora lo que vamos a hacer es crear aquí un gestor de juegos. Por lo que crearemos un objeto de juego vacío. Llamaremos a esto el Game Manager. Y la razón por la que estamos creando un objeto real para manejar esto es porque no queremos un objeto determinado como por ejemplo, el jugador para manejar esto. Siempre es mejor si estamos trabajando en todo el juego para tener el guión separado de un determinado objeto que ya tiene sus propias mecánicas y comportamientos. Entonces Game Manager, ahora vamos a entrar en nuestros guiones y vamos
a crear un guión C-sharp que es Game Manager. Y notarás que el símbolo cambiará, y esto solo sucede para el Game Manager. Entonces espere a que eso se compile. Y ahora podemos agregar el script de gestor de juegos a nuestro gestor de juegos. Y sigamos adelante y abramos el Game Manager y Visual Studio. Ahora, ¿qué vamos a estar haciendo aquí dentro? Bueno, vamos a estar manipulando nuestro. Entonces, ¿qué significa responder realmente? Responder significa que cada vez que
moramos, vamos a volver a la escena en la que estamos tocando. Por lo que actualmente estamos en el patio de recreo y no tenemos otra escena. Pero cada vez que
morimos, queremos volver a empezar esta escena de nuevo. Y la unidad en realidad tiene este mecánico incorporado en ella, que es la escena y gerente. Déjame mostrarte qué es eso. Por lo que el si Manager permite una gestión prevista en tiempo de ejecución y se puede ver que aquí hay muchas cosas. Entonces el mismo recuento, cuántas escenas totales hay ahí. Puedes seguir adelante y crear escenas a partir del código y puedes hacer muchas cosas. Pero una de las cosas que más nos interesan es la escena del manager de escena dot lot. Y esto nos permite cargar. Y vio en base a su nombre o su índice. Entonces, ¿qué se ve índice? Déjenme mostrarles eso en Unidad. Entonces de vuelta en Unity, si vamos a la, si vamos al archivo, podemos ir a la configuración de compilación. Y aquí en realidad es donde vas a construir tu juego como juego terminado. Entonces lo que hacemos aquí dentro, se
puede ver que tenemos las escenas a granel. Y aquí es donde agregamos las escenas que realmente van
a ser parte de nuestro juego o de los niveles y así sucesivamente. Entonces la forma en que agregamos escenas en la construcción es que en realidad vamos a las escenas y simplemente arrastramos el patio de recreo aquí. Por lo que ahora el patio de recreo es parte del incorporado y se puede ver el índice aquí mismo. Por lo que el índice para el patio de recreo actualmente es 0 y en eso vamos a estar trabajando. Entonces empecemos a codificar. En nuestro gestor de juegos se abrirá el guión aquí dentro. Y lo primero que necesitamos es que realmente necesitamos agregar el espacio de nombres que nos permita manipular escenas. Vamos a crear un uso de motor Unity pensamiento visto gestión. Genial. Por lo que ahora podemos empezar a acceder a arsine. Lo siguiente que vamos a hacer es solo quitémoslos. No creo que los estemos necesitando. Crearemos un método público que se va a llamar el jugador responder. Y este método en realidad va a hacer una cosa y se va a llamar en primer lugar el encargado de escena. Por lo que hae visto manager, queremos cargar cierta escena. ¿ Y qué escena deberíamos estar buscando? Ahora, podemos seguir adelante y poner un 0 aquí, y esto va a funcionar bien. Pero Digamos que tenemos diez niveles en nuestro juego. ¿ Cómo sabemos o cómo le decimos a esta escena de carga que queremos responder en esta escena exacta? Bueno, hay una forma muy ineficiente de hacer esto. Llamamos a nuestro gerente sénior de suero. Nuevamente, gerente de AC. ¿ Puedes por favor conseguirme el activo visto para que este bueno se ponga la escena actualmente activa. ¿ Y qué deberíamos estar haciendo ahora? Bueno, porque queremos el índice de esta escena activa, simplemente
vamos a decirle el 31, el índice construido. Y ahora lo que pasa aquí dentro, el encargado de escena va a cargar la escena. Y el índice de escena será la escena activa actual, que obtenemos del gestor de escenas. Y vamos a acceder al índice de la misma. Entonces, y ahora sigamos adelante y guardemos eso. ¿ Y dónde vamos a estar llamando a este gestor de juegos? Entonces vamos a estar llamándolo, mientras que nuestro sistema de salud de jugadores, cada vez que moramos, después de destruir el objeto del juego o lo
sentamos un activo, ni siquiera necesitamos esto. Podemos seguir adelante y ya sabes qué, vamos a quedárnoslo. Y vamos a seguir adelante y encontrar juego objeto de tipo. El Game Manager, y vamos a decirle que queremos que el jugador responda. Guardemos eso. Y sigamos adelante y probemos esto y unidad. Entonces tuvimos juego, vamos a ver, cuál es nuestra salud clasifica 20, hagámoslo diez solo para acelerar el proceso en juego. Y ahora veamos Hale hora monstruo hey, por favor llámame. Entonces, vamos a ver. Nuestra salud se quita. Entonces 12, tal vez dos hits más. Sí, así que ahora nos destruyen y se puede ver que estamos de vuelta en nuestra nueva escena. Y se ha restaurado la salud del enemigo y también se ha restaurado nuestra salud. Entonces intentemos esto otra vez. Entonces por favor, 1-2-3, morimos. Estamos de vuelta en nuestra escena con la salud de todos nuestros enemigos de vuelta en su lugar. Muy bonito, pero todavía hay un problema. Entonces ahora cuando muero, es inmediato. No es divertido. Ya sabes, normalmente cuando mueres en el juego, te
lleva un poco de tiempo reflexionar sobre todos los errores que has cometido. Entonces la forma en que vamos a hacer esto es dándote un reto. Por lo que tu reto va a crear la corutina que retrasará la respuesta de nuestros jugadores. Entonces ya hicimos el Skoll Teen Challenge, creo dos veces, pero las rutinas de llamadas son algo complicado. Y si no has hecho el reto Colton porque aún te sientes intimidado por él. Entonces este es el momento perfecto para hacerlo. Con eso dicho, en primer lugar, se necesita crear una variable por la cantidad de tiempo para esperar. Deberá crear un recubrimiento de enumerador Tipo II. Tendrás que ceder el tiempo que hemos agregado. Y por último, hay que cargar la escena actual. Entonces todo lo que tienes que hacer es crear una coroutine y en la variable b, en realidad, usar el gestor de escena para responder con eso dicho, pausar el video ahora mismo e ir a crear una coldline. De acuerdo, bienvenido de nuevo. Entonces, ¿qué deberíamos estar haciendo? Entonces aquí vamos a crear una variable. Va a ser un privado. No necesitamos que sea público. Entonces crearemos un flotador privado y llamaremos a esto el tiempo hasta que el jugador muera. Entonces es un poco largo y lo vamos a poner en dos F.
Así que ahora aquí, en lugar de que el jugador responda de inmediato, vamos a crear un enumerador de ojos. Entonces yo enumerador, va a ser la capa. Y responder co. Esto significa Curtin. Y aquí en primer lugar vamos a rendirnos. No, espera cuatro segundos. Y vamos a poner aquí el tiempo hasta que el jugador lo haga. Entonces, después de que hayamos esperado estos dos segundos, realmente
vamos a usar esto aquí dentro. Y en el jugador responder, vamos a iniciar la co-rutina, que es el jugador responder carbón. Con eso hecho. Vamos a guardar todo eso de nuevo en nuestro juego. Y ahora cuando golpeamos el juego, deberíamos ver que cada vez que morimos, este robot nos está matando más rápido. Por lo que 123, somos los 12 activados, y luego respondemos. ¿ Qué tan guay es eso? Entonces ahora nuestra respuesta es solo un poco de retraso y tiene más sentido con eso hecho, espero que hayan disfrutado el video. Adelante y escenificemos todo eso. Vamos a crear un sistema de respuesta usando game man. Con eso hecho, es el final de la sección, creo que en la siguiente sección vamos a estar profundizando en el sistema de armas. Vamos a estar agregando más armas, estarán agregando animaciones de recarga. Incluso añadiremos un lanzacohetes y aprenderemos cómo podemos crear objetos en nuestro mundo que podemos recoger por salud y munición. Pero dicho eso, espero que hayas disfrutado de este video y te veré en el siguiente.
46. SECCIÓN 8: añadir más armas: Bienvenidos de nuevo, mis compañeros desarrolladores de juegos. Te he prometido que te daré más armas frías, y ahora es el momento de cumplir esa promesa. Entonces ahora tenemos la pistola que dispara por ahí. Pero cuando tuvimos tab tenemos el rifle SS que dispara muchas balas. Y si volvemos a golpear a Tab, tenemos al francotirador que se acerca y dispara al enemigo y se puede ver que tiene más daño. Entonces ahora podemos, intentemos pegarle una vez más. De acuerdo, entonces nos quedamos sin balas y cada arma tiene su propia tasa de recarga. Y no sólo eso, si volviéramos a tener tab, podemos seguir golpeando a Tab y las armas siguen cambiando. Entonces, no perdamos más tiempo y empecemos. Oh, bien, entonces lo primero que vamos a hacer es meternos en el sombrero, abriremos las armas. Y duplicemos esta pistola dos veces. Entonces esto, vamos a cambiar esto por el rifle. Y cambiará esto en el francotirador. Y apaguemos este hiper, y volvamos la pistola también. Y vamos a trabajar en lo que es esto? Es rifle. Entonces rifle. De acuerdo, guarde eso. Y ahora lo que vamos a hacer es quitarle el prefabricado de la pistola. Y vayamos a nuestros activos de juego, a nuestras armas de ciencia ficción, a la base de atrás, los pre-fabs, a los rifles, y vamos a añadir el rifle de niño del rifle. Por lo que ahora tenemos aquí nuestro pequeño rifle. Pero claro que vamos a, en primer lugar, desembalar por completo y vamos a tomar la bala. Entonces, ¿dónde está el Boletín aquí? Bala. Y lo vamos a Prefab. Por lo que en Prefabs balas. Y pero antes de que hagamos eso, antes de que hagamos eso, permítanme hacer todo esto tres en cada escala. Echemos un vistazo al juego y pongámoslo aquí mismo. Entonces si ya sabes hacer esto, adelante y tal vez puedas saltarte, hazlo tú mismo. Y luego salta a la parte donde realmente tenemos todo listo, un Michael aquí. Así que decidí hacer este clip un poco más rápido, así que haré una voz en off. Este video ya es demasiado largo, así que ahora estoy ajustando el arma. Estoy comprobando lo grande que es. Ahora pondremos la bala como el prefabricado. Vamos a añadir un cuerpo rígido, el controlador del barco, y estaremos asignando todo. Y ahora ya hemos terminado. Cambiaremos el nombre por el rifle pre-fab. Ajustaremos la posición de disparo y también vamos
a asegurarnos de que en todos los lados esté apuntando correctamente. Nosotros vamos, vamos a sumar la bala. Y aquí vamos a retocar un poco de cosas por lo que haremos el total de balas 1-20, el monto del zoom reducido y el monto del daño aumentó, débito. Ahora lo siguiente vamos a jugar, a ver si eso funciona. De acuerdo, así que parece estar funcionando como habilidad. Está destruyendo. Muy bonito. Apagaremos esto. Volveremos al francotirador. Vamos a añadir la prefab de francotirador. Lo desempaquetaremos. Por supuesto que lo nombraremos el francotirador prefabricado, que sea dos en cada escala. Apenas la posición como siempre. Asegúrate de que se vea bien en el juego. Quitemos la bala, ponla como prefabricado. Y por supuesto, en todo lo que necesitamos agregarle, en solo las cosas dependiendo de tus preferencias, no
tienen que ser como las mías. Entonces, asegurémonos de que todo eso funcione. Y genial. Por lo que ahora nuestras balas matan y destruyen todo lo que les rodea. Ahora conducirá a justificar posición. Se me olvidó hacer eso. Y puedo ver que también he olvidado agregar un cuerpo rígido a las balas y hacerlas volar. Entonces vamos a entrar en nuestros guiones. Cerremos esto y entraremos en nuestros guiones aquí dentro,
haga clic con el botón derecho y creemos un guión nítido en C que va a ser el sistema de cambio de armas. Por lo que sistema de cambio de armas tenía entrar. Entonces ahora lo que vamos a hacer es que en realidad
vamos a agregar el sistema de interruptores de cambio al arma. Entonces, ¿los padres de todas nuestras armas tendrán las armas, qué sistema en él? Hagamos doble clic aquí y empecemos a codificar. Entonces, ¿qué es lo primero que tenemos que hacer? Bueno, vamos a crear una lista de todas nuestras armas disponibles. Déjenme contarles un poco sobre las listas. Entonces láser, ¿qué son las listas? Y C-Sharp. Por lo que es una colección de objetos del mismo tipo. Por lo que podemos crear una lista de enteros. Podemos crear una lista de cadenas, pero siempre deben ser del mismo tipo. Se puede acceder a ellos utilizando un índice. Por lo que esto será de mucha ayuda. Al igual que accedemos a escenas usando índices, también
podemos acceder a estos objetos que vamos a añadir a la lista, que van a ser nuestras armas y acceder a ellas a través de índices. Pueden tener métodos disponibles para acceder, ordenar, buscar y modificar. Entonces podemos usar las listas para hacer todas estas cosas, lo cual es muy útil. Y permítanme mostrarles la estructura de una lista. Simplemente creamos una lista. Pondremos en el tipo de objeto, pondremos en el nombre de la lista, y creamos usando el nuevo tipo de objeto de lista. Entonces sigamos adelante y hagamos eso en nuestro estudio visual. Entonces aquí arriba, lo primero que vamos a hacer es crear un privado y va a ser el sistema GUN. Y vamos a conseguir lo activo. Entonces esta es la variable que fijará el arma activa real y nuestra ganancia. Lo siguiente que vamos a hacer es crear un público. Va a ser una lista. ¿ Y qué tipo de lista va a ser ésta? Bueno, es tipo de sistema Don porque cada arma tiene una consistencia en él. De esa forma vamos a poder reconocer el arma, entonces crearemos llamado All Guns. Y va a ser igual al nuevo sistema de lista GUN. Y que no se olvide de poner estos dos corchetes, guarde todo eso. Y el último es que necesitamos una especie de índice para mirar a través de nuestras armas. Entonces vamos a crear un privado. O hagámoslo público. Entonces lo haremos público por ahora. Va a ser un entero, y lo vamos a llamar el número de arma actual. De acuerdo, genial, así que ahora tenemos estas tres variables. Tenemos el acto de arma, la lista de todas las armas, y vamos a conseguir el número de arma actual. Guardemos eso, volvamos a la unidad y veamos cómo se ve eso en nuestro Inspector. Entonces aquí tenemos los órganos y actualmente la lista está en 0. Entonces lo que podemos hacer es realmente elegir, o antes de hacerlo, ir a las armas. Y aquí dentro tienes este candado. Entonces haga clic en él. Y de esta manera, lo que sea que presionemos jerarquía, nada en el inspector cambiará excepto bien, se quedará en lo que bloqueamos. Entonces ahora podemos seguir adelante y agregar cada arma individualmente, o simplemente podemos elegir estas tres armas y arrastrarlas hasta aquí. Por lo tanto, asegúrate de que debería arrastrarlos a los órganos. La palabra mundial real, ponlos aquí. Y ahora tenemos la pistola como elemento 0, rifle como uno y francotirador como a Seúl. Y ahora que hemos establecido todos estos, lo siguiente que vamos a hacer es realmente vamos a crear un bucle. Y no hemos hablado de bucles. Entonces sigamos adelante y hablemos de bucles de vuelta en nuestras diapositivas. Por lo que las listas y bucles y arrays van de la mano y la mano. Y ahora vamos a estar aprendiendo sobre el para cada bucle. Ahora bien, si ya tienes experiencia con cuatro aros, por ejemplo, puede
que ya estés en el saber y esto te será mucho más fácil,
pero si no, concéntrate realmente, bueno. En primer lugar, los bucles permiten pasar por cada cosa. Y estamos hablando de para cada bucle, cada cosa en una colección de cosas de la misma tubería y una matriz o una lista de matriz. Entonces esta es la estructura de un para cada bucle, ¿verdad? Para cada uno, ponemos cualquier tipo y miramos a través de las cosas, o buscamos una cosa en las cosas. Entonces digamos por ejemplo, sí
conseguimos cierta cosa. Podemos darle un método o podemos hacer algo. Entonces algún método, podemos usarlo en cierto método, y también podemos hacerle otras cosas. Entonces digamos, por ejemplo, las cosas es, son todas armas y lo que estamos buscando es una estafa de tipo comenzó sistema. Y estamos usando el for-each para pasar por
todas y cada una de las armas o armas de nuestra lista de todas las armas. Déjame mostrarte un ejemplo y tal vez esto te quede claro. Entonces de vuelta en nuestro código y aquí en el inicio, realidad
vamos a pasar por todas nuestras armas y ponerlas todas en falsas o ponerlas todas en inactivas. Y entonces sólo establecer el índice del número de arma actual se pondrá en activo. Entonces déjame mostrarte. Vamos a seguir adelante y crear un bucle foreach. Entonces necesitamos dar el tipo de las cosas que estamos buscando. Entonces es el sistema actual y va a ser un arma de fuego. Y lo vamos a buscar en todas las armas. Abrimos los corchetes y ahora nos llevaremos todas y cada una de las armas. Vamos a acceder al objeto de juego en cada arma y vamos a poner activo en falso. Entonces después de que
hayamos puesto todo en falso, vamos a conseguir el arma activa y le diremos que es el todo pistolas en el índice de la corriente ido el número que vamos a darle en el inspector, y luego vamos a decirle que el acto de arma va a estar activo o poner activo a verdadero. Entonces repasemos de nuevo este código. Tan pronto como te iniciemos sistema de interruptor de armas. Pasamos por cada arma y todas las armas y las apagamos. Por lo que todos están activamente apagados. Entonces pasamos por nosotros estamos ante todo, buscamos el número de arma que tenemos en nuestro inspector o que estaremos determinando más adelante. Vamos al índice y a todas las armas. Entonces sabemos que aquí atrás, todas las armas tienen 0124, pistola o rifle y francotirador respectivamente. Dijimos el número actual ido que es seguro a uno. Por lo que ahora estamos accediendo al rifle. Por lo que de vuelta en nuestro código, el número actual del arma es uno. Entonces todo este valor, y aquí está el rifle. Por lo que nuestra pistola activa, que es un sistema GUN, se
convertirá en un rifle. Y entonces lo volveremos a hacer realidad. Y vamos a probar esto de nuevo en nuestra ganancia. Entonces ahora, a pesar de que tenemos al francotirador
encendido, en cuanto iniciemos el juego, deberíamos ver que tenemos el rifle con nosotros. Entonces ahora tenemos el rifle. Muy bonito. Probemos con el francotirador. Ponemos el elemento al hit play, y tenemos al francotirador. Y por último, probemos esto con la pistola. Tenía juego. ¿ Y tenemos la pistola que es demasiado grande? Sigamos adelante. Ahora lo que tenemos que hacer es crear un método que nos permita cambiar entre cada arma. Por lo que una actualización vamos a comprobar para cierta entrada. Por lo que el punto de entrada consigue la tecla hacia abajo, por lo que una libre presione la tecla hacia abajo. Vamos a utilizar el código clave del grifo. Por lo que siempre que
lleguemos a tab, podremos cambiar de arma. Y sigamos adelante y creemos este método muscular. Entonces genere el método. Por favor genere el método. ¿ Y qué vamos a estar haciendo aquí dentro? Bueno, vamos a ver. Lo primero que vamos a hacer es que vamos a llevar nuestro
activo actual ido y vamos a lo activado. Tan activo ido, ese objeto de juego se puso activo en falso. Genial, ahora el arma está apagada. Lo siguiente que vamos a hacer es aumentar. El número actual de arma por uno. Entonces de esta manera si estamos en el 0 usando la pistola, y ahora estamos en el uno. Eso significa que tenemos el rifle, Entonces vamos a hacer realmente lo mismo que hicimos aquí dentro. Entonces cuando la corriente puede numerar aumenta en uno, así que digamos que era 0. Ahora es uno. Vamos al activo ido. Nosotros le decimos que es una de las armas de todas las armas con el índice del número actual que se ha incrementado en una y lo ponemos en activo. Entonces, vamos a guardar eso. Y ahora de vuelta en nuestro juego, vamos a mantener esto en 0. Entonces le pegamos al juego. Ahora usamos la pústulo. Si tuviéramos tabulador, podemos ver que ahora tenemos el rifle. Teníamos tab de nuevo, deberíamos nuestro monstruo con nuestro increíble francotirador y se puede ver que se acerca mucho. No hemos probado esto. Pero cuando tocamos tab por última vez, podemos ver que tenemos un error aquí dentro y el error SSE diciéndonos que estamos fuera de rango. Bueno, ¿qué significa eso? Bueno, cuando lleguemos aquí, está bien, así que hemos aumentado de 0 a uno. Genial, nos dieron el rifle, aumentamos de uno a dos. Genial. Tenemos un francotirador, pero ¿qué pasa cuando el número de arma actual es tres? Y no hay tres en nuestra lista, tenemos tres elementos, que son 012 y el número final no está ahí, por lo que tres no están disponibles. ¿ Qué vamos a hacer al respecto? Bueno, vas a hacer algo al respecto porque es parte de tu reto. Por lo que tu reto es volver al primero. ¿ A qué me refiero con eso? Cuando lleguemos a la última arma, asegúrate de que no salgamos de límites. Y necesitas asegurarte de que volvamos a nuestra arma inicial. Entonces lo que tendrás que hacer es en un momento determinado debes
asegurarte de que si sí salimos de bonos. Entonces si tienes eso, si salimos fuera de límites, entonces tendremos que volver a poner lo que estemos aumentando a su valor inicial. Y sólo te mostraré un pequeño indicio que podría ayudarte. Tendrás que usar todas las pistolas conteo de puntos, y esto te dará el número de artículos de nuestra lista. Con eso dicho, pausa el video ahora mismo y ve a hacer el reto. Ay, kay, bienvenido de nuevo. Entonces vamos a aclarar este error y aquí de vuelta en nuestras armas de cambio. Y antes de que realmente cambiemos nuestras armas y aquí vamos a crear una condición if. Entonces si nuestro número de arma actual se hace más grande que o es igual a todos los cañones conteo de puntos, vamos a volver a ajustar el número de arma actual a 0. Entonces ahora lo que esto hace, digamos que tenemos el número actual es que a nosotros aumentamos en uno, así que ahora son tres. Entonces ahora es mayor o igual a todo el recuento de órganos que son tres. Entonces lo que esto
hace, volverá el número de arma a 0. Y de esa manera el actual número de arma aquí dentro será 0. Accederá al índice, las armas todas, y devolverá una pistola. Probemos esto en nuestro juego. Entonces ahora cuando nos
acercamos al juego, podemos ver que tenemos nuestro pistón. Teníamos tabulador. Podemos ver que tenemos nuestro rifle. Teníamos tabulador, tenemos al francotirador, golpeamos tab, tenemos el arma de vuelta. Muy bonito. Entonces con eso hecho, volvamos atrás y asegurémonos de escenificar todo eso. Llamaremos a esto un sistema de conmutación de armas, comprometemos todo eso. Y en el siguiente video, aprenderemos cómo podemos recoger aún más armas. Con eso dicho, espero que hayas disfrutado del Cisne y te veré en el siguiente.
47. Picking armas: Bienvenidos de nuevo, mis compañeros desarrolladores de juegos. Como pueden ver, tenemos un arma y en medio de nuestro patio de recreo, porque cuando golpeamos el juego, tenemos nuestras tres armas principales aquí dentro,
pero en realidad podemos ir a recoger un lanzacohetes. Ahora por supuesto, esto no hace nada, sólo dispara, no dispara ningún cohetes reales, pero lo haremos más adelante. Pero por ahora, sigamos adelante y creemos un sistema de recogida de armas. Ah, está bien. Entonces lo primero que vamos a hacer es que vamos a añadir un arma aquí. A. Así que sólo voy a desnatar a través de la chispa. He añadido un lanzacohetes. Vamos a los prefabs y agregamos el lanzador de cohetes prefab, Por
supuesto, en paquete y cambiamos su nombre a lanzador de cohetes prefab. Con eso hecho, sigamos adelante y ponerlo donde queramos. Esto se basa en tu preferencia, cómo quieres agregarla. Y simplemente prefabricemos nuestra bala. También agrego el componente del cuerpo rígido y el controlador del barco a nuestra bala de francotirador y ajusto todo eso. Lo siguiente que vamos a hacer es crear un objeto de juego aquí. Y vamos a restablecer su posición. Pongámoslo aquí y vamos a llamar a esto la camioneta de armas. Y aquí dentro, sigamos adelante y sumamos de nuevo el pesado prefabricado. Por lo que agregó EL lanzamiento de cohetes. Oops, quise decir que vamos a añadir esto a la camioneta de armas. Y ahora sigamos adelante y que sea tal vez cuatro por cuatro. Ok. Nosotros lo vamos a desempacar por completo. Y vamos a rotarlo así como así un poco. Y vamos a crear un colisionador de esfera alrededor de esto. Entonces vamos a añadir un colisionador de esfera. Y esto nos permitirá interactuar con el objeto del juego. También quizá lo hagamos más grande. Entonces hagámoslo alrededor de este yay grande. Y también vamos a restablecer la posición aquí dentro. Entonces cuál es la posición que estamos, y vamos a crear un guión. Y llamaremos a esto la camioneta de armas. Por lo que la recolección de armas crea este nuevo guión y crea un anuncio. Entonces ahora tenemos la camioneta de armas aquí. Y antes de que nos olvidemos, movamos esta camioneta de armas a los guiones. Haremos doble clic en la camioneta de armas y ahora tenemos el altavoz de armas. Pero antes de continuar, en
primer lugar, vamos al sistema de interruptor de armas. ¿ Y qué vamos a estar haciendo aquí? Bueno, vamos a crear una lista que representará las armas desbloqueadas. Entonces la razón por la que creamos
el lanzacohetes ya presente en los jugadores tenía es que queremos realmente mantenerlo bloqueado. Y cuando lo recojamos, entonces lo desbloquearemos para que el jugador lo use. De vuelta en nuestros guiones, vamos a crear una lista pública. Va a ser de tipo Khan System. Y vamos a llamar a esto lo poco parecido en las armas con llave. Entonces en las armas con llave, y va a ser igual a la nueva lista de sistemas de armas. Genial, ahora vamos a ver nuestras nuevas listas. Entonces en las armas tenemos las armas poco simpáticas. Y sigamos adelante y sumamos el lanzacohetes a las armas poco deseables. Genial. Ahora lo que queremos hacer es realmente queremos crear un nombre para cada una de nuestras armas. Entonces, entremos al sistema de armas. Y aquí arriba vamos a crear una cuerda que determinará la cadena pública, y va a ser el nombre del arma. Entonces nombre de arma. Por lo que cada arma tendrá su propio nombre y en base a ese nombre, siempre que en realidad golpeemos esta camioneta, así que cada vez que
golpeemos esta camioneta de armas, en realidad vamos a recogerla. Entonces vamos a entrar en nuestra pistola llamada esta la pistola. Y estas son referencias de cadena, por lo que tendremos que asegurarnos de que siempre las tengamos bien en nuestro código. Entonces nombre de francotirador y el lanzacohetes será el nombre de esta tripa. Vamos a guardar todo eso de nuevo en nuestro WACC qué y recoger. Ahora es el momento de agregar un poco de código aquí. Entonces, eliminemos todo esto. Y lo primero que vamos a crear una pistola de cuerda pública para recoger nombre. Entonces ahora que tenemos el conteo para el nombre de la camioneta, vamos a entrar aquí y la camioneta de armas agregó aquí. Y este será el lanzacohetes. Ya guardamos eso, ya lo tenemos copiado. Entonces lanzacohetes de nuevo en nuestra arma. ¿ Qué vamos a hacer aquí dentro? Bueno, vamos a establecer que entre el empresario. Entonces siempre que realmente tuvimos el coloidal, Vamos a comprobar si los otros componentes u
otro colisionador que hemos golpeado tiene una etiqueta de jugador. Asegúrate de que el jugador esté escrito correctamente. Entonces vamos a primero que nada, vamos al otro objeto de juego y vamos a acceder al componente en los niños. Y los niños. Bueno, porque en realidad queremos acceder al sistema de
interruptor de pick up de armas y porque el sistema de interruptor de armas está en las armas, que es hijo del jugador. Eso significa que vamos a acceder al componente sobre el niño y vamos a crear un método, pero vamos a añadirlo aquí. Entonces vamos a añadir un arma y se va a basar en el nombre de la camioneta de armas. Entonces es la primera vez que hacemos algo así. Pero no te preocupes, iremos a crear el método. Y finalmente vamos a destruir el objeto del juego. Entonces cuando sí cogemos el arma. Aunque ya no habrá un arma en nuestro patio de recreo. Entonces sigamos adelante y creemos el método ad gone. Y vamos a entrar en nuestro, mientras que sucede sistema de interruptores, vamos a crear un método aquí dentro que va a ser el público, asegura de que sea público, lo contrario no podemos acceder a él. El anuncio se fue y se va a conseguir una referencia del nombre del chicle. Entonces, cuando sí tengamos el nombre del arma, antes que nada, vamos a probar esto y asegurarnos de que realmente estamos consiguiendo algo. Entonces debug dot log
recogimos y vamos a añadir el cuello de pistola. Entonces sigamos adelante y probemos esto. Entonces lo que no escuchamos cada vez que entramos al colisionador de la camioneta de armas, vamos a acceder al interruptor de armas en los niños debido a que las armas son hijos del jugador. Entonces vamos a añadir un Khan Basado en el arma para recoger el nombre que tenemos en esto abre de nuevo arriba. Después iremos recién impresos a nuestra consola y veremos si realmente recogemos algo bueno. Así que tenía juego. Por lo que deberíamos poder recoger. Entonces estamos bien, entonces tenemos que apagar el lanzacohetes y vamos adelante y armas y ponerlo en 0. Entonces hemos jugado, y ahora tenemos la pistola. Vayamos a recoger esto. Y nada parece estar funcionando porque cometimos el error de todos los errores. No lo pusimos como gatillo. Así que asegúrate de poner las armas, pastillas, colisionador de
esfera como gatillo. Y ahora vamos y recogemos,
recogimos el lanzacohetes. Muy bonito. Ahora sigamos adelante y en realidad empecemos a recoger qué? Entonces la forma en que vamos a hacer esto, y aquí vamos a comprobar si en realidad tenemos unas armas poco simpáticas. Armas tan poco gustables, el conteo de puntos debería ser mayor a 0. Si es mayor a 0, entonces vamos a bucles a través de todas nuestras toneladas. Y para eso vamos a usar un bucle for. Entonces déjame mostrarte lo que es un for loop. Los bucles pueden ejecutar un bloque de código varias veces. Por lo que los bucles son prácticos si quieres ejecutar el mismo código una y otra vez, cada vez con un valor diferente. Y déjame solo mostrarte la estructura de un for loop. Entonces, en primer lugar,
creamos los cuatro, le damos una condición inicial, y vamos a seguir aumentando por uno hasta que llegue a cierto límite. Y mientras estamos haciendo esto, vamos a hacer algo. Por lo que sigue ejecutando código en el interior hasta que llegué al cierto límite. Entonces tenemos a este tipo que acabamos de crear y aquí usando, lo haremos un entero. Por lo general es un entero. Vamos a sumarle uno cada vez, y vamos a seguir haciendo algo aquí dentro hasta llegar a cierto límite. Entonces seguiremos yendo y yendo hasta que finalmente lleguemos a esos ciertos límites. O podemos hacer. Algo o una cosa muchas veces hasta que lleguemos al cierto límite. Ahora sigamos adelante y aplicamos esto en nuestro código. ¿ Y qué realmente lo necesitamos aquí? Entonces lo que vamos a hacer, en realidad déjame mostrarte el código y luego hablaremos de ello a medida que sigamos. Entonces crearemos un entero, lo
estableceremos en 0. El límite será, por supuesto, el número de armas no gustables. Y vamos a estar sumando uno a cada turno. Genial. Ahora lo siguiente aquí dentro,
vamos a comprobar en primer lugar si las armas no simpáticas en esta posición. Y vamos a acceder al nombre es en realidad igual al nombre de arma que tenemos. Vamos a sumar esta pistola para que sean todas pistolas. Y la forma en que agregamos al analista es mediante el uso del punto de órganos. Y vamos a añadir las armas poco simpáticas o la pistola poco simpática con la condición. Y luego lo vamos a quitar de la on con cerradura. Entonces antes de continuar, para terminar este bucle, cuando sí encontremos que vamos a establecer el i para que sea igual al impracticable Khan, sólo para que no sigamos contando. Entonces, ¿qué es este raro código? Y aquí hablemos de ello. En primer lugar, el bucle for, hemos establecido el a2b0 0. Hemos establecido el límite para ser el número de pistolas desbloqueadas, y lo vamos a sumar cada conteo. ¿ Por qué estamos haciendo esto? Porque queremos comprobar si sí levantamos un arma y queremos agregarla, vamos a revisar a través de todas nuestras armas desbloqueadas. Si alguna o una de las armas desbloqueadas en uno de los conteos aquí dentro es en realidad igual al nombre del arma que hemos recogido. Vamos a tomar nuestra lista de órganos y vamos a añadir esta pistola desbloqueada a la lista. Después vamos a quitar el arma desbloqueada de las armas poco simpáticas, por lo que ya no estará ahí. Entonces sabemos que tenemos el arma con nosotros. Y entonces esta línea es una orden para detener todo el bucle. Entonces cada vez que ponemos el ojo al conteo de puntos de armas desbloqueadas, eso significa que este bucles, bucle ha llegado, ha llegado a su límite. Eso significa que vamos a salir de nuestro bucle. Entonces con eso dicho, Guardemos eso. Volvamos a nuestro guión. Esperar a que se compile, tenía Play. Y ahora deberíamos ver que tenemos la pistola,
el rifle, el francotirador. Estas son nuestras armas. Entonces ahora cuando vayamos a recoger el lanzacohetes, deberíamos entrar en armas y podemos ver que
tenemos el lanzacohetes en todas nuestras armas. Entonces ahora cuando pasemos de este francotirador al arma pesada
A. Podemos ver que lo tenemos aquí ahora por supuesto, necesitamos hacer algo al respecto. Pero por ahora sigamos así porque esto se convertirá en nuestro lanzacohetes. Y por último, lo que queremos hacer es realmente querer poder, siempre que levantemos esta pesada arma, queremos ponerla en manos de nuestro jugador. Y va a ser parte de tu reto. Entonces tu canal va a ser para equipar el arma cuando la recojamos. Así que pon el arma en las manos del jugador cuando la levantemos. Y sé que esto es un poco ambiguo, pero te daré una pequeña pista. Es necesario restablecer el número de arma actual a un valor determinado. Y luego necesitarás cambiar el Golfo. Por lo que los ciertos valores tendrán que averiguarlo. Sólo te daré el aroma. Y con eso dicho, paren el video ahora mismo y vayan el uno al otro. Ok, bienvenido de nuevo. Entonces este fue un reto un poco avanzado si quieres. Por lo que te felicito si lo averiguas. Si no, no te preocupes, este fue un reto camino avanzado. Entonces dentro del anuncio ido, vamos a crear un booleano que va a ser el desbloqueado igual a falso. Entonces lo pondremos en falso al principio. Y lo vamos a hacer realidad cuando sí encontremos el arma. Por lo que desbloqueado será igual a verdadero aquí dentro. ¿ Y por qué vamos a hacer esto? Porque si después de buscar a través de todas nuestras armas, sí
desbloqueamos cierto ido. Entonces si desbloqueado es igual a cierto, entonces lo que vamos a hacer es que vamos a tomar nuestro número actual y vamos a restablecerlo a un cierto número, que es el conteo de puntos de órganos, minos2, un minús2 arriba. Y te diré por qué. Y entonces vamos a cambiar se han ido. Entonces permítanme explicarles por qué vamos a usar los órganos que cuentan minos2. Entonces de vuelta aquí, tenemos los órganos como tres pistolas, así que el recuento es de tres y digamos que recogemos el lanzacohetes. Por lo que ahora el recuento de todas las armas es de cuatro. Entonces lo que pasa es que tomamos el conteo que es de cuatro, quitamos dos. Entonces eso significa que estamos en marcha y luego cuando
cambiemos el arma, volvamos aquí arriba. Se puede ver que cuando cambiamos el arma, agregamos una. Eso significa que estamos en el índice tres. Eso significa que estamos en la última arma y esto
funcionará sin importar cuántas armas tengas. Para que eso diga todo eso. Vamos a golpear Play. Y ahora tenemos la pistola Estamos o tenemos este rifle. Cuando vamos a recoger el arma pesada, inmediatamente
cambiamos al pesado ido. Entonces espero que hayan disfrutado de este video y del siguiente, realidad
vamos a convertir nuestro pesado en un lanzacohetes. Entonces hasta entonces, te veré en el siguiente video. Y que no se olvide de escenificar todo vienen metal de los agregados un comando de sistema de recolección. Y te veré en el próximo.
48. Hacer el lanzador pesado: Bienvenidos de nuevo, mis compañeros desarrolladores de juegos. En este video, hemos agregado un enorme lanzacohetes que dispara cohetes y explota. Entonces ahora cuando nuestro enemigo se acerca, podemos dispararle en la cara con una explosión y puede ver que tiene salud se destruye. Pero no sólo eso, Explosiones funcionan en ambos sentidos. Por lo que ahora cuando deberíamos hacer la palabra, nuestra salud también se destruye. Entonces, no perdamos más tiempo. Y empecemos el o k Así que empecemos con nuestro lanzacohetes. En primer lugar, vamos a conseguir nuestra bala C aquí mismo. Y vamos a ponerlo un poco. Entonces esta será la bala de nuestro lanzacohetes. Queremos, en primer lugar, lo que queremos en primer lugar escalado en todos los lados a ocho por ocho. Por lo que esto le dará la impresión de que es una cabeza de cohete real, real. Lo siguiente que vamos a hacer es ir a nuestro ¿Dónde está? Por lo que nuestros activos de juego afectan ejemplos, efectos de
arma, prefabs, y aquí dentro se puede ver que tenemos el trailer de cohetes. Entonces vamos a moverlo hacia arriba y se puede ver que este trailer de rock realmente dispara un truco de rock. Ahora este rastro de cohetes está conformado por un rastro
de cohetes , por supuesto, las llamas y la guerra tenían. Entonces tenemos que hacer un par de cosas aquí. En primer lugar, entrémonos en la cabeza del cohete aquí, volvamos el bucle, apaguemos el ir allá abajo, y apaguemos la colisión aquí dentro. Ahora ve a las llamas, asegúrate de que la colisión esté apagada, está apagada y apaga el bucle. Y el indie rock también apaga el looping. Y, y así no tiene finalmente ir al objeto padre y en ella también apaga bucles y también apaga todas las colisiones. Ahora quizá necesitemos hacer un poco más, pero por ahora, vamos a mantenerlo en eso. Ahora necesitamos entrar en nuestros efectos y simplemente en primer lugar, sin empaquetar. Así que ve a preferir desempacar completamente y luego arrástralo a nuestros propios efectos prefabricados. Entonces ahora está aquí. Ahora volvamos a nuestra bala. Eliminemos por ahora nuestro rastro de roca y vayamos a la bala del mar. Ahora sigamos adelante y agreguemos un controlador de bala lo hará alrededor de 50 porque, ya sabes, los lanzacohetes no son tan rápidos como las balas normales. Y mantendremos viva la bala por ahora. Hagámoslo diez, o quizá seas menos, pero veremos más adelante también necesitamos agregarle un cuerpo rígido. Y lo vamos a asignar aquí. Entonces, vamos a guardar todo eso. Ahora vamos a conseguir nuestro efecto de explosión. Ah, y una cosa más necesitamos agregar un colisionador de cajas. Y este colisionador de cajas estará alrededor de nuestra bala y vamos a mantenerlo en eso. O por supuesto que necesitamos que sea un gatillo. Está bien, genial. Ahora lo siguiente necesitamos volver a entrar en nuestros efectos. Y aquí dentro vamos a encontrar algún tipo de explosión. Hasta ahora explosión prefabricada y veamos cuál vamos a usar. Gran explosión. Sí, destaque éste, detente eso. Y ahora tenemos esto aquí. A ver ¿qué necesitamos? Tenemos que apagar el bucle, claro. Y necesitaremos tal vez también,
ok, así que no hay gatillo, no colisiones. Hagamos que la acción de alto destruya. Y también vamos a sumar a esta gran explosión. Primero que nada, desempaquetemos completamente porque vamos a hacer nuestro propio prefabricado con esto. Y ahora en esta gran explosión que ha hecho la venta, pero más pequeña, vamos a añadir un colisionador de esfera y el litro esférico será un gatillo. Entonces déjame mover este objeto hacia arriba y vamos a ver, el radio debe ser sobre yay grande. Entonces juega, vale, así que este es nuestro radio actual. Vamos a ver eso otra vez. Muy bonito. Hagámoslo dos o 1.5 es lo suficientemente bueno. Guarda eso. Está bien, genial. Entonces ahora tenemos nuestra gran explosión. Bajemos y a nuestro propio efecto y sumemos nuestra gran explosión. Por lo que ahora tenemos casi todo listo para empezar a codificar. Ahora lo siguiente que vamos a hacer es que necesitamos entrar en nuestro sistema de armas. Entonces, ¿dónde está nuestro sistema de armas? Este es nuestro sistema GUN. Y vamos a hacer un par de cambios aquí. Entonces vamos a crear, primer lugar, un bool público. Y este va a ser nuestro lanzacohetes. Por lo que esto comprobará si se trata de un lanzacohetes o no, porque tendremos muchas diferencias. Entonces aquí abajo en el rodaje, en primer lugar,
después de comprobar si esto es adecuado, antes de realmente comprobar si todos son adecuados, no
queremos instanciar en realidad ningún agujero de bala o que afecte el agua. Entonces si no somos lanzacohetes, entonces vamos a hacer todos estos. Entonces por supuesto, los lanzacohetes no agregarán agujeros de bala ni estas fugas de agua. Lo siguiente que vamos a hacer es también vamos a comprobar si golpeamos a un enemigo y no somos lanzacohetes. Guarda eso. Lo siguiente que vamos a hacer es aquí, en realidad no
queremos producir ningún flash de hocico ni las balas normales que hacemos porque no
queremos, queremos hacer algo diferente. Entonces déjame mostrarte. Entonces estamos creando creará una condición if. Y si no somos lanzacohetes, oops. Si no somos lanzacohetes, entonces
vamos a instanciar las balas y el hocico parpadea normalmente. Pero de lo contrario, si somos lanzacohetes, vamos a instanciar esta bala también porque vamos a sumar la bala normalmente, va a ir desde la posición más lejana. Y también va a tener la misma rotación. Pero la única diferencia es, es que la posición lejana no serán en realidad los padres, por lo que simplemente se lanzará e irá en su propio negocio. La otra cosa que vamos a hacer es que en realidad también vamos a estar instanciando cierto flash de hocico, pero este será el rastro de ROC. Entonces aquí arriba vamos a conseguir un objeto de juego, que es el rastro de cohetes. Guarda eso. Y de vuelta aquí vamos a instanciar un rastro de cohetes. Lo vamos a hacer en la posición de fuego o desde
la posición de fuego y con la rotación de puntos de posición FAR. Entonces ojalá esto funcione, guarde todo eso. Y ahora vamos a entrar a nuestro, mientras que así espera esto y a nuestro lanzacohetes. Y vamos a añadir view rock trailing aquí. Y también vamos a sumar la bala. Entonces, ¿dónde está nuestra bala? Y también vamos a cambiar el tiempo entre tomas. Vamos a mantenerlo en una. Está bien. Total de embarcaciones 15. Eso también me gusta. Hagamos este diez. O saber qué? Hagamos este 0.05. y por ahora, mantengamos la cantidad de daño. Vamos a cambiar. Esto, hará que este lanzacohetes y lanzacohetes
real entrará en nuestras balas prefabs y añadirá aquí la bala C. ¿ Aplicamos esto? Por lo que anula, necesitamos aplicar los cambios que hicimos a nuestros hermanos aquí dentro. Y por ahora, solo sigamos adelante y eliminemos la explosión y la bala DC de arsine. Y sólo echemos un vistazo y veamos si nuestro lanzacohetes funciona realmente. Entonces cuando golpeemos el juego, lo haremos, oh, antes de hacer eso, no
queremos estar siempre recogiendo nuestro lanzacohetes. Entonces, por ahora, vamos a sacar al francotirador de nuestros órganos. Quita esto de aquí, y haremos del francotirador y el arma poco simpática y el lanzacohetes un arma que ya está disponible para nosotros. Y pondremos esto para volver, también para, para salvar todo eso de nuevo en nuestro juego. Entonces ahora tenemos el lanzacohetes y cuando disparamos, se
puede ver que tenemos el efecto trail y en realidad podemos disparar tiro. Ahora, se puede ver que hay un par de cosas mal con esto. Pero por ahora, al menos estamos disparando cohetes por todo el lugar. Muy bonito. Ahora es el momento de seguir adelante y agregar una explosión cada vez que realmente
impactemos a un objetivo y causemos daño. Muy bonito. Entonces vamos a entrar en nuestra bala C y un guión R. Abramos el controlador de bala. Y aquí dentro vamos a crear un efecto de partículas públicas. Entonces efecto de partícula donde y no es Sistema de Partículas, Explosión, explosión. Hecho. Guarda eso. Esperemos que necesitábamos agregar un punto y coma. Y entonces vamos a crear también un público que va a comprobar si en realidad somos una roca. Entonces, ¿somos un cohete? Sí, deberíamos serlo. Ahora en el empresario Entrar. Quitemos esto. En el empresario entrar. Nosotros vamos a chequear. Si somos un cohete. Entonces vamos a instanciar, instanciar el efecto de explosión. Vamos a instanciar en la posición de punto de transformación. Y vamos a hacer que el cuaternión, cuaterniones identifiquen. Entonces cuando nuestra bala, si la salida es una roca y golpea a un objetivo y va a explotar. Usar el efecto de explosión ahorrará todo eso. De vuelta en nuestro juego. Deberíamos tener un lugar para poner nuestro mientras. Simplemente desaparecen en mí. En serio. ¿ A dónde va eso? Entonces ver bala. Ver bala y está bien. Por lo que sí desapareció. No estaba alucinando, así que se asegura de que esto sea un cohete. Y nuestro efecto, vamos a darle la gran explosión. Ahorramos todo eso. Y ahora vamos a golpear Play y vamos a ver qué pasa cuando disparamos. Entonces tenemos la explosión. A ver si están sincronizados. Por favor, deja de llamarme. Entonces deberíamos. Y está algo sincronizado. ¿ Se sincroniza? Vamos a ver un arriba. Lo es. Por lo que ahora tenemos asombrosas mecánicas de tiro y tenemos explosiones increíbles. ¿ Qué tan guay es eso? Pero se puede ver que hay algo mal. Por lo que las explosiones siguen explotando cada vez. Y esto es en realidad, bueno, es algo genial. Parece el Armagedón, pero esto no es lo que estamos buscando. Queremos detener estas explosiones. Entonces para eso, esto en realidad es un error de Unidad. Traté de encontrar la solución para esto, pero al parecer no hay solución a esto. Entonces lo que vamos a hacer, en realidad
vamos a destruir nuestras explosiones del código usando una co-rutina. Y va a ser parte de, parte de tu reto porque vas a hacer que las explosiones dañen. Por lo que en primer lugar, crear un guión llamado daño por explosión en el efecto de explosión. Entonces necesitarás dañar tanto a jugadores como a enemigos si están dentro de la zona de la explosión. Por lo que ya hemos creado el colisionador de esfera. Y antes de que hagamos eso, sólo
déjame entrar en Unidad y necesitamos ir a la explosión. asegura de que tengas un cuerpo rígido aquí. De lo contrario esto no estará funcionando. Entonces, vamos a guardar eso. Y ahora volvamos a nuestro reto. Y déjame solo darte un reto extra para aquellos de ustedes por ahí que estén muy profundos en las anotaciones, destruyan la explosión después de dos segundos. Sí, eso fue todo. Entonces otra vez, un reto de codificación. Ya te he dado las pistas. Con eso dicho, pausa el video y ve a hacer el reto. De acuerdo, bienvenido de nuevo. Entonces vayamos a Unidad. Y mientras que nuestros
guiones, guiones hacen clic aquí y crearemos un daño por explosión. Por lo que C-sharp guión daño por explosión. Y esto se abrirá. No, no lo sabía. Agradable. Por último, haga doble clic en el daño por explosión. Y aquí dentro, no vamos a necesitar ninguno de estos. Simplemente vamos a crear, primer lugar, un entero público. Y llamaremos a esta variable el daño por explosión. K9 nieve aquí dentro creará una tía azúcar Entrar. Y aquí dentro vamos a comprobar en primer lugar si el DAG de otr.com es el enemigo. Entonces vamos a seguir adelante y conseguir el otro punto get componente. Y vamos a acceder al Sistema de Salud enemigo. Y vamos a recibir daños o a dar daños. Con la explosión. El daño creará otra condición si. Y vamos a comprobar si este colisionador comparando la etiqueta con el jugador. Por lo que no vamos a estar necesitando esos, simplemente
va a conseguir el otro. Y vamos a copiar esto y hacer un par de cambios. Entonces en lugar del enemigo, vamos a conseguir la capa Sistema de Salud y también vamos a recibir daños. Por último, vamos a crear un enumerador de ojos. Y aquí dentro vamos a destruir objeto. Y esperemos un par de segundos aquí. No necesitamos realmente crear esto, así que crearemos un retorno de rendimiento. Y algunos de ustedes pueden haber probado mucho esto. He intentado esto muchas veces y solo quieres ver la explosión para luego hacerla desaparecer. Podemos incluso hacerlo tal vez 1.5, así que ya basta. Y por último, destruir el objeto del juego. Y vamos a llamar a esto en el inicio. Entonces sí, lo vamos a usar. Entonces en cuanto activemos la explosión y la tengamos, inmediatamente
vamos a arrancar el Colton y destruir ¿qué destruye? El objeto del juego. Guarda todo eso. Y ahora vayamos a Unidad y probemos todo esto. Así que asegúrate de que el mientras que la gran explosión tenga un radio, tenga un cuerpo rígido, tenga el daño por explosión. Ahora cuando
jugamos, deberíamos poder disparar nuestro cohete. Si cerramos, nos destruyen la mitad de nuestra casa. Si disparamos a un robot ambulante, también aplasta la salud y al gran enemigo gigante. A ver, sí, también pierden. Entonces con nuestro lanzacohetes, lanzador hecho, vamos a poner en escena todos nuestros archivos. Entonces tal vez tengamos más archivos. No. Agregado un lanzacohetes vienen metal de eso. Y lo que eso ninguno. En el siguiente video realmente vamos a estar agregando, recargar animación a todos y cada uno de los que tenemos. Entonces te veré ahí.
49. Animaciones de Reload: Hey, bienvenido de nuevo, mis desarrolladores de juegos favoritos. En este video vamos a estar agregando animaciones de recarga a todas nuestras armas. Entonces ahora mismo cuando deberíamos, recargamos, en realidad
tenemos algún tipo de animación Recargar. Deberíamos entonces el rifle. También tenemos una animación real y también tenemos la animación de recarga de francotirador. También podemos recargar al francotirador. Muy bonito. Y también tenemos la recarga para este, pero la mantendré una sorpresa para el final del video. Bueno, dicho eso, no perdamos más tiempo y empecemos. Ah, está bien, así que sigamos adelante y creamos algunas animaciones para nuestras armas. Entonces vamos a empezar con la pistola. Voy a crear la animación de pistola y la animación de rifle. Y entonces tal vez saltaré por esos para que puedas hacerlo por tu cuenta. Entonces sigamos adelante y pongamos la ventana de juego y aquí al lado del inspector y hazla más grande para que podamos ver todo eso. Y vamos a entrar al jugador aquí, vamos a ir a las animaciones. Y debido a que el jugador ya tiene un animador encima, vamos a crear un nuevo clip y aquí, y vamos a sí, y animaciones en las animaciones del jugador. Y vamos a crear una carpeta aquí que llamará a la recarga de armas. Y aquí dentro lo llamaremos distal. Entonces la pistola recarga animaciones, guarde todo eso. De acuerdo, entonces ahora lo que vamos a estar animando es en realidad el prefabricado de la pistola. Por lo que esto va a depender enteramente de ti. Entonces así es como quieres crear tus animaciones. Simplemente te mostraré cómo los hago quedar bien. Y entonces puedes seguir adelante y hacer las tuyas. Entonces, antes que nada, veamos la pistola, vayamos al inspector y veamos cuánto tiempo se tarda en recargar. Entonces son dos así que tenemos dos segundos para recargar nuestra pistola. Vamos a mantener esta vista de juego indie para que podamos ver cómo se ve. Por lo que hacemos click en el prefabricado de pistola y teníamos el botón de grabación. Entonces antes que nada, veamos, tenemos dos segundos. Hagamos el tiempo como dos segundos. De acuerdo, así que tenemos todo esto para funcionar. Y así en primer lugar, vamos al modelo 2.5, que son estos 13. Y vamos a mover la pistola frente a nosotros. Entonces vamos a rotarlo y vamos a moverlo frente a nosotros así como así. Y tal vez un poco de rotación en esta dirección así como así. Entonces esta es la posición que queremos en este punto. Entonces vamos a seguir adelante. Y en el marco 45, vamos a abrir el prefabricado de pistola. Y aquí dentro podemos ver que tenemos un par de cosas que podemos manipular. Entonces esto es lo genial de estos activos. que podamos elegir la revista, por ejemplo, y podemos sacarla así de la escena y luego agregar la marca de 55 minutos. Podemos seguir adelante y volver a ponerlo. Entonces vamos a copiar el original. Entonces este es el marco de la copia original que vamos a volver a ponerlo aquí. Eso. Por lo que ahora vuelve a su lugar. Entonces también podemos ir a la marca tal vez de 65 minutos y elegir el dónde está este gatillo golpeado en el gatillo,
el tobogán al lado del martillo ligero cargador. Entonces el martillo y lo podemos mover un poco atrás. Así que así como eso. Y luego podemos volver a ponerlo después de cinco cuadros. Entonces volvamos aquí. Obtienes el martillo, copia los componentes del martillo y vuelve a ponerlos aquí. Y entonces podemos seguir adelante y poner todo ido atrás. Entonces vamos al puesto o podemos copiar todos estos, copiarlos. Y luego los 2 segundos más pegar. Entonces veamos cómo funciona realmente esta animación y verás que hay, definitivamente
hay algo mal. Entonces le pegamos a juego y al up. ¿ No viste eso? Por lo que se puede ver que definitivamente hay algo mal. Y el problema es que, digamos cuando empecemos y aquí cuando empecemos a movernos, todas las animaciones se mueven juntas. Para que veas que el clip se está apagando, el martillo se está apagando y todo se mueve al mismo tiempo. Y eso no es lo que queremos tener. Queremos realmente, por ejemplo, mover la pistola frente a nosotros, y luego queremos mover el clip, y luego queremos mover el martillo. Y cuando terminemos todo eso, queremos poner el ido de vuelta a su lugar. Entonces la forma en que hacemos eso es que realmente tendremos que seguir adelante y copiar las posiciones originales que tenemos y mantenerlas hasta que se mueva la siguiente animación. Entonces, ¿qué quiero decir con eso? Digamos por ejemplo, queremos empezar a mover nuestra revista, la revista, queremos empezar a moverla en este punto justo aquí, correcto, así en el cuadro 30. Entonces lo que hacemos es entrar aquí. Vamos a dar click en la revista que representa este punto aquí mismo. copiaremos y lo pegaremos a esta marca de 30 segundos. Entonces ahora lo que pasa es que la revista se mantiene en su lugar hasta que golpea los 30 segundos, la marca de 30 fotogramas y
luego empieza a moverse, luego vuelve. Por lo que se puede ver que aquí mismo del 0 al 030, se queda en su lugar y luego se mueve. De acuerdo, genial, así que vamos a usar esto en todos los componentes. Entonces el martillo y aquí, así la revista, quiero decir, aquí, cuando vuelva a colocar aquí, vamos a empezar a mover nuestro martillo. Entonces copiaremos la posición original del martillo, copiaremos, pegarla aquí. Entonces, ¿ahora qué pasa? Nuestra pistola se mueve al centro. Se remonta la revista. Cuando va a su lugar, el martillo retrocede, se mueve en su lugar. Y finalmente tenemos la posición de nuestro arma. Entonces tendremos que copiar las posiciones y aquí, así que copiar la rotación y la posición del arma. Copiar eso. Y los vamos a pegar por aquí. Y ahora cuando tocamos la animación, se
puede ver que recargamos y luego volvemos a poner nuestra pistola. Por lo que ahora tenemos una animación de aspecto realmente agradable. Podemos ahorrar eso. Y ahora sigamos adelante y en realidad lo activamos desde nuestro código. Entonces pongamos ese alto esto antes que nada. Y vamos y a nuestro animador aquí dentro. Y vamos a hacerlo, mientras que la animación, todavía no la tenemos. Pongámoslo aquí arriba y pongamos el juego por ahora de nuevo en su lugar. Y vayamos con el Animador. Y aquí dentro tenemos al ídolo caminando y corriendo. Entonces hagamos esto un poco más pequeño para que podamos ver qué está pasando. Entonces qué vamos a hacer ya que vamos a poner la animación de recarga de pistola. Y aquí vamos a crear una transición de lo inactivo a la recarga de pistola. Ahora podemos hacer esto desde cualquier estado, pero solo por ahora mantenerlo en el ídolo. Y luego vamos a crear el camino de regreso aquí. Vamos a quitar cualquier tiempo de salida y detener cualquiera, o simplemente vamos a mantener la duración de la transición y podemos ver cómo funciona todo esto. Genial. Entonces tal vez si vemos que necesitamos quitar la transición, lo haremos. Entonces vamos a crear un gatillo. Y aquí vamos a llamar a esta pistola recarga entrar. Y ahora vamos a sumar esta condición a nuestra recarga y él ahorrará todo eso. Ahora entremos a nuestro código y en realidad implementemos esto. Entonces abriremos nuestro guión. Y en el sistema GUN, vamos a seguir adelante y crear una referencia a nuestro animador. Entonces pongámoslo aquí arriba. Por lo que animador público y mater. Y lo llamaremos mi mentor. Y entonces vamos a terminar la recarga aquí. Entonces en la recarga, vamos a ir a mi animador set de puntos, trigger, set, trigger, y vamos a copiar aquí la referencia de cadena. Copiaremos la pistola, recargaremos y aquí, la pegaremos aquí, detendremos todo eso. ¿ Y sabes qué? No tengo algo que cada vez que recargamos lienzo de
la UI realmente se refresque antes de poder usar las balas. Entonces lo que vamos a hacer es copiar todos estos son realmente cortados a partir de aquí. Y los vamos a poner en el revestimiento. Entonces de esa manera cuando recargamos, terminamos la animación y luego tenemos nuestras balas actualizadas en nuestra interfaz de usuario. Entonces, vamos a guardar eso. Y ahora sigamos adelante y veamos cómo todo esto mientras bloquea y, o juego. Entonces pon el animador y aquí, vamos a moverlo hacia arriba para que podamos ver si esto funciona. Vamos a golpear Play. Y ahora cuando vamos a nuestra pistola, disparamos un par de disparos. Nos recargamos. Y no hemos hecho referencia a nuestro animador. Muy bonito. Entonces la pistola aquí dentro, tenemos al animador. Arrastremos al jugador y automáticamente colocará el componente animador de un símbolo de eso de vuelta en nuestro juego. Y ahora, ojalá no cometamos ningún error o deberíamos argon un par de veces, recargamos. Muy bonito. Entonces ahora tenemos nuestras animaciones de recarga y no estoy seguro si te has dado cuenta. Ni siquiera me di cuenta cuando recargamos, cuando terminamos la recarga que nuestras actualizaciones de UI. Muy bonito, tan genial. Ahora que tenemos esto hecho, sigamos adelante y creemos la animación del rifle. Y tal vez sólo acelere el proceso porque hará
que el video sea mucho más largo de lo que debería ser. Entonces oye, si enorme o molécula aquí. Entonces lo primero que hicimos es ponernos el juego. Apagamos la pistola, encendimos el rifle, creamos una nueva recarga de rifle, y vamos a empezar a animar. Entonces, en primer lugar, solo consigo las posiciones que quiero. Busqué el tiempo de recarga. Resulta que todos ellos tienen dos segundos para tiempo real. Entonces ahora solo juego por ahí. Y en primer lugar, solo quiero tener una sensación de cómo se verá la animación. Entonces en cada punto acabo de decir las cosas que se van a mover. Entonces el clip, vamos a ir uno arriba, uno abajo, y luego núcleo de difusión también irá atrás y al frente. Y finalmente copio las posiciones iniciales. Y ahora ¿qué estamos haciendo? Bueno, estamos revisando para ver qué animación comienza y qué animación continúa. Y en base a eso, voy a empezar a copiar el componente de la posición inicial y pegarlos siempre que realmente necesiten empezar a moverse. Para que así no se muevan antes de que lo necesiten. Entonces, básicamente estoy haciendo eso ahora mismo. Probar todo, mirarlos, jugar, copiar, pegar, ver si esta es la posición que realmente necesita tener. Por lo que todo esto es a través de juicio y error. Por eso los animo a pausar realmente el video. Y realmente no puedo sólo como un reto, sino ir y probar todo esto por tu cuenta. La práctica hace perfecto. He hecho esto varias veces hasta que realmente lo conseguí correctamente. Entonces sólo probando todo. Entonces la posición que quiero y ahora la animación está casi terminada. Solo estoy mirando a través asegurándome de que el eclipse no se mueva demasiado rápido. Yo muevo la animación y oh gaye, bienvenido de nuevo. Entonces vamos a ver. Esta es la animación que he creado. Entonces me tomó un poco de tiempo, tal vez
va a tomar más, pero por ahora, vamos a mantenerlo en eso. Entonces ahora tenemos la animación. Vayamos a nuestro animador aquí. Y tenemos la animación del rifle ya añadida, creará una transición del ocioso al rifle y una transición de la rivalidad lu, dos ociosos. Y ahora lo que vamos a hacer es que vamos a crear otro gatillo. Y este gatillo va a ser la recarga del rifle. Y cuando transitemos ahí, así que vamos al inspector. Vamos a añadir esta condición aquí. Por lo que lo haremos la recarga del rifle se apagará en cualquier momento de salida. ¿ Y mantuvimos la transición? De acuerdo, así que lo guardamos. Entonces hagamos lo mismo y aquí, y en el camino de regreso vamos a mantener el tiempo de salida. Y asegurémonos de que todo sea exactamente igual. Está bien, genial. Entonces ahora tenemos esta transición. Ahora, ¿cómo vamos a implementar esto en nuestro código? Entonces ahora si volvemos a nuestro código, cuando recargamos, estamos recargando la recarga de Stu. Entonces, ¿qué deberíamos estar haciendo aquí? Entonces deberíamos estar agregando una tonelada de si condiciones y si la pistola está equipada de lo que podemos que podemos hacer todo eso, pero podemos hacer algo diferente. En realidad podemos seguir adelante y aquí arriba. Y aquí dentro vamos a crear una variable que es una cadena pública, o ni siquiera necesita ser pública. Para que podamos convertirla en una cuerda normal. Y vamos a llamar a esto el nombre de animación de arma. Por lo que ahora tenemos el nombre de la animación del arma y una actualización. Vamos a crear un gestor de animación. Entonces va a ser, por supuesto, el gerente de animación de armas, pero lo llamaremos gestor de animación. Vamos a seguir adelante y generar este método. Y aquí dentro vamos a estar cambiando el nombre de animación del arma. Entonces déjame mostrarte a lo que me refiero. Entonces vamos a copiar el nombre de la animación de conteo. Lo vamos a usar aquí como referencia de cadena. Y ahora lo estamos, vamos a estar cambiando este nombre de animación de arma
dependiendo del nombre de nuestra pistola usando algo llamado declaración de cambio. Entonces permítanme mostrarles lo que es una declaración de cambio. Tan similar a las sentencias if, esto permite agregar la ejecución de código condicional. Entonces permítanme mostrarles la estructura de la declaración de cambio para
que entienda de inmediato lo que significa todo esto. Entonces, en primer lugar, escribimos interruptor. Agregamos el caso que fue cual será el nombre del arma. Y en base a este nombre de arma o el basado en este interruptor de caso, vamos a hacer algo. Entonces si nuestro caso es uno, así que digamos el caso, que ahora es el nombre del arma. Por lo que la representará la pistola, por ejemplo. Vamos a ejecutar algún tipo de código. Y en nuestro caso, vamos a poner el nombre de animación del arma como recarga de pistola. Después escribimos break. A continuación añadimos otro caso. Entonces este será, por ejemplo, el rifle. Si es el caso del rifle, entonces se ejecutará el código, que será el nombre de la animación será igual a la recarga del rifle. Después nos rompemos y podemos sumar tantos casos como queramos. Y por último, agregamos el predeterminado. No necesitamos agregar nada aquí. Podemos agregar algo aquí. Y por último, nos rompemos. Así que mira la declaración de cambio, entiende eso, y voy a implementarla, implementarla frente a ti. Entonces volvamos a nuestro código. Y aquí dentro vamos a escribir. Así que cambia. El caso será el nombre del arma. Entonces con base en el nombre del arma, vamos a ejecutar algún código. Por lo que nuestro primer caso como pistola. Entonces obviamente deberíamos ir y usar siempre el,
vale, así que nuestra pantalla está un poco enrevesada ahora mismo, pero no se preocupe. Vamos a entrar en nuestra pistola. Copia el nombre del arma para que sea la pistola. De vuelta en nuestro código. Entonces ahora cuando tengamos este caso, nuestro nombre de animación de arma será igual a la pistola. Recargar. Pégala aquí. Y por supuesto, porque esto es una referencia de cadena, necesitamos poner estas dos citas aquí y escribimos break. Muy bonito. Ahora el segundo caso, si tenemos un rifle con el nombre de un rifle, Vamos a seguir adelante y crear aquí un colon. Por lo que el nombre de la animación del arma será igual a la recarga del rifle. Y no olvidemos las comillas. Muy bonito. Y ahora nos rompemos. Además no sumó este descanso. Y también eliminemos esto. Y por último, vamos a crear el caso por defecto. Y no necesitamos hacer nada aquí dentro. Simplemente podemos seguir adelante y romper. Por lo que no necesitas tener el caso por defecto, pero a veces te puede pedir el caso por defecto, así que lo mantendremos, vamos a guardar todo eso. Y ahora sigamos adelante. Por lo que hemos agregado el nombre de la animación, por lo que cambiará dependiendo de lo que le demos o de qué caso tengamos. Entonces cuando entramos en nuestra ganancia, oh, OK, esto es muy confuso. Cuando golpeamos el juego. Tendremos nuestro cohete, sin preocupaciones. Cuando cambiamos al arma, seguro un poco, recargamos volvemos a cargar usando la animación de pistola cuando volvemos a golpear a Tab. Entonces déjame solo poner el animador y aquí. Por lo que se ve mejor. Entonces sabemos que en realidad está funcionando. Entonces cuando aún éramos yo, deberíamos recargar las obras de recarga de animación de pistola. Tenemos el rifle, disparamos por ahí, recargamos. Y por supuesto no se asignó el animador variable. Cuántas veces cometeré este error hasta que finalmente, nunca lo vuelvas a hacer. Por lo que años y años de experiencia y aún así nos olvidamos de agregar el zapato alrededor de la recarga y tenemos nuestra recarga de rifle. Muy bonito. Ahora con eso hecho, es hora de tu reto. Y tu reto va a ser crear animaciones de francotirador y lanzacohetes. Así que crea una animación de recarga de francotirador con su propio Trigger y transición. Haga una declaración de cambio exactamente para ello. Y por supuesto haz lo mismo para
el lanzacohetes y lo mismo para el lanzacohetes y
diviértete, disfrútalo, crea tu propia animación. A lo mejor quieres tener algún tipo de animación locos. Y recuerda siempre que las animaciones necesitan estar en el prefab real, no en todo el objeto del juego, o de lo contrario podría romperlo. Entonces con eso dicho, pausa el video ahora mismo y ve a hacer las animaciones. Hey, bienvenido de nuevo. Entonces espero que te divirtieras creando animaciones porque seguro que sí. Entonces cuando golpeamos play ahora, y he puesto todas las armas para que estén disponibles, así que tengo al francotirador disponible. Entonces cuando recargamos, esta es nuestra animación de recarga. Está bien, y echemos un vistazo al arma a las recargas también. Nos fijamos en el rifle, también tiene su propia recarga. Y finalmente tenemos el lanzacohetes. Ahora bien, no sabía cómo agregarte recarga y emisión al lanzacohetes. Entonces se me ocurrió este. Entonces sí, espero que te guste eso. No se trata de animación, creo que sí con eso hecho, espero que hayan disfrutado el video y el siguiente vamos a estar agregando y recolección de municiones y recolección de salud. Con eso dicho, te veré en el próximo y por supuesto que no olvides completar tus cambios. No voy a hacer eso ahora mismo, pero siempre debes estar haciéndolo por tu cuenta. Entonces te veré en el siguiente video.
50. Conección de salud y munición: Bienvenidos de nuevo, mis compañeros desarrolladores de juegos. Como pueden ver, aquí hay una caja de municiones, que probablemente deberíamos haber hecho más grande. Y tenemos un botiquín de primeros auxilios el cual también deberíamos quizá hacer más grande. Entonces lo que estamos haciendo aquí dentro, déjame sólo ir a la camioneta y a la salud. Y hagámoslos tres veces más grandes en cada lado. Y ahora tenemos estas enormes cajas. Cuando golpeamos el juego, podemos ver que tenemos este lanzacohetes por ejemplo, tenemos cinco municiones, deberíamos el suelo, nos lastimamos. Se puede ver que mi vida está abajo, mis balas están bajadas. Yo quiero recargar. Entonces ahora me quedan tres balas, o en realidad diez Balas y tres en balas totales. Por lo que ahora cuando recojo esta caja, se
puede ver que tengo ahora cinco y mi salud cuando
voy al botiquín de primeros auxilios también aumenta. Por lo que en este video vamos a estar creando una camioneta sanitaria y una camioneta de municiones. Y vamos a divertirnos mucho. Entonces, no perdamos más tiempo y empecemos. Oh, bien, empecemos. Lo primero que quiero hacer es que vamos a sumar nuestros activos de juego. Entonces aquí tengo una Caja de Salud o la primera caja de ocho y la caja. Así que arrástrelos a nuestros proyectos y a nuestros activos de juego en realidad. Y lo que estoy usando es esto aquí mismo de SketchFab.com. Es gratis, es de truenos. Y también este botiquín de primeros auxilios de Theo Clark, también en Sketchfab. Entonces con eso dicho, volvamos aquí y sigamos adelante y vayamos a la caja de munición, a la fuente, a las cajas de munición otra vez. Y añadamos esto. Vamos a crear Primero que nada,
un objeto de juego vacío del que vamos a restablecer la posición y lo moveremos. A ver, muévelo justo por aquí. Y empecemos a trabajar en ello desde aquí. Entonces de vuelta, vamos a llamar a esto la recogida de munición. Y vamos a añadir esta caja de niño de la camioneta de munición. Y digamos, pero pequeño, tal vez podamos hacerlo alrededor. En primer lugar, vamos a seguir adelante y desempacar prefabricado por completo. Hagamos este 0.5. por todos lados. Si quieres hacerlo más grande, puedes hacerlo más grande, puedes hacerlo más pequeño, pero sigamos adelante y agregamos el material. Por lo que duplicar material llamado munición, Matt. Y agregémoslo a la caja y luego sigamos adelante y encerrémoslo aquí. Porque vamos a sumar lo primero de todo, veamos el mapa normal. Así que arregla eso y el color base del material predeterminado al albedo, el mapa de altura. Entonces al mapa de altura, el, el metálico a lo metálico. Y ahora tenemos nuestra caja realmente, bueno. Deja que podamos seguir adelante y ajustar la suavidad. Esto dependerá de ti. Se puede ajustar el mapa de altura, se
puede ajustar el tal vez la rugosidad a la máscara de detalle. No, eso no cambia nada. Puedes ajustar el mapa de altura también ver cómo quieres cambiar todo eso. Bonito. También un ingenioso truco que puedes usar es ir al mapa normal y mover esto hacia arriba. Por lo que puedes ver que esto se vuelve granulado o moverlo hacia abajo. También se convierte en un granulado. Pero vamos a mantenerlo a tal vez a las tres. A ver, 33. Se ve bien. Guarda todo eso. Lo que puedes hacer con esta caja de munición es que realmente necesitas moverla un poco hacia abajo. Muévelo otra vez hacia abajo. Entonces lo que puedes hacer es que realmente puedes animarlo para que esté girando, solo parece que puedes hacer con esta pistola. Por lo que es bastante fácil. Pero por ahora, solo sigamos adelante y quitemos la cerradura. Y aquí vamos a la camioneta de munición y vamos a añadir un colisionador de esfera aquí. Entonces mientras que, mientras que nuestro encendedor esférico, ok, así nos estamos moviendo, Asegúrate de que siempre mueves toda la camioneta de munición, no sólo la caja de munición. Entonces aquí abajo. Entonces está zancado. Vamos a volver a poner esto y mover toda la caja hacia abajo así. Hagámoslo un poco más pequeño, por lo que es justo el tamaño correcto. Y creo que eso es todo. Hazlo un poco más grande, asegúrate de que esté activado. Ahora agreguemos el HealthKit. Por lo que de vuelta en nuestros activos de juego, vuelta en nuestra fuente de botiquín de primeros auxilios, este es nuestro botiquín de Vamos a seguir adelante y crear un objeto de juego vacío que restablezca la posición de doble clic en. Y llamaremos a esto la camioneta de salud. Hit enter. Agregaremos el primer a2 it, y luego moveremos todo este objeto un poco más allá. De acuerdo, Así que no eso por serio. De acuerdo, entonces aquí dentro, veamos la cajita. Entonces tenemos nuestra cajita y al igual que lo hicimos, duplicamos el material, nos encerramos aquí. También tienes las texturas. Entonces vamos a sumar los primeros auxilios y aquí
el, el mapa normal y aquí el, ¿qué más hemos aumentado en metálico? Esta es la o la rugosidad. Cambiemos. Ah, y que no te olvides de
ir y agregar el material real a
esto para que puedas cambiarlo y realmente ver qué está pasando. Entonces, tal vez quitemos esto, ponerlo a Ninguno, y arreglemos el mapa normal. ¿ Qué más tenemos? El r, Esta es la rugosidad. No estoy seguro de dónde estamos agregando esto. Entonces esta es la máscara detallada. Entonces podemos aumentar lo normal sólo un poquito, y eso me queda bastante bien. Y tener recogida. Detengamos la cerradura. El primero una caja está justo aquí, así que hagámosla uno por uno. Y empacemos completamente el prefabricado porque no lo queremos. Y también podemos seguir adelante y agregar un colisionador de esfera a esto. Puedes moverlo hacia arriba si quieres y centrado alrededor, meditar pero más grande. Por lo que el jugador realmente se siente como si tuviera que tocarlo. Entonces lo toca. Y ahí vamos. Por lo que ahora tenemos nuestra caja de munición, tenemos nuestra salud buena. Lo siguiente que tenemos que hacer es que vamos a crear un guión para ambos. Entonces de vuelta en nuestros guiones, sigamos adelante y creemos un script de respaldo de salud. Entonces la salud. Pick up, hit enter. Asegúrate de que esté escrito correctamente en el guión a la recogida de salud. Entonces ahora está aquí. Hagamos doble clic. Abramos esto. Y aquí en primer lugar vamos a crear un entero público que determinará la cantidad de curación. Por lo que cantidad de curación y será igual a cinco. Lo siguiente que vamos a hacer es crear un emprendedor enter. Entonces, eliminemos el inicio y actualicemos. Ya hemos hecho todo esto antes, así que creo que sería muy fácil para ustedes. Entonces si alter.com etiqueta y nos aseguraremos de que solo sea el jugador el que pueda interactuar con él. Y aquí dentro vamos a conseguir el otro componente get, el sistema de salud del jugador. Cerraremos eso. Y aquí dentro vamos a llamar a un método que es el talonero. Y lo vamos a sanar por la cantidad de sanación que tenemos aquí dentro. Y luego vamos a destruir el objeto del juego. Entonces después de que hayamos recogido todo, vamos a destruir el objeto del juego. Y ahora vamos a crear un nuevo método de jugador, pero no contigo. Por lo que vas a terminar el talonero y método. Por lo tanto, crea un método que le agregue salud a nuestro jugador. Se asegura de que nunca pasemos por encima de nuestra máxima salud. Entonces esto es muy importante. Y por último, actualizar el bate de salud a la Barra de Salud. Así que actualizar la salud No está mal bar. Bueno eso dicho, pausa el video ahora mismo y ve a hacer el reto. De acuerdo, bienvenido de nuevo. Entonces vamos a copiar el nombre. Entonces tenemos exactamente lo mismo y vamos a
entrar en nuestro mientras que así el sistema de salud jugador. Y aquí dentro vamos a quitar la actualización porque no la estamos usando. Mantén el código limpio y fresco. Y aquí dentro vamos a crear un vacío público aquí jugador que toma en un entero que se llama la cantidad del talón. Y aquí abajo vamos a conseguir la salud actual. Vamos a sumarle la cantidad de cerro que obtenemos de nuestra espalda de salud. Y luego para no ir por encima de la salud máxima, vamos a comprobar si la salud actual se pone mayor que la salud de Ymax, entonces vamos a seguir adelante y fijar la salud actual. Por lo que la corriente tiene que ser igual a la salud máxima. Por lo que de esa manera nunca pasamos. Y como paso final, por supuesto, les
dije que necesitamos actualizar la Barra de Salud. Entonces vamos a conseguir la Barra de Salud. Nosotros vamos a fijar la Salud y vamos a darle una t. Salud
actual. ¿ Se hizo eso? Guardemos eso. Todo debería estar funcionando bien. Vuelve a nuestro juego. Veamos la dukkha de salud. Cantidad de curación es de cinco. Entonces con eso dicho, vamos a bajar un poco esto porque creo que es demasiado alto. Entonces ponlo aquí. Vamos a ponernos rugosos un poco. Entonces, ¿cuál es la salud real de nuestro jugador? Son diez. Hagámoslo 15 para que en realidad podamos hacerlo más obvio había jugado. Entonces nuestro objetivo es ir por debajo, acuerdo, para que podamos usar directo para hacer eso. Entonces van dos hits, ¿dónde está nuestra salud de vuelta? Entonces entramos en ello. Y por supuesto que nos olvidamos de convertirlo en un gatillo. Entonces hagámoslo un gatillo y subiremos un poco. Por lo que se ve mejor. Tenía juego. Y ahora nos pegamos una, dos veces. Y vamos a buscar nuestro pack de salud. Entonces nuestros Bucks de Salud, lo
recogemos y podemos ver que nuestra salud es, bueno, se incrementó en cinco puntos. Muy bonito. Ahora, sigamos. El siguiente paso es seguir adelante y agregar un guión aquí que es la recogida de munición. Y si te sientes a la altura del reto, otro reto y ese es el video. Pausa el video ahora mismo, o puedes seguir adelante y seguir conmigo que veas quién lo hace más rápido. Entonces vamos a crear un guión. El golpe de la camioneta de munición entra, abre por su cuenta. No se preocupe. Esperamos la recogida de munición. Lo arrastramos y lo ponemos en el objeto de juego de recolección. Vamos a bajar esto un poco,
ponerlo por aquí, ponerlo por aquí, hacer doble clic en la camioneta de munición. Y aquí dentro vamos a ante todo, crear el empresario entrar. Entonces entra el empresario. A ver, vamos a crear una condición y voy a copiar todo esto siendo más rápido que tú. Entonces pegamos aquí, pero vamos a cambiar un par de cosas aquí. Entonces en lugar de que el otro obtenga el componente, vamos a conseguir el componente solo hijos. ¿ Por qué es eso? Bueno, porque el sistema está en los niños y ahí es donde vamos a seguir adelante y añadir munición. Y no vamos a crear una variable en este guión de pastillas de munición porque queremos que todas y cada una de las armas agreguen su propia munición. Por ejemplo, no podemos hacer una caja de munición que añada 300 rondas a un francotirador. Eso sería ilógico. Por lo que cada arma en sistema de órganos tendrá su propia cantidad de bala de camioneta. Entonces aquí vamos a crear otra variable va a ser un entero público, y se va a llamar así entero. Y luego se le va a llamar la cantidad de bala de la camioneta. Por lo que recoger taza cantidad de bala. Entonces si pausas el video y querías
realmente hacer la recolección de munición da la cantidad de balas. Eso está bien. No se preocupe. Pero les voy a decir por qué. Es más lógico agregarlo en nuestro sistema GUN. Entonces de vuelta aquí, vamos a crear el método que lo hará antes de recargar o después de recargar. A pesar de que eso salta la recarga y la calidad real al lado del otro. Tan vacío público en munición. Y aquí dentro vamos a tomar el total de balas que tenemos. Y simplemente les vamos a sumar el monto de las balas de recogida. Eso lo vamos a salvar. Ahora de vuelta en nuestro juego. Espere a que se compile. Está bien, genial. Ahora sigamos adelante y golpeemos el juego. Ah, nos olvidamos de hacer algo. Entrémonos en nuestro jugador y en nuestra cabeza. Pistolas pistola. pondrá la pistola, digamos 20 rondas. El rifle vamos a conseguir 100 balas. El francotirador obtiene cinco, y el lanzacohetes también se pone. Guarda todo eso en juego. Y ahora por supuesto necesitamos ajustar un par de cosas y nuestro lanzacohetes, su dominado, deberíamos. Y ahora cuando teníamos la caja de munición, podemos ver que aumentamos en una. Entonces probemos esto otra vez con un arma diferente, nos aseguramos de que funcione. Entonces vamos por el rifle. Disparamos mucho por ahí. Entonces tenemos 90 ahora son no, No me des 7171. Cuando levantamos, tenemos 171 y podemos seguir matando a todos nuestros enemigos. Ok, genial. Con eso hecho, podemos seguir adelante y comprometer todos nuestros cambios. Guarda todo en nuestro compromiso todo eso. Con ese Don, este es probablemente el final de esta sección. Espero que hayan disfrutado de esta sección. Y el siguiente, estamos dando mucha,
mucha más vida en orgánico porque estamos agregando audio con nuestros disparos, con nuestro jugador saliendo lastimado, con nuestro salto y con todo también va a estar creando y en realidad convirtiendo nuestro pequeño experimento y Project aquí en un juego real y real. Con eso dicho, espero que hayas disfrutado el video y te veré en el siguiente.
51. SECCIÓN 9: añadir música de fondo: Bienvenido de nuevo, mis desarrolladores de juegos favoritos. En este video, vamos a estar agregando algo de música de fondo y va a ser algo de música aterradora. No sólo eso, salimos de nuestro peso a algunas cosas extra curriculares. Entonces ahora tenemos esta música de fondo, Así que nuestro juego ya no se siente rancio. En realidad da un poco de miedo. Y también agregamos animaciones a nuestra caja de munición y a nuestra espalda de salud. Por lo que ahora tenemos música de fondo y tenemos cajas de munición giratorias. Muy bonito. Entonces, no perdamos más tiempo y empecemos. Ah, bien, entonces lo primero que vamos a hacer es que vamos a hablar de cuál es la fuente de audio,
qué es un oyente de audio, y luego crearemos un gestor de audio. Entonces, empecemos. En primer lugar, hablemos de la fuente de audio, y es una representación de fuentes de audio y 3D. Por lo que básicamente puedes agregar una fuente de audio a un objeto de juego. Entonces podrás reproducir en un entorno 3D. Y para poder reproducir el sonido 3D, también
necesitas un oyente de audio. Por lo que son muy autoexplicativas. Para que puedas reproducir un solo clip de audio usando Reproducir, Pausar y Detener. Nos meteremos en eso más adelante. También puedes usar el clip de reproducción en punto y varios otros métodos y propiedades. A continuación hablemos del oyente de audio. Por lo que actúa como un dispositivo como un micrófono. Recibe entradas de cualquier fuente de audio dada en la escena y no puede reproducirse. Por lo general, el oyente de audio está conectado a la cámara principal. Entonces si entramos a Unidad, vamos a la cámara principal. Podemos ver que tiene un oyente de audio en él. No tiene propiedades en nada. Solo está ahí para escuchar cualquier audio que pudiéramos querer proporcionarlo. Está bien, genial. Ahora con eso, entendido, lo siguiente que vamos a hacer es
añadir algo de música de fondo a nuestro juego. Entonces, antes que nada, sigamos adelante y creemos un objeto de juego vacío. Y aquí que llamaremos al Audio Manager jer. Genial, y reiniciemos su posición para que podamos ver aquí dentro,
para que no esté en algún lugar lejano. Y luego entremos a nuestros activos y creemos una carpeta aquí dentro a la que llamaremos audio. Y aquí dentro vamos a estar agregando nuestra música y efectos de sonido. Entonces vamos a hacer clic derecho dentro del audio y vamos a crear una carpeta que llamará a la música y se sumará toda nuestra música que tendremos. Y ahora sigamos adelante y consigamos nuestra música de fondo que te proporcioné en los recursos. Entonces esta es la música de fondo. Lo encontré en un sitio web que puedes usar para seguir adelante y agregar tu propia música de fondo. Por lo que el juego abierto art.org, si nunca has oído hablar de él, es un sitio web increíble donde puedes encontrar toneladas y toneladas de música, arte y todo lo que necesitas. Desarrollo de juegos, hay un montón de cosas. Entonces con eso dicho, vamos a buscar nuestra música de fondo. Así que simplemente arrastra esto hacia Unity y pongámoslo dentro de la música. Espera puerto, abre esto y en realidad puedes escucharlo en el inspector. Entonces esta es nuestra música de fondo. Es un poco aterrador, tipo de ambiente. Entonces esto es lo que buscamos hacer con nuestra ganancia, con todos los monstruos y robots y así sucesivamente. Queremos crear un ambiente aterrador. De acuerdo, entonces música ambiental, ¿cómo la agregamos al fondo? Bueno, bueno, es extremadamente sencillo. Simplemente lo arrastramos a la jerarquía. Y verás que esto crea un objeto aquí que tiene una fuente de audio en él. Por lo que se puede ver que tiene el clip de audio de la música de fondo ambient y la salida es actualmente no, Pero vamos a arreglar esto más adelante. Se puede ajustar la prioridad para que no profundizemos en esto, pero todo lo que hay que saber es que la prioridad de la que suena la música ante cuál uno y demás. Entonces no te preocupes por eso. Se puede ajustar el volumen y se puede ajustar autor piensa que también podemos hacerlo bucle porque esto es muy importante. No queremos que nuestra música se detenga sólo después de que haya terminado toda la canción. Entonces esto son unos dos minutos y si termina, no
queremos que se detenga. Quieres seguir en bucle y mantener el juego despierto para esta música de fondo. Por lo que queríamos jugar tan pronto como iniciáramos el juego. De acuerdo, ahora lo siguiente que vamos a hacer es crear un hijo del Audio Manager. Y lo llamaremos la música de fondo. Y más adelante crearemos también efectos de sonido y el Audio Manager, y llevaremos esta música de fondo ambiental y la haremos infantil también a la música de fondo. Por lo que ahora cuando golpeamos el juego, cuando iniciamos el juego, puede escuchar que hay música de fondo. Lo que realmente hace que las cosas sean mucho más emocionantes. Entonces ahora caminamos por ahí, tenemos esta música que da mucho miedo y los monstruos realmente cambian sus comportamientos. Te sientes como si estuvieras en algún tipo de juego de miedo a tu alrededor. Ok, así que muy agradable. Espero que estés escuchando esto. Déjame encenderme. Nosotros lo usamos para arriba. Oh, aterrador, ¿no? Está bien, genial. Ahora queremos una forma de controlar nuestro audio y podemos hacerlo directamente desde la fuente de audio o podemos crear un mezclador de audio. Entonces para crear uno, vamos a la ventana. Vayamos al audio. Y aquí podemos crear un mezclador de audio. Barry, bonito, así que ahora tenemos una manera de emitir nuestro audio. Y ahora en el mezclador podemos golpear a esta persona de aquí. Y sigamos adelante y llamemos a esto el mezclador principal. Y ahora deberíamos tener este objeto y aquí, el mezclador principal, vamos a ponerlo dentro del archivo de audio. Y aquí. Y ahora aquí dentro podemos hacer muchas cosas. Para que puedas profundizar más si quieres entrar todo en audio en Unity, puedes hacerlo. Pero lo que vamos a hacer es que vamos a crear un grupo aquí. Y lo vamos a llamar la música de fondo. Ahora, en nuestra fuente de audio para la música de fondo, podemos seguir adelante y comprobar la salida y podemos convertirla en el fondo en la música. Entonces ahora lo que podemos hacer aquí, podemos, por ejemplo, digamos que si estamos jugando el juego, podemos escuchar la música de fondo aquí dentro. Digamos que es un poco demasiado alto para nosotros. Entonces lo que podemos hacer es bajarlo, OK, entonces tal vez necesitamos estar fuera del juego, así que lo bajamos a como digamos, 30 decibelios. Entonces ahora cuando le pegamos a Play, ahora esto, sin embargo, esto podría no ser obvio desde donde estás sentado, pero para mí, puedo escuchar que la música es mucho, mucho más baja. Y a lo mejor queremos hacerlo más alto, a lo
mejor queremos hacerlo más bajo. Por lo que dependerá de la música que incluso podamos aumentarla. Por lo que ahora cuando golpeemos el juego, será aún más fuerte. Ok, Así que eso hecho, es hora de tu reto. Y tu reto va a configurar la música de fondo. Ahora, puedes obtener tu propia música de fondo o usar la que te proporcioné. Yo tampoco soy un, mi gusto por la música no es tan bueno. Entonces tal vez encuentres que esta música es realmente aburrida, y tal vez quieras algo de música emocionante. Así que adelante y encuentra tu propia música de fondo añadida a tu juego. Le agregará más sabor y sensación más individual. Y lo siguiente es agregar un mezclador de audio y jugar con el volumen y ver qué funciona para ti. Entonces con eso dicho, con este pequeño video hecho, déjame entrar en nuestra cadena fuente aquí y vamos a escenificar todo eso puede ser que en realidad no podemos. Podemos ignorar la música ambient, así que ignorar todo debajo la música de audio porque no queremos guardar tan grande de un archivo. Así que golpeó OK, escenario o y agregó música de fondo. Comete eso. Y ahora, mientras tengamos un par de segundos, sigamos adelante y animemos la caja aquí dentro. Entonces las pastillas de munición, vamos a seguir adelante y animarlo. Por lo que vamos a crear una animación, iremos a las animaciones de activos. Y aquí dentro crearemos el pick up. Cualquier mención. Haga doble clic y aquí, girando. Y va a ser una animación muy sencilla. Entonces todo lo que haremos es que lo vamos a girar cada 1 segundo, así que va a ir así. Entonces menos 90 o menos 180. Y luego en el, o saber qué, pasemos esto a la marca de 1 segundo. Y en la marca 2 segundos estará de vuelta en nuestra posición original. Entonces, veamos si eso funciona. De acuerdo, entonces no, no está funcionando como queríamos. Y aquí dentro, hagámoslo menos 270, así que 180 más 90. A ver si eso funciona. De acuerdo, así que sigue
girando, quiere volver. Entonces aquí lo pondremos en menos 360. Por lo que ahora tendremos este spinny spinning, spinning, spinning. Y vamos a guardar esto. Hagámoslo libre suave. Entonces ambos tangentes, hagamos esto lineal. Es decir, así que ahora sigue girando y girando y girando hará lo mismo por la salud para HVAC. Y tengo un poco de manzana o atrayente. Se van a burlar chicas, volumen
total parte reactor. Guarda eso, hit play. Y ahora deberíamos ver funcionando las animaciones. Entonces esta es la caja. Lo recogemos para munición y esto es demasiado alto, pero aún podemos recogerlo. Muy bien. Bien hecho. Espero que hayan disfrutado el video y el siguiente, vamos a estar gestionando aún más nuestro audio. Entonces con eso dicho, te
veré en el siguiente.
52. Gestión de audio: Bienvenidos de nuevo, mis compañeros desarrolladores de juegos. En este video, vamos a empezar a administrar nuestro audio. Entonces ahora cuando morimos, se
puede escuchar que el Audio se detiene. Y lo que vamos a hacer es crear un script de audio manager y aprenderemos sobre instancias, y lo usaremos para detener nuestro juego. Cuando, quiero decir, detenga nuestro fondo de música de audio cada vez
que morimos, no perdamos más tiempo y empecemos. De acuerdo, así que empecemos a administrar nuestro audio. Entonces, ¿qué quiero decir con la gestión de nuestro audio? Vamos a entrar a nuestro jugador. Pongámoslo diez, mantengámoslo a las diez para que podamos aguantar menos hits. Teníamos les, disparemos nuestro cohete aquí abajo así que casi estamos muertos. Hey robot, por favor mátame. Gracias. 12. Entonces cuando morimos, aún podemos escuchar la música y eso es un problema. Entonces lo que queremos hacer es
saber que hay múltiples cosas que tendrán que manejar. Pero antes que nada, lo primero que tendremos que hacer es siempre que buceemos con realmente queremos detener la música. Y para eso necesitamos gestionar nuestro audio. Para eso, vamos a tener que crear un guión. Entonces aquí vamos a crear un script de administrador de audio. Entonces vamos a llamar a esto el Audio Manager. Y Visual Studio. Ya sé lo que va a hacer. Por lo que ahora vamos a añadir el gestor de audio a nuestro gestor de audio, y vamos a abrir el gestor de audio. Ahora, ¿qué vamos a hacer aquí dentro? Bueno, vamos a crear una instancia de una clase. Entonces, ¿qué es una instancia de una clase? Déjame contarte todo al respecto. ¿ Qué es una instancia de una clase? Entonces es una variable estática, lo
que significa que es constante en todos nuestros proyectos. Se puede recuperar de cualquier otra clase más fácilmente y lo
estará utilizando para evitar encontrar el objeto cada vez que queremos tocar una canción. Entonces lo que vamos a hacer es que vamos a evitar que se reproduzca la música. Entonces es la música de fondo la que está en el Audio Manager. ¿ Y cómo sabemos que morimos? Bueno, es del jugador, el sistema de salud de
ese jugador. De acuerdo, así que podrías decirme, Vamos a seguir adelante y encontrar el objeto, fácil, bien, tienes razón, pero digamos que más adelante estaremos agregando alrededor de 20 efectos de sonido. ¿ Qué vas a hacer? ¿ Vas a ir a buscar al Audio Manager cada vez que quieras detener un efecto de sonido. Bueno, claro que puedes hacer eso, pero eventualmente cobrará un peaje en tu programa y en la unidad y tu apuesta empieza a estrellarse. Y en realidad es más difícil de cada vez tipo y objeto de juego fino de tipo y, y así sucesivamente. Entonces lo que vamos a hacer es crear una instancia que al instante nos
conseguirá nuestro gestor de audio. Entonces sigamos adelante y hagamos eso. Entonces aquí vamos a crear una variable estática, así que un público, por supuesto, porque la estamos usando a través de otras clases. Entonces es un público. Estático. Entonces esto significa que es, se mantiene igual en todos nuestros proyectos. No cambia. Es de tipo audio manager. Por lo que es del mismo tipo que la clase y lo llamaremos instancia y estado. Puedes llamar a esto lo que quieras, pero normalmente es mejor llamarlo instancia. Ahora aquí dentro, vamos a quitar el arranque y vamos a usar algo llamado el despertar. Entonces, ¿cuál es la diferencia entre despierto y inicio? Bueno, son casi exactamente lo mismo, pero la única diferencia es que despierta,
despierta comienza apenas un poquito antes de empezar. Entonces vamos a usar despierto. Podemos usar start, pero usar wake suele ser el método más suave y mejor para crear instancias. Y a la instancia no le hace falta un a aquí. Entonces lo que vamos a hacer es simplemente llamar a la instancia y le diremos que es igual a esto. Entonces qué es
esto, estos son los gerentes de audio reales. Entonces la instancia variable es ahora esta. Es el Audio Manager y verás cómo podemos usarlo más adelante. Por ahora, sigamos adelante y creemos una variable pública que va a ser de tipo fuente de audio. Y vamos a conseguir, llámalo la música de fondo. Y vamos a crear un método aquí dentro que detendrá la música de fondo. Entonces va a ser un vacío público. Deténgase de nuevo. Arranca la música. Y lo que estamos haciendo aquí es que simplemente vamos a conseguir la música de fondo y vamos a parar. Por lo que te recomiendo que pases por la documentación de la fuente de audio y veas todas las diferentes cosas que podemos usar. Y uno de ellos parar ¿cuál? Bueno, detiene la música de audio cuando morimos. Y ahora tenemos que llamarlo en algún lugar. Y va a ser parte de tu reto. Tu reto va a ser hacer que la música se detenga cuando el jugador dice, así llamado el método de la salud del jugador cuando el jugador muere y usar la instancia que acabamos de crear. Entonces si quieres ponerte a prueba y ver cómo funciona eso, adelante y hazlo, o puedes esperar un pequeño hit que te voy a dar. El indicio es usar instancia de punto de audio manager, y podrás acceder a lo que quieras desde el Audio Manager que sea público con eso dicho, pausar el video en este momento e ir al reto. De acuerdo, bienvenido de nuevo. Entonces aquí vamos a añadir la música de fondo. Entonces la música de fondo, guarde eso. Y ahora vamos a entrar en la salud de nuestro jugador. Entonces mientras que nuestra salud de jugador, sistema de salud de jugador. Considerando que así en el sistema de salud del jugador aquí dentro, mientras que, cuando morimos, cuando
morimos, queremos responder, pero para que hagamos eso,
sigamos adelante y conseguiremos el viejo yo manager. Instancia de punto, punto, parada. ¿ Dónde se detiene? Antecedentes. Detener música de fondo. Y vamos a guardar eso. Y está bien. Entonces no se preocupe. Todo esto está funcionando. Déjame solo tal vez ir al gerente del juego y hacer la respuesta un poco más larga para que podamos realmente aquí. Entonces hasta que el jugador muera, hagámoslo tres. Por lo que tres segundos hit play. O Hong, espera el guión. Ahora le pegamos al juego. Y el audaz reclamo, déjame subir esto. Por lo que se está reproduciendo el audio. Deberíamos el suelo una vez, dos veces, se detiene, y luego empezamos de nuevo y la música vuelve a empezar. Entonces con eso hecho, espero que lo disfruten. Déjame ir y comprometer todo eso. Etapa
o.Se creó un gestor de audio, los gerentes de música, comentario, todo eso. Y en el siguiente video, vamos a empezar a agregar efectos de sonido. Eso que hizo, espero que lo disfrutes y te veré en el siguiente.
53. Agregar efectos de sonido: Bienvenido de nuevo, mis desarrolladores de juegos favoritos. En este video hemos agregado no sólo música de fondo, sino que ahora cuando
filmamos, podemos escuchar que tenemos los disparos de pistola. Y cuando el robot dispara flechas, puedes escuchar los sonidos que hace. Y no sólo eso cuando disparamos algo metálico, se
puede escuchar la pequeña garrapata metálica. También agregamos disparos a nuestros sonidos de disparo a nuestro rifle. Tenemos agregando, agregó una explosión. Está bien. Hemos agregado todo eso y también un disparo de francotirador. Muy cool. Entonces, no perdamos más tiempo y empecemos. De acuerdo, así que empecemos a añadir algunos efectos de sonido a nuestro juego. Lo primero que vamos a hacer como audio, vamos a crear una carpeta aquí dentro que vamos a llamar a la S f x como f x. Y dentro de ustedes van a crear otra carpeta que vamos a llamar
a los efectos SR desde la unidad, porque en el siguiente video estarán reproduciendo los efectos de sonido de nuestro código. Entonces aquí, abramos y entremos a los recursos y copiemos todos estos. Y arrastrémoslos a nuestro espacio afecta de Unidad y esperemos a que importen caninos OPP. Entonces aquí puedes aquí un par de sonidos que te he proporcionado. Entonces, abramos esto. Entonces este es el sonido metálico, Esta es la sangre enemiga. Está bien, así que se ve bien, pero a ver si la explosión. Ok, muy cool. Entonces ahora ¿cómo vamos a estar sumando todos estos? Vamos a primero que nada, aprender cómo podemos agregar efectos de sonido a las cosas sin usar código. Entonces vámonos. En primer lugar, vamos a empezar a sumar las balas. Te mostraré cómo funciona el tiro de pistola. Entonces, entonces esta es la pistola. Entremos a nuestras prefabs y entremos a nuestras balas. ¿ Y dónde? Nuestra bala de pistola, esta es nuestra bala de pistola. Encerrémoslo en su lugar y volvamos a los efectos de sonido de Unity y arrastraremos el disparo de pistola hacia nuestra bala derecha aquí mismo. Y asegúrate de apagar el bucle y mantener el juego despierto. Por lo que ahora siempre que se cree la bala, escucharemos el disparo. Y luego cuando el esteroide, la fuente de audio con el postal, debería ir, probemos esto y veamos si realmente funciona. Entonces, vamos a guardar eso. Entonces ahora veamos si eso funciona. Cuando golpeamos el juego. Escojamos la pistola. Esto no tiene ningún sonido. Elegimos la pistola cuando empezamos a disparar. Tenemos sonidos de disparo. ¿ Qué tan guay es eso? Entonces ahora podemos disparar, podemos matar y fin de semana realmente adherimos, son tiro de pistola. Muy bonito. Ahora el siguiente paso es seguir adelante y emitirte un reto. Y tu reto es agregar los otros efectos de sonido que te he proporcionado. Entonces agrega los efectos de sonido para el resto de nuestras balas y otras cosas que tenemos. Y asegúrate de que jueguen en Awake y por supuesto apagan el bucle. Bueno, dicho eso, pausa el video ahora mismo y ve a tus efectos de sonido. Oh, bienvenido de nuevo. Entonces, ¿qué vamos a sumar aquí? Entonces, antes que nada, vamos a mirar nuestras balas. Desbloqueemos esto. Y vayamos a la bala que es el francotirador de vuelta en nuestros efectos de sonido francotirador disparado aquí. Entonces no me está permitiendo, agreguemos una fuente de audio. Se me está poniendo de los nervios. Entonces fuente de audio. Y ahora podemos agregar nuestro snapshotting aquí, asegurarnos de que es juego en Awake y no es un looping. Lo siguiente que haremos, Vayamos a bala. Añadamos una bala C. Por lo que esta será de nuevo la fuente de audio lanzacohetes. Y vamos a añadir el, ¿dónde están nuestros efectos de sonido? Añadamos el cohete, ese es este cohete que se está lanzando. Entonces sí, debería serlo. Ojalá lo pusiéramos aquí. A lo siguiente vamos a añadir, ¿qué más deberíamos? Tenemos la granada verde y esta será la,
la que arroje el robot. Entonces todo aquí es algo raro ¿qué está pasando? Y entremos a nuestros efectos de sonido y al enemigo con balas, ¿dónde está? Correr, ser cohete, disparo de robots, y eso se agrega y aquí, guarde eso. ¿ Qué más tenemos el disparo de rifle, que es muy importante. Por lo que Balas, fusil disparado. Y volvamos a añadir una fuente de audio, efectos de
sonido, disparo de rifle. El tipo no agrega una fuente de audio. Entonces tiro de rifle y ¿qué más tenemos? El caminar y el correr que haremos más adelante. Entonces francotirador, hicimos esto, hicimos Robert disparó, hicimos rifle, aún
hicimos explosión y la sangre enemiga y bala golpeando metal. Por lo que la forma en que agreguemos el metal golpeando de bala entrará en nuestras prefabs y jalaremos los efectos. Y los impactos de bala de esto es todo, vamos a ir a sumar los balazos. Por lo tanto, agrega una fuente de audio. Ahora esto será apenas, apenas podremos escucharlo, pero agregará apenas un poco de efecto en segundo plano. Y otro efecto será la carne que está siendo golpeada. Entonces sigamos adelante y añadamos una fuente de audio a eso también. Y vamos a sumar la sangre enemiga aquí. Entonces, ¿qué más tenemos? Tenemos la explosión, bonito. Entonces el efecto de la gran explosión va a ser la explosión de aquí. Muy bonito. Por lo que todos estaban jugando en despierto. Espero no haberme dado cuenta, para ser honesto. Entonces volvamos atrás, asegúrate de que DC juego de bala en Awake, sin looping, plan de looping despierto. Y todo debería estar funcionando bien. Hagamos juego y veamos cómo funciona todo esto. Entonces cuando disparamos, agradable, así que ahora podemos escuchar lo genial que esta serie de tiempo. ¿ Qué tan guay es eso? Entonces el francotirador, Agradable, muy agradable. El arma. Y se puede escuchar la sangre y si teníamos el metal que es recargar, golpeamos el metal. ¿Eso es habitable? ¿ Podemos golpear el enlace de agua no tiene efecto. ¿ Puedes oírlo? Se puede escuchar un pequeño rosa en el fondo. Muy bonito. Y el rifle arriba por lo que necesitamos recargar. Está bien, bien. ¿ Qué más tenemos? Entonces el cohete, todo está funcionando. ¿ Hay algo que sea todo lo que necesitamos para pasar al robot que ya lo matamos? Entonces vamos a probar a este robot. No, por favor no te mueras. Oh, bien, bien. Entonces porque en realidad está cada vez que la bala nos está golpeando, está disparando de nuevo. Entonces las voces superando la voz y así sucesivamente. A lo mejor nos ocuparemos de eso más adelante. Ahora lo siguiente que haremos es que en realidad le agregaremos pasos a nuestro jugador. Para ello, vamos a entrar en nuestros efectos de sonido aquí. Y vamos a caminar y arrastrarlo a la jerarquía. Y necesitas hacer esto antes de cualquier otra cosa para crear la fuente de audio. Y de nuevo, necesitarás tomar el running y ponerlo aquí. Y luego abramos al jugador. Y pongamos ambos bajo el jugador. Por lo que ahora son hijos de nuestro jugador. Y entremos al jugador y a las animaciones. Y vamos a estar jugando estos desde aquí. ¿ Cómo vamos a hacer eso? Bueno, como les he dicho, las animaciones se pueden usar para muchas cosas diferentes. Uno de ellos moviéndose a la posición, uno de ellos puede estar escalando hacia arriba y hacia abajo. Y una parte muy importante de las animaciones que en realidad podemos ajustar cualquier cosa que queramos. incluso podamos ajustar la salud máxima, podemos ajustar la velocidad de deslizamiento y así sucesivamente. Entonces lo que vamos a hacer es que vamos a estar encendiendo y apagando el caminar y correr. Por lo que aquí dentro vamos a presionar el botón de grabación. Y cuando todos
terminemos, vamos a estar apagando ambos. Entonces cuando estamos ociosos, ambos están apagados. Dejaremos de grabar. Por lo que se mantendrán alejados mientras estemos ociosos. Cuando caminemos, vamos a empezar a grabar. Y cuando estamos caminando, estamos encendiendo éste y estamos apagando la fuga. Muy bonito. Entonces, guardemos eso y guardemos esto. Y luego cuando estamos caminando, corriendo, corriendo, corriendo, está bien, entonces elegimos ambos. Ambos deberían serlo. En primer lugar, ni siquiera estamos grabando. Por lo que cabeza a grabar. El correr está encendido y el caminar está. Así que asegúrate de que realmente lo puedas ver aquí para que la caminata esté encendida. El caminar, caminar está apagado, el correr está encendido. Cuando estamos corriendo para caminar, el caminar está encendido, el correr está apagado y un ocioso. Ambos están apagados. Ahorramos todo eso. Teníamos jugada. Probemos esto y veamos si funciona. Entonces ahora tenemos el postorder, deberíamos, si empezamos a caminar para poder escuchar. Pero definitivamente hay algo que no está bien. Entonces el problema puedo ver aquí dentro que cuando golpeamos play, veo que cuando estamos caminando, todo está bien. Cuando estamos girando, vamos a volver al inactivo cuando estamos girando. Por lo que la velocidad apenas se está bajando, necesitamos cambiar el umbral. Y cuando estamos corriendo, el problema es que estamos volviendo a caminar algunas veces, por lo que también necesitamos cambiar el umbral. Ok, bienvenido de nuevo. Por lo que hice mucho de experimentar. Por supuesto, esto dependerá de tu juego. Ahora cuando nos quedamos ociosos, no tenemos nada. Cambié el umbral aquí para ser 0.3 para empezar a caminar. Y si va por debajo de 0.01. Dejaremos de trabajar y empezaremos a correr. Tiene que ser superior a 0.68. Y para dejar de correr y empezar a caminar, lo
hemos puesto a 0.42. Por lo que ahora cuando caminamos, se pueden escuchar los pasos cuando damos turno. Por lo que está demasiado lejos y este es un problema que vamos a tener que abordar más adelante. Por lo que necesitamos cambiar la distancia máxima de nuestro recast por nuestras diferentes armas. De acuerdo, entonces no soy capaz de enviar el Troodon. Está bien, genial. Ahora que nos deshicimos de todos nuestros enemigos, en el siguiente video, vamos a estar reproduciendo efectos de sonido desde nuestro código. Con eso hecho, espero que hayas disfrutado el video y te veré en el siguiente.
54. Reproducir audio con código: Bienvenido de nuevo, mis desarrolladores de juegos favoritos. En este video, hemos agregado un par de efectos de sonido. Entonces ahora tenemos un sonido cada vez que cambiamos un arma, tenemos un sonido cuando saltamos. Y también tenemos un sonido cuando nos golpean. Y suenan cuando morimos. Muy bonito. Entonces, no perdamos más tiempo y empecemos. Ah, está bien, entonces lo primero que vamos a hacer es crear una carpeta que llamará a los hechos ASA desde código. Y vayamos a los recursos. Y vamos a conseguir todos estos y
arrastrarlos a los aspectos del código. Haga doble clic aquí. Entonces tenemos la camioneta de munición. Vamos a hacer esto más pequeño para que podamos verlas fácilmente. El jugador de salto de salud que conseguir atropellado. Y luego el spot Spiderman web En caso de que vamos a usar. Y la sección de huesos. Entonces con eso hecho, agreguemos el audio a nuestro código y empecemos a llamarlos desde el código. Entonces lo primero que tenemos que hacer es que realmente tenemos que agarrar todos estos. Y en el Audio Manager, crea un nuevo niño que viene a llamarse los efectos. Y aquí dentro vamos a arrastrar todos estos y ponerlos bajo los hechos de la ESA. Y no nos va a dejar que los sodas los arrastren primero aquí. Y luego los arrastramos bajo los hechos de la ESA. Genial, así que ahora los tenemos todos aquí, que podamos empezar a ponerlos en nuestro código. Ahora lo primero que tenemos que hacer es entrar a nuestro gestor de audio de juegos. Es decir, y aquí dentro vamos a crear una matriz. Por lo que una fuente pública de audio. Y así es como creamos una matriz, y lo llamaremos los ejes de activos. Genial, déjame hablar un poco de matrices. Entonces matrices, ¿cuáles son las matrices solares a lo largo almacenan múltiples objetos del mismo tipo en una sola variable, al igual que las listas. Entonces creamos una matriz, le
damos un tipo, le
damos un nombre, y le damos un valor. Y al igual que las listas, van de 0 a uno a dos a tres y así sucesivamente. Pero, ¿por qué estamos usando matrices en lugar de listas? Ahora, en primer lugar, podríamos haber usado listas, pero listas, por lo general
eres menos robusto como lo son las matrices. Y siempre que tengamos variables estáticas que queremos usar, por lo que las matrices no cambiarán bien preferentemente no cambiarán porque queremos mantenerlas, mantenerlas como están. Las listas son muy dinámicas. Se pueden quitar cosas, poner cosas. Por eso usamos listas cuando tenemos matrices. Normalmente los usamos siempre que tengamos objetos estáticos y ellos se quedarán ahí. Para siempre. Entonces vamos a usar este array para nuestras fuentes de audio aquí. Y vamos a sumar todas estas matrices. Entonces sigamos para que el manager del juego o el abrazo de Kiss, quitemos esto de aquí e vayamos al gestor de audio. Entonces n aquí vamos a crear la matriz de fuentes de audio. Vale, genial, eso hecho. Volvamos aquí. Y ahora deberíamos tener aquí esta lista final. Simplemente elijamos todos estos, de acuerdo, así que AudioManager encerrado en su lugar, escoja todos estos y arrástrelos a los hechos de ASA. Y ahora tenemos esta larga lista que ojalá no cambie. Ahora vamos a crear un método aquí dentro que nos permita reproducir los efectos de sonido. Solo eliminemos la actualización. No lo estamos usando. Por lo que aquí dentro creará un vacío público. Y llamaremos a esto la obra como efectos. Y aquí dentro le vamos a dar un cierto entero, que va a ser el número de fax ASA. Y usando esto como número de fax, vamos a seguir adelante con los faxes de la ASA. En primer lugar, vamos a elegir esto como número de fax. Entonces Y es o, así es, no
es un maestro. Entonces entero ahora como número de fax. Y cuando, cuando queramos tocar cualquier número de efecto de sonido, vamos a primero, detenerlo. ¿ Y por qué estamos haciendo esto? Bueno, porque queremos, tal vez si nosotros, por ejemplo, vamos a estar recogiendo un HealthKit. Entonces cada vez que recogemos un HealthKit, digamos que hay otra salud, HealthKit no al lado de ella. No queremos que estos dos jueguen al mismo tiempo y se repasen el uno al otro. Queremos detener lo que sea que esté jugando y luego volver a tocarlo. Entonces esto es sólo un ejemplo sencillo. Esto es algo muy estándar de hacer. Entonces para detener un efecto de sonido y luego para tocar el mismo efecto de sonido cuando lo hagamos o cuando lo usamos. Entonces, vamos a guardar eso. Ahora lo que vamos a hacer tendrá que ir a cada lugar donde vamos a necesitar el efecto de sonido. Y vamos a tocar el efecto de sonido y darle el número. Entonces solo te voy a mostrar tal vez un par de unos y luego seguirás con un reto. Entonces digamos en primer lugar, tenemos la recarga de armas. Entonces veamos el índice de recarga de armas 0. Vamos Y aquí vamos al primer avance El gerente Hildegard entrará al sistema. Buscamos la recarga cuando activamos la animación, accedemos al gestor de audio y obtenemos la instancia, y reproducimos un efecto de sonido el cual tiene el índice 0 en ella. Por lo que ahora de vuelta en nuestro juego, vamos a aumentar el volumen aquí dentro. Ok, entonces es bueno cuando jugamos nuestro juego. Para que puedas ver hacer eso. Y así elegimos todos estos y vamos OK. Entonces esto está bloqueado. Elige todos estos, y sólo apaguemos. Juega en despierto para que diez no jueguen tan pronto como se despiertan. Así que hit play. Entonces ahora cada vez que
recarguemos, podemos escuchar el efecto de sonido. Muy bonito. Ahora sigamos adelante y probemos el siguiente. Así que vamos a cerrar todos estos en el Audio Manager. Tenemos la camioneta de munición. Por lo que una hora mientras que la camioneta de municiones. Recogidas de munición. Primero. Y aquí dentro vamos a ir también al gestor de audio. Vamos a acceder a la instancia. Vamos a tocar los efectos de sonido, jugar como efectos. Y va a ser el que, digamos que debería funcionar. Volvemos a nuestro juego de juego. Y así vamos y dónde está nuestra recogemos. Ok, entonces eso está funcionando. Ahora. Es hora de tu reto y va a ser súper sencillo. Encuentra todos los lugares apropiados para reproducir los efectos de sonido proporcionados y bien, los
tocó bien que lo hizo. Pausa el video ahora mismo y ve al reto. O incluso podemos iniciar una carrera donde te levantaré y lo intentaré más ver quién puede poner primero todos los efectos de sonido. Entonces vamos. Entonces de vuelta en Unity aquí dentro, vamos a ver, queremos sumar las pastillas de salud, así que es el elemento dos. De vuelta aquí. Vamos a la capa, mientras que la camioneta de salud, la recolección salud, la salud se ponen bien. Entonces voy a usar un pequeño truco sucio que he aprendido y te voy a contar al respecto. Entonces sigamos adelante y sumémoslo aquí para salvar esa siguiente cosa, elemento tres, el salto. Entonces nuestro movimiento de jugador, mientras que era jugador, donde saltamos, saltamos, saltamos, saltamos aquí. ¿ Tan listo para saltar? Cuando llegamos al espacio, empezamos a saltar. Entonces aquí nos basamos, este es el tres, fue, tres eran centros comerciales. Si eso de vuelta aquí, eran 33. Entonces jugador, eso, jugador, esa es la fuerza en el sistema de salud cuando morimos, si nuestra salud actual. Entonces aquí jugamos esto para cuatro, guardamos eso de nuevo aquí, así que les están dando el golpe a los cinco, mientras que peor sí jugador consigue atropellado. Por lo que el jugador es atropellado cuando recibimos daños. Entonces aquí jugamos a los cinco. Ok. Siguiente cosa, el Spiderman, mantén esto bien. Entonces el elemento seis o lo que tengas en la sesión web de Spiderman, simplemente no lo uses por ahora. Usaremos más adelante las armas equipadas es el siete. Entonces, ¿dónde ponemos dónde lo pusimos en el cambio? Entonces cuando cambiamos las armas. Entonces aquí, las armas cambian w, ¿Qué interruptor? Este arma pick-up sistema de interruptor de armas. Agregamos ido, cambiamos armas. Entonces, ¿dónde cambiamos las armas? Entonces aquí vamos a sumar los siete. De acuerdo, genial, así que guarde eso. ¿Ya terminaste? Ya terminé. Entonces volvamos a nuestro juego. Vamos a jugar. Y ahora cuando tocamos tab aquí, solo pequeño ingeniero de sonido. ¿ Qué más debemos agregar? Bueno, deberíamos intentarlo en realidad, probemos la camioneta de salud. Está bien, genial. Y cuando nos unimos, podemos escucharlo. ¿Qué más tenemos? El captador de munición salud pickup salto capa que así tratemos de esquivar a un robot. Oh, bien, bien. Por lo que ahora tenemos todos nuestros efectos de sonido tocando. Espero que haya disfrutado el video. Y el siguiente, vamos a crear un menú de título, que, bueno, en
realidad convertirá nuestra ganancia de sólo un proyecto simple a una ganancia real y real. También aprendería sobre el manejo del pecado y todo eso bien, realidad
profundizará más en la gestión vista. Bueno, dicho eso, espero que hayan disfrutado del video. Asegúrate de poner en escena todos tus archivos excepto los que están debajo del audio. Entonces vamos a ignorar todo bajo activos audio. De acuerdo, entonces no queremos ahorrar cada vez el audio que tenemos escenario todo eso y ahora, esperalo. Entonces no, tal vez debimos haber ignorado algunas de estas. Entonces déjame solo en el escenario e ignorar todo debajo, por qué no ignoró todo en el público, así que ignora todo debajo del audio. De acuerdo, así que ahora, de acuerdo, así que eso no funcionó la primera vez. Agregado afecta sentir código para eso. Y te veré en el siguiente video para crear alguna manía de título realmente linda.
55. Crear el menú de mosaico: Bienvenidos de nuevo, mis compañeros desarrolladores de juegos. En este video, vamos a estar creando un menú de título. Por lo que ahora cuando
golpeamos el juego, podemos ver que tenemos múltiples opciones. Entonces podemos dejar el juego, que en realidad no abandona el juego, pero sí imprime algo a la consola. Eso significa que eso funciona. Podemos ir a las opciones para que podamos cambiar el valor, podemos volver atrás y finalmente podemos golpear Play para
empezar nuestra ganancia y empezar a disparar a algunos monstruos. Si realmente podemos pegarles. Por favor golpea, por favor murió. Está bien, ratones. Entonces con eso hecho, no perdamos más tiempo y empecemos. Ah, está bien, así que empecemos con nuestro menú principal. Lo primero que vamos a hacer es entrar en nuestras escenas y vamos a crear una nueva escena. Y aquí lo vamos a llamar el menú principal. Y vamos a hacer doble clic en él y abrir esto. Entonces como pueden ver, aquí no hay absolutamente nada. Ahora lo siguiente que vamos a hacer es que vamos a crear un lienzo de interfaz de usuario aquí. Entonces iremos a ti. Bajaré y encontraré el lienzo. esto lo llamaremos el lienzo Menú principal. Y lo podemos mantener ya que no hay palabras, habrá nada que pueda oír casi. Lo siguiente que haremos es ir a tu ojo y sigamos adelante e importamos la fuente que te he proporcionado y los recursos. Así que arrástrelo aquí y se subirá y luego irá a Window, text mesh pro y font acid generator. Y luego proporcionado con el cyberpunk regular y generar la fuente y guárdala en nuestro sí, lo eres. Sdf, ahorra ahí. Y ahora tenemos una fuente cyberpunk con la que trabajar. Está bien, genial. Ahora que tenemos eso, lo
siguiente que tendremos que hacer es ir a nuestra escala, me refiero a nuestro Canvas. Haga doble clic en eso, vaya al modo 2D, y ahora podemos empezar a cambiar las cosas aquí. Entonces lo primero que haremos es hacer el escalador de lona para
escalar el tamaño de la pantalla y asegurarnos de que sea 1920 por 1080. Entonces es el estándar y nuestro juego y aquí también debería ser 1920 para entonces 80. Está bien, genial. Ahora, ¿qué vamos a hacer? Lo primero que vamos a hacer es añadir un texto aquí. Entonces vamos a hacer clic derecho ir a tu ojo y añadir un pro de malla de texto, y vamos a moverlo hacia arriba. Y aquí, sostengamos un lado y lo hagamos mucho más grande. Y ahora lo que vamos a centrarlo en estos dos, por lo que la alineación en lo horizontal y lo vertical. Y luego vamos a arrastrar la fuente de litera cibernética al activo de fuentes en nuestro texto. Y vamos a seguir adelante y ponerlo en tamaño automático. Hagámoslo audaz. Y ahora se puede ver que podemos empezar a escribir aquí. Entonces vamos a la derecha. Cyber espía, y eso es todo. Entonces lo vamos a hacer por supuesto más grande. Hagamos esto más grande. Ya sabes qué, vamos a quitarnos al tamaño y vamos a ajustarnos por nuestra cuenta. Entonces hagamos este buzón enorme. Y como pueden ver, hay un par de cosas que aquí podemos cambiar. Nosotros vamos a, vamos a ver. Entonces básicamente aquí, todo depende de tu preferencia, cómo queremos que se vea. No tienes que hacerlo como yo en absoluto. Entonces todo está basado en ti. Entonces voy a cambiar el color puede ser hacer este amarillo y vamos a quizás añadir un poco de un contorno y un underlay. Entonces veamos el esbozo. Podemos aumentar el grosor aquí y podemos mantenerlo negro. Entonces me gusta el negro. Vamos a aumentar el tamaño aquí y aumentar el cisne para que se vea grande, mucho más grande. Caninos. También vamos a añadir un poco de underlay. Entonces esto es básicamente como una sombra. Por lo que aquí vamos a hacer de la sombra el color negro y vamos a aumentar la transparencia. Entonces vamos a mover la x a una. Nosotros vamos a mover el Y2 minús1. Y vamos a seguir adelante y también hacer el, vamos a mantener todo lo demás 0 y bebé, sólo aumentar la suavidad. A ver. Entonces sí, tal vez que sea 0.3. sí, eso se ve lo suficientemente bien. Por lo que ahora tenemos este gran, enorme muere ciberespacio en nuestra pantalla, lo cual es muy bonito. Ahora lo siguiente que queremos hacer es que el fondo sea mucho diferente porque actualmente solo es este extraño Skybox aquí dentro. Entonces lo que vamos a hacer es quiero que entres a la Tienda de Activos de Unity y descargues la caja galaxy 2 agregada a tus activos. Y estas son realmente bonitas cajas celestes. Entonces cuando volvamos, podrás ver en tu gestor de paquetes en mis activos, esta caja galaxy aquí mismo. Por lo que acaba de golpear Import y esperar a que importe het año importante. De acuerdo, entonces parece haber terminado de importar. Cerremos aquí el Gestor de paquetes y nuestros activos, tendremos la caja galaxy. Arrástrelo a los activos del juego. Y desde nuestros activos de juego, vamos a encontrar la caja galaxy y podemos ir a los recursos y puedes encontrar aquí todas las cajas de cielo que tenemos que la ha abierto y nuestra visión del proyecto aquí dentro. Para que veas si tenemos múltiples cajas celestiales. Entonces elige éste, por ejemplo, y arrástrelo a la escena. O tal vez quieras usar este, o tal vez quieras usar. Entonces creo que éste luce el busto y lo voy a usar. Entonces veamos chico del ciberespacio, ¿qué más debemos agregar? Bueno, necesitamos el 2087 aquí. Entonces sigamos adelante y agreguemos otro texto, mush Pro. No tiene que ser gravado mucho pro, pero lo vamos a sumar aquí. Escribiremos el 2087. Y hagámoslo así por
todos lados y hagámoslo audaz y aumentemos el tamaño. Por supuesto. También vamos a añadir tal vez un poco de espaciado. Entonces vamos a sumar un poco de espaciado eso es todo por esto y lo haremos más grande y más espaciado. Entonces así es como recuerdo el logo del juego luciendo bonito. Entonces así como eso, veamos eso. Parece un poco bueno. Yo creo que sí. Bolden apagado. Aumentemos aún más el tamaño de la fuente. Y hacer esto más grande. Aumenta aún más el tamaño de la fuente. Entonces, conoce a esa estúpida. Yo siento. Cambiemos el nombre aquí por el título. Y tal vez hacer de esto el veamos, tal vez podamos hacerla Itálica, pero así que sí, se ve bien. Entonces eso ya es suficiente. Lo siguiente que vamos a hacer es añadir un par de botones aquí. Entonces lo primero que vamos a hacer es ir a ti. Voy a añadir un fondo, lo
hará un más grande. Lo pondremos aquí. Y bajemos al fondo y solo quitemos el texto por ahora. Creará, duplicará en realidad las etiquetas de título. Entonces lo duplicaremos. Y vamos a usar esto para crear un, otro botón de reproducción. Y vamos a seguir adelante y hacerlo mucho más pequeño. Entonces vamos a reducir el tamaño de esto. Y lo que vamos a hacer es cambiar esto por el texto tardío. Y sigamos adelante y mostrémosle eso a nuestro botón. Y cuando sea niño del botón,
vamos a golpear aquí, vamos a golpear aquí, mantenga presionada Alt y pinchando aquí. Entonces ahora debería, bueno, debería tener hijos a ello, pero no lo ha hecho. Tan bueno, debió haber tomado la forma pero no lo ha hecho. Así que vamos a, sólo nuestro botón aquí. Hagamos el fondo completamente negro. Y en realidad vamos a seguir adelante y ¿sabes qué? Quitemos la imagen fuente. Eliminaremos completamente la imagen de origen. Y aquí dentro vamos a cambiar el color, por lo que haremos que el color normal sea completamente transparente. Vamos a hacer que el color Carl resaltado sea completamente negro, pero solo un poco transparente. Por lo que alrededor de 70. Y nos ajustaremos como esto más adelante. La prensa será completamente negra y aún más oscura. Entonces tal vez 120. Y vamos a golpear juego y sólo mirar y ver cómo se siente eso. Entonces ahora tenemos este título bonito con estos bonitos números. Entonces si pasamos el cursor sobre la obra, se
puede ver que ahí está el color resaltado. Y cuando lo presionamos, se puede ver que es el color prensado, por lo que es un poco más oscuro y por fin estamos, se remonta a su color original. Muy bonito. Pero quiero cambiar esto abuts o la obra. Creo que lo haré todo en gorras. Y aumentemos el tamaño de nuestro botón. A lo mejor subirlo solo un poquito. Y nosotros, y vamos a entrar en el texto y asegurarnos de que esté en la parte superior, no en el medio. Entonces por la fuente, de la forma en que realmente se ve la fuente. Entonces ahora tenemos el botón Play con el, vamos a llamar a esto el botón Play, play button. Y vamos a seguir adelante y duplicar esto y hacer el botón de opciones. Por lo que este sería el botón de opciones. Y vamos a moverlo aquí abajo. Entonces esto se convierte en el, Vamos al texto y estas serán las opciones. A lo mejor deberíamos hacerlo todo en gorras. Entonces opciones, muy bonitas. Vamos a hacer esto más grande. Y vamos a cambiar esto de Playtex a solo texto plano y dentro también porque el impuesto cambia en base al botón. Entonces ahora tenemos las opciones un poco afuera. Entonces vamos a anclar esto al botón y en realidad cambiemos el tamaño del botón. Entonces haremos un TA grande aquí, igual que ese día de cine, pero mueve el botón de reproducción y lo duplicaremos de nuevo. Y vamos a hacer de este el botón Salir. Botón Entonces Dejar de fumar. Y vamos a bajar el botón Salir y cambiar el, Considerando que tan o, por lo que el texto se convertiría en el silencio. Por lo que la cola se ve fea. Muy feo. Pero no nos preocupemos por eso. A lo mejor podemos hacer que este botón Play sea un poco más grande y aumentar la fuente y tal vez cambiar esto también. Para aumentar la fuente del botón Play, hazla más grande. Entonces a rivales las Opciones, y también cambiamos el texto sobre el quit. Entonces estamos de mayor tamaño. Está bien, bien. Entonces ahora vamos a guardar eso cuando entremos en nuestro modo de juego. Agradable. Ahora tenemos múltiples opciones. Hizo jugar el, jugar las opciones y el botón Salir. Muy bonito. Ahora sigamos adelante y empecemos a añadir un poco de guiones. Pero antes de hacer eso, sólo
quería hacer una cosa más. En el menú principal. Adelante y haga clic derecho. Y aquí crea un objeto de juego vacío. Y lo llamaremos el menú principal. Va a ser un objeto que tenga todos los objetos del Menú Principal dentro de él. Por lo que ahora son parte de un solo objeto y podemos moverlo, escalando hacia arriba, escalando hacia abajo dependiendo de cómo quieras que luzca tu juego. Está bien, genial. Ahora, antes de seguir adelante, sólo déjame hacer una cosa más. Duplicará esto, y este será nuestro menú de opciones. Y apaguemos el menú principal, el menú de opciones. Bueno, va a tener un poco de cambios. Entonces, por ejemplo, el botón Play ya no estará con nosotros. Entonces vamos a seguir adelante y borrados. Vamos a cambiar el botón Salir al botón Atrás. Y vamos a cambiar el impuesto por supuesto para decir de nuevo. Por lo que este será el lugar donde cambiemos de opciones. Vamos a seguir adelante y hacer esto mucho más pequeño. No estoy cerrando. El botón Atrás no debería ser tan grande y lo hará más pequeño. Y aquí también, por lo que todos los botánicos más pequeños. El botón de opciones encendido. Saquemos el texto y luego eliminaremos el botón de opciones. Entonces sólo vamos a mantener el texto aquí. Lo subiremos un poco. Y también podemos aumentar el tamaño y hacerlo un poco más grande. No, eso es demasiado grande. Entonces vuelve a una opción más pequeña. Déjame sólo mirar, vale, así que este tamaño y lo moveremos un poco a la izquierda. Y lo siguiente que vamos a hacer es aquí dentro vamos a añadir algún tipo de deslizadores. Entonces vamos a ver cómo agregar. Un control deslizante hará clic con el botón derecho y las opciones irán a la interfaz de usuario. Y aquí dentro deberíamos tener esta opción de un slider. Entonces, ¿dónde está nuestro slider? Por lo que llamaremos a esto el deslizador de volumen. Y vamos a moverlo aquí. Hagámoslo mucho más grande. Entonces lo
escalaremos, lo moveremos aquí. Y si abrimos esto, podemos ver que tenemos el fondo, el área de relleno, y
el área de deslizamiento del mango. Sí, se llama a este área de deslizamiento de mango. Por lo que cambiaremos el color de fondo para que sea completamente negro. Por lo que ahora podemos ver que tenemos la opción en nuestro modo de juego para mover el deslizador hacia arriba y hacia abajo. Y vamos a cambiar el área de relleno. Y vamos a abrir esto el Fill, tiene
cierto color que vamos a elegir el amarillo aquí. Entonces ahora cuando golpeamos play, cuando intentamos agregar esto, podemos ver que tenemos un color muy bonito. Entonces esto está muy bien hecho. Los colores son muy bonitos ordenes bandera al igual que el contorno y amarillo al igual que el color de las palabras. Y entonces sólo tomemos esta zona de mango y solo la quitemos. Entonces ahora cuando golpeamos play, solo
tenemos el slider y nada en él. Hagamos una cosa más aquí. Vamos a llamar a todo esto y vamos a duplicar el texto de las opciones. Y este será el texto del volumen. Y sólo lo nombraremos aquí. Volumen y esperanzas. Y vamos a mover este texto aquí abajo. Hagámoslo mucho más pequeño y también hará que todo el texto sea mucho más pequeño, así como así. Ahora lo que nosotros, tal vez podamos incluso hacerlo más pequeño que eso. Demasiado grande. Entonces volumen, ponlo aquí, hazlo mucho más pequeño. Eso es sólo moverlo en nuevo. Muévete al medio, y solo ajusta esto a tu propio tiempo. No necesitas hacerlo igual que yo. Tú, si tienes una mejor visión de cómo se ve tu menú de opciones, adelante y hazlo. Yo te animo. Entonces ahora cuando nos acercamos al juego, Echemos un vistazo a nuestras opciones. Está bien, muy bonito. Entonces opciones, volumen, puedes ajustarlo y luego puedes volver atrás. Muy bonito. Ahora es el momento de empezar a agregar un poco de guiones. Entonces vamos a entrar en nuestros guiones. La parte más divertida es crear el guión. Vamos a llamar a esto el manuscrito principal. Hit Enter. Visual Studio se abrirá automáticamente. Ya conozco este libro. Entonces ahora que tenemos el menú principal, arrástrelo al menú principal. Apague las opciones por ahora, encienda el menú principal, y sigamos adelante y empecemos a crear scripts. Ahora qué vamos a hacer y nuestro manuscrito principal. Es que vamos a darle a cada botón algún tipo de acción que hacer. Entonces. En primer lugar, eliminemos todo esto. ¿ Y qué va a hacer nuestro botón? Entonces, en primer lugar, el botón Play, iniciaremos nuestros juegos de juegos infantiles por lo que tenemos que agregarlo. Y así necesitamos tener algún tipo de gestión vista. Y porque necesitamos la gestión
del pecado, claro que vamos a ir a los ajustes de construcción. Y aquí dentro, sigamos adelante y sumamos nuestro menú principal por encima de nuestro patio de recreo. Está bien, bien. Por lo que ahora está dentro del índice construido. Volvamos atrás y aquí agreguemos el espacio de nombres del motor de la humanidad, no visto Management. Y ahora sigamos adelante y creemos el método para nuestra plaga. Entonces va a ser un vacío público. Vuelve a jugar. Y aquí dentro vamos a llamar a gerente de arsine a quien vamos a cargar cierta escena. Y la forma en que lo cargaremos. Por lo que no queremos decirle específicamente que cargue el uno. A lo mejor tenemos algo diferente. A lo mejor la persona regresa y no sé, hay muchas cosas que pasaron, pero por ahora, simplemente vamos a decirle que es la escena. No. Es el encargado de escena. Dot, ponte activo visto punto. Y es este índice de compilación. Y vamos a aumentar en uno, por lo que inmediatamente irá a la siguiente escena. Entonces, ¿cómo vamos realmente a decirle a este botón que realmente necesita usar este método. Entonces vamos a guardar eso de nuevo en nuestro juego. Si abrimos el menú principal, ve al botón Play aquí abajo puedes ver que tenemos las opciones onclick. Y si tocamos este pequeño botón plus, se
puede ver que requiere de una opción o un objeto. Es decir, y en realidad podemos darle todo el menú principal. Y esto le dará el guión que tenemos en nuestro menú principal. Ahora podemos elegir aquí la función NOR. Si hacemos clic en él, tenemos la opción de ir al menú principal. Y aquí dentro podemos elegir la ganancia de matriz. Entonces ahora cuando tengamos éste, podemos salvar nuestra ganancia. Podemos golpear el juego. Y lo verás cuando presionemos el botón de reproducción. Ah, está bien. Esperaba que eso fuera aterrador. Para que veas que ahora estamos en nuestra GameScene y aquí
podemos rodar y todo parece estar funcionando aficionado, muy agradable. Ahora lo siguiente que vamos a hacer es ir a crear el botón Salir. Entonces crearemos un vacío público que ganaría. Y aquí dentro vamos a seguir adelante y llamar a la solicitud y vamos a dejar de fumar. Pero como aún no hemos construido nuestro juego, esto no estará funcionando. Entonces para asegurarnos de que nuestro botón Salir funcione, vamos a llamar al debug dot log y vamos a imprimir nuestra consola skin. Es decir, que hemos renunciado a la ganancia. Entonces cuando sí creas tu juego y cuando lo haces atornillada la aplicación no deja de funcionar bien pero por ahora no lo hará. Entonces, vamos a guardar eso. Y Una última cosa que queremos crear también el, una forma para que pasemos del menú principal a las opciones cuando hacemos clic en él. Por lo que ahora cuando jugamos nuestro juego, puedes ver que cuando hacemos clic en las Opciones, no pasa nada cuando hacemos clic en el equipado también no pasa nada, pero ese será tu problema para resolver más adelante. Entonces, ¿cómo vamos a pasar del menú principal a las opciones? Bueno, si entramos en nuestro menú principal aquí dentro
y en realidad vamos al botón Opciones aquí abajo. También podemos agregar algo que hacer en el onclick. Y la forma en que pasamos de las opciones a la principal, quiero decir desde las opciones del menú principal, en realidad
podemos entrar aquí. Podemos darle el menú de opciones. Y podemos decirle que lo que tiene que hacer es ir al objeto
del juego y establecer el booleano activo. Y puede ponerlo en verdadero. Entonces ahora cuando golpeamos play, podemos ver que cuando teníamos el botón de opciones, algo arriba se pone en marcha y ese es el menú de opciones. Entonces lo que más necesitamos hacer es añadir otra función en el onclick, y necesitamos darle el menú principal e ir al objeto de juego de funciones y establecer el booleano activo para que sea falso. lo guardamos. Y ahora cuando golpeamos play, podemos ver que podemos elegir el botón de opciones y va
al menú de opciones donde podemos ajustar el volumen y tenemos esto de vuelta aquí. Entonces ahora lo siguiente que tendremos que hacer es que necesitemos emitirte un reto. Tu reto va a ser terminar los botones. Así que termina el botón onclick 40 Salir, asegura de que se presione. Y terminó el botón Atrás del menú Opciones para volver al menú principal. Entonces con eso dicho, pausa el video ahora mismo y ve a hacer el reto. De acuerdo, bienvenido de nuevo. Entonces vamos al botón Salir aquí. Vamos a darle el menú principal. Vamos a acceder al manuscrito principal y vamos a dejar nuestro juego. Y en nuestro menú de opciones, hagamos esto más grande. Y nuestro botón Atrás, vamos a sumar dos métodos aquí. Vamos a sumar las opciones y vamos a ir
a los objetos de juego al acto de toro para ser falsos. Y el menú principal para un set irá al juego. Los objetos establecerán que el bool activo sea falso. Guardemos eso. Vamos a tocar juego. Entonces ahora cuando tocamos el botón Salir, podemos ver que podemos dejar el juego. Podemos verlo en la consola. Si teníamos el botón de opciones, vamos a nuestro volumen, podemos ajustarlo. Ahora cuando
retrocedemos, volvemos al modo de juego. Podemos volver al volumen ajustado de Opciones otra vez. Entonces esto en realidad no hace nada, es solo por estática para que podamos tener un poco de cambio. Ahora volvemos atrás. Ahora cuando golpeamos el juego, se necesita un poco salvaje, pero nuestro juego se carga y podemos disparar y todo funciona perfectamente bien. Ahora este video ya es demasiado largo, pero, ya sabes, crear lienzo de interfaz de usuario es en realidad un proceso largo. Entonces, ¿qué más podemos agregar aquí cuando golpeemos el Play, puedes agregar un objeto. O tal vez, tal vez quieras añadir el monstruo que tenemos. A lo mejor quieres añadir al jugador sosteniendo un cierto ido. A lo mejor quieres solo agregar el arma y hacer que se vea mucho más bonito. Pero por ahora, este es el final del video. En el siguiente video, vamos a estar creando un menú de pausa. Con eso dicho, espero que lo disfruten, asegura de comprometer todos sus cambios y los veré en el siguiente.
56. Crear un menú de Pause: Bienvenido de nuevo, mis desarrolladores de juegos favoritos. Y en este video vamos a crear un menú de pausa. Entonces tenemos nuestro juego, deberíamos nuestros cohetes, golpeamos escape, podemos dejar de fumar. Nuestro juego no se detiene. Sólo imprime algo a nuestra consola. Cuando tocamos el menú principal, volvemos a nuestro menú principal. Entonces podemos volver al modo play y todo funciona completamente bien con eso dicho, no perdamos más tiempo y empecemos antes de que el robot nos mate. Oh, bien, entonces lo primero que vamos a hacer, como vamos a entrar en nuestro Lienzo, va radicalmente puede aquí ir a la
y, y vamos a añadir un panel. Este panel nos permitirá agregar un como un color de fondo era un poco de un color transparente que nos hará sentir como si lo estuviéramos, sí, ahora estamos efectivamente menú de pausa y aquí es donde vamos a sostener todo. Entonces cambiaremos la banda de paso. Cambiaremos el nombre por el panel de patas. Genial. Ahora lo siguiente que vamos a hacer aquí dentro, vamos a añadir un botón dentro del cónyuge. Panel. Dos irán a tu agrego un botón y ya sabes hacer todo esto. Ya hemos aprendido esos, así que voy a ir un poco más rápido. Y aquí dentro borraremos el texto. Por supuesto, vamos a añadir otro texto aquí, así que vamos a ir a nuestro text mesh pro. Esto será de nuestra fuente cyberpunk que hemos creado. Hagámoslo más grande. Adelante y acerquemos un poco para que podamos ver qué está pasando. Cambiará el botón que vamos a eliminar por completo la imagen de origen. Elimina por completo la imagen de origen. Y vamos a cambiar el color a completamente negro. El color normal será completamente negro. Va a ser transparente. Por lo que lo mantendremos alrededor de 150. El color resaltado será completamente negro, será alrededor de 58, y el color prensado será completamente negro y alrededor de la mitad de camino allí. Entonces vamos a conseguir que nuestras sondas de malla de texto lo van a anclar al botón. Entonces vamos a ir al texto, pegando aquí, sostén Alt, haciendo clic en esto, y ahora tenemos un anclado. Ahora vamos y sólo nuestros textos. Por lo que este será el botón del menú principal. Por lo que esto nos permitirá volver al menú principal, lo
hará audaz. Vamos a por supuesto, aumentarlo de tamaño, pero antes que nada, aguantemos esto, hazlo más grande. Y en realidad esto será completamente transparente, Al
igual que todos tal vez sólo un poquito padres. Entonces sabemos que es un botón cuando tocamos la pausa. Y lo vamos a poner en la alineación central y el Mendel puede hacerse mucho más grande. Entonces sí, de esa manera, superior, quizá un poco más. De acuerdo, entonces en el medio, vamos a cambiar el color a completamente amarillo, igual que lo hicimos anteriormente. Y el subsuelo sigue siendo el mismo, el contorno sigue siendo el mismo. Pero, ¿por qué no hacerlo aún más grande? Por lo tanto, aumenta el tamaño. Observe que el texto, el botón, sí, por lo que ahora tenemos el botón de menú principal. Sigamos adelante y duplicemos esto. Y crearemos el botón Salir. Entonces este será el Quit. Dejar de fumar. Y haremos el más pequeño. Sí, así como eso. Y tal vez incluso disminuir un poco el tamaño de nuestro texto. Entonces justo ahí. Y por último, sigamos adelante y duplicemos el texto aquí. Muévete afuera. Y vamos a subirlo. Y llamaremos a esto el menú de pausa. Vamos a hacerlo mucho más grande y vamos a aumentar el tamaño aquí dentro. Entonces todo abajo, aguanta. Alt hace más grande O'Kane R. Así que este será nuestro menú de pausa que hemos creado muy rápido. Lo siguiente que vamos a hacer es que crearemos empezaremos a agregar comportamiento. Entonces iremos a Scripts. Haga clic con el botón derecho en crear, un script C-sharp que es el menú de pausa. Ahora, podríamos haber hecho esto en el controlador de interfaz de usuario, pero es mejor seguir adelante y crear su propio script. Lo vamos a agregar al Canvas Controller. Vamos a ir al controlador de Canvas y sigamos adelante y abrimos el script del menú de pausa. Genial. Ahora, ¿qué vamos a hacer aquí? En primer lugar, necesitamos obtener una referencia a nuestra pantalla de post. Entonces crea un público. Va a ser un objeto de juego y va a ser la interfaz de usuario de la pantalla de pausa. Y ahora lo que vamos a hacer es simplemente eliminar esta declaración, actualizar. No los vamos a necesitar. A lo mejor lo haremos, más adelante, tal vez usaremos la actualización. Entonces por ahora sigamos adelante y creemos el vacío. Este será el botón de pausa. Oh Dios mío, ¿qué hace, qué es eso? Entonces pausa. Esa autocompleta estaba totalmente fuera de límites. Entonces ahora ¿qué vamos a hacer aquí dentro? En primer lugar, vamos a obtener nuestra interfaz de usuario de la pantalla de correos, y simplemente vamos a configurar el activo para que sea árbol de tropas. Vamos a ponerlo para que sea verdad. Por lo que ahora encendemos el panel y todo debajo de él. Entonces sigamos adelante y copiemos esto y crearemos un método de currículum. Entonces vamos a reanudar el juego y vamos a volver a ponerlo en falso. Genial, ahora ¿cómo vamos a hacer esto? Bueno, tendremos que crear las actualizaciones que acabamos de eliminar. Y aquí dentro vamos a tomar cierto insumo. Entonces si teníamos una entrada con la tecla
get abajo y va a tener el código clave del botón de escape. Por lo que generalmente siempre que quieras hacer una pausa, puedes usar el botón de escape, puedes usar el frontal. No importa. Ahora, lo que queremos hacer es que queremos usar la misma clave para salir de nuestro juego y luego entrar en nuestro juego. Entonces para hacer eso, en primer lugar, necesitamos crear una variable aquí que compruebe si nuestro juego está en pausa. Entonces, antes que nada, va a ser público. Va a ser estático porque queremos que sea verdad, no verdad. Queremos que sea lo mismo en todas partes. Vamos a hacer que sea un bool por supuesto, y va a ser el juego es. Post y va a ser igual a la fuerza al principio. Entonces después de haber tenido el botón clave, vamos a comprobar si el punto del juego pausado es cierto. Eso significa que estamos en pausa que la fuga estará reanudando el juego. Y de lo contrario, si no estamos pausados, entonces el juego se va. O sea, la fuga va a pausar el juego. Entonces pausa, ¿Por qué no tengo la pausa? Ahora tenemos el pulso. Y ahora cada vez que pausemos
el juego, el juego se pausa será igual a verdadero, se
pondrá en verdadero. Y cuando no se pausa o cuando reanudemos, el juego se pausa se pondrá en falso. Entonces ahora tenemos esta variable que es el juego en pausa. Si es cierto cuando presionamos la tecla de escape, entonces vamos a reanudar porque estamos en el menú de pausa. Si no estamos en pausa, eso significa que cuando golpeemos la tecla de escape, vamos a pausar el juego. Adelante y probemos esto en nuestro juego. Entonces vamos a golpear juego. De acuerdo, no hicimos referencia al lienzo, al panel. Detengan eso. Tenemos que seguir adelante y hacer referencia. Entonces en el lienzo, dale el panel jefe, vamos a guardar eso. Ahora de vuelta en nuestro juego, esto debería estar bien. ¿ Por qué no es que no salvemos esto? Lo hicimos público. Tenemos en falso guardado. A lo mejor deberíamos seguir adelante y poner esto para que esté inactivo en cuanto empecemos. Entonces ahora teníamos jugada. Deberíamos sin francotirador, viene gran monstruo. Si tuvimos el escape Q, vamos al menú de pausa. Muy bonito, pero como puedes ver, todavía
podemos jugar nuestro juego que no es nada bueno. Entonces para cambiar esto, necesitamos primero
entrar en nuestro menú de pausa aquí. Y vamos a ir al momento. Vamos a acceder a la escala temporal. Y lo vamos a poner para que sea 0 F Cuando empecemos a pausar. Y luego cuando dejemos de posar o cuando reanudemos, entonces vamos a volver a ponerlo de nuevo a una F. Así que ahora cuando paremos el juego, el juego debe dejar de moverse por completo a nuestro alrededor. Adelante y probemos esto. Entonces de vuelta aquí, a quien le pegamos play. Tenemos nuestro lanzacohetes, tenemos a nuestro francotirador, así que acercamos, deberíamos, cuando golpeamos la tecla de escape, podemos ver que estamos en el menú principal y el juego que nos rodea se detiene. Pero si te digo algo, todavía
podemos disparar y nuestro juego, y eso es porque nuestro cursor en realidad no ha sido bloqueado. Entonces de nuevo, de vuelta en el pasado, vamos a seguir adelante y acceder al cursor. Vamos a acceder al estado de candado del mismo. Y vamos a configurar el modo de bloqueo del cursor para que sea non. De esa manera tendremos nuestro ratón para moverse por el mundo. Y cuando
reanudemos, entonces vamos a ir de nuevo al modo bloqueado. Entonces vamos a guardar eso. Tendremos que entrar al sistema GUN. Y aquí arriba y actualizar. Vamos a comprobar si lo estamos. Si accedemos al menú de pausa, iremos al juego se pausa. Y si es cierto, entonces vamos a regresar. Y esto significa que no somos capaces de disparar o gerente de órgano, no
somos capaces de hacer nada cuando tenemos el juego se pausa igual a verdadero. Entonces vamos a guardar eso. Y ahora de vuelta en nuestro juego. Cuando tuvimos jugada, veremos que cuando estemos en la llave de escape, ya no
podemos hacer nada en nuestro juego y se congela por completo. Tenemos la opción de ir al menú principal y dejar de fumar si volvemos a pulsar la tecla de escape, podemos ver que estamos de vuelta en nuestro juego. Podemos jugar con normalidad. Ahora, es hora de realmente agregar algo de acción a nuestros botones. Y va a ser, por
supuesto, parte de tu reto. ¿ Qué esperabas? Yo soy muy perezoso. Así que termina los botones del Menú Principal. Ya hiciste el botón Salir. Por lo que ahora puedes hacerlo desde cero y terminar los botones del Menú Principal para que cuando lo presionemos, vuelva al menú principal. Ya hemos hecho todo eso. Entonces un pequeño consejo que no tengo aquí, asegúrate de que debería revertir la escala de tiempo. Cuando vuelvas al menú principal con eso dicho, pausa el video ahora mismo y haremos el reto. De acuerdo, bienvenido de nuevo. Entonces en nuestro menú de pausa aquí dentro, sigamos adelante y creemos un vacío público, bajo Menú Principal, Menú. Y aquí dentro vamos a primero de todo establecer el tiempo, la escala de tiempo de nuevo a una f. Porque cada vez que
pausemos nuestro juego, lo tenemos a 0 f Y no estamos reanudando, así que no vamos a volver a la escala de tiempo una F. Por eso necesitamos lo puso aquí. Y luego vamos a ir a nuestro encargado de escena. Por lo que no tenemos la opción de usar en gestión. Entonces sigamos adelante y agreguemos eso. Por lo que Unity motor punto visto Gestión. Este no fue un bonito reto. Aquí hay un par de trampas, así que el gerente senior dot load scene. Y debido a que el menú principal está en el 0, vamos a cargar el 0. Un gran. Y ahora por fin, tendremos que añadir el botón Salir. Entonces es muy sencillo. Podemos seguir adelante y copiarlo inmediatamente desde el menú principal. Entonces lo pegamos aquí, guardamos todo eso de nuevo en nuestro juego. Enciendamos el menú de pausa y vamos al botón. Por lo que no nombramos este es el botón Menú Principal y este es el botón de TI de la OMS. Y aquí dentro vamos a seguir adelante y acceder a un objeto que va a ser desde el Lienzo. Se va a ir al menú de pausa y van a ser juegos líquidos. Si eso de vuelta en nuestro botón de menú principal, vamos a añadir una acción y aquí, conseguirle el lienzo. Y va a ir a la parte, y va a cargar el menú principal. Ahorramos todo eso. Apagamos nuevamente el panel. Y ahora cuando nos acercamos al juego, deberíamos ver que podemos mostrar, podemos cambiar de armas. Está bien, genial. Habíamos renunciado. Podemos conseguir nuestro juego, y tenemos el dejar el juego, y podemos volver a nuestro menú principal. Muy bonito. Podemos ir a Opciones, aumentar el volumen, volver al modo de juego. Y todo funciona perfectamente bien con eso. Don Asegúrate de que zapato cometa tus cambios. Y en el siguiente video o donde realmente hemos terminado esta sección. Por lo que en el siguiente apartado, vamos a aprender más sobre la construcción del mundo y la unidad. Vamos a sumar más. Aprenderemos sobre la iluminación agregará el post-procesamiento, haciendo de nuestros gráficos mantequilla. Vamos a sumar un par de edificios prefabulosos que podamos. que podamos crear un mundo real, realista en el que podamos matar a nuestros enemigos. Con eso hecho, espero que hayas disfrutado de éste y te veré en el siguiente. De acuerdo, poderosamente o del futuro. Ahora hay un pequeño problema que nos olvidamos de tratar. Ahora deberíamos, volvemos a nuestro menú de pausa. Tenemos el menú principal que habíamos jugado. Y ahora cuando intentamos disparar, no hay tiroteo. Ahora, ¿cuál es el problema? Es posible que te
hayas encontrado con esto, puede que no hayas cometido este error, pero tenemos que sumar aquí,
el juego está en pausa, debería volver a ser falso. Porque cuando lo ponemos a verdadero, y aquí detenemos el sistema GUN cuando presionamos el menú principal de carga, no lo volvemos a poner en falso, cual es una idea terrible porque ya no podemos usar nuestras armas. Entonces espero que no cometieras este error y el reto si no lo hiciste, estoy muy orgulloso de ti. Si lo hiciste, no te preocupes, mírame, acabo de hacer este error. Entonces con eso dicho, terminemos finalmente este video.
57. SECCIÓN 10 - añadir recursos mundo: Bienvenidos de nuevo, mis compañeros desarrolladores de juegos. En este video, sólo vamos a dar la vuelta y mirar diferentes activos que vamos a utilizar para crear nuestros niveles. Por lo que hemos agregado este edificio y aquí hemos agregado estos edificios aquí. Hemos agregado también este edificio aquí dentro y este edificio aquí dentro. Entonces estamos, creo que muchos edificios, pero también agregamos un skybox. Y todo esto estará documentado para que
puedas ir a buscar tus propios prefabs y activos. También hemos añadido la escuela buscando el Lorien, si no sabes lo que la Lorine, ya te he sugerido que ir a ver Volver al Futuro. Con eso dicho, no perdamos más tiempo. Y vamos a probar un poco de activos 3D que tenemos. Oh, está bien, así que empecemos. En primer lugar, vamos a entrar en los recursos que te
he proporcionado y puedes seguir adelante y usar todos estos. Ahora, déjame mostrarte de dónde conseguí todo esto. Ah, está bien. Por lo que también puedes ir y conseguir que se agreguen a tus activos estos conjuntos de construcción de baja poli ciencia ficción. Son realmente buenos y los vamos a usar para crear nuestro mundo. Tenemos entonces este edificio futurista aquí. Ahora bien, esto no lo es, esto no vendrá con los activos porque su tamaño está alrededor de los 150 megabytes. Para que puedas seguir adelante y descargarlo por Jonathan desde el Sketchfab. Entonces esto es en el edificio futurista. Puedes seguir adelante y también usar este edificio de ciencia ficción. Te lo he proporcionado en los recursos. Es mi tormenta de tanques y este edificio de aquí. No estoy seguro de si vamos a usarlo. A lo mejor podemos ponerlo al final de un nivel. Entonces de esa manera, es como la Ciudadela en Half-Life dos. Para que puedas ponerlo en el medio. Y aquí dentro tendrás algún tipo de batalla de jefe o algo tan creativo. También te he proporcionado este DeLorean de aspecto realmente genial. Si no sabes lo que es el Lorine, como te sugiero que dejes de ver ahora mismo y vayas a ver Volver al Futuro. Es una película increíble. Entonces con eso dicho, sigamos adelante y usemos nuestros activos. Y sigamos adelante e importemos todos estos edificios y golpeemos importación. Por lo que hemos importado todos estos. Está bien, genial. Ahora lo siguiente que vamos a hacer es dejar este patio como está. Entonces solo por la memoria, solo para que guardemos toda nuestra experimentación aquí. Y entremos a nuestras escenas. Y aquí dentro duplicaremos la escena del parque infantil. Y este será el parque infantil al que llamaremos el tal vez nivel uno, digamos. Entonces. Llámalo nivel uno, haz doble clic en el nivel uno, y es exactamente lo mismo. Y puedes asegurarte de que estás en el nivel uno mirando aquí arriba en el nivel uno. Entonces por ahora, sigamos adelante y quizá eliminemos a los enemigos. Entonces eliminaremos a estos dos volando por ahí. No los queremos. Y eso está claro todo eso. Entonces lo siguiente que vamos a hacer es aquí, vamos a empezar a colocar nuestros edificios. Eliminemos todo debajo de los cubos. Entonces borra todos los cubos. Genial, así que ahora sólo tenemos a nuestros dos grandes enemigos, el robot y el monstruo gigante en la verdad como les hayamos llamado. Vamos a llamarlo Jimmy. Jimmy y la camioneta entraron aquí y estas dos pastillas de salud. Ahora, sigamos adelante y veamos nuestros edificios. Vamos a conducir nuestros edificios al activo del juego. Y dentro del activo de juego, vuelta en nuestros edificios que es hacer el más pequeño. Para que podamos ver todos estos. Por lo que tenemos estos edificios grandes y puedes agregar cualquiera de ellos. Entonces, vamos a ver. Si añadimos éste aquí. Entonces escalamos hacia arriba. Digamos que le agregamos diez, hacemos esto entonces, y agregamos un diez por aquí. Entonces ahora tenemos este edificio, pero el problema es si golpeamos el juego. Por lo que no es el edificio con mejor aspecto del mundo, pero no siempre se puede agregar muy, muy buenos gráficos. Porque a veces me dejamos simplemente entrar en el jugador y aumentar la sensibilidad del ratón capaz. Entonces hagámoslo 400 k Así que quitemos este no-no, Detente, detente, detente. Entonces ahora déjame sólo subir el volumen. Por lo que ahora se puede ver que sí tenemos este edificio. No es el edificio con mejor aspecto. Está bien construyendo, pero en realidad podemos caminar a través de él. Entonces vamos a sumar un par de mallas, y esto es parte del video. Te voy a enseñar cómo puedes usar todos estos. Déjenme cerrar y aquí la ficha. Entonces, entremos a este edificio, por ejemplo. Entonces podemos seguir adelante y puedes desempacar el prefabricado y aquí o puedes quedártelo. Por lo que podemos agregar un componente que es el colisionador de malla. Por lo que agregamos el colisionador de malla. Y aquí dentro se puede ver que de inmediato se ha
agregado un colisionador de malla y en realidad viene con los prefabs y aquí, por lo que cada edificio tiene su propio prefabricado con él. Entonces hagamos el Stan, aunque no 100. Por lo que diez por diez por diez. Entonces este es el edificio quebrado, el busto, o tal vez podamos hacerlo aún más grande. Entonces tal vez este será 20. Ok, ahora, así que ahora este es el segundo edificio. Este es el tercer edificio y se puede agregar un colisionador de malla, y aquí se agregará automáticamente este también. Hagámoslo de diez por diez, y hagamos de este 20. Por lo que ahora puedes agregar estos edificios como tú, como te parezca conveniente y añadir colisionador de malla Estudiante. Ok, sigamos. Y en realidad hagamos de este patio un poco más grande. Entonces hagamos la escala 30 por 30. Entonces es un poco más grande para que podamos ver todo a nuestro alrededor. Y si vamos a la ventana y vamos a una Navegación, y esta es la parte más importante. Queremos empezar a elegir estos edificios, haciéndolos estáticos. Entonces en el inspector, vamos y les hacemos navegación en estática. Y mantén este avión como estático, ve a navegación y vamos a hornear todo aquí. Por lo que ahora se puede ver que el suelo es una especie de lectura. Por lo que nuestros enemigos ahora pueden andar por ahí y pueden llevarnos a perseguirnos. Sí, todo está funcionando bien. Está bien, genial. Entonces ahora que tenemos esta puesta a tierra aquí, sigamos adelante y miremos otros Prefabs que te he dado. Entonces veamos aquí dentro tenemos a este cyberpunk, el Lorine. Arrástrelo a nuestros activos de juego aquí y esperemos a que se compile. Entonces ahora lo tenemos aquí dentro. Vamos a seguir adelante y ponerlo en nuestro mundo. Mirémoslo y digamos pero pequeño. Entonces hagámoslo aún más pequeño. Seis por seis por seis. Genial. Entonces ahora se ve lo suficientemente bien. Entonces si hacemos clic en él, se
puede ver que actualmente, bueno, podemos caminar por él. Pero aquí podemos simplemente añadir un colisionador de malla. Tenemos que elegir todos estos porque si haces clic en él, puedes ver que cada componente tiene su propio colisionador de malla. Por lo que elegimos todos estos. Así que haga clic en el primero, mantenga pulsada Mayús, Haga clic en el último en los componentes y el colisionador de malla. Y verás que cada objeto ahora tiene su propio colisionador de malla. Si lo guardamos, le pegamos al juego. Podemos seguir adelante y caminar hasta el auto y podemos tropezar con él. Podemos saltar sobre ella, y podemos pararnos sobre ella. ¿ Qué tan guay es eso? Está bien, genial. También puedes hacerlo adecuado para que realmente puedas dispararlo y añadirle algún tipo de impacto de bala. En realidad, queremos hacer esto de cuatro por cuatro y actualmente no conduce. Pero lo que puedes hacer es en realidad agregar algo de animación para que se quede rondando y tal vez girar las ruedas alrededor y hacer que se vea más cool. Aumentemos la sensibilidad del ratón a 400. Está bien, genial. Entonces con ese Don, ¿qué más tenemos? 01 cosa de la que quería hablarte. Por lo que actualmente si haces clic en el ciberDeLorean o en cualquier componente para ese asunto, puedes ver que todo el material aquí dentro no está disponible para
que puedas, no puedes moverte con él. Ahora, una forma muy inteligente de resolver este problema es seguir adelante y crear una carpeta aquí, y lo llamaremos la, las texturas de Lorien. Y sumemos aquí estos
cibercamiones, cyberpunk. Haga doble clic aquí, y al hacer clic en él, realidad se
puede ir del modelo al RIG, a las animaciones si tiene una e ir al material. Y aquí puedes seguir adelante y extraer las texturas y extraer los materiales. Y cuando golpeas material de extracción, puedes llevarnos de inmediato a la carpeta selecta texturas de Lorien. Por lo que ahora tendrás todas las texturas aquí dentro. Por lo que puedes agregarla de inmediato. Se puede ver que el auto ha cambiado los colores y se convierte en el mismo que el que se muestra en la página web de Sketchfab. También puedes extraer los materiales aquí también. Por lo que ahora cuando se extraigan, puedes seguir adelante y empezar a cambiarlos. Entonces aquí vamos a ver, tal vez podamos. Gira esto, oops. Hagámoslo negro, por ejemplo. Y se puede ver que inmediatamente los materiales de aquí cambian de color. Entonces puedes hacer eso y retocar,
jugar , ver si tal vez quieres aumentar el metálico. A lo mejor quieres agregar tus propias texturas aquí dentro al albedo, por ejemplo, y así sucesivamente. Puedes agregar una misión para hacerlos brillar. Por lo que se puede agregar tal vez blanco y misión y así sucesivamente. Y si quieres profundizar más en esto, hay recursos increíbles en la documentación de Unity donde puedes encontrar todo lo que necesitas para poder entrar plenamente en esto. Ahora, no voy a ir y Gulf profundizó esto. Este es más de un lado gráfico si estás buscando hacer eso, te animo una forma realmente fantástica de aprender las cosas. Está bien, genial. Por lo que ahora tenemos al Lorien. ¿ Qué más podemos agregar? Vamos a entrar en nuestros activos de juego, vamos a tres recursos. También te he proporcionado estos tres edificios de los que te he hablado. Entonces, arrastremos todos estos y los pongamos en nuestros activos de juego. Esperen a que importen o K. Así que vamos a ver, tenemos nuestros edificios. Entonces ya hicimos esto. ¿ Dónde está? Entonces hagamos esto más pequeño, mientras que está bien, así que este es el primer edificio y simplemente arrástrelo aquí. tanto que en serio, ¿qué es esto? Ah, así que este es nuestro pequeño, diminuto edificio. Y puedes ponerlo a distancia, como ahí en alguna parte. Entonces cuando inicias el juego, caminas por ahí y ves ese edificio a distancia y eso lo sabes. Entonces veamos eso. A ver cómo se ve. Whoa, agradable. puede ver que es un edificio enorme en algún lugar de la distancia y hay
que caminar con pero actualmente, nos caímos. Vamos a mover un poco este edificio. Entonces vamos a moverlo aquí y mi computadora ya está empezando a sufrir. De acuerdo, entonces ahora podemos ver que este es nuestro edificio y está en el patio de recreo para que podamos saltar sobre él. Pero el problema es que no tiene ningún colisionador de malla
y los colores en él también son extremadamente aburridos. Puedes seguir adelante y hacer lo mismo que hacíamos antes. que puedas ir al edificio, ir a las animaciones de la plataforma modelo, y aquí dentro puedes extraer los materiales y sí, el edificio de ciencia ficción. Por lo que ahora podremos retocar y jugar con todos estos. Por lo que esto tomará un poco de tiempo fuera de tu día para poder cambiar todas las diferentes cosas aquí dentro. Entonces los aviones, las diferentes cosas aquí dentro. Y también puedes ir a este edificio y ver qué tiene. Entonces vamos a aumentar el tamaño aquí dentro y se puede ver que tiene un montón de colisionadores de malla en él también. Puedes modificarlos, puedes agregarlos a cosas diferentes. Entonces veamos qué tenemos aquí tal vez. Por lo que aquí puedes editar el material. En realidad, puedes agregar un colisionador de malla aquí, y automáticamente agregará no todas las cosas aquí dentro se agregan. Para que puedas seguir adelante y dar click en. Y así por ejemplo, este avión y aquí por supuesto tiene un colisionador de malla y se puede cambiar el material sobre él y así sucesivamente y así sucesivamente. Solo estoy exhibiendo un poco de cosas aquí para que no te confundas si estás tratando de agregar tus propios activos. Entonces con ese edificio hecho, saquémoslo del camino. ¿ Qué más tenemos? El último edificio y es el más cool, o, y este es uno de los edificios. Entonces fuerza, sumémoslo aquí. Por lo que este también es un edificio de aspecto muy bonito. Puedes hacer clic en él y extraer todos los materiales para que puedas retocar y jugar con ellos. Por lo que está construyendo aquí al lado de fuentes. Ahí están. Ahora puedes cambiarlo y hacerlo más metálico para que parezca más fresco. Y para agregar el colisionador de malla aquí que C, Vale, así de inmediato el colisionador de malla está disponible cuando teníamos jugada. Entonces podemos, debe el edificio con nuestro cohete. Y agradable. Entonces, ¿qué tan genial es eso? Ahora podemos disparar a nuestros edificios y también puedes crear whoa, whoa, whoa. Vamos a recargar. Está bien, genial. Entonces ahora tenemos estos edificios aquí. Consigamos algunas municiones. Vamos a recargar. Disparemos a nuestros edificios. Tan agradable, Nuestro mundo está cobrando vida. Entonces, ¿qué más tenemos? ¿Y ya? Lo es, así que el problema con este edificio es que sólo está de un lado, de todos lados. Y este es nuestro edificio. Entonces el problema con él, en primer lugar, es completamente blanco y vamos a tener que agregarle un par de texturas. Viene con su propio colisionador de malla, espero que sí lo haga. Por lo que aquí puedes ver que tiene este material en él. Podemos dar click en él. Podemos extraer material también visto en los edificios futuristas carentes. Entonces el problema con él es que está vacío del otro lado. Por lo que necesitas crear una manera para el, bueno, cualquiera que juegue tu juego es, no
debería poder ver qué hay detrás de esto para romper la inmersión del juego. Entonces entremos aquí y empecemos a retocar en esto, viene con sus propias texturas. Entonces loguemos este fin, vayamos a las texturas. Entonces aquí tenemos el albedo. Entonces, sumemos el albedo aquí. Agradable. Por lo que nuestro edificio ya es muy colorido. También tenemos emisión, así que vamos a sumar una misión. Entonces veamos, miren lo genial que se volverá esto. Por lo que agregamos aquí. Entonces ahora en realidad podemos agregar emisiones, hacerla roja y en realidad emite la luz. Esta es la enfermedad metálica, enfermedad mental. Agradable. ¿ Qué tan genial es este edificio? Suerte ahora mismo. Y también tenemos lo normal, vamos a añadirlo aquí y arreglarlo. Por lo que ahora nuestro edificio es mucho mejor. Agradable. Entonces, ¿qué más necesitamos tener? ¿ Esto? A 00 significa el mapa de occassión. Entonces, sumémoslo aquí. Y para ser honesto, bajo el diseñador gráfico bus también, así que no estoy seguro de qué hace al 100%, pero agrega un poco de precaución, lo cual es bonito, supongo. Y se ve realmente bonito. Este es uno de los edificios más bonitos. Y ahora cuando golpeamos playups, así podemos dispararlo con nuestros cohetes. Pero y en realidad se ve muy bien. Pero el problema es que si caminas por ahí y es súper raro. Está bien. Entonces puedes golpearlo desde un lado no puedes, pero desde el otro lado puedes. Y esto es algo construido por la unidad específicamente. No estamos específicamente, pero esto se hace con el fin de
ahorrar memoria en tu juego y poder usar este edificio. Entonces no estoy seguro si lo estás escuchando, pero cuanto más tiempo juego mi juego, más empieza a sufrir. Y en realidad podemos pararnos en esto, pero no podemos saltar porque esta no es la capa de tierra. Entonces, salgamos. ¿ Y qué se hace eso? Yo sólo he querido sumar un par de activos. Muéstrale lo que puede hacer. A lo mejor te vuelves creativo. También puedes seguir adelante y encontrar tus propios activos. De verdad, de verdad te animo a que sigas adelante y encuentres tus propios activos. Se sentirá increíble cuando hagas una pequeña idea que quería darte, digamos por ejemplo, hacemos un nivel donde por todos lados tenemos esto, estos edificios y no puedes mirar a través de ellos. Y luego ahí al final tienes este gran edificio y debajo de él puede ser añadir tres monstruos de nuestro monstruo justo aquí para que puedas duplicarlos y asegurarte de que siempre haga de esto una estática, estática navegación, y luego hornear el otra vez para que los monstruos en realidad no caminen encima de ella. Entonces con eso dicho, espero que hayan disfrutado el video. Y una cosa más. Una cosa más, yo sólo quería entrar en la caja de galaxia aquí que tenemos. Y abramos esto y realmente elijamos uno de estos skybox para sumar a nuestro mundo Y aquí. Entonces ahora estamos en algún tipo de planeta grande, enorme. Entonces ahora cuando golpeamos play en LAC lux, diez veces mejor, ¿qué genial Se ve eso en serio? Ahora estamos en el espacio disparando monstruos con edificios de aspecto increíble y genial. Nuestro juego está llegando a vivir con efectos de sonido con todo. Si tan sólo pudiéramos conducir este DeLorean y volar lejos a un maduro, pero eso no está ahí. Entonces con eso dicho, espero que hayas disfrutado el video y te veré en el siguiente.
58. Procesamiento de posteriores: Bienvenido de nuevo, mis desarrolladores de juegos favoritos. En este video, vamos a estar agregando juegos un poco más de estilo gráfico. Entonces como puedes ver, hemos hecho un par de cambios y aquí hemos agregado algún juego de tienda de efectos usando el post-procesamiento. Y no es mucho, pero en realidad aumenta la belleza de nuestro juego y realmente hace las cosas más realistas. Y hemos añadido también algunos desenfoque de movimiento en azul. Se pueden ver todos los efectos que hemos añadido aquí. Y también vas a estar agregando tus propios efectos y haciéndolos tuyos. Entonces con eso dicho, no perdamos más tiempo y empecemos. O K. Así que lo primero que deberás hacer es ir a la ventana,
ir a tu gestor de paquetes, y al registro de unidad. Simplemente vaya al post-procesamiento y golpee y detenga. Por lo que esto debe comenzar y detenerse si no has descargado ya, y si necesitas actualizar,
actualizar , y luego iniciar y parar. De acuerdo, entonces ahora que tenemos instalado nuestro post-procesamiento, lo siguiente que vamos a hacer es entrar a nuestra cámara. Y aquí dentro vamos a añadir un componente que va
a ser la capa de post-procesamiento. Y aquí dentro puedes ver que tenemos un disparador, una capa que actualmente no es nada y creará una capa de post-procesamiento para esto. Entonces ahora que tenemos nuestra capa de post-procesamiento, y aquí vamos a seguir adelante y crear una capa que se va a llamar bien, post procesamiento. Procesamiento. Hit Enter y respaldando nuestra cámara aquí dentro vamos a elegir qué capa queremos tener como nuestra mezcla de volumen. Veremos lo que eso significa más adelante y solo escogemos el post-procesamiento. Ahora vamos a crear un nuevo objeto de juego vacío bajo cámara. Y vamos a llamar a esto el post para el volumen de sincronización. Y le vamos a adjuntar un componente que es el volumen de post-procesamiento. Ahora golpea global aquí. Y sólo vamos a poder notarlo aquí mismo en nuestro modo de juego. Así que asegúrate de que estás en eso. Ahora sigamos adelante y dentro de aquí nos pedirá un perfil, basta con dar click en Nuevo, y creará un perfil de post-procesamiento. Si golpeas aquí, puedes ver que está en las escenas y perfiles. Y ahora solo déjame cambiar nuestro, la forma en que vamos aquí. Y vamos a elegir un par de cubos aquí dentro y simplemente moverlos en las inmediaciones de nuestro jugador. Ups, así que vamos a elegir esto de vuelta aquí. Hagamos de esto un global. O no, en realidad, hagámoslo local y movámoslo delante del jugador para que
veamos cómo esto afecta a los diversos elementos de nuestro juego. Entonces elijamos Global. ¿ Elegimos el avión? No, no elijas el avión. Y movamos este cubo y fundador de nuestros jugadores. Entonces ahora podemos ver estos cubos aquí dentro y veremos qué efectos tenemos en nuestro juego. Está bien, genial. Ahora de vuelta en nuestro post-procesamiento, ahora en realidad podemos, vamos al volumen de post-procesamiento aquí y asegurémonos de que esté en la etapa de post-procesamiento. Ahora, podemos empezar por fin a agregar efectos. Entonces el primer efecto que vamos a sumar aquí, podemos elegir la unidad y hay mucho. Ahora, no voy a pasar por todas ellas porque aquí hay mucho que cubrir. Pero te animo a que sigas adelante y pruebes todas estas y la mejor manera de probar cualquier cosa. Entonces déjame solo mostrarte. Vayamos a florecer por ejemplo. Digamos que no tenemos idea de lo que es Bloom. Basta con hacer click en la intensidad y subirla tanto como puedas. Y entonces sabrás cuánto quieres realmente y lo que realmente hace. Y así es como aprendí todo esto. Entonces sigamos adelante y sumamos un poco de blum. Por lo que se puede ver a las 0 no hay nada. Podemos agregar un poco para que podamos hacerlo tal vez, digamos 1.5 o tal vez incluso más, 1.8. Ok, entonces 1.8 se ve lo suficientemente bien. Podemos cambiar muchas cosas aquí dentro. Entonces tal vez si difundimos. Para que veas que hay muchas cosas que podemos jugar aquí dentro. Sólo eliminemos la difusión. Entonces lo siguiente que vamos a hacer es añadir otro efecto aquí. Y veamos, podemos añadir la aberración cromática, que es bonita. Entonces si hacemos clic en intensidad, podemos aumentarla. Se puede ver que los bordes de nuestra pantalla se convierten en un diluido o ellos como si fueran hiper velocidad. Por lo que sólo podemos añadir un poco de esto dentro. Entonces tal vez 0.06 o tal vez aumentarlo un poco. Y se puede ver que los colores también cambiaron. Por lo que tienes este rojo, verde, y azul colores que cambian por lo que tal vez llegue a 0.2. Está bien, eso se ve bien. Se puede agregar un modo rápido, y aquí no estoy seguro de qué hace eso, pero se puede ver que agrega un poco más estirada a las pantallas ACH. De acuerdo, así que sigamos adelante y agreguemos un, otro efecto aquí. ¿ Qué más podemos agregar? Podemos cambiar la profundidad de campo, que es algo así como los cambios
la distancia de enfoque como si estuvieras dispuesto a usar gafas. No creo que quiera esto, así que podemos quitarlo. Por ejemplo, agreguemos otro efecto aquí. Y podemos añadir desenfoque de movimiento, que es muy bueno. Por lo que esto sólo funcionará mientras Will, mientras estamos jugando nuestros juegos. Entonces, sumemos estos dos que están en juego y veamos cómo se ve eso. Por lo que ahora se puede ver eso. Ok, entonces ahora se puede ver que mientras nos
movemos, tenemos este pequeño desenfoque. Entonces nuestro mundo es un poco más brillante si quieres. Y ya los gráficos son mejores. Entonces aumentemos el recuento de muestras y la velocidad de obturación, y veamos cómo eso afecta a nuestro juego. Entonces cambiemos. ¿ Hay algún desenfoque de movimiento? No, no mucho. Entonces aumentemos esto, pongamos todo esto al máximo y veamos cómo se ve eso. Entonces sí, hay un poco de desenfoque de movimiento. No es tan obvio cuando sí construimos nuestro juego. Creo que será más obvio que eso. Entonces, mantengamos el movimiento borrosa alrededor de esto. Añadamos un, otro efecto aquí. Y podemos añadir el widget, por ejemplo. Es un poco agradable. No es tan genial, pero puedes agregar un, como un círculo alrededor de los bordes. Entonces esto puede ser así o puedes simplemente,
solo un poquito alrededor de las esquinas. Y hay un, otro efecto muy cool aquí que me gusta. Y es la oclusión ambiental. Y lo que esto hace es que en realidad agrega un poco de, veamos, sombras a nuestros diversos objetos. Por lo que añade profundidad a nuestro objeto. Por lo que puedes ver aquí los cubos se pusieron un poco oscuros debajo de ellos, y podemos agregar también grosor aquí para que podamos aumentar el grosor, por ejemplo. Y ahora las cosas están mucho más fundamentadas. También puedes cambiar el color de esto y puedes cambiar muy suave. Entonces cuando golpeamos el juego, Veamos cómo se ve eso. De acuerdo, entonces puedes ver ahora nuestra ganancia es mucho más intensa. Cuando disparamos, cuando nos movemos, tenemos estos cubos que están conectados a tierra. Ahora estas no son las mejores cosas gráficas que hemos agregado, Pero por ahora son realmente buenas. Y se puede ver que nuestra pistola incluso se ve mucho más realista. Nuestros enemigos se ven mucho más intimidantes y tienen mucha más profundidad. Y todo eso, todo eso realmente se ve y bonito. Entonces con eso dicho, creo que voy a disminuir el widget, tal vez incluso quitarlo porque se puso
mucho más oscuro y tal vez disminuir el grosor aquí. Pero de todos modos, estas son todas las cosas con las que puedes jugar y probar por tu cuenta. Y en realidad es parte de tu reto. Por lo que tu reto es agregar tus propios efectos. Por lo que en primer lugar, configura el post procesamiento en el volumen de post-procesamiento y todo a tu cámara. Tómate el tiempo para explorar todos los diferentes ajustes que puedes agregar tu post-procesamiento porque hay muchas cosas con las que puedes jugar. Y te sorprenderías de lo bueno que
realmente puede parecer tu ganancia cuando le agregues el post-procesamiento. Esta es una herramienta muy poderosa y te animo a salir a probar todos
los efectos y finalmente crear tus propios efectos en tu nivel. Dicho esto, espero que hayan disfrutado el video y el siguiente estaremos jugando con la iluminación en unidad y viendo cómo funciona todo eso con eso dicho, espero que disfruten y nos veamos en el siguiente.
59. Iluminación en la unidad: Bienvenido de nuevo, Mis desarrolladores de juegos favoritos. En este video, como puedes ver, hemos apagado todas las luces y nuestro juego, y hemos añadido el nuestro propio. Entonces ahora cuando golpeamos el juego, se
puede ver que nuestro juego tanto más aterrador y todo lo que nos rodea está completamente oscuro. Y sólo encendimos un par de cosas. Por ejemplo, el monstruo ahí tiene un poco de luz sobre él. Tenemos esta luz verde aquí dentro que realmente agrega juego de tienda ambient. Y sólo cuando caminamos tenemos luces en nuestro jugador y frente a ellos, todavía
podemos disparar cosas. Todavía podemos ver un poco de esbozo por estos tipos que nos rodean. Pero básicamente todo se ha apagado. Entonces ahora podemos ver a nuestros enemigos, podemos disparar a eso. Hemos agregado muchas cosas y nos vamos a
divertir jugando con luces y Unity. Will eso dicho, no perdamos más tiempo y empecemos. De acuerdo, entonces lo primero que vamos a hacer, vamos a entrar en nuestras escenas aquí dentro. Y vamos a seguir adelante y duplicar el patio de recreo. Y vamos a llamar a esto el nivel dos. Por lo que ahora tenemos una herramienta de nivel. Y antes que nada, ignoremos esto y salvemos todo eso. Ahora, en el nivel 2, Es exactamente lo mismo que el nivel uno. Y puedes estar seguro de ello. Es decir, es exactamente lo mismo que el patio de recreo y puedes estar seguro de que cuando mires aquí arriba en el nombre de la escena. Por lo que ahora tenemos nivel 1 con nuestros diversos objetos y son realmente bonito el Skybox. Y tenemos nivel 2, que es nuestro nivel básico con nuestros diversos objetos. Está bien, genial. Ahora, ¿qué vamos a estar haciendo? Y aquí vamos a estar jugando con la iluminación. Y permítanme que les cuente un poco sobre cómo funciona la iluminación en unidad. Entonces si entramos en la ventana aquí mismo, entramos en el renderizado y tenemos la iluminación aquí para que podamos ver, sumémoslo aquí siguiente, el Inspector y la navegación. Podemos ver aquí que tenemos varias cosas con las que podemos retocar y jugar. Y gracias a ver. Entonces cómo funciona la iluminación en unidad es que se hornea en. Entonces, ¿qué, qué significa? Bueno, al igual que horneas un pastel y luego está ahí fuera para siempre. la misma forma. Así funciona la iluminación en Unity. Ahora, puedes crear una forma de que la iluminación funcione dinámicamente, pero eso tomará mucho poder de procesamiento. Entonces lo que hace es crear
aquí una luz direccional y luego hornea las sombras y cómo se encenderán las cosas. Tan diferentes materiales y así sucesivamente. Y luego va a hornear todo ahí dentro y tendrá la diferente iluminación. Y ahora podemos cambiar eso. Entonces si nosotros, por ejemplo, vamos a la luz direccional aquí dentro. Podemos ver que podemos cambiar el color, podemos cambiar la intensidad, podemos aumentarla mucho, o podemos emitir a 0. Pero se puede ver que todavía hay mucha luz por ahí. Si vamos ahora a la iluminación, podemos cambiar la luz, iluminación
ambiental a 0. Podemos quitar múltiples cosas. Por lo que las reflexiones ambientales, podemos cambiar la forma en que la luz rebota sobre diferentes objetos. Y ahora conmigo generar iluminación. Espere a que genere una herramienta. Crea aquí un archivo que mantendrá aquí todas las cosas alrededor de la iluminación. Entonces, sólo esperémoslo. Es calcular cosas. De acuerdo, entonces ahora que eso está terminado, déjame solo golpear play y te mostraré como todo es mucho, mucho más oscuro. Por lo que ahora se puede ver que apenas podemos ver diversos objetos de juego. Y en nuestro caso, porque tenemos este robot y aquí, así que déjame solo mostrarte la diferencia. Nuestro robot en realidad tiene un cuerpo de robot, tiene una luz sobre él, que es el jamming y aquí. Y si apagamos el hammy, verás que todo se oscurecerá mucho más. Entonces, oops, déjame salir, ve al hemi en el robot y apaga eso. Y verás que ninguno de nuestros objetos será visible. Entonces cuando golpeemos Play, verás que no podemos ver nada y todo está oscuro. Ahora todavía tenemos este cielo aquí que nos permite ver todo. Pero también podemos hacer eso a 0 o tal vez cambiarlo, cambiarlo usando la caja Galaxy. Y sigamos adelante y hagamos eso. ¿Por qué no? Entonces si vamos a entrar en nuestro juego, los activos entrarán en
nuestras, nuestras galaxias, verán aquí que tenemos estos recursos. Entonces elijamos el Skybox. Entonces sí, ahora estamos en completa oscuridad en nuestro juego. Y cuando golpeamos el juego, veamos cómo se ve eso genial. Por lo que ahora podemos ver algo muy bonito excepto los sofocos. En realidad muy agradable. Y apenas podemos ver el contorno de nuestro enemigo ahí dentro. Ahora sigamos adelante y sumamos nuestra propia iluminación al juego. Entonces la forma en que hacemos eso es que vamos a hacer clic derecho y nuestra jerarquía. Y vamos a seguir adelante en nuestras luces y podemos crear varias cosas. Ahora la luz direccional es igual que el sol. Ya tenemos uno. Podemos crear una luz puntual. Entonces sigamos adelante y creemos uno. Vamos a restablecer su posición porque es verano muy lejos, muy lejos. Y por ejemplo, pongamos nuestro punto como, vamos a ponerlo aquí. Entonces por ejemplo, ahí mismo. Y se puede ver que apenas,
apenas le agrega un poco de luz a nuestra rampa aquí mismo. Por lo que podemos aumentar el rango. Podemos aumentar la intensidad, podemos cambiar los colores para que podamos hacerlo rojo,
verde, etcétera y así sucesivamente y así sucesivamente. Podemos moverlo y se puede ver cómo se ve todo eso en nuestro juego. Podemos aumentar el multiplicador indirecto. Podemos hacer que no tenga sombras de tiro o podemos hacerlo sombras medio suaves o hacer y hacer que tenga sombras duras y todo eso. Lo que también podemos hacer es aumentar el rango. Eso es básicamente todo. Entonces, solo mantengamos esto aquí mismo y aumentaremos la intensidad, por ejemplo. Y esto será algún tipo de áreas verdes. Entonces ahora cuando nos acercamos al juego. Podemos ver que tenemos esa zona verde. Ah, entonces Maisel, cómo los cohetes en realidad también iluminan la escena. Entonces ahora cuando vamos por debajo de aquí a veces tomamos el, toma la textura, textura un poco de tiempo, pero no se preocupe por eso. Por lo que ahora puedes ver cómo se ve el ambiente. Estamos en un lugar verde. Es realmente genial, es realmente agradable. Y me gusta mucho. Ahora, lo siguiente, y además de luz puntual, también
podemos seguir adelante y crear otra luz que es un foco. Entonces déjame mostrarte lo que es un foco de atención. Nuevamente, Vamos a restablecer su posición aquí. Y vamos a subirlo un poco, y vamos a rotarlo alrededor del eje x. Entonces hagámoslo 90 grados, así brilla hacia abajo. Y vamos a subirlo. Y podemos ver que podemos aumentar el ángulo, por ejemplo, y aumentar el rango lo hace actualmente no tiene intensidad. Aumentemos la intensidad. Bueno, entonces ahora podemos ver que nuestro jugador se intensifica y tiene, y tiene un poco de luz sobre él. Realmente agradable. Entonces ahora cuando guardamos eso, golpeamos el juego. A ver cómo se ve eso. Entonces cuando golpeamos el juego, podemos ver que estamos bajo algún tipo de luz y todo a nuestro alrededor está oscuro. Y unas cosas muy cool que podemos hacer aquí es que en realidad
podemos adjuntar el foco a nuestro jugador. Y ahora cuando salvemos esto, mientras nos movemos alrededor de nuestro mundo, déjame solo mostrarte lo genial que es esto y simplemente tirar, ya
sabes, cuánto podemos hacer. Estos focos se mueven con nosotros. Entonces ahora a medida que avanzamos por nuestro juego, apenas
podemos ver frente a nosotros. Ahora por supuesto, tenemos que cambiar un poco esto. Y cuando, mientras nos movemos, se puede ver que tenemos esto frente a nosotros,
el foco de atención, pero sólo ilumina frente al jugador. Ahora podemos cambiar el ángulo, por ejemplo, déjame solo mostrarte si cambiamos el ángulo por lo que está frente solo al jugador, aumentamos el rango, pero tal vez la intensidad pueda jugar con todas estas cosas y asegúrate y haz que altere tu gusto. De verdad, realmente depende de tus preferencias. Y podemos cambiar el color también, y todo eso, podemos agregar sombras un poco para que podamos agregar unas sombras suaves. Por lo que ahora nuestro jugador tiene una sombra suave cuando golpeamos el juego. Pero asegúrate de recordar que todo esto juega un papel en tu actuación. Por lo que ahora se puede ver que los focos en los elimina frente a nosotros. Y no importa cómo nos movamos, se pueden ver las sombras. Entonces ahora cuando nos movemos hacia nuestro monstruo aquí, podemos eliminar los diferentes objetos son monstruos nos ataca y es, ¿
puedes ver lo aterrador que es eso? En serio, ¿no da miedo? Un poco. Está bien, genial. Entonces ahora con ese foco hecho, déjame solo mostrarte qué más podemos hacer con la iluminación. que podamos, por ejemplo, vayamos a nuestra camioneta de salud y sigamos adelante y le agreguemos una luz. Y también se puede crear una luz de área, que no es tan grande de un trato. Pero por lo general todos se usan como punto de luz y foco y eso es todo. Y estos son en realidad suficientes. Entonces este es nuestro foco de atención y vamos a rotarlo a 90 grados. Vamos a subirlo un poco. Aumentemos el rango de la misma y la intensidad. Genial, así que ahora lo tenemos en el tapete atrás y podemos, sigamos adelante y solo aumentemos el ángulo spot sobre él. Así que así como eso. Y sigamos adelante y sumamos otro. Duplicado lo rotará a menos 90 grados, y luego lo vamos a mover hacia abajo. Entonces veamos cómo se ve eso. Y sigamos adelante y aumentemos el rango pero aumentemos la intensidad. Entonces lo que queremos es que queremos una luz debajo y sobre ella. Entonces por todos lados si quieres con el foco de atención. Entonces vamos a ver, eso es demasiada intensidad, al parecer, tan grande. Entonces ahora veamos cómo se ve eso. Ahorramos que incluso podemos hacerla capaz de hacerlo más verde. Por lo que parece una verdadera espalda de salud. Y ahora cuando guardamos eso, cuando golpeamos el juego, podemos ver que por ejemplo, estamos mirando alrededor y BC, whoa, eso es una salud allá atrás. Vamos a buscarlo. Agradable y podemos hacer lo mismo por nuestra caja de municiones y ver qué genial se ve eso para que podamos recogerlo. Está bien, genial. Ahora lo último que puedes hacer es que
en realidad también puedes poner un foco de atención al enemigo. Entonces aquí, por ejemplo, digamos que tenemos a nuestro monstruo caminando por ahí. Podemos seguir adelante y crear un. o bien
puedes crear un mientras que la luz, puedes o bien crear una luz puntual para estar en su cabeza, por ejemplo. Por lo que podemos aumentar el rango, aumentar la intensidad. Y vamos a guardar eso. Vamos a pegarle a Play. Y ahora puedes ver que mientras miras a tu alrededor, tienes a ese enemigo. Y anda por ahí con su especie de aligeramiento. Y es muy amenazante y aterrador. Tendrás que quitarte la luz sobre ti y todo eso. Entonces ahora que les he mostrado cómo funcionan las luces en unidad, les he mostrado un par de ejemplos en Unidad. Se puede ir adelante y entrar en la iluminación, ir generar la luz. Ahorrará mucho tiempo y un poco de cálculo para
la unidad cada vez que juegues el juego. Por lo que ahora cuando nos
acercamos al juego, tenemos nuestras diversas diapositivas que hemos añadido a nuestro juego. Y por supuesto estos no son los mejores ejemplos. Yo sólo estoy alando esto, todo esto. Solo trato de mostrarte tantos ejemplos como pueda. Lo realmente no bonito que puedes hacer es, por ejemplo, en algunos focos o luces de área a los diversos cubos en tu entorno. O por ejemplo, si quieres crear algún tipo de túnel a través del cual el jugador tenga que moverse, puedes agregar likes solo al, digamos la puerta al final y añadir un poco de luz de área frente al jugador. Por lo que cada vez
que gira, sólo puede ver delante de él. Este es un gran mecánico. La mayoría de los juegos usan. Y lo que ese set. Ahora es el momento de tu reto y tu canal va a ser dejar que haya luz. Por lo que configura tu propio sistema de iluminación en unidad con todas las variaciones de luces que aprendas, no
tienes que hacer todo completamente oscuro. Solo quería enfatizar cómo
funciona la iluminación manteniendo la luz direccional completamente oscura. Puedes adjuntarlos a diferentes objetos de tu nivel y añadir ambiente a tu nivel. Entonces con eso dicho, te animo a ir a experimentar con la iluminación, ver qué funciona para tu propio juego y asegurarte de que creas un nom de segundo nivel solo experimente en un nivel con todo esto genial, un segundo, tercero, cuarto nivel y jugar alrededor, ver qué funciona, ver qué no, y divertirse, disfrútalo. Todo esto se trata de divertirte y crear algo que te guste y a tu propio gusto de prueba y lo que disfrutes, lo que eso decía. Te veré en la siguiente donde realmente vamos a aprender cómo podemos pasar de nivel a nivel usando un portal.
60. Transición entre los niveles: Bienvenido de nuevo, Mis desarrolladores de juegos favoritos. En este video, hemos creado una puerta de salida que nos permite pasar de nivel a nivel. Entonces tenemos esta puerta y aquí, y nos acercamos a abre y ahora podemos movernos por ella. Despacificamos el tiempo, y luego estamos del otro lado y al siguiente nivel disparando nuestros edificios. Entonces, no perdamos más tiempo y empecemos. Entonces lo primero que vamos a hacer como vamos a ir y sacar nuestro portal de los recursos. Así que simplemente arrastra el portal a nuestros activos de juego. Compró todo eso, espere a que se importe. En cualquier momento ahora, debería estar dentro de estos activos de prueba, y aquí será una puerta de ciencia ficción. Y en las fuentes simplemente arrastra aquí el sulfito o la animación. Está bien, genial. Entonces ahora tenemos a este Doron de ciencia ficción aquí. Podemos ir a la puerta de ciencia ficción y podemos extraer los materiales. Puedes extraerlos donde quieras. Se pueden extraer en el interior del material. Entonces selecciona todo eso. Muy bonito. Ahora lo siguiente que vamos a hacer, vamos a cambiar el nombre aquí para que sea la simple puerta de ciencia ficción. O puedes limitar el portal o lo que queramos. Y vamos a seguir adelante y escalarlo hasta dos por todos lados. Entonces ahora es lo suficientemente grande como para ser una puerta. Lo siguiente que vamos a hacer es que vamos a seguir adelante y vamos a seguir adelante y en realidad desempaquetar completamente el prefabricado y vamos a entrar en los activos. Entremos y cambiemos el material en él. Por lo que ya hemos hecho esto mucho tiempo. Entonces lo que voy a hacer es que sólo voy a saltar más allá de todo esto. ¿ De acuerdo? Entonces me he saltado todo esto. Entonces ahora tenemos el dorm aquí y quizá podamos cambiar un poco la emisión o el albedo. Entonces si podemos hacerlo un poco más brillante, eso estaría bien. Entonces vamos a hacer esto alrededor del punto cero setenta y ocho. Vamos a golpear Play. Y vamos a echar un vistazo a nuestra puerta y ver cómo se ve. Entonces, ¿dónde está nuestra ley ahí? Entonces ahí está nuestra puerta. Actualmente no hace nada. Está bien. Genial. Entonces lo siguiente que vamos a hacer es entrar en nuestro Doron de ciencia ficción aquí y vamos a crear un animador para ello. Entonces, oh, y por supuesto, antes de hacer eso, tomemos vamos a entrar en nuestros activos y tomemos nuestro ¿qué es? Probar activos, que es la puerta y pongámoslo dentro de los activos de juego. Y sigamos adelante y saquemos la ventana de animación y aquí, animación. Y hablémoslo junto a la consola. Y consigamos también a nuestro animador. Y vamos a mantenerlo ahí arriba. Entonces, vamos a dar click en la puerta de ciencia ficción. Creemos animaciones y creemos una nueva carpeta para la puerta de ciencia ficción. Y aquí dentro vamos a crear nuestra primera animación y va a ser lo abierto. Entonces vamos a abrir la puerta. Genial. Ahora de vuelta en nuestro juego, vuelta en nuestra escena, quiero decir, veremos aquí que en realidad podemos ir y encontrar la animación abierta real de nuestras puertas. Entonces si entramos en nuestros activos de juego, en nuestros activos de prueba aquí, podemos abrir la puerta. Podemos ver estas fuentes. Si abrimos esto, podemos ver que esta puerta, si golpeamos Play, en realidad es la animación abierta. Entonces sigamos adelante y duplicémoslo. Esta será la, oops, la puerta abierta. Y sigamos adelante y lo sumamos a las animaciones de nuestra puerta. Así que arrástrelo aquí. Ahora de vuelta en nuestra puerta de ciencia ficción, no
necesitamos, en realidad esto, no lo necesitamos. Entonces un animador aquí dentro, va a, en primer lugar, vamos a borrar esto. Esa es la puerta abierta. Por lo que ahora tenemos esta transición a puerta abierta. Pero lo que realmente queremos hacer es que queremos crear una animación inactiva. Entonces crearemos CO2, la puerta de ciencia ficción. Y vamos a crear un nuevo clip. Y lo llamaremos “Idle”. Guarda eso. Y sólo va a hacer bien lo que realmente hace. Entonces solo quería mostrarte algo aquí dentro. Y siempre que tengamos la animación por defecto, en realidad
podemos cambiarla. Por lo que podemos hacer clic aquí. Podemos establecerlo como estados de capa por defecto. Entonces de esta manera, siempre que empecemos nuestro juego, será en el IDL. Y entonces vamos a seguir adelante y hacer una transición aquí a la puerta abierta. Y vamos a crear un parámetro para ello, y vamos a convertirlo en un booleano. Y va a ser la apertura. Lo llamaremos la apertura. Y si la apertura es cierta, entonces vamos a abrir. Pero cuando es falso, vamos a hacer clic derecho y hacer la transición de vuelta. Vamos a seguir adelante y cerrar la puerta, mantenerla de nuevo a ralentí. Entonces ahora vamos a arrastrar aquí el animador siguiente, animaciones, y vamos a golpear Play. Y yo sólo voy a ir a la escena y también a quién podemos hacer eso. Entonces cuando nos detuvimos, Vayamos a la escena. Y cuando golpeamos el abierto, podemos ver que la puerta se abre y luego provoca y luego se cierra. Entonces veamos cuál es el problema aquí dentro. Si vamos a nuestro proyecto, la EIDL está dando vueltas. Detengamos el looping del ídolo, y detengamos el looping aquí. Veamos cómo se ve eso. Y nuestro juego. Ve a, oops, sigo olvidando que no debemos presionar la tecla de salida. Entonces ahora en nuestras escenas y nuestro animador, si empezamos a abrir, la puerta se abre y luego se cierra de inmediato
porque se remonta por el tiempo de salida que tenemos. Entonces eliminemos el tiempo de salida aquí,
fijemos la duración de transición en 0. Y aquí también eliminemos el tiempo de salida, fijemos la duración de transición en 0,
guardemos todo eso, volvamos a tocar de nuevo, y vayamos a nuestras escenas. Y veamos cómo se ve eso. Entonces estamos inactivos cuando estamos abriendo, la puerta se abre y luego queremos cuando dejamos de abrir, no
agregamos la condición para volver atrás. No se preocupe por eso. Hazlo falso. Vuelve a tocar de nuevo. Y ahora esto debería estar funcionando. Entonces cuando estamos abriendo, la puerta, abre una queremos cerrarla. Bueno, parece muy raro. Por lo que se puede ver que cada vez que nos detenemos, se cierra de inmediato. No queremos eso. Queremos que regrese. Entonces todo lo que necesitas hacer es ir a esta transición, que transita desde la puerta, abrir el inactivo, y solo añadir un poco de tiempo aquí, un poco de tiempo de transición. Entonces hagámoslo, veamos, tal vez así, veamos cómo se ve eso. Entonces es alrededor de 0.2, 25, guarde eso, golpea Play. Y ahora en nuestra escena, Echemos un vistazo a eso. Entonces cuando abrimos la puerta, se abre, cuando la cerramos, se cierra. Muy bonito. De acuerdo, con eso hecho, lo
siguiente que tenemos que hacer es realmente tenemos que seguir adelante y crear un guión aquí. Entonces ve a nuestros guiones y haremos esto un poco más pequeño. Haremos clic derecho, crearemos un script C-sharp ha llegado a ser el portal. Puerta. Hit Enter. Espere eso. Y ahora sigamos adelante y sumamos esto a nuestra puerta de ciencia ficción y aquí, y vamos a empezar a codificar. Pero, ¿qué vamos a hacer en realidad? Bueno, vamos a emitir un reto. En realidad. Te voy a emitir un reto y es para armar la animación. Entonces usa al empresario Entrar para abrir la puerta cuando entramos a cierto colisionador de cajas y para cerrar la puerta, usa el On Trigger. Ahora nunca hemos usado esto antes, pero puedes seguir adelante y buscarlo. Es muy sencillo, No hay nada también. Por último, asegúrate de que compruebes que estamos colisionando con un jugador y no cualquier cosa porque
no queremos que nada esté colisionando con una apertura. Pero dicho eso, pausa el video ahora mismo y ve a hacer el reto. De acuerdo, bienvenido de nuevo. Entonces lo primero que necesitamos agregar aquí es que necesitamos crear un colisionador de cajas aquí. Entonces vamos a crear eso. Vamos a moverlo un poco. Entonces sigamos adelante y ajustémonos. Y lo que queremos hacer es realmente queremos que nuestro colisionador de cajas esté frente a nuestra puerta. Por lo que este será el colisionador de cajas de nuestras puertas. Entonces cuando nuestro jugador entra por las inmediaciones de la puerta, oops, ¿dónde está la puerta de ciencia ficción? Entonces sigamos cambiando esto. Por lo que cuando el jugador entre por las inmediaciones de nuestra puerta, la puerta se abrirá. Entonces sigamos adelante y hagamos esto un poco más grande así queremos que se sienta natural. Por lo que solo agrega todo el tamaño que puedas a tu colisionador de cajas. Por lo que siempre que el jugador entre a este lugar aquí, la puerta se va a abrir. De acuerdo, genial, vamos a guardar eso. Dejemos de editar. Volvamos a nuestra puerta. Y aquí dentro vamos a, por
supuesto, en primer lugar, seguir
adelante y crear una referencia a nuestro animador. Y se va a llamar mi animador. Y vamos a conseguir los componentes de mi animador serán iguales para obtener el componente que es el animador, y eso debería hacerlo. Lo siguiente que vamos a hacer es crear un empresario entrando aquí. Y vamos a comprobar si la etiqueta other .com como el jugador. Y si lo es, simplemente vamos a conseguir mi animador y
vamos a poner el booleano a lo que se llamaba. Vamos a seguir adelante y copiarlo. Por lo que animador copia el abrigo de apertura nuevo a nuestro código pegado aquí y se asegura de que sea verdad. Y luego vamos a crear un sobre salida de azúcar. Y vamos a hacer lo contrario. Todavía vamos a revisar por el jugador, pero la apertura se debe poner en falso. Guardemos eso, y sigamos adelante y probemos esto en Unity. Por lo que necesitamos asegurarnos de que el colisionador de
caja como gatillo hit play y nos quedaremos con el animador y aquí. Entonces, ¿dónde está nuestra puerta del portal? ¿ Dónde está? Ponemos 0, así que ahí está. Entonces caminamos hacia ella. Debería abrir y luego cuando salgamos a cierra, Muy bonito. Ahora se abre, se cierra, se abre y se cierra. Excelente. Ahora lo siguiente es por supuesto, que queremos estar transitando de nivel a nivel cuando alguna vez vamos realmente por la puerta y cuatro ahora la puerta, bueno, podemos pasar por ella, pero vamos a sumar tal vez un determinado objeto o un edificio detrás de él para que el jugador no pueda realmente, o quien esté jugando a tu juego en realidad no pueda ver a través de él. Entonces sigamos adelante y agregamos un objeto de juego en nuestra puerta. Entonces vamos a crear un objeto de juego vacío, y pongámoslo aquí arriba en la jerarquía. Y esta será nuestra salida del portal. Y le vamos a añadir un, también un colisionador de cajas. Y vamos a moverlo lo hará tan grande como la puerta en realidad que está editada un poco. Entonces lo haremos tan grande como la puerta porque esto es lo que el jugador estará colisionando con un ordenado para ir al siguiente nivel, sony, necesitamos asegurarnos de que cada vez que nuestro jugador realmente se mueva por esta puerta, le pegue al colisionador y no sólo por alguna razón, movimiento reventado. Entonces lo vamos a expandir. Entonces sí, Así como así,
tal vez hazlo un poco más grueso, pero asegúrate de que el jugador en realidad no pueda llegar a él desde el otro lado, o eso ni siquiera será un problema si lo escondes. Realmente agradable. Entonces eso lo hizo seguro. Asegúrate de que sea gatillo. Y luego vamos a seguir adelante y añadir un componente aquí, que va a ser el guión. Por lo que crearemos un nuevo script C-sharp el cual va a ser la salida del portal. Y bien, genial, Así que no se abrió por su cuenta por primera vez. Entonces agreguemos el portal de salida y aquí, el portal de salida y aquí. Y sigamos adelante y abramos esto y veamos qué vamos a hacer dentro. Entonces creo que el inicio y la actualización no serán necesarios. Vamos a estar usando al Gestor de Escena. Por lo que Unity motor bots alta dirección. Y aquí dentro vamos a crear el sobre azúcar Entrar. Y vamos a comprobar si el otro es jugador. Entonces compare eso con la capa. Todo esto ahora son cosas básicas que hacemos. Y entonces aquí lo que vamos a hacer es simplemente pasar al siguiente nivel. Entonces vamos a conseguir al encargado de escena. Oye, gerente de escena, ¿puedes por favor cargarnos una escena? Y qué escena quieres cargar mientras Scene Manager, ¿
puedes por favor decirnos cuál es la escena activa actual? Entonces consigue la escena activa y dinos el índice de construcción de la misma. Genial, Entonces ahora que sabemos eso, sigamos adelante y sumamos uno a eso. Y eso es básicamente todo ese proyecto de ley que hacer. Y vamos a guardar eso de nuevo. Y de nuevo, eso está en el índice construido. Entonces, no, no quise hacer eso. Y nuestro BuildSettings aquí, tenemos el nivel al nivel uno no está ahí. Entonces, sumémoslo. Vamos a subir un poco esto. Por lo que tenemos el menú principal. Queremos el suelo laico aquí dentro. Entonces, ¿qué fue incluso el nivel 2? Entonces el patio de recreo y después tenemos el nivel uno, y finalmente tenemos el nivel 2. Ahorremos todo eso y veamos qué fue incluso el nivel uno. Entonces hagamos doble clic en el nivel 1, 0. De acuerdo, entonces el nivel 1 eran todos estos edificios. El patio de recreo era nuestro parque de recreo básico. El menú principal fue el menú principal y el nivel dos es el nivel con 0. Todo oscuro aquí dentro. Genial. Entonces, vamos a guardar eso. Vamos a golpear Play. Y ahora cuando nos movemos a nuestra puerta, una puerta, así se abre y pasamos por ella. Y luego pasamos al siguiente nivel. Realmente genial. Entonces ahora que, ya está hecho, sigamos adelante y solo sumamos un par de cosas aquí. Entonces lo primero, no queremos que sea instantáneo, en realidad
queremos tener una co-rutina aquí. Entonces si te sientes a la altura del reto, adelante y crea tu propia co-rutina. Antes que yo lo haga. Entonces, crearemos un retraso de salida de nivel. Y aquí dentro vamos a ceder, devolver el nuevo peso por peso cuatro segundos. Y pongámosla a la una por ahora. Lo cambiaremos más adelante. Estos puntos y comas deben estar afuera. Y ahora en realidad vamos a seguir adelante y usar el gerente de escena para cargar. Y en cambio aquí dentro vamos a iniciar la grabación, que es la salida de nivel. Muy bonito. Lo que queremos hacer es que realmente queremos empezar a controlar la escala temporal de la discusión. ¿ Por qué quiero eso? Bueno, porque queremos, porque estamos retrasando el movimiento. Déjame mostrarte lo que pasa. Si le pegamos a Play. Si golpeamos Play, podemos ver que cuando nos movemos hacia la puerta, nos movemos hacia la puerta que se abre. Nos movemos a través de ella. Y luego toma 1 segundo, pero no es muy agradable. Ya sabes, siempre que realmente quieras empezar a transicionar, quieres retrasar todo. Entonces lo que vamos a hacer es aquí, en realidad
vamos a acceder al punto de tiempo, del punto de tiempo. Y vamos a establecer la escala temporal para que sea 0.1 f. Así que de esta manera todo se ralentiza. Y luego cuando realmente pasemos al siguiente nivel, vamos a volver a ajustar la escala de tiempo a una. Entonces aquí, vamos a ir por el tiempo, el
tiempo, por favor, el tiempo, la escala temporal. Y vamos a volver a ajustarlo a 1.5. Entonces, ¿ahora qué pasa cuando golpeamos el juego? Todo se ralentiza en el juego. Todo se ralentiza cuando hacemos la transición. Se puede ver que todo está en cámara lenta, pero ya lo has notado tal vez ahora. Es muy cool en realidad. Pero puede, habrás notado que
en realidad no estamos usando 1 segundo para pasar al siguiente nivel. Y eso es porque estamos esperando los segundos inmunidad. ¿ Cómo podemos cambiar eso? Bueno, podemos usar en lugar de esperar cuatro segundos, podemos usar esperar cuatro segundos en tiempo real. Guarda eso. Y ahora de nuevo, demostremos este hit Play. Y ahora cuando pasemos por la puerta ahora puedes quedártela si crees que es realmente agradable. Ahora cuando pasemos por la puerta, tomará 1 segundo para ir al siguiente nivel. Realmente genial. Pues dicho eso, espero que hayas disfrutado el video y te veré en el siguiente.
61. SECCIÓN EXTRA: máquina estatal: Bienvenido de nuevo, Mis desarrolladores de juegos favoritos. En este video de avanzado C-sharp y unidad, vamos a crear una Q. Sí, eso es todo. Entonces no, en realidad, cuando habíamos jugado, bueno, se puede ver que ahora podemos movernos. Tenemos este cubo, y ahora cuando golpeamos el parecido en cualquier lugar que queramos, podemos ver que el cubo se ha transpuesto ahí, pero ya no podemos movernos. Wow, qué truco genial. No, en realidad, esta es la primera parte de nosotros realmente asegurándonos de que estamos obteniendo el punto exacto y correcto. Entonces tal vez no lo puedas ver, pero en realidad está ahí. Si vamos y miramos, el cubo está en el punto donde golpeamos con un recast. Entonces, no perdamos más tiempo y empecemos con C-sharp avanzado y unidad. O K. Entonces lo que no oí, agregué un par de cuadras. Reduzco la distancia. Nuestros monstruos pueden buscar un punto determinado. Y lo que tengo también eso es que acabo de cambiar las armas aquí adentro para que empecemos con una pistola. Nada demasiado, sólo por el bien de tener más flexibilidad en probar cosas. De acuerdo, con eso hecho, lo
primero que haremos es seguir adelante y abrir nuestro script de capas. Entonces aquí, este es nuestro jugador y aquí es donde vamos a estar manejando todo. Entonces vamos a cerrar el agachado el stop agacharse, el salto el movimiento de la cámara, el movimiento del jugador, y el ligero contador. Para que podamos enfocarnos en nuestro gancho de garfio. Está bien, genial. Entonces lo primero que vamos a hacer es que
vamos a seguir adelante y crear un método aquí. Entonces vamos a seguir adelante y crear un método que se va a llamar el mango gancho tiro. Inicio. Y ya verás lo que tenemos vamos a hacer en este método va a ser, por
supuesto vacío y podemos hacerlo privado. No se preocupe por eso. Entonces abramos esto y empecemos a codificar. Y vamos a, por
supuesto estar llamándolo aquí mismo. Entonces lo vamos a llamar el mango. Los hot shots comienzan dentro de la actualización. Entonces lo primero que vamos a hacer, queremos empezar a ablandar nuestro gancho cada vez que introduzcamos el parecido. Entonces vamos a crear una condición if y comprobando la entrada. Agáchate y con un código clave del E. Vale, Genial. ¿Y qué vamos a hacer aquí dentro? Bueno, vamos a lanzar un rayo y en base a ese rayo, la posición donde golpea, vamos a tener un rayo golpeando ahí y luego haremos otras cosas. Entonces vamos a crear un het recast. Vamos a llamarlo la cabeza. Y aquí dentro vamos a comprobar si la física. El recast y el origen será mi posición de cabeza de cámara. Y la dirección será mi sombrero de cámara punto hacia adelante. Y simplemente vamos a entregar la información a la cabeza. Por lo que a la cabeza re-echado. Y si lo hacemos, vamos a hacer un par de cosas. Bueno, con lo que queremos empezar primero, vamos a crear un objeto pequeño, y ese objeto será teletransportado a la posición que teníamos en nuestro mundo. Entonces sigamos adelante y creemos aquí una referencia. Va a ser, solo agreguemos esto. Va a ser nuestra librería. Y aquí dentro vamos a crear una transformación pública. Y lo llamaremos hit point transport. Entonces este es el objeto que se teletransportará. Y lo que haremos aquí es crear el punto de cabeza o conseguir el puntero de cabeza, transformar esa posición. Y lo vamos a mover al punto de acceso. A grande, y vayamos a Unidad. Espere a que eso se compile. Y aquí dentro, Vamos a seguir adelante y crear un pequeño cubo. Entonces haga clic derecho aquí, un objeto 3D, un cubo pequeño. Vamos a restablecer la transformación. Ponlo aquí. Entonces este es nuestro pequeño cubo y sólo le daremos el, el material de bala. Sólo necesitamos algún tipo de material para sólo ver, vamos a guardar eso. A lo mejor podemos hacerla más pequeña EBIT. Entonces abrimos la transformación y podemos hacer este 0.5 por todos lados. Tan genial, guarde eso, golpea Play. Y ahora tenemos nuestra pústulo. Estos son nuestros maestros ahí. Y ahora cuando elegimos algún tipo de posición, digamos aquí. Cuando teníamos igual, sí, no
hemos asignado al jugador. Adelante y asignemos el cubo aquí mismo al jugador. Guarda eso de nuevo en nuestro juego. Y ahora simplemente pulsamos la tecla E y se puede ver que está ahí. Y luego lo podemos golpear ahí, ahí. Se puede ver ahí y allá y allá y en todas partes. Dondequiera que golpeemos, podemos mover nuestra pequeña cuadra. Muy bonito ahora que eso está funcionando, sigamos adelante y creemos un par de estados para nuestro jugador. Ahora, ¿qué son los estados? Déjame mostrarte en primer lugar, y luego seguiremos. Por lo que llamaremos a esto estados de capa D. Y aquí dentro vamos a crear una enum privada. Y se va a llamar estado. Este es un numerador, lo
que significa que tiene múltiples, digamos, caras o sitios. Entonces vamos a crear un estado normal y aquí, y vamos a crear estados exagerados más adelante. Y también vamos a crear una variable aquí dentro que va a ser un estado privado del estado que escribimos este estado. Y ahora podemos escribir este estado aquí. Y se va a llamar estado, pero con una S no capitalizada o minúscula aquí mismo. Entonces lo que tenemos aquí es que podemos agregar diferentes tipos de estados. En base a estos estados, tendremos comportamientos diferentes de nuestro jugador. Entonces, por ejemplo, una actualización. Vamos a crear una declaración de cambio. Y la sentencia switch tendrá el estado como una caja de interruptor. Entonces aquí vamos a revisar indica que nuestro estado es normal. Entonces tendremos todo nuestro comportamiento normal. Entonces cortamos esto, lo ponemos aquí, y por supuesto podremos empezar a manejar nuestro tiro de gancho. Y aparte de eso indica el default, sólo
vamos a romper 0 y nos olvidamos de sumar el break aquí. Y vamos a sumar un descanso aquí. Entonces lo que pasa aquí es si estamos en un estado normal. Entonces si estamos en un estado normal o el jugador se puede mover, la cámara puede moverse, saltar, podemos
agacharnos, podemos manejar nuestro tiro de gancho y podemos hacer todo lo demás. Pero cuando estamos en un estado diferente, queremos tener diferentes maniobras y comportamientos de nuestro jugador lo verá muy pronto. Entonces aquí vamos. Por supuesto, cada vez que iniciemos
nuestro juego, nuestro estado será igual al punto estatal normal. Por lo que empezamos en un estado muy normal. Ahora siempre que realmente empecemos a manejar nuestro tiro de gancho o cuando disparamos algo, y entonces queremos pasar a otro estado que será el jugador volador de tiro gancho o haciendo, o la librería empezará a volar a nuestro jugador. Y esto en realidad será parte de tu reto. Tu reto es crear el interruptor. Por lo que al gancho tiro volador estado y a nuestra enum. Entonces vas a crear un, otro estado. Y la forma en que creaste, como aquí, solo agrega un poco de coma y luego crea el segundo estado. Tendrás que llamarlo el jugador de flanco de tiro gancho, o puedes llamarlo de cualquier
manera, siempre y cuando represente nuestro juego de volar por el tiro de gancho. Y luego necesitarás cambiar de un estado normal, el jugador volador de tiro de gancho cuando llegamos a un punto determinado después del igual. Así que pausa el video ahora mismo y ve a hacer un segundo estado. Hey, bienvenido de nuevo. Entonces aquí vamos a añadir una coma y vamos a llamar a esto el jugador volador de tiro gancho. Eso lo ahorraremos. Ahora aquí abajo. Siempre que golpeemos, vamos a transferir o transponer la posición de nuestros hitpoints transformados a la posición de cabeza. Y también vamos a cambiar el estado que tenemos a un estado del jugador volador de tiro gancho. Entonces ahora este estado, la última vez que dijimos será como el jugador de flanco de tiro de gancho. Todo esto aquí dentro no va a funcionar. Y vamos a probar esto en nuestro juego así que golpeamos el juego. Podemos movernos, podemos saltar, podemos mirar con nuestra cámara. Pero cuando teníamos la gusta y las cajas ahí, se
puede ver que ya no se puede mover con el ratón. Ya no puedes moverte con las teclas WASD y todo está atascado. Y eso es porque ya no estamos en el estado normal. Estamos en el estado de jugador volador de tiro gancho. Entonces finalmente lo que queremos hacer siempre que estemos en el estado de jugador volador de librería, vamos a crear en realidad un mango de vacío privado, tiro de gancho, movimiento. Y aquí dentro vamos a crear otro estado, que es el estado cuando nuestro jugador volador de tiro gancho. Y aquí simplemente vamos a llamar al método que se maneja tiro de gancho, movimiento, y vamos a romper. Y en el siguiente video, ops todo lo que necesitamos para agregar este. Y en el siguiente video vamos
a seguir adelante e implementar el movimiento de tiro de gancho de mango, donde vamos a empezar a mover a nuestro jugador hacia el punto donde tenemos nuestro pequeño cubo. Con eso dicho, espero que lo disfruten. Este es el primer video de nuestra implementación de gancho shot o grappling hook, el avanzado código C-Sharp, si todavía estás confundido acerca de los estados, ve y trata de mirar el código una vez más. Vea cómo creamos una enum, vea cómo ponemos en el estado como normal al principio. Entonces hemos basado en nuestro estado, podemos hacer ciertas cosas y en base a otros estados fin de semana a otras ciertas cosas. Con eso dicho, espero que lo disfruten y nos vemos en el próximo.
62. Jugador de vuelo con tomas de gancho: Bienvenido de nuevo, Mis desarrolladores de juegos favoritos. En este video, en realidad vamos a estar moviendo a nuestro jugador dos palabras, la posición de tiro gancho. Entonces cuando golpeemos el juego, verás que en realidad podemos, cuando lleguemos a un punto determinado, podemos movernos hacia ese punto y luego caemos cuando lleguemos a nuestro destino. Pero no sólo eso, también agregamos la capacidad que nuestro jugador detenga su movimiento mientras está en medio del aire. Entonces ahora cuando su columna vertebral, podemos golpear la tecla E y luego nos detenemos. Entonces ahora tenemos este tipo de bonito movimiento y el aire. Entonces, no perdamos más tiempo. ¿Y dónde está eso? Bueno, ¿qué está pasando aquí? Entonces, no perdamos más tiempo y empecemos. De acuerdo, entonces ahora queremos empezar a mover capa hacia fuera hacia la posición de nuestro pequeño cubo, lo que significa hacia la posición donde nuestro gancho, ganchos. Adelante y hagamos eso. En primer lugar, abramos nuestro guión aquí. Entonces este es el jugador. Subiremos aquí y vamos a crear dos variables. Uno para comprobar la posición de la posición de cierre de corchete. Entonces es un factor tres y se le va a llamar la posición de tiro de gancho. Y otra variable de valor para hacer un seguimiento de la velocidad de disparo del gancho. Entonces vamos a crear un flotador público, velocidad de disparo gancho. Y pongámoslo a las cinco F ahora mismo. Lo siguiente que vamos a hacer es que vamos a fijar la posición de choque de gancho aquí. Entonces aquí abajo, siempre que realmente nos
enganchamos o encontremos la posición y la transición a otro estado, vamos a tomar esta posición de librería y va a ser igual al punto de hit. Bastante simple, nada demasiado complicado. Lo siguiente que vamos a hacer es aquí dentro, vamos a empezar a calcular la dirección en la que deben estar moviéndose
nuestros jugadores y ordenados a eso va a crear un vector tres, vamos a llamar a esto la dirección de tiro gancho. Y va a ser igual a la posición de tiro de gancho menos la posición de punto de transformación. Por lo que la posición de nuestro jugador se normalizó. Entonces lo normalizado, bueno, hacen nuestro vector de una magnitud de uno. Entonces, vamos a guardar eso. Entonces esta será la dirección. Entonces vamos a ponerlo aquí, justo encima de él dirección de nuestro movimiento. Y lo siguiente que vamos a hacer es que realmente vamos a empezar a mover a nuestros jugadores. Entonces ya tenemos mi controlador, y debido a que tenemos un controlador de caracteres, eso significa que vamos a usar el movimiento y vamos a ponerlo en la dirección. Lo vamos a multiplicar por la velocidad de disparo del gancho. Y por supuesto vamos a hacer que sea velocidad de cuadro y dependiente. Entonces lo vamos a multiplicar por el tiempo.Deltatime. Entonces, vamos a guardar eso. Volvamos atrás y unidad, y veamos si eso funciona. Entonces guardamos todo eso. Teníamos jugada y ahora deberíamos poder empezar a movernos, como puedes ver. Pero si tienes algún movimiento extraño, déjame salir aquí y mirar la escena. Se puede ver que estamos un poco rebotando. Si sí tienes este problema, ve al reproductor, ve al animador y quita el movimiento de raíz Aplicar,
guárdalo en el juego. Y esto debería empezar a funcionar completamente bien. Por lo que golpeamos la tecla E y se puede ver arriba. Se puede ver dónde está nuestro jugador? Está bien, tan bien. Nos movemos a cierta velocidad a la posición justo aquí en la parte superior. Pero el problema es que en el juego no podemos movernos. Entonces sigamos adelante y sumamos el movimiento de la cámara. Entonces aquí en esta declaración de cambio, Vamos a seguir adelante y copiar el movimiento de la cámara y pegarlo aquí debajo del jugador volador de tiro gancho. Y ahora verás de primera mano cómo operan realmente los estados. Entonces ahora tenemos el movimiento de cámara. Entonces cuando golpeamos play, siempre que realmente enganchamos el tiro de gancho y aquí así aún
podemos movernos , podemos saltar, podemos hacer cualquier cosa, pero aún podemos mover la cabeza. Ahora lo que queremos hacer, bueno, en realidad todavía podemos disparar. Y eso es porque es parte del sistema de armas. De acuerdo, Entonces lo siguiente que queremos hacer es que realmente queremos tener la capacidad de controlar nuestra velocidad. Ahora actualmente es muy lento. Podemos aumentarlo, pero lo que queremos es que nuestra velocidad sea controlada por la cantidad de distancia entre nosotros y la posición de tienda de halcones. Entonces sigamos adelante y hagamos eso. Y aquí vamos a crear un flotador. Lo vamos a llamar el modificador de velocidad de disparo gancho. Y por supuesto va a ser igual al vector 3,
la distancia entre nuestra posición de punto transformado. Por lo que el jugador y la posición de tiro de gancho. Entonces ahora este será un modificador de velocidad y lo vamos a multiplicar aquí. Entonces lo haremos, estaremos mientras que lo sea, así que vamos a copiar esta velocidad de tiro gancho añadida aquí, guardemos todo eso. Por lo que ahora con base en la distancia que, eso se está calculando cada vez, nuestra velocidad o bien aumentará cuando estemos muy lejos y luego disminuirá a medida que nos acerquemos. Entonces sigamos adelante y en realidad aquí en el inspector. Entonces ahora cuando golpeamos el juego y deberíamos ver que cuando nosotros si lo sé, no
estoy seguro si te has dado cuenta, pero cada vez que nosotros, Vamos a intentarlo de nuevo. Entonces disminuyamos los dos. Vamos a tocar juego. Entonces ahora deberías ver que cuando estamos volando al principio, es muy rápido y luego se ralentiza sólo un poquito. Entonces ahí tienes. Ya te has dado cuenta de cómo esto se ralentiza. Genial. Ahora lo siguiente que queremos es siempre que lleguemos realmente a nuestro destino, queremos, bueno, volver al estado normal y tener gravedad y todas esas cosas bonitas. Entonces aquí abajo, también vamos a revisar. Si nuestro vector de 3 puntos distancia entre la posición de transformación y la posición de tiro de gancho es, oops, es menos de dos f Así que básicamente estamos casi ahí. Vamos a dar vuelta a nuestro estado a
un estado normal de Ops es igual a estado enseñado una normal. De esa forma volveremos a tener gravedad y podremos movernos y hacer todas nuestras cosas. Entonces guarda eso de nuevo en nuestro juego. Y le pegamos a Play. Y ahora podemos enganchar el tiro. Cuando llegamos a la posición, empezamos a caer de nuevo. Muy bonito. Entonces intentemos eso otra vez. Volamos, llegamos allí, y luego caemos. Nosotros intentamos eso. Llegamos ahí. Y luego caemos. Entonces la caída es un poco demasiado rápida y eso es por algo que no está bien con nuestro juego y lo vamos a arreglar más adelante. Pero por ahora, quiero hacer algo muy importante. Y es que, en realidad quiero abrazar la velocidad de nuestro oxígeno. Por lo que a veces este problema puede estar dentro, es posible que te hayas encontrado con este problema tú mismo. No es muy obvio y aquí, pero a veces la velocidad es demasiado lenta cada vez que llegamos a nuestra posición. Entonces queremos abrazar ¿qué es el agrupamiento? Bueno, déjame mostrarte. Aquí dentro. Crearemos un flotador. Y un flotador va a ser la velocidad de disparo de gancho o la velocidad mínima de disparo de gancho, y va a ser igual a 12. Por lo que esta será la velocidad mínima. Ahora esto, creo que está exagerado y entonces el máximo será igual a 50 f. Y lo que vamos a hacer aquí es que vamos a conseguir que nuestro modificador de velocidad de tiro gancho cortará todo esto. Lo pondremos aquí, y solo eliminemos estas dos líneas. Y en lugar de simplemente ajustarlo al vector 3, realidad
vamos a seguir adelante y conseguir la abrazadera de punto F matemática. Y esta almeja da el valor entre el mínimo dado y el máximo. Entonces lo que esto hace es incluso si nuestra velocidad se pone por debajo de eso, digamos 12, lo que creo que es exagerado, entonces se quedará en 12. Entonces digamos que estamos volando a una velocidad de 0.2, que es muy lento, entonces lo que esto va a hacer es que
en realidad lo pondrá a 12 F. Y entonces si estamos volando demasiado rápido, si lo estamos, si ponemos un tiro de gancho al final de la y la distancia está a velocidad máxima no excederá. Por lo que esto será muy útil más adelante si por alguna razón
tenemos alguna velocidad exagerada o velocidad subestimada. Entonces vamos a quedárnoslo. Por lo que el primer valor será el valor real que queremos. Adelante y sumamos un espacio aquí porque no queremos que las líneas sean demasiado largas. Agregaremos un valor mínimo, que es nuestra velocidad mínima de disparo de gancho. Y vamos a sumar el valor máximo, que es nuestro gancho tiro, velocidad máxima. Genial. Vamos a cerrar esto, tenía el punto y coma, guardar todo eso. Y ahora deberíamos ver, si bien esto podría no ser obvio porque no lo somos. A velocidades muy altas. Vamos a engancharnos. Está bien, genial. Entonces ahora nuestra velocidad es mucho mejor, pero se puede ver que hay algo mal. Por lo que se puede ver aquí la velocidad en la y, la gravedad sigue aumentando. Y a medida que volamos, se puede ver que la gravedad aumenta y estamos cayendo cada vez más rápido al suelo, lo cual es muy molesto. es natural y no sentimos como si realmente vamos a volver a un estado normal, como si nos estuvieran machacando. Entonces lo que vamos a hacer es crear un método aquí. Y va a haber un vacío privado. Restablecer gravedad. Y aquí dentro simplemente vamos a establecer el punto de velocidad y igual a 0 F.
Y donde lo vamos a llamar aquí después de que lleguemos a nuestra distancia o vamos a restablecer nuestra gravedad, Vamos a guardar eso de nuevo en nuestro juego. Y deberíamos ver muchas más mejoras. Entonces cuando golpeemos el juego, veremos que cuando esperábamos el disparo, vamos a caer mucho y más amables. Nuevamente caemos mucho más bonitos. Y se puede ver que la y no sólo está aumentando. Cuando golpeamos la tecla E, estamos ahí, caemos y luego se restablece. Nos caemos lentamente cada vez que nos movemos Por nuestro mundo con nuestro tiro de gancho. Bastante agradable. Entonces ahora sigamos. Se puede ver que cuando esperábamos disparar, no
podemos usarlo más hasta que realmente lleguemos a nuestro destino y a nuestra espalda en nuestro estado normal. Entonces queremos cambiar eso. Queremos ser para agregar la capacidad a nuestro jugador para realmente detener el tiro de gancho mitad de camino y luego caerse si vuelve a presionar la llave. Y eso va a ser parte de tu reto. Tu reto es detener el movimiento de tiro de gancho. Por lo tanto, deja de volar a nuestro jugador hacia el punto de choque gancho en el aire. Y luego te daré un par de pistas. Comprueba si presionamos igual mientras volamos. Si sí volvemos a poner el estado a la normalidad, y por supuesto necesitarás restablecer la gravedad. Entonces con eso dicho, pausa el video ahora mismo y ve a hacer el reto. De acuerdo, bienvenido de nuevo. Ahora, podría haber usado esto aquí mismo, así que estarías revisando la E mientras que en medio de nuestro movimiento. Pero voy a hacer sólo un pequeño truco astuto aquí. Y en realidad vamos a crear un método para manejar esto. Por lo que crearemos un privado y esto tendrá NO, no
será un vacío, en
realidad tendrá un tipo de devolución. Entonces esta es una gran manera de presentarte a un, a un método que tiene un tipo de retorno porque en realidad nunca hemos usado uno. De acuerdo, entonces vamos a llamar a esto la entrada de prueba tiro de gancho abajo. Y aquí dentro simplemente vamos a regresar. Entonces eso significa que realmente devolvemos un valor. Y debido a que es de tipo booleano, vamos a estar regresando un booleano. ¿ Y qué es ese booleano? Bueno, va a ser la entrada de la tecla E. Entonces vamos a copiar eso. Vuelve aquí, pégalo aquí, cierra el punto y coma, y guarda eso. Por lo que ahora aquí, en lugar de comprobar el 0x0, en realidad
podemos seguir adelante y anotar la prueba, tiro de gancho. Guarde eso, y esto volverá cierto. Entonces debido a que esto tiene un tipo de retorno de booleano, volverá
cierto cuando le peguemos al igual. Y también aquí dentro vamos a probar mientras estamos volando, si el gancho de prueba derribó. Si es cierto, eso significa que volamos a golpear la tecla E de nuevo mientras volamos. Vamos a volver a normalizar el estado y vamos a restablecer la gravedad. Entonces vamos a probar esto. Y si no creaste a la madre, No te preocupes por ello. Yo sólo quería agregar esto como un it era un lugar perfecto para agregar esta lección. Entonces tuvimos igual, volamos,
vale, así que golpeamos el ecualizador, golpeamos la tecla E otra vez y dejamos de volar. Golpeamos la llave E que teníamos, de nuevo, empezamos a volar, ¿verdad? Por lo que ahora podemos detenernos en medio del aire mientras estamos volando. Entonces este es el final de nuestro video y eso es lo que queríamos hacer en este. Y el siguiente, en realidad vamos a sumar la capacidad de saltar con nuestro jugador. Entonces mientras volamos, Digamos que llegamos aquí, presionamos el botón del espacio y volamos de esto nos permitirá llegar a lugares más altos, como por ejemplo, este edificio de aquí mismo, o este pequeño edificio de aquí también. Entonces con eso dicho, espero que lo disfruten y nos vemos en el siguiente.
63. Saltos en el aire medio: Bienvenido de nuevo, Mis desarrolladores de juegos favoritos. En este video, en realidad hemos agregado la capacidad de saltar mientras enganchamos. Entonces ahora cuando nos pegamos al igual, volamos y cuando teníamos el espacio, realidad
saltamos y nos ponemos encima de las cosas. Por lo que esto requerirá mucho de retoques, mucha concentración por parte de ti, sobre todo porque el código es un poco complicado, pero para eso te inscribes. Por lo que ahora llegamos a esta posición y empezamos a disparar y reiniciamos el rodaje. Y podemos disparar nuestro cohete de forma segura desde esta posición y matar a nuestros enemigos hacia abajo. Son realmente amables. Entonces, no perdamos más tiempo y empecemos. Ah, está bien. Entonces empecemos con el salto en el aire. Entonces vamos a entrar en nuestro código y aquí y nuestro jugador. Y vamos a crear aquí un método que pondrá a prueba para el salto. Entonces crearemos un balón privado que sea entrada. Saltar. Y vamos a devolver Input, conseguir keydown y el código clave, el espacio. Genial. Entonces ahora mientras estamos todos, mientras estamos volando en medio del aire, cuando golpeamos la tecla Espacio, queremos saltar arriba. Por eso. Queremos preservar nuestro impulso. Entonces vamos a crear, y aquí un método, quiero decir, lo siento, una variable que va a ser el impulso del personaje volador. Por lo que privada vector 3, impulso personaje volador. Y lo vamos a poner en la capa o movimientos. Entonces bajemos en el movimiento del jugador y ábrelo si no lo has encerrado. Y aquí justo antes de añadir el movimiento al controlador del personaje, vamos a aumentar el movimiento del jugador por el momento volador tiempos tiempo punto delta. Está bien, genial. Guardemos eso. Ahora lo siguiente que queremos hacer es realmente queremos agregar amortiguación a nuestro impulso. ¿ Y qué es amortiguar? Déjame mostrarte una hora a mano la pintura. Entonces digamos por ejemplo, estamos volando y luego golpeamos la barra espaciadora por aquí. Por lo que seguiremos volando con cierto impulso. Lo que queremos hacer es querer siempre que volemos. Por ejemplo, digamos que presionamos la barra espaciadora aquí mismo. Seguimos volando. Pero lo que queremos hacer es que realmente queremos empezar a amortiguar. Por lo que queremos empezar a disminuir la velocidad hasta que finalmente nos detengamos aquí mismo. Entonces para hacer eso, vamos a hacer un par de cosas ahora estas líneas son un poco complicadas, pero no te preocupes, pasaremos por ellas. Entonces, en primer lugar, vamos a comprobar si realmente tenemos algún tipo de impulso volador. Entonces vamos a copiar esto, ponerlo aquí, y si la magnitud de esto es mayor a 0, por lo que eso significa que ya estamos, ya tenemos algún impulso volador. Vamos a iniciar la amortiguación. Lo primero que vamos a hacer es crear alguna cantidad de reducción. Entonces vamos a conseguir la cantidad de reducción de flotación y va a ser igual a uno. Podríamos tener que cambiar esto más adelante. Tendremos que modificarlo. A lo mejor necesitarás ajustarlo en función tu juego y tu velocidad de fotogramas y todo lo demás. Pero sigamos. Lo siguiente que vamos a hacer es que en realidad empezaremos a reducir nuestro impulso de carácter de mosca, volador. Por lo que va a ser igual a menos igual el impulso del personaje de vuelo real veces la cantidad de reducción veces tiempo punto delta tiempo. ¿ De acuerdo? Por lo que esto seguirá produciendo nuestro impulso hasta que finalmente se convierta en 0. Y luego vamos a comprobar si nuestro plazo de autos voladores magnitud de punto de momento llega a cierto punto donde es menos de 1 f, entonces vamos a seguir adelante y volver a ponerlo en el vector 3, 0. Y esto significa que se convertirá en 0 en la x, en la y y en la z Así que obtenemos la cantidad de reducción. Empezamos a reducirlo. Después comprobamos si está bajo cierto umbral,
entonces lo vamos a volver a poner de inmediato a 0 porque usar, usar esto aquí mismo nunca lo llevará a 0 real. Y por último, vamos a comprobar y nuestro movimiento de tiro de gancho, manejar el movimiento hotshot. Y aquí vamos a comprobar si realmente, vamos a probar el salto de entrada. Y si sí tenemos un salto de punto final, vamos a crear un flotador con un poco de impulso extra. Por lo que esto nos ayudará a empujar un bot al frente. Y entonces realmente lo vamos a agregar a nuestro fino impulso de personaje, o realmente vamos a crear nuestro impulso de personaje volador. Por lo que el impulso del personaje del volante es igual a la dirección de la estantería porque necesitamos agregarlo en la dirección. Se va a multiplicar por la velocidad de disparo del gancho. Por lo que la velocidad de disparo del gancho. Y se va a multiplicar por el impulso extra que obtenemos. Y luego también vamos a hacerlo, este es un método que necesitamos para agregar estos dos corchetes. Y también vamos a devolver el estado a, bueno, el estado normal porque queremos sumar la gravedad y todo eso. Entonces esto realmente nos detiene. Y también vamos a restablecer la gravedad. Guardemos eso y vamos a probar esto ahora. Va a necesitar, por supuesto, un poco de ajuste. Entonces ahora cuando golpeamos el espacio, cuando golpeamos el juego, podemos ver que cuando nos enganchamos a un lugar, golpeamos el espacio. Y se puede ver que todavía tenemos impulso en marcha. Ahora el único problema aquí es que cuando nos
detuvimos, tenemos mucho impulso y no está produciendo lo suficiente. Y el otro problema es que cada vez que en realidad llegamos a este punto, nos detenemos y en realidad no estamos volando hacia arriba. Simplemente tenemos impulso hacia adelante y queremos cambiar eso. Entonces la forma en que cambiamos eso es que en realidad vamos a sumar algo de impulso al alza. Y para sumar un poco de impulso al alza, te
voy a emitir un reto. Entonces tu reto es sumar velocidad al alza. Así configuró la velocidad de salto que tienes. Cuando presionamos el espacio ahí dentro, queremos que nuestro jugador suba un poco. Entonces les daré un par de eventos. Usa la reposición vectorial. Entonces con eso dicho, pausa el video ahora mismo y ve al reto. De acuerdo, bienvenido de nuevo. Entonces aquí vamos a sumar otro flotador, que va a ser la velocidad de salto para arriba y va a ser igual a 40. Por lo que quizá necesitemos ajustar esto más adelante. Y aquí dentro vamos a conseguir nuestro impulso de personaje de línea, esperanza mentiroso impulso de personaje. Y lo vamos a sumar con el vector 3 puntos arriba veces el salto acelerar. Entonces guarde eso de nuevo en nuestra ganancia. Cuando golpeamos el juego. Ahora cada vez que
disparamos en algún lugar, golpeamos la barra espacial y no, no tenemos suficiente velocidad. Entonces otra vez, saltamos. Es como que funciona, pero necesita mucho ajuste. Entonces sigamos adelante y lo retoques. Oye, así que ajusté un par de cosas. Entonces déjame decirte lo que debes hacer y lo que debes esperar de cada parámetro. En primer lugar, entra en el modo de juego y asegúrate de tener activada la sincronización v. Esto cambiará muchas cosas. Y lo que esto hace es que por lo general me deja solo mostrarte cuando golpeamos Play, el FPS debería estar estable alrededor de los 60. Ahora esta no es la mejor solución para tener esto. Estamos usando tiempo.Deltatime, pero a veces los marcos solo van arriba y abajo. Esto quizá estabilice un poco las cosas. He cambiado el modificador de gravedad por ser cinco. He cambiado el John Pi a 20. Mantuve el anzuelo tiro a las dos y déjame mostrarte lo que hice codificar. Entonces aquí, en primer lugar,
la cantidad de reducción es para y lo que esto hace, acelerará el proceso de reducción de tu velocidad. Entonces, por ejemplo, si es punto cero 85 para, déjame solo mostrarte y le pegamos a Play. Entonces ahora cuando enganchamos nuestro tiro, saltamos. Pero el problema es que lleva mucho tiempo hasta que reduce tu velocidad. Entonces nosotros, en realidad nos volaron fuera. Entonces si saltamos aquí, saltamos espacio y se puede ver que lleva mucho tiempo y todavía nos estamos moviendo. Entonces poner esto es mucho mejor. Pero el inconveniente de esto es que en realidad nos detenemos muy bien. Es un poco interrumpiendo como si estuviéramos cortando las cosas. La otra cosa que cambié aquí es ésta. Entonces es el umbral en el que ponemos, paramos el impulso del personaje volador, el impulso. Y lo puse a las cinco. Acabo de probarlo y así son cinco y esto es lo que la soldadura cuando tú, cuando el impulso de tu vuelo llegue, por ejemplo, a cinco, se detendrá. Y se puede ajustar esto alrededor también y ver cómo afecta eso. Entonces este es el, cuando nuestro movimiento se corta, no quieres que lo haga, no
queremos tener un muy grande porque de esa manera se quiere sentir el salto y así sucesivamente. Y lo siguiente aquí abajo, cambié esto a un plus igual. Entonces no estoy seguro de por qué esto cambia mucho las cosas, pero sí, ayuda a crear un salto más suave hacia adelante. Y también hice el impulso extra, o en realidad lo mantuve a los 14 e hice la velocidad de salto 70. Entonces esto es lo que tengo al final. Y todo esto se basa en tu preferencia. Entonces quiero que salgas por ahí y pruebes todo esto. Entonces ahora cuando jugamos, Vamos a ver. Por lo que es difícil llegar a estos edificios porque son muy estrechos. Pero éste, por ejemplo, si lo golpeamos en cierto punto y esto es a lo que me refiero con dependiendo de cómo se quiera tener. Entonces tal vez quieras tener a tu jugador, si tiene el tiro de gancho aquí y saltar espacio, puede llegar a la cima. Para mí, por ejemplo, quiero tener desembolso o tal vez debería en, alrededor de este punto. Y luego cuando salta, se
pone aquí y en realidad es realmente estable y muy agradable. Por lo que ahora podemos llegar a lugares altos y empezar a disparar a nuestros, nuestros enemigos. Entonces vamos a probar esto. Prueba esta estrecha cresta. Entonces creo que me gusta mucho esta librería. Es un muy bonito. Se puede ajustar esto alrededor. Puedes agregar tu propia velocidad, tu propia velocidad al jugador. Por lo que depende de cómo quieras enganchar tiro para sentir. Te di los parámetros que necesitas ser. Así que adelante y retírelos con eso dicho, espero que hayan disfrutado el video. Y el siguiente, vamos a seguir adelante y empezar realmente a lanzar algún tipo de tiros de gancho. Entonces por ahora sólo tenemos este cubo que se apega en algún lugar y nuestra obra vuela ahí. No, queremos tener un tiro de
gancho real realista que toque la posición en algún lugar del aire. Y luego cuando toca, empezamos a movernos con nuestro jugador. Pero hasta entonces, te veré en el siguiente.
64. Toma de Hookshot: Bienvenido de nuevo, Mis desarrolladores de juegos favoritos en este video, lugar de simplemente poner una pequeña plaza en algún lugar de nuestro mapa. Y aquí en realidad hemos agregado este pequeño cilindro que nos sigue y se ve un poco dudoso. Entonces, ¿ahora qué pasa cuando teníamos como en alguna parte? Podemos ver que va ahí y cuando llega, saltamos y estamos en nuestro hermoso avión. Entonces ahora en realidad hemos creado un gancho. Entonces no sólo tenemos un garfio, también
tenemos un gancho. No perdamos más tiempo y empecemos. Oh, está bien, empecemos. Lo primero que tenemos que hacer como nosotros, mientras que nosotros, lo que realmente queremos hacer aquí es que queremos que nuestro cree una manera de realmente seguir adelante y mandar un gancho a la Plaza Roja. Y cuando llegue ahí, entonces nuestro jugador empezará a volar. Entonces vamos a entrar en nuestro código y vamos
arriba y vamos a cerrar el movimiento de Mientras que si el jugador, ya no lo
vamos a necesitar. Si lo hacemos, lo abriremos. Eso es muy sencillo. Aquí dentro. El primero que vamos a crear es una transformación para el gancho de garfio. Entonces una forma trans pública y el gancho de garfio. Guarda eso. Ahora lo siguiente que vamos a hacer es ir adelante y crear,
y aquí un cilindro que representará el gancho de garfio. Entonces haremos clic con el botón derecho. Y aquí vamos a crear un objeto 3D el cual va a ser un cilindro. Vamos a seguir adelante y hacerlo 0.2 en el eje x y 0.2 en el eje z. Nosotros vamos a, oops, vamos, bueno, vamos, vamos. 0.2. Lo vamos a girar alrededor del eje x así como así. Por lo que alrededor de 90 grados aviso no es necesario, pero lo haré. Y también vamos a seguir adelante y hacerlo sólo un poco más pequeño en el eje y. Entonces vamos a crear un otro objeto de juego aquí dentro que llamaremos al gancho de garfio. Por lo que lo reciente la posición o saltarla. Entonces y vamos a chil el cilindro al gancho de garfio. Entonces ahora cuando sigamos adelante y cambiemos el final, también
vamos a restablecer la posición aquí dentro, por lo que 000, 000. Y ahora lo que queremos hacer es realmente queremos poder manipular aquí el zed para tirar nuestro enganche. Para hacer eso, no queremos tener todo listo para ir en ambos sentidos. Nosotros sólo queremos ir en un sentido. Entonces para hacer eso, vamos a elegir nuestro cilindro
aquí dentro y lo vamos a mover a mitad de camino. Entonces eso significa alrededor, Vamos a ver, Tal vez sea 0.2. No estoy seguro. Entonces miramos el gancho de garfio, comprobamos el punto de pivote y queremos que éste esté en el otro extremo. Entonces nosotros, creo que necesitamos moverlo 0.4. Y ahora el gancho de garfio, sí, está aquí. Entonces ahora ¿qué pasa cuando aumentamos o disminuimos el desierto? Se puede ver que aumenta desde el punto de pivote. Entonces recuerda. Asegúrate de que está en el punto de pivote y te mueves, mueve este cilindro hasta el borde. Está bien, genial. Con eso hecho, tenemos la capacidad de escalar nuestras cosas y sigamos adelante y movamos el gancho de garfio a nuestro jugador aquí. Y sigamos adelante y hagámoslo con el color liso o podemos hacerla más oscura. Depende de ti. Simplemente me lo quedaré con el erudito. De acuerdo, Así que pongámoslo aquí. Y es un poco dudoso, pero no se preocupe por eso. Adelante y añadámoslo a nuestro jugador aquí. Entonces vamos a darle al jugador la referencia del gancho de garfio. Y eso lo ahorraremos. Y sigamos adelante y mostrémosle el gancho de garfio al jugador. Por lo que ahora el gancho de garfio se moverá con nuestro jugador. Genial. Ahora sigamos adelante y creamos aquí un método que en realidad
lanzará nuestro gancho y cambiará su tamaño. Entonces lo vamos a hacer aquí dentro. Por encima del movimiento de tiro gancho de mango. Vamos a crear un gancho de tiro vacío privado. Y aquí lo primero que vamos a hacer es conseguir el gancho de garfio y vamos a ver la posición a la que realmente queremos disparar al gancho. Entonces es la posición de choque del gancho. Entonces queremos seguir adelante y crear un flotador. Y esta será la velocidad a la que se lanza nuestro gancho. Entonces va a ser a través del gancho, tiro, a través de la velocidad. Y sólo hagámoslo por ahora. Apague, tal vez lo cambiemos más adelante. Entonces lo que queremos hacer es que queremos seguir adelante y conseguir el tamaño de nuestra librería. Por lo que aún no tenemos un tamaño de tiro de gancho. Vamos a crear uno. Por lo que gancho tamaño tiro. Y antes de que creáramos ahí arriba, Sigamos adelante y digamos qué es. Por lo que va a depender del disparo de gancho a través, quien disparó velocidad de lanzamiento, mientras que engancha velocidad de tiro. Y lo vamos a multiplicar por tiempo.Deltatime. Y luego vamos a tomar nuestro gancho de garfio y vamos a acceder a la escala local. Y vamos a crear un nuevo vector 3 porque la escala es un factor tres y va a ser uno en la x, uno en la yY
Y porque dijimos vamos a ser cada vez más zed, entonces va a ser el tiro de gancho. Déjame copiar esto y pegarlo aquí. Y luego sigamos adelante y creamos esta variable. Por lo que nos olvidamos de crearlo. Y va a ser una carroza y va a ser privada. No necesitamos que sea público. Por lo que llegan al tamaño de disparo flotador y gancho. Genial, así que ahora todo está listo. Asegurémonos de que esto sea correcto. ¿ Dónde está aquí? Esto es correcto. Entonces ahora lo que queremos hacer es realmente queremos lanzar nuestro tiro de gancho, pero queremos crear un estado en el que estamos lanzando la instantánea. Y así sigamos adelante y creamos. Entonces aquí, vamos a crear un nuevo estado al que se va a llamar el gancho tiro a través. Por lo que esperanza tiro tirado, guarde eso. Y vamos a crear una declaración de cambio para ello. Y esta declaración de cambio será, pongámosla aquí. Entonces en el caso de que tengamos el estado al tiro de gancho tirado, entonces aquí dentro vamos a lanzar tiro de gancho. Así que tira el gancho. Y ahora, entonces, ¿cuál es el problema aquí? Entonces tiro, vale, así que tenemos que sumar el descanso. Y ahora lo que queremos hacer es siempre que realmente empecemos, en lugar de manejar el movimiento de cierre de gancho inmediatamente aquí, ¿Dónde está? Entonces cuando terminamos aquí, en lugar de empezar de inmediato a volar al jugador, queremos, antes de hacerlo, queremos seguir adelante e iniciar el lanzamiento de tiro de gancho. Guarda eso. Y también lo que queremos hacer es que el tamaño de tiro de gancho esté a 0 f Guarde eso. Y ahora sigamos adelante y probemos esto y unidad. Por lo que de vuelta en nuestro juego. Y no hay comentarios dudosos, por favor, si sí quiere agregar un comentario en una reseña. Y ahora cuando presionamos al igual, podemos ver que nuestro liñón y metas, no
podemos mover ni nuestra cámara ni nuestro movimiento. Se va y continúa? Continuar para ir arriba. Déjame salir aquí, ir a las escenas y sigue yendo para siempre y para siempre. Por lo que el siguiente paso natural es empezar realmente a transitar al vuelo de nuestra capa. Y en realidad va a ser parte de tu reto. Por lo que su reto a la transición a volar estado. Por lo tanto, calcula la distancia entre el jugador y la posición de la tienda del halcón. Y si es mayor que el tamaño de tiro de gancho, queremos hacer la transición al estado de vuelo. Entonces lo que necesitas hacer es asegurarte de que
cada vez que nuestra estantería tamaño como está en, a medida que aumenta, si se hace más grande que la distancia entre la posición de transformación y la posición de la tienda de halcón, te necesidad de transición al estado del jugador volador de tiro gancho. Entonces con eso dicho, pausar el video ahora mismo y seguir adelante y hacer cuál Alan? Kaye, bienvenido de nuevo. Entonces aquí lo que vamos a hacer es bajar. Y mientras estamos lanzando nuestro gancho, vamos a comprobar si nuestro tamaño de gancho se vuelve mayor que los vectores. Distancia de puntos entre la caja de transformación Xin y el tiro de gancho. Dónde está la posición superior de tiro de gancho. Entonces lo que vamos a hacer es tomar nuestro estado y pasaremos a Ops. Es decir, va a ser igual al estado y vamos a hacer la transición al tiro de gancho volando a capa. Entonces de esa manera empezaremos a volar. Y una cosa más que quería hacer es aquí, también
podemos mover a nuestro jugador. Por lo que vamos a añadir el movimiento de la capa. Y sigamos adelante y también sumamos el movimiento de la cámara. Ah, ¿qué es eso? Copia esto y agregaremos el movimiento de la cámara. Eso lo ahorraremos. Por lo que ahora de vuelta en Unidad. Echemos un vistazo a esto y déjame solo poner la escena aquí. Aunque. Yo estoy en el juego solo aquí, hazlo un poco más grande para que podamos ver lo que está pasando. Vamos a pegarle a Play. Y ahora cuando empecemos nuestro juego, Vamos a ver. Cuando teníamos el parecido, nuestro, oops. Entonces nuestro gancho irá y podemos movernos, podemos, podemos saltar todavía, y cuando llegue al punto, y luego vamos. Pero como se puede ver, todavía hay muchos problemas. Entonces intentemos esto otra vez. Teníamos la llave E en otro lugar y es muy, muy lento, pero al menos está funcionando. Así que déjame reorganizar un poco esto, cerrar el manager y aumentemos la velocidad. Por lo que la velocidad es muy lenta. El Reino Unido velocidad de lanzamiento de choque, Hagamos que duplique la velocidad, triplicar la velocidad. Así que hazlo 30 de vuelta aquí. Es una buena idea poner aquí la velocidad de nuestro tamaño de ganchos de garfio. No está nada mal. Entonces cuando le damos igual, se va, lleva mucho tiempo. Todavía tenemos que aumentarlo. Entonces hagámoslo 60, otra vez, el doble de velocidad. Vuelve a nuestro juego. Hit play. Yo solo quiero tener un gancho de garfio realmente bonito como si fuéramos Spykman. Entonces Hideki, va, volamos, saltamos, y llegamos a la cima del edificio. Ahora todavía tenemos nuestro gran, enorme gancho de garfio, por lo que tendremos que cambiar eso. Y también nos está causando muchos problemas porque en
realidad lo estamos creando frente a nosotros y podemos hacer cualquier cosa al respecto. Entonces no te preocupes por eso. Estaremos arreglando todos estos problemas en el próximo video. Pero lo que eso decía, espero que lo disfruten. Ojalá te divirtieras un poco y tuvieras un pequeño laboratorio. Y te veré en la próxima donde arreglaremos todos nuestros problemas con este extraño Huike.
65. Toques finales: Bienvenido de nuevo, Mis desarrolladores de juegos favoritos. En este video, en realidad hemos arreglado todas las cosas que estaban mal con todo gancho de garfio, pero no sólo eso, ahora cuando golpeamos la tecla E, no mira hacia otro lado. Y teníamos un sistema de partículas. Hemos añadido un zoom y alejar a la cámara. Esto suma mucha más velocidad a nuestra ganancia. Y en realidad arreglamos todo mal con Outlook. Entonces ahora realmente se ve como un gancho de verdad. Entonces ahora volamos. Tenemos este sistema de partículas. Estamos deformándose por nuestro mundo. Podemos disparar a nuestros enemigos mientras bajamos. Tenemos un juego increíble. Incluso tenemos un menú de pausa y el menú principal. Entonces, no perdamos más tiempo y empecemos con este video tan largo. Ah, caso. Entonces sigamos adelante y arreglemos nuestros problemas. No hay mucho pero vamos a arreglar. Entonces, en primer lugar, lo que quieres hacer es siempre que
empecemos, queremos desactivar nuestro gancho de garfio. Entonces vamos al gancho de garfio. Tendrá que acceder al objeto del juego y pondremos activo en falso. Entonces cada vez que arrancamos nuestro GREP les galletas, lo siguiente que vamos a hacer es que vamos a crear, tenemos todos estos aquí mismo. Entonces crearemos un método para ellos. Qué, déjame solo mostrarte lo que quiero decir. Entonces por ejemplo, el estado normal Andy restablece la gravedad. También queremos agregarle,
siempre que dejemos de
movernos, queremos enviar el objeto de juego de nuestro gancho de garfio a falso, por lo que no queremos agregarlo en todas partes. Entonces, sencillamente, así tenemos tres lugares donde los tenemos. Entonces sigamos adelante y creemos un método para todos estos. Lo llamaremos el vacío privado, parada, gancho, tiro. Y aquí dentro vamos a copiar estos, vamos a añadir un par de cosas más a esto y ya verás Es muy importante tener este fin saldrá del gancho de grappling que se puso activo, me refiero al juego objeto dot set activo y va a ser falso. Y sigamos adelante y llamemos a esta acción de tiro de gancho superior. Y aquí, y aquí. Y también aquí dentro. Y si encontramos otro lugar. Por lo que también tendremos que detener el tiro de gancho. ¿ Tenemos algún otro lugar para ello? Yo no lo creo. No, no lo hacemos. Está bien. Genial. Entonces, ¿dónde estamos siempre que realmente disparamos aquí cuando empezamos a lanzar, queremos seguir adelante y conseguir el gancho de garfio, el objeto del juego, y queremos ponerlo en activo. De acuerdo, genial, vamos a guardar eso. Adelante y probemos esto. Por lo que cuando golpeemos play, enviaremos nuestro tiro de gancho. Ahí irá y cuando llegue a la distancia, se detendrá. Está bien, genial. Ahora lo siguiente que queremos hacer es que en realidad queremos seguir adelante y mantener mirando el tiro de gancho. Resuelve el problema ahora mismo. Si nosotros, por ejemplo,
disparamos un choque de gancho ahí, cuando nos movemos, se
puede ver que el tiro de gancho comienza a moverse con nosotros. Entonces tendremos que manejar eso. Vamos a entrar en nuestro movimiento de tiro de gancho manejado. Entonces aquí, cada vez que elegimos la dirección y todo eso, en realidad
vamos a, bueno, después de elegir la dirección, realidad
vamos a seguir adelante y conseguir la mirada de punto gancho de garfio. Y vamos a estar
mirando, a la posición de tiro de gancho. Entonces ahora incluso mientras nos estamos moviendo o volando alrededor, nuestro gancho de tiro o gancho de garfio siempre está mirando la posición de tiro de gancho. Guarda eso. Ahora, echemos un vistazo y veamos si eso funciona en juego. Y ahora va el parecido, incluso cuando miramos a su alrededor, nos movemos. No, ahí está el tiro de gancho. Todavía está ahí. Muy bonito. Tan genial. Todo debería estar funcionando bien. Ésa, si desaparece cuando llegamos a nuestra posición, ya
no aparece bajo EU. Sólo aparece cuando lo necesitamos, y luego saltamos y todo funciona muy bien. Ahora es el momento de agregar un par de cosas como, por ejemplo, queremos que nuestro FOB o la cámara acerque y aleje en función de nuestro mientras volamos, esto agregará un poco de sensación de velocidad a nuestro juego. Entonces va a ser parte de tu reto. Así que acerque y aleje cuando estamos volando. Entonces encuentra la cámara y agréguese cuando estamos volando usando librería y aleje cuando dejamos de usar la herradura. Entonces ya hicimos este tipo de retos, creo que hace un par de videos. Entonces tu único trabajo es encontrar donde necesitamos realmente acercar y cuándo no deberíamos estar haciendo zoom. Y así pausa el video ahora mismo y ve a hacer el reto. De acuerdo, bienvenido de nuevo. Entonces, según recuerdo, fue el movimiento de la cámara. Entonces la cámara se mueve aquí y se está acercando, y necesitamos un zoom objetivo, por lo que un objetivo de OPV de vuelta en nuestro jugador. ¿ Y dónde deberíamos estar llamando a nuestro zoom? Bueno, deberíamos estar llamándolo siempre y cuando el tiro de gancho no haya ido realmente, llegué a la posición. Por lo que siempre y cuando el tamaño de tiro gancho aquí. Por lo que mientras el tamaño de tiro del gancho sea aún menor que la distancia, entonces lo que vamos a hacer es ir adelante y encontrar un objeto de juego de tipo. Va a ser el movimiento de la cámara. Y aquí entraremos al Zoom In. ¿ Y cuánto deberíamos estar acercando? A ver. Si vamos a la cámara, incrementamos esto. Si nosotros, digamos ir al 100, es 100 mucho. Creo que es mucho. Entonces si tal vez, oh, ya sabes lo que queremos, sí
queremos tener esta mirada poco como convexa. Entonces 100 creo que es realmente bueno. Entonces vamos a hacer que sea un 100 F. Guarde eso. ¿ Y cuándo deberíamos estar alejando? Bueno, deberíamos estar alejándonos cada vez que detenemos nuestra librería. Y por suerte hemos creado un método aquí. Entonces vamos a seguir adelante y encontrar el juego objeto de tipo. Va a ser el movimiento de la cámara. Y vamos a seguir adelante y alejarnos. Y esto debería restablecer la posición y no necesita ningún parámetro. De vuelta en nuestro juego. Vamos a poner el juego y aquí ya no necesitamos mirar nuestra escena en juego. Entonces ahora cuando empecemos a volar, ooh, bien. Entonces esto da un poco de sensación de zoom como si vamos rápido a algún lado. Muy bonito. Entonces no está mal. Si a lo mejor podemos hacerlo más de 100. A lo mejor podemos seguir adelante y hacer ¿Dónde está, Dónde está? ¿ Dónde está? De acuerdo, Así que aquí, tal vez que sean 120. Pero el problema es que el argón se mantiene en posición, así que no es muy bonito, pero no se preocupe por eso. De todos modos, 120. Por último, lo que quiero hacer es añadir algún tipo de sistema de partículas que nos dé la sensación como si estuviéramos viajando por el espacio. Entonces vamos a añadir un sistema de partículas. Por lo que usualmente usamos sistemas de partículas que teníamos en nuestros ejemplos. Ahora vamos a crear la nuestra. Por lo que esta es la unidad avanzada. Bien. Adelante y haga clic aquí. Podemos ir a los Efectos y podemos crear un sistema de partículas. Entonces ya tengo preparado algo, así que ya sé lo que estoy haciendo. Entonces solo para ser completamente transparente contigo. Entonces no crees que soy algún tipo de dominio del sistema de partículas. Esto en realidad me llevó un tiempo hacer esto. Entonces lo primero que vamos a hacer es que realmente queremos rotar hacia el jugador. Entonces en el eje x, Vamos a rotarlo así. Entonces es menos 1, 18, y va a estar frente a nuestro jugador. Entonces podremos, de
acuerdo, no se ve en modo de juego. Eso se debe a que está tan lejos que el jugador ni siquiera lo puede ver. Entonces pongámoslo aquí, aquí y abajo un poquito. Entonces, ¿eso está enfrentando al jugador? No. Las perspectivas 3d son tan difíciles de trabajar. De acuerdo, entonces ahora en nuestro
juego, sí, ahí está, Podemos verlo. Pongámoslo aquí y hagámoslo mucho más pequeño. De acuerdo, vamos a moverlo de una manera sólo un poquito. Entonces esto es suficiente si quieres mantenerlo así. Pero no, en realidad vamos a sumar un montón de cosas aquí. En primer lugar, la hora de inicio, Hagámoslo 0.28. Por lo que el tiempo de inicio realmente se retrasará en segundos. El sistema de partículas esperará hasta que emita una partícula. Entonces vamos a ir a la tasa de emisión. Y veamos aquí dentro tenemos la tasa de emisión,
la tasa a lo largo del tiempo. Hagámoslo 69. Por lo que esto aumentará la tasa de emisión. Por supuesto, el número de partículas que se emitan entrará
en forma y quizá vamos a hacer el ángulo 0. Por lo que se convertirá como un cilindro. Por lo que el ángulo será 0. Y vamos a aumentar el radio. Entonces lo haremos alrededor de las cuatro. Bonito. Ahora tenemos un efecto realmente cool. Lo siguiente que vamos a hacer es entrar en la vida. Entonces la vida aquí dentro, y vamos a seguir adelante y que sea uno. Por lo que estas partículas no lo serán. Simplemente yendo por todo el lugar y en realidad ayudará con nuestro poder de procesamiento. Por lo que cuantas más partículas tengas, más potencia de procesamiento requiere. E incluso mi portátil ahora mismo, cuando disminuí el número de partículas, quiero decir, la vida útil de las partículas, dejó de funcionar. Por lo que los fans dejan de tratar de llamar a mi sistema. Y sigamos adelante y aumentemos la velocidad de salida de cinco, y vamos a hacerlos 20. Entonces ahora son súper rápidos. Ahora podemos volver aquí y ponerlos así. Lo siguiente que vamos a hacer es ir al render y queremos hacerlos como si
fueran algún tipo de láseres viniendo a nosotros y renderizar. Cambiaremos esto de Billboard a la cartelera estirada. Entonces ahora los tenemos un poco estirados. Y vamos a cambiar la longitud de la escala a 13. Entonces o, como pueden ver, estos ahora son más evidentes a medida que nos movemos por el espacio y el tiempo. ¿ De acuerdo? Por lo que también vamos a cambiar el color con el tiempo. Y vamos al color con el tiempo, y podemos necesitar 0. En primer lugar, se enciende. Podemos elegir entre dos gradientes aleatorios. Entonces vamos a elegir, en
primer lugar aquí, algún tipo de color azul. Y otro color aquí dentro, que va a ser algún tipo de color rojo. Entonces veamos eso en acción. De acuerdo, Así que todavía hay un poco de blanco. Entonces aquí, vamos a seguir adelante y hacerlos completamente azules. Y aquí dentro los haremos completamente rojos. Entonces veamos cómo se ve eso. De acuerdo, eso no está muy mal. Al menos es algo, vale. Ah, quizá podamos disminuir el Alfa. Entonces este es el Alfa y aquí podemos hacer que pase de 0 a 215. Y esto tendrá el mismo efecto. Por lo que del 0 al 50. Y esto, de acuerdo, así que vamos a ver, eso se ve bastante bien. Ahora en nuestros materiales, Vamos a seguir adelante y crear un material de trabajo. Por lo que este es el material llamado estera warp. Y haremos del shader un shader heredado aditivo. Y la textura aquí dentro será el estándar. Entonces elige la partícula por defecto, partícula como la textura aquí dentro. Y vamos a mover este alfa a ser 250, caso si eso. Ahora lo que vamos a hacer es este material en nuestro sistema de partículas. Entonces volvamos a nuestro sistema de partículas aquí dentro y aquí abajo en el render. Cerremos éste. Aquí tenemos la partícula por defecto. Añadamos aquí la deformación. Bonito. Entonces ahora esto hará que nuestros colores sean un poco más brillantes y podrás seguir adelante y retocar todo esto. De verdad te animo a ir y profundizar en esto. Ahora sé cómo funcionan la mayoría de estos. Y para realmente ir a probar esto frente a ti y hacerlos se llevará alrededor de un tres videos. Así que adelante y pruebe lo mejor posible, vea lo que funciona para usted. A ver qué no. Tan genial. Ahora tenemos el sistema de partículas ahora, todo lo que necesitamos hacer. Antes de continuar, tenemos que asegurarnos de precalentar esto. Si no agregamos el calor supremo cuando realmente enciendamos el sistema de partículas, no empezará de inmediato. Tomará un poco de tiempo. Por lo que el recalentamiento siempre está ahí, listo para empezar. Sí agrega un poco de zapatos de rendimiento, pero no nos preocuparemos por eso. No es tan significativo. Está bien, genial. Ahora con eso hecho, vamos a añadir este sistema de partículas a nuestro jugador. Ahora bien, ya sea puedes agregar esto a tu cabeza. Por lo que sea que lo
escribas, sigues viendo estas partículas o
simplemente puedes agregarlas al jugador para que se muevan con él. Y sigamos adelante y reiniciemos la posición de estas partículas para que se vean directamente en la cara de nuestro jugador. Y simplemente los vamos a mover hacia atrás y moverlos un poco hacia arriba. Entonces ahora se ven realmente bonitas. Ahora es el momento de seguir adelante y conseguir una referencia a ellos y encenderlos y apagarlos en función de cómo los queremos. Entonces de vuelta en nuestro código aquí arriba, y sigamos adelante y creemos una referencia. Entonces crearemos un sistema o sistema público de partículas. Y las partículas warp, guarde eso. Y sigamos adelante y ponerlos en el inspector antes de que nos olvidemos, porque siempre lo olvido. Eso es en el sistema de partículas aquí. Guarda eso de nuevo en nuestro código ahora ¿dónde deberíamos estar encendiéndolos y apagándolos? Podemos usarlos igual que usamos el audio que podemos reproducir y podemos parar. Entonces vamos a hacer igual que usamos el zoom, vamos a usar el sistema de partículas. Entonces aquí dentro, vamos a llamar a las partículas warp y vamos a colocarlas. Y cuando dejamos de
engancharnos, vamos a trabajar partículas, parada de disparo. Y ahora y sabes qué? Volvamos a encender las partículas. Entonces ahora cuando golpeamos el juego, está bien, Así que siempre están
encendidos, Vamos a hacer clic en estas partículas aquí dentro y apaguemos, Play on wake. Guarda eso. Ahora cuando golpeamos el juego, no
deberían estar jugando todo el tiempo. Está bien, genial. Entonces ahora cuando presionamos igual, tenemos nuestras partículas muy bonitas. Ahora se están moviendo con los jugadores que tenían, si no quieres eso, en realidad puedes desprenderlos. Pero creo que esto se ve muy bien. Entonces ahora podemos ver tenemos el zoom n,
Tenemos las partículas, tenemos nuestro gancho de garfio sintiéndose realmente agradable. Podemos saltar sobre edificios y oficialmente hemos terminado con nuestro gancho de garfio. Entonces espero que hayan disfrutado el video. Espero que no fuera demasiado largo. Y con eso dicho, muchas gracias. Y te veré quizá en el próximo.