‫Oye, bienvenido de nuevo.
‫En este video, vamos a hacer la distinción entre las instancias de una clase de blueprint en particular
‫y el blueprint predeterminado, que es el blueprint que se aplica a todas las instancias.
‫También vamos a ver cómo podemos asignar, leer o escribir acceso para una variable de C++ en particular en blueprints.
‫Entonces empecemos.
‫Ahora estamos listos para comenzar a exponer algunos de nuestros componentes a Blueprint.
‫Entonces, aquí tenemos nuestros componentes y hemos visto que si hacemos clic en cada uno de ellos, nuestro panel de
‫detalles está completamente vacío.
‫Entonces, necesitamos aprender cómo podemos exponer ciertas propiedades al modelo, y lo hacemos mediante el uso de
‫nuestra macro de propiedad U.
‫Así que volvamos al código VS y echemos un vistazo a la macro de propiedad You.
‫Esta es una macro especial.
‫Es exclusivo de Unreal Engine y tiene este conjunto de paréntesis porque ahora puede tomar parámetros de
‫entrada para mostrar cómo exponer las cosas de ciertas maneras, solo vamos a crear un par
‫de variables descartables que podemos eliminar cuando Listo.
‫Solo vamos a usar esto para ver cómo funciona esta cosa de exposición para que podamos hacer algunos números enteros.
‫Hagamos un INT 32 y llamaré a este int 32 visible en cualquier lugar int.
‫Y justo aquí voy a inicializar esto a un valor, digamos 12.
‫Ahora, para exponer esto al sistema de reflexión, vamos a necesitar una nueva macro de propiedades.
‫Ahora, esto es solo una variable entera simple.
‫No es un componente como estos, por lo que no aparecerá en la pestaña de componentes.
‫Recuerde aquí en el modelo, tenemos esta sección de componentes y cualquier componente aparece aquí, pero
‫cualquier variable regular, esas van a aparecer.
‫Si hacemos clic en BP Pond, Tank Self, por ejemplo, aquí es donde vemos todas las demás variables que
‫no son componentes.
‫Entonces, de vuelta en el código vs, decidamos cómo vamos a exponer visible en cualquier lugar.
‫INT Bueno, voy a presentarles algunas palabras clave de su propiedad.
‫Estas son opciones que pueden ir entre paréntesis para la U.
‫Macro de propiedad.
‫Para este, vamos a agregar visible en cualquier lugar.
‫Ahora sigamos adelante y compilemos esto.
‫Bueno.
‫Así que hemos compilado, volvamos al editor.
‫Y aquí en BP Pond Tank, tengo el tanque de estanque BP autoseleccionado aquí y puedo buscar en el panel de detalles visible y
‫aquí está mi visible en cualquier lugar en el que observe que el plano coloca espacios entre cada una de las palabras gracias a
‫la forma en que He nombrado esto con Camel Case y mira esto, podemos ver que tiene un
‫valor de 12 y está atenuado.
‫En realidad, no podemos editar esto en absoluto.
‫Así que eso es lo que significa visible en cualquier lugar.
‫Significa que es visible, pero no podemos editar esta propiedad.
‫Bien, sigamos adelante y creemos otro INT 32.
‫Voy a llamar a este editar en cualquier lugar int.
‫Y para esto solo le daré un valor, digamos 22 y este obtendrá su propia macro de propiedad U y en lugar de estar visible en
‫cualquier lugar, le daré a este la palabra clave.
‫Editar en cualquier lugar.
‫Avancemos y compilemos esto y volvamos aquí en el editor. Voy a buscar editar en cualquier lugar y aquí está
‫mi edición en cualquier lugar y pueden ver que tiene el valor 22 solo que ya no está en gris.
‫Puedo seleccionarlo, puedo cambiarlo.
‫es editable
‫Eso es lo que significa editar en cualquier lugar.
‫Significa que podemos cambiarlo.
‫Entonces, aunque lo estamos inicializando a 22 en C++, podemos sobrescribir ese valor aquí en el modelo y
‫darle un nuevo valor.
‫Así que ahora aprendió sobre Visible en cualquier lugar y editar en cualquier lugar, pero hay más palabras clave además de estas
‫dos.
‫Por ejemplo, creemos un nuevo int 32 y llamemos a esta única instancia visible solo int e inicialicemos esto en
‫11.
‫Ahora obtendrá su macro de propiedad y la palabra clave que le daré a esta es solo una
‫instancia visible.
‫Compilemos esto y volvamos aquí en el panel de detalles en el plano que voy a buscar visible ahora observe
‫que podemos ver visible en cualquier lugar int pero ¿dónde está nuestra nueva variable?
‫Lo llamamos solo instancia visible.
‫INT Ver instancia visible solamente.
‫INT Bueno, no podemos verlo aquí, pero mira esto.
‫Voy a tomar nuestro tanque de estanque BP y arrastrar uno de estos al mundo aquí.
‫Y podemos ver en el mundo fuera de línea.
‫De repente tenemos un tanque de estanque BP aquí en el mundo.
‫Ahora, con esto seleccionado, puedo bajar aquí al panel de detalles y buscar visible ahora mira esto
‫ahora podemos ver nuestro visible en cualquier lugar int y nuestra instancia visible solo int.
‫Entonces, ¿cómo podemos verlo aquí, pero no podemos verlo cuando miramos el plano real en sí?
‫Bueno, hay una distinción que quiero hacer.
‫Verá, cuando tenemos nuestro modelo aquí en el navegador de contenido, podemos hacer doble clic en él,
‫podemos abrirlo y ver sus propiedades.
‫¿Qué?
‫Lo que estamos viendo aquí es el plano predeterminado.
‫Esto contiene toda la información predeterminada para el blueprint.
‫Pero tan pronto como arrastro uno al nivel, ahora tenemos algo llamado instancia.
‫Así que este tanque de BP en particular que existe en el mundo es un ejemplo de tanque de estanque de BP.
‫De hecho, podemos arrastrar varias instancias y cada una de las que existen en el mundo son instancias
‫de BP pond tank.
‫Esto es diferente al modelo predeterminado.
‫Así que aquí hay un pequeño gráfico para que lo consulten, y vamos a completar este gráfico más a
‫medida que aprendamos más especificadores.
‫Hasta ahora solo hemos visto visible en cualquier lugar, que verá que está tanto en las columnas predeterminadas como en las
‫de instancia.
‫Y está en la fila titulada Solo lectura.
‫Entonces puede ver en este gráfico que un visible en cualquier lugar de su propiedad solo será visible.
‫No será editable, pero estará visible tanto en los valores predeterminados como en la instancia.
‫Mientras que la instancia visible solo tiene acceso de solo lectura pero solo en la instancia.
‫En realidad, no puede verlo en el plano predeterminado.
‫Y luego aprendimos sobre editar en cualquier lugar, lo que nos permite editar esa propiedad en los valores predeterminados
‫y la instancia.
‫Es por eso que existe tanto en los valores predeterminados como en la columna de instancia.
‫Entonces, como desafío, me gustaría que agregue una variable a la clase de estanque base.
‫Ahora pon esto en la sección pública y lo que vas a hacer es decidir qué tipo de variable te gustaría
‫agregar, y puede ser cualquier cosa menos convertirla en un tipo básico, como un entero o un flotante.
‫Incluso podría convertirlo en un vector F o una cadena F si solo desea inicializarlo con un valor predeterminado como
‫nuestros otros 30 dos finales.
‫Y esto podría ser cualquier variable que desee.
‫Puedes hacer una variable de velocidad o una variable de resistencia.
‫Tienes algo de libertad aquí.
‫Ahora, una vez que haya creado esta variable, decida qué nivel de acceso desea para esto y luego asígnele
‫una macro de propiedad y agregue la especificación correcta aquí.
‫Ahora decida si desea que esto sea visible solo en la instancia o en los valores predeterminados, o si desea
‫que sea visible en cualquier lugar o editar en cualquier lugar, use uno de los especificadores que hemos aprendido hasta ahora y
‫asigne a esta variable la especificación correcta para adelante, pausa el video y haz esta variable ahora.
‫Está bien.
‫Así que voy a seguir adelante y hacer una variable.
‫Ahora, está bien si hiciste algo completamente diferente.
‫Esto es solo para practicar.
‫Voy a hacer un flotador y llamaré a esta velocidad e inicializaré la velocidad para decir 400 F.
‫Y creo que me gustaría que esta variable de velocidad sea editable tanto en la instancia como en la predeterminada.
‫Así que le daré a esto una macro de propiedad U y haré esta edición en cualquier lugar.
‫Así que voy a seguir adelante y compilar esto.
‫Y de vuelta en el editor, puedo seleccionar una de mis instancias de tanque base.
‫Y aquí, en el panel de detalles, puedo ver mi variable de velocidad y, por supuesto, puedo editarla aquí.
‫Y si abro, tanque, aquí está mi variable de velocidad, está configurada en 400 y es editable.
‫Entonces, en resumen, hemos aprendido la diferencia entre una instancia y el valor predeterminado de una clase de
‫proyecto en particular.
‫También aprendimos algunos nuevos especificadores de propiedades, como Visible en cualquier lugar, Visible, solo instancia y editar en
‫cualquier lugar.
‫En el próximo video, continuaremos aprendiendo cómo controlar el acceso a las variables de C++ en Blueprint usando estos
‫nuevos especificadores de propiedades.
‫Te veré pronto.