-
[maxscript]
Hola a todos, tengo una duda. Cre unos objetos propios, y la idea es que tenga una jerarquía, es decir, que al mover el padre se muevan los hijos. Ya tengo al objeto padre, con una lista de objetos asociados. Como puedo hacer que cuando se mueva/gire/escale el padre también le suceda a los hijos? A bueno, y también, que esto solo afecte a los objetos de la clase actor (la clase de los objetos padre)?
-
3 Archivos adjunto(s)
[maxscript]
Rotacion: para conseguir que cuando gira el objeto padre los objetos giren sobre su propio eje (y no alrededor del padre) en el panel de movimientos hay que abrir la pestaña asign controller, seleccionar la opción hay formas de hacer esto sin recurrir a scripts:
Rotación en las jerarquías del objeto hijo, abrir la lista de controladores haciendo click el icono cuadrado con el signo? Y elegir orientation constraint. Hecho esto le asignas el objeto padre pulsando el botón add orientation target.
En mi ejemplo, la esfera azul es hija del cubo rosado, cuando giro el cubo la esfera gira sobre su eje.
Para posición el procedimiento es similar, seleccionamos esta opción y les asignamos el controlador position constraint.
En cuanto a scale, en la lista de controles no existe una opción scale constraint.
Para asignar este controlador usemos un método diferente a los otros. Con el botón derecho hacemos un click sobre el padre o el hijo y en la ventana que nos aparece seleccionamos wire parameters, y luego scale nos parece una línea punteada entre el objeto que seleccionamos (en mi caso el cilindro verde) y el puntero, arrastramos esta línea punteada al otro objeto (el cubo en mi caso) y nos aparece otra vez la ventana con las opciones position, rotation y escale. Elegimos otra vez scale y nos aparece una caja dividida en dos paneles, en mi caso, mostrando las jerarquías position, rotation y scale del cilindro y la caja, y entre ambos tres iconos con flechas.
Para activar el controlador hay que seleccionar el icono cuya flecha apunte hacia el objeto hijo y pulsar el botón connect. Hecho esto podemos minimizar la caja para testear el resultado y si este es satisfactorio la cerramos.
Nota: con wire parameters se pueden hacer combinaciones más complejas, como que la escala de un objeto dependa del movimiento o la rotación de otro, o que cuando rota el padre el hijo rote en sentido opuesto y haga dos o más vueltas (útil para animar engranajes).
-- IMÁGENES ADJUNTAS --
https://foro3d.com/attachment.php?attachmentid=51615
https://foro3d.com/attachment.php?attachmentid=51616
https://foro3d.com/attachment.php?attachmentid=51617