Herencia en las clases Blueprints o Child Blueprints, Mover Juntos en el runtime Unreal Engine 5
Este video viene Anexo un poco al anterior en el cual te mostraba la diferencia entre emplear aquí el mesh directamente el de platform mesh es el que tenemos acá que puede ser cualquier cosa en mi caso viene siendo un cuadrado un cubo aplastado y emplear aquí el root que todo depende que es lo que quieras hacer emplear uno o el otro entonces te mostraba aquí un poquito qué es lo que sucedía si colocaba aquí directamente el Root que se iba al mundo es decir ya en este caso como serían posiciones del mundo si empleo el root sería la posición 00 del mundo ya que la relativa sería el 00 del mundo mientras que la relativa del mesh como está dentro aquí del rot sería 00 y se comportaría como nosotros Esperamos que yendo de aquí del punto a al punto B eso te lo explicaba En el anterior video Entonces el tema que quiero cubrir aquí es todo Perfecto ahí lo que aprendimos es que pudiéramos emplear ya sea el de root o el de mesh dependiendo de nuestras necesidades y aquí te quiero mostrar un poquito Esto entonces yo en este caso voy a agarrar aquí este cubo que tengo por aquí definido voy a colocarlo aquí arriba y qué tú crees que vaya a pasar bueno obviamente nada porque son objetos independientes si ejecuto aquí la aplicación puedes ver que queda aquí como si nada ya pasado entonces aquí es donde entran voy a seleccionar aquí otra vez Bueno voy a abrir aquí tengo el cubo que sería este y aquí tengo la la bueno la plataforma no sé dónde está aquí en el outliner sería esta y mi cubo sería este aquí están estos dos entonces aquí podemos colocar un componente hijo en en este caso nos interesaría de este cubo el verde colocarlo aquí dentro ya con eso tuviéramos un componente hijo por lo tanto este ser el padre la plataforma y el hijo viene siendo lo que es el exploded para qué pudiera funcionar esto te pudieras preguntar en principio lo que nosotros quisiéramos aquí es que cuando se mueva la plataforma también se mueve el cubo Entonces vamos a ver qué es lo que sucede vas a ver que no funciona tal cual puedes ver el cubo todavía queda aquí y por qué está pasando esto es otra vez la importancia de entender como funciona esto.
El problema es que se está moviendo que es el mesh mientras que nosotros anexamos esto como hijo del cubo como hijo de lo que sería el que se llama el que se llama aquí rot el que se llama aquí Root es decir la raíz por lo tanto no bueno sería este el objeto pero es lo mismo por lo tanto no funciona voy otra vez nosotros aquí estamos agregando este cubo es como hijo del Root más no del mes que es el que estamos moviendo por acá Fíjate que si por aquí cambiamos voy aquí a guardar voy a compilar aquí s funcionaría Claro pero vamos a tener el problema que teníamos inicialmente en donde fíjate que ahora si van pegados el componente se va aquí a la raíz es decir al 00 pero del mundo porque estamos trabajando directamente es con la raíz entonces aquí puedes entender un poquito todo esto qué es lo que pudiéramos hacer aquí cambiar la implementación aquí pudiéramos obtener la posición del aquí location location creo que sería este get location a partir de ahi la cosa se complicaría bastante; nuestro nodo y a la final no funciona todo de la forma esperada ahí no sé muy bien Por qué no he terminado de terminar eso pero no no me funciona exactamente con las medidas que yo estoy colocando aquí Siempre Aunque coloque aquí el 3D widget donde esté colocado siempre va un poco antes o después es decir se mueve o hasta acá o hasta acá no sé por qué tuviera que ver también es un tema con el escalado cuando lo escalo que se comporta De manera distinta pero eso es otro tema Lo importante es entender aquí cómo funciona todo esto y qué es lo que está sucediendo Y en este caso yo lo que hice fue variar un poquito la implementación buscando aquí un poquito en YouTube encontré un video en inglés que también me mostraba otra forma de hacer este proceso prácticamente automatizada al igual que tenemos una forma de aplicar las rotaciones directamente en la plataforma que esto también ya te lo mostraba en otro video cómo hacer una plataforma que rote sobre su eje que es aquí colocando el componente de rotation aquí está rotation moving rotation mov también aquí Tenemos uno para el movimiento que se llama como intercept to move intersect to move aquí lo puedes agregar eh interset de esto te lo explico en otro video también te lo dejo Ahí anexo pero lo que nos interesa aquí es al menos de momento entender Cómo ampliar todo esto Entonces por aquí Bueno te muestro igualito qué es lo que hice por acá Aquí simplemente lo tuvieras que agregar en este caso me fui aquí directamente al construction Script y agregué la siguiente lógica esto te lo explico en otro video como te digo para no alargar esto demás pero voy a ampliar esta componente que s tiene el movimiento si tiene el comportamiento que nosotros queremos voy a buscarlo acá Aquí está aquí lo tengo Fíjate que aquí también tengo el 3D widget lo muevo para acá y va a comportarse prácticamente igual ahí puedes ver que funciona de igual manera ahí El único problema que tengo es que yo por ejemplo para este widget yo le coloqué una duración de ya sea que se quede aquí en el punto a o en el punto B pero aquí no pude definirlo de repente s hay pero yo fui el que no lo pude ver pero bueno al menos hace el movimiento que se espera que es ir del punto a al punto B Entonces vamos a probar aquí colocar este objeto tal cual hacíamos por acá como hijo directo de este otro busco aquí el outliner Aquí tengo el la plataforma y el cubo no sé dónde diablos está Ah lo clono Aquí voy a colocarlo para acá como hijo de este otro componente aquí lo puedes ver este sería la plataforma y este sería el otro da igual si están pegados o no lo importante es que sean hijos y por aquí vamos a arrancar y vas a ver que en este caso sí funciona tal cual puede ver y aquí otra vez es la importancia de entender cómo están conformados los nodos aquí de hijos y padres en este caso Fíjate que el de Este es el de intersección el de intersection se encuentra Al mismo nivel que el de default es sin root por lo tanto ese es el que se está moviendo y por lo tanto como nosotros aquí estamos agregando este componente bueno esta caja este otro blueprint es como hijo directo del de difal es in Root por lo tanto ambos se están moviendo tal cual ocurría por acá Así que eso era básicamente lo que te quería explicar.
- Andrés Cruz
Desarrollo con Laravel, Django, Flask, CodeIgniter, HTML5, CSS3, MySQL, JavaScript, Vue, Android, iOS, Flutter