‫Hola y bienvenido.
‫En esta lección, veremos vectores y, en general, cosas más complicadas como estructuras
‫en C++ y cómo podemos acceder a las partes individuales para configurarlas y obtenerlas de una estructura.
‫Sumerjámonos.
‫Así que hemos aprendido cómo manejar tipos de datos básicos en C++ y crear variables y asignarles e incluso hacer algo
‫de aritmética básica con ellas.
‫Pero, ¿y si quisiéramos tratar con tipos más complicados, como vectores y transformaciones?
‫Bueno, el proceso es en realidad muy similar.
‫Comencemos limpiando parte del código de prueba que ya tenemos.
‫Voy a eliminar todas mis propiedades.
‫Para mí, esa es la línea 26 hasta la 51.
‫Y también voy a ir al archivo C++ y borrar las líneas 19 a 23, que es donde estoy haciendo todo el trabajo
‫con esas variables que acabo de borrar.
‫Así que ahora Begin Play está completamente vacío y volvemos esencialmente al punto de partida.
‫Entonces, ahora lo que quiero hacer es agregar una nueva propiedad de usted.
‫Entonces, todas las mayúsculas nuevamente se editan en cualquier lugar y le daré a esto el tipo de vector F, observe la mayúscula F mayúscula, la
‫V mayúscula y así es como tratamos los vectores que hemos tratado en Blueprint son los
‫mismos vectores bajo el superficie, pero así es como lo escribimos en C++.
‫La F que la precede solo nos deja saber que esta es una estructura de la misma manera que la A que precede a
‫la plataforma móvil.
‫Déjanos saber que eso es un actor.
‫Eso no es una cosa de C++.
‫Esa es una convención de nomenclatura irreal para nombrar las diferentes clases, estructuras y tipos.
‫Entonces lo que vamos a hacer es darle su nombre a esta variable.
‫Y esto funciona exactamente igual que si fuera una carroza o un evento.
‫Podemos llamarlo mi flotador, por ejemplo.
‫No debe tener espacios.
‫Y si tuviéramos que poner un punto y coma al final de la línea aquí, entonces eso es todo.
‫Hemos declarado una nueva variable que será visible en nuestro panel de detalles en el editor, pero eso no es suficiente
‫para mí.
‫De hecho, me gustaría darle a esto un valor predeterminado que sea diferente del 000 predeterminado.
‫Para hacer eso, necesitamos actualizar nuestro glosario con un nuevo término.
‫Necesitamos un constructor, que es esencialmente algo en C++ que crea una nueva estructura o valor de clase A.
‫Entonces, si tuviéramos que crear un constructor para el vector, la forma en que esto funcionaría es que queremos asignar un valor
‫para que presionemos igual.
‫Y, por lo general, cuando trabajábamos con números enteros o flotantes, podíamos usar algo como uno o verdadero
‫que se incorporaron en valores que nos permitieron establecer el valor de esos tipos básicos.
‫Pero cuando tenemos tipos más elaborados como una estructura, necesitamos usar el constructor y el constructor siempre tendrá
‫el mismo nombre que el tipo de datos, por lo que se escribirá exactamente igual.
‫Y luego abres algunos paréntesis y dentro de los paréntesis das los valores que quieres.
‫Entonces X, Y y Z es lo que forma un vector.
‫Entonces podríamos tener uno, dos y tres separados por comas, y luego cerramos los paréntesis y pusimos punto y coma
‫al final de la línea.
‫Y eso dará un valor predeterminado de uno, dos y tres en X, Y y Z para este vector.
‫Probémoslo.
‫Vuelva a Unreal y presione el botón de compilación.
‫Y una vez que se complete con éxito, podemos asegurarnos de que tenemos la Ley de plataforma móvil seleccionada en nuestro esquema y
‫echar un vistazo al panel de detalles y ver que, de hecho, tenemos una nueva propiedad llamada
‫My Float.
‫Los demás se han quitado y los valores en sus diferentes posiciones, X, Y y Z es uno, dos
‫y tres tal y como esperábamos.
‫Eso es genial.
‫Pero, ¿y si quisiera apoderarme de estos valores y quizás pegarlos en otra propiedad?
‫Entonces, si tuviera otra propiedad que está marcada como agregada en cualquier lugar para poder verla en
‫el inspector, escribiré float llamado my x y lo pondré en cero por defecto solo para que podamos ver que lo estamos cambiando.
‫Y lo que quiero hacer es tomar el valor x de my float al comenzar a jugar y quiero establecerlo en
‫la variable my x.
‫Así que vayamos al archivo C++ y comencemos a jugar después de la línea que dice super grande en juego, vamos
‫a establecer mi X igual a lo que queremos obtener algo de mi vector, pero no queremos todo de mi
‫vector
‫Eso sería un error.
‫No podemos establecer un vector en un flotador, solo queremos la parte x de ese vector.
‫Bueno, para entender eso, necesitamos entender el concepto de un operador.
‫Los operadores son símbolos en C++ que hacen algo.
‫Ya hemos visto algunos.
‫Hemos visto el operador más, que suma dos cosas.
‫También hay un operador menos.
‫Está el operador de igualdad, el operador de igualdad, que asigna.
‫Cosas.
‫Así que estamos usando esto aquí en la línea 19.
‫Ese es un operador que asigna el valor de mi vector a mi X.
‫Y luego tenemos un operador más, que necesitamos saber cuál es el operador DOT.
‫Es un operador que obtiene algo de una estructura o clase.
‫Entonces queremos obtener la X desde dentro de mi vector.
‫Así que usamos un operador de punto, hacemos punto x ahora no usamos un espacio aquí entre mi vector y la x.
‫Simplemente dejamos que estos se ejecuten juntos, así es como normalmente dejamos las cosas, aunque no es necesariamente
‫un error poner espacios.
‫Así que tenemos mi vector punto x debe obtener el valor x del vector y ponerlo en el flotador de mi x.
‫Así que ponemos un punto y coma al final de la línea y, como de costumbre, estoy ignorando los garabatos rojos porque a
‫veces tardan mucho en actualizarse y otras veces no son correctos.
‫Y luego vamos a entrar en la codificación en vivo y presionar el botón que vuelve a compilar y simplemente
‫verificar si obtenemos un resultado exitoso.
‫Y no, verás, tenemos una falla de construcción.
‫Y si observa el error que dice que mi vector es un identificador no declarado y eso se debe a que
‫cometí un error tipográfico, llamé al vector F mi flotador y probablemente esté gritando en sus pantallas.
‫Pero es bueno mostrarles que incluso los expertos, los programadores, cometen errores.
‫Queríamos llamarlo mi vector, así que voy a volver al archivo principal y
‫cambiarle el nombre a mi vector, lo que debería eliminar el problema en mi cerebro.
‫Sigamos adelante y hagamos clic en el botón de compilación nuevamente.
‫Y eso solo te da una idea de cómo es cuando cometes errores, obtienes un error de compilación.
‫Pasa todo el tiempo.
‫De hecho, es muy raro no cometer errores.
‫La primera vez que haga algo, continuaremos y presionaremos reproducir y veremos qué valor obtenemos en el
‫panel de detalles.
‫Puede ver que mi x se ha establecido en uno porque ese era el valor en el componente x de la variable mi
‫vector.
‫Así que me gustaría desafiarte a establecer un valor de vector.
‫Hemos estado obteniendo valores del vector.
‫Ahora intentemos configurarlos.
‫Básicamente intente usar el operador de punto para establecer un valor.
‫Intente voltear los dos lados de ese igual para que tengamos my X a la derecha y my vector over a
‫la izquierda.
‫¿Y si cambia a Y o z?
‫¿Hay alguna diferencia que tira de vídeo y tiene un ir?
‫Bueno.
‫Bienvenido de nuevo.
‫Así que voy a intentar darle la vuelta a estos dos.
‫Pasemos a C++ y empecemos a jugar en su lugar.
‫Lo que voy a decir es que mi vector punto y es igual a mi x y luego pongo un punto y coma al final de la línea.
‫Y así es como también podemos establecer valores dentro de una estructura.
‫Así que volvamos a Unreal y recompilemos y luego podemos seguir adelante y establecer algún valor en mi X.
‫Voy a poner el valor de cinco aquí.
‫Luego seguiré adelante, jugaré y echaré un vistazo al panel de detalles de la plataforma móvil.
‫Y, por supuesto, el valor y de mi vector se ha actualizado en el juego inicial con el valor de mi x.
‫Así que felicidades
‫Hemos visto cómo usar tipos más complicados, los tipos compuestos como estructuras en C++.
‫Te veré en la próxima conferencia.