‫Oye.
‫Bienvenido de nuevo.
‫Estamos exponiendo variables a planos.
‫Y ahora nos gustaría hablar sobre exponer nuestros componentes.
‫Esto nos permitirá establecer algunas de las propiedades, como las mallas en nuestros componentes de malla estática, así
‫como posicionar nuestra cápsula y el punto de generación del proyectil.
‫Ahora estamos de vuelta aquí en VS Code y tenemos todas nuestras variables de prueba.
‫Y antes de que comencemos a exponer nuestras variables de componentes privados, solo hay un par de cosas más
‫específicas de su propiedad que debemos conocer.
‫Por un lado, todas nuestras variables de prueba están en la sección pública y un par de nuestras variables aquí están
‫expuestas al gráfico de eventos que permite el acceso de lectura y acceso correcto, y estos no están permitidos en la
‫sección privada.
‫Por ejemplo, si tomo nuestro int visible en cualquier lugar y lo edito en cualquier lugar y lo corto y lo pego
‫aquí en la sección privada junto con nuestros componentes.
‫Esto es lo que sucede cuando intentamos compilar aquí.
‫Vemos en nuestro terminal un par de errores.
‫Vemos que blueprint, read, write no debe usarse en miembros privados y dice lo mismo
‫sobre Blueprint Read only.
‫Entonces, ¿qué pasa si queremos acceso de lectura y escritura en el gráfico de eventos en miembros privados?
‫Bueno, hay una manera de evitar esto.
‫Todavía podemos tener acceso a variables privadas en el gráfico de eventos.
‫Tenemos que agregar otra entrada a la U.
‫Macro de propiedad y esa entrada se ve así.
‫Decimos que los paréntesis meta es igual a permitir el acceso privado es igual y entre comillas es verdadero.
‫Ahora esto se ve bastante raro.
‫Es una especie de pesadilla de sintaxis, pero así es como se ve.
‫Sus macros de propiedad permiten metadatos y metadatos es solo una palabra elegante para datos que brindan información sobre
‫otros datos.
‫Así que tenemos este meta igual y si usamos permitir el acceso privado es igual a verdadero, entonces podemos exponer estas
‫variables al gráfico de eventos aunque sean privadas.
‫Ahora, si usted es un fanático y no cree que dar acceso privado a una variable sea una muy buena idea,
‫bueno, no tiene que hacerlo.
‫Esta es solo otra herramienta en su caja de herramientas que nos permite exponer variables privadas al modelo.
‫Y en el lado de C++, estos siguen siendo privados.
‫Todavía no puedes acceder a estos desde otras clases.
‫Entonces tienes esa encapsulación en el lado de C++.
‫Esto solo le da la capacidad de obtener estos en planos y realizar cambios en ellos.
‫Y realmente en planos, es una especie de mundo diferente.
‫Por lo general, no va a exponer las cosas a planos que alguien podría entrar y cambiar y
‫potencialmente romper el juego.
‫Pero es útil saber cómo hacer esto.
‫Así que vamos a dar a este meta acceso privado para que sea visible en cualquier lugar, int y edite en cualquier lugar.
‫Y entonces vamos a compilar esto.
‫Y ahora vemos que tenemos una compilación exitosa a pesar de que tenemos reescrituras de planos y solo lectura
‫de planos en variables en una sección privada.
‫Ahora, de regreso aquí en BP Pond Tank en el gráfico de eventos, puedo hacer clic con el botón derecho y escribir
‫editar en cualquier lugar y aquí vemos obtener edición en cualquier lugar en el que todavía tenemos acceso y si busco visible, veo visible en
‫cualquier lugar en el que podamos obtener y configurarlo.
‫Ahora, lo último que le mostraré que podemos agregar a sus propiedades es un aviso de categoría aquí en
‫el panel de detalles.
‫Estas variables que hemos agregado están en esta categoría según este es el nombre de la clase y ahí es
‫donde van por defecto.
‫Pero observe que también tenemos otras variables heredadas por esta clase y cada una está en sus propias categorías.
‫Ahora podemos crear nuestra propia categoría para estas variables expuestas, y lo hacemos agregando iguales de categoría.
‫Y entre comillas podemos darle a esto una categoría.
‫Entonces podría llamar a esto variables super duper.
‫Ahora voy a tener una coma aquí porque puse esto aquí en la U.
‫Propiedad macro como una de las entradas, y todas las entradas deben estar separadas por comas.
‫Voy a copiar esto y agregarlo a la propiedad U aquí para editarlo también en cualquier lugar.
‫Así que ahora estos deberían estar en su propia categoría llamada variables super duper.
‫Vamos a compilar y volver aquí en el editor, mira esto.
‫Tenemos variables super duper y nuestras variables están aquí y puedo hacer clic con el botón derecho en el gráfico
‫de eventos, buscar super y comprobarlo.
‫Tenemos variables súper duper y nuestras variables están aquí.
‫Así que esta es una buena manera de organizar nuestras variables y hacerlas un poco más fáciles de encontrar.
‫Así que he agregado un par de cosas nuevas a nuestra mesa aquí.
‫Podemos dar acceso privado, podemos tomar variables privadas y aún exponerlas al gráfico de
‫eventos con estos meta especificadores.
‫Y también podemos dar a las variables su propia categoría para organizarlas en planos.
‫Entonces, ahora que conoce muchas formas de controlar el acceso a nuestras variables en
‫Blueprint, completará la propiedad para los componentes que ahora decide.
‫Sus niveles de acceso.
‫Querrá que estos estén visibles en cualquier lugar porque editar en cualquier lugar no es algo que desee dar
‫a sus componentes.
‫Esto significa que en realidad puede editar esa variable de puntero y no queremos cambiar el puntero.
‫Siempre debe apuntar al objeto.
‫Lo construimos en el constructor, pero también puede decidir si darles o no acceso de lectura,
‫escritura en el gráfico de eventos, darles una categoría.
‫Esto nos permitirá mantener nuestras variables organizadas.
‫Ahora, si les va a dar planos, lectura, escritura o solo lectura de planos.
‫Deberá permitir el acceso privado con ese meta especificado porque estas son variables privadas.
‫Ahora, una vez que haya expuesto los componentes a los planos, puede establecer algunas propiedades en el
‫plano predeterminado.
‫Puede dar a los componentes de malla estática sus propias mallas estáticas.
‫Así que configúralo tanto en el tanque como en el plano de la torreta y coloca la cápsula.
‫Por lo tanto, abarca aproximadamente el volumen de las mallas y coloca el punto de generación del proyectil, colóquelo en
‫un punto que tenga sentido para que se generen los proyectiles.
‫Así que pause el video y exponga nuestros componentes al modelo.
‫Bueno.
‫Así que aquí estamos en nuestra sección privada y nos gustaría exponer estos componentes.
‫Ahora, primero, voy a hacer que mi componente de la cápsula sea visible en cualquier lugar, y simplemente decidiré darle
‫a este modelo solo lectura para poder acceder a la variable de compensación de la cápsula en el gráfico de eventos,
‫pero no puedo configurarlo.
‫Ahora voy a darles la categoría y para nuestros componentes aquí, solo voy a darles
‫los componentes de categoría ahora porque estoy usando blueprint solo lectura, voy a usar meta permitir acceso
‫privado igual a verdadero.
‫Así que voy a poner eso justo ahí.
‫Y para el resto de mis componentes, estoy contento con estos mismos especificadores de propiedades, así que
‫les daré a todos los mismos especificadores.
‫Ahora voy a compilar esto y volver aquí en el editor, voy a hacer clic en la ventana gráfica
‫para poder ver lo que estoy haciendo aquí y puedo seleccionar la malla base.
‫Y para la propiedad de malla estática, ya que estamos en el plano del tanque, elegiré la base
‫del tanque.
‫Esa es la base del tanque.
‫Ahora puedo seleccionar la malla de la torreta y para su malla estática voy a seleccionar la torreta del tanque.
‫Y ahora nuestro modelo de tanque en realidad parece un tanque.
‫Ahora, antes de configurar el punto de generación del proyectil, me gustaría ajustar el componente de la cápsula.
‫Por lo tanto, abarca aproximadamente el volumen de la malla.
‫Ahora, con el componente de la cápsula seleccionado, tenemos estas propiedades, la mitad de la altura de la cápsula y el radio de la cápsula.
‫Voy a escalar el radio y la mitad de la altura de la cápsula para que se vea aproximadamente
‫con la forma correcta.
‫Y tendré que colocar mi tanque de modo que quede abajo en la parte inferior porque nuestro componente de la cápsula
‫es el componente raíz.
‫Tenemos que mover todos los demás componentes en relación con la raíz para que pueda seleccionar la malla base y moverla hacia
‫abajo.
‫Y para hacerlo bien, puedo inclinar mi vista así, o puedo subir aquí donde dice perspectiva
‫y seleccionar, ¿verdad?
‫Y ahora estoy en modo ortográfico.
‫Este lugar es todo en un avión para que pueda mover las cosas y conseguirlas.
‫Justo ahora voy a desactivar el ajuste para poder posicionar esto con mayor precisión, y creo que se
‫ve bastante bien.
‫Ahora voy a volver al modo de perspectiva para poder ver esto y asegurarme de que todo
‫se vea bien y seleccionaré el componente de mi cápsula y me aseguraré de que la escala sea la correcta.
‫Ahora, esto puede requerir un poco de ajuste para que quede bien, pero con algunos ajustes puedes hacer que se vea
‫bastante bien.
‫Así que estoy satisfecho con esto.
‫A continuación, me gustaría colocar el punto de generación del proyectil.
‫Voy a volver a activar el chasquido y moverlo hacia arriba justo en frente del barril aquí.
‫Así que esto se ve bastante bien.
‫Ahora voy a seguir adelante y guardar esto y ahora es el momento de configurar la torreta de estanque BP.
‫Así que aquí en la torreta del estanque de BP, voy a colocar la malla base.
‫Así que seleccionemos la base de la torre y voy a configurar la malla de la torreta a la torreta de la torre.
‫Aquí vamos.
‫Ahora voy a escalar la composición de la cápsula y mover la malla base hacia abajo y modificarla hasta
‫que quede bien.
‫Y de nuevo, puedo ir a la vista ortográfica y desactivar el ajuste y colocar esto aproximadamente como
‫me gustaría y volver a la perspectiva.
‫Creo que se ve bastante bien.
‫Ahora, lo último es el punto de generación del proyectil.
‫Voy a volver a activar el ajuste y lo colocaré justo aquí en frente del barril y estableceré los
‫incrementos de ajuste en cinco para poder colocarlo justo al frente.
‫Ahora asegúrese de que el punto de generación del proyectil no esté demasiado cerca del cañón.
‫Vamos a generar proyectiles desde este punto.
‫Y algo que ha hecho tropezar a algunos estudiantes es que su punto de generación está demasiado
‫cerca del cañón y hay una colisión allí que puede resultar en complicaciones al generar proyectiles.
‫Ahora bien, esto se puede resolver fácilmente asegurándose de que el punto de generación esté a una buena distancia del barril.
‫Y lo puliremos al final de esta sección del curso.
‫Bien, lo último que voy a hacer es colocar algunos de estos en el mundo.
‫Ya tengo un tanque de estanque BP aquí.
‫Voy a dejar eso en el suelo.
‫Y vamos a arrastrar un par de instancias de la torreta de estanque de BP.
‫Voy a colocar uno aquí y rotarlo para que quede mirando hacia afuera y luego continuaré y simplemente
‫colocaré uno en cada esquina aquí.
‫Para que puedan proteger esta estructura central.
‫Y esto se parece un poco más al producto terminado.
‫Aquí vamos.
‫Y, por supuesto, si quisiera, podría ver esto desde arriba y en modo ortográfico superior.
‫Puedo colocar estos con más precisión.
‫Pero, por supuesto, esto es un poco menos importante en un juego pulido.
‫Vas a querer que todo se vea bien.
‫Bien, volvamos al modo de perspectiva.
‫Esto se ve bastante impresionante.
‫Volviendo a nuestro plano de sección, hemos creado nuestro tanque y nuestro objetivo es que se mueva por todo el
‫mundo.
‫Entonces, en las próximas conferencias, vamos a comenzar a aprender cómo hacerlo.
‫Así que en esta lección hemos expuesto nuestros componentes a planos y hemos establecido algunas propiedades en
‫los planos para el tanque y la torreta.
‫Excelente progreso.
‫Te veré en el próximo video.