-
Attribute Holder [Solucionado]
Tengo un objeto en escena al cual tengo que acceder mediante Max script a su atributo guardado.
Accedo a su información interna del botón posemanager de la siguiente manera:
Código:
def=custAttributes.getDef $.modifiers[1] 2custAttributes.getDefSource def
Y por lo que vi tiene un varios rollout dentro que al parecer es el problema de que no consigo acceder a la información de activar reset en el botón posemanager.

Es un misterio para mi de como llegar a activar el reset en el attribute holder mediante Max script.
Este código fue mi mejor intento y da ERROR:
Código:
$Character_root_Ctrl.modifiers[1].pmAtt.pmAtts.loadSaveRoll._rst.pressed()
Escena 3dsmax para testear:
https://drive.google.com/file/d/1HqN...ew?usp=sharing
Solución:
Código:
$Character_root_Ctrl.modifiers[1].pmAtt.pmAtts;loadSaveRoll._rst.pressed()
Última edición por dg3duy; 28-03-2021 a las 15:58
Razón: olvide un link
-
Agradecimientos - 1 Gracias
-
Vale. Acabo de ver que lo has solucionado.
-
Sí, pero tengo más preguntas que respuestas.
-
jerarquia oculta
Estoy ocultando la jerarquía de objetos pero deseo que los objetos Mesh o Poly de esa jerarquía no se oculten. ¿Alguna idea?
Código:
fn getChildren obj includeParent:false selectObjs:false =
(
children = for c in obj.children collect c
for c in children do join children (for c in c.children collect c)
if includeParent do append children obj
if selectObjs do select children
children
hide children obj
)
getChildren $Character_root_Ctrl
fn getChildreninverse obj includeParent:false selectObjs:false =
(
children = for c in obj.children collect c
for c in children do join children (for c in c.children collect c)
if includeParent do append children obj
if selectObjs do select children
children
unhide children obj
clearselection()
)
getChildreninverse $Character_root_Ctrl
-
Bueno. Opciones muchas. Si la geo que se oculta lleva skin quita el Parent que no te sirve para nada. Y así no se ocultará.
Es raro intentar ocultar cosas por Parent la verdad. Si lo que quieres es ocultar los controles y todos son shapes se puede hacer directamente en el panel "Display" o con Shift+S.
Si lo que quieres es algo más profesional de tener un botón para ocultar los controles de un personaje en particular, yo tiraría más por nombres concretos.
A todos los controles les pondría en nombre acabado en _Control y ocultarlos mediante la orden:
Código:
select (execute("$" + "*" + "_Control" as string))
hide $
Lo bueno de esto son dos cosas. Una te obliga a ser ordenado con el tema nombres y otra es que si tienes varios personajes en la escena puedes personalizar la orden:
Para el personaje "Paco" por ejemplo:
Código:
select (execute("$" +"Paco" + "*" + "_Control" as string))
hide $
Para el personaje "Pepe" por ejemplo:
Código:
select (execute("$" +"Pepe" + "*" + "_Control" as string))
hide $
Espero que te sirva de algo. Yo tiraría por ahí, que personalmente me parece más sencillo.
Un saludo de Ivan.
-
Agradecimientos - 2 Gracias
-
Muchas gracias por tomarte el tiempo de responder, el código que has publicado es muy sencillo y eficiente.
Estoy muy agradecido!