Controlar la rotación del eje X del hombro en 3ds Max
Esto que comentas es un problema bastante común cuando uno intenta emular el comportamiento real del hombro humano en un rig, sobre todo en software como 3ds Max, donde la lógica de los ejes no siempre coincide con cómo se mueve el cuerpo en la vida real. En este caso, el eje X que mencionas (el que rota en paralelo al brazo) es particularmente complicado porque no sigue un patrón simple: no rota de forma lineal ni constante. Es más, parece que tiene vida propia, como si el hueso tuviera opiniones personales sobre el ángulo en que quiere moverse.
Automatizar la rotación del eje X en función del eje Z
Lo que estás intentando hacer suena a una interpolación personalizada, una especie de controlador donde el eje X responde según un rango específico del eje Z. En vez de depender de una expresión rígida o una copia exacta de rotación, lo que necesitas es un custom script controller que te permita definir cómo debería comportarse la rotación en X según el valor de Z. En 3ds Max puedes hacerlo con un Rotation Script o incluso usando el controlador Float Expression o Float Script, dependiendo de lo que necesites controlar exactamente.
Por ejemplo, podrías usar una expresión en MAXScript que diga algo como:
Código:
if Z_rotation < 180 then X_rotation = Z_rotation / 2 else if Z_rotation < 270 then X_rotation = 90 - ((Z_rotation - 180) / 2) else X_rotation = 0
Esto es un ejemplo muy básico, claro, y habría que adaptarlo a tu rig real y a cómo están organizados tus ejes (porque Max a veces cambia los ejes como quien cambia de canal en la tele). Pero la lógica es esa: dividir el movimiento en tramos y definir qué pasa con X en cada tramo. Y si no te manejas bien con código, puedes usar un controlador de lista y combinarlo con Reaction Manager para que X reaccione a los valores de Z con curvas suaves, sin necesidad de tocar scripts.
Aplicaciones en otros programas y una pizca de humor
En software más reciente como Blender, Maya o incluso Houdini, este tipo de comportamiento se resuelve más intuitivamente con controladores tipo driver, set driven keys o nodos condicionales. Pero en 3ds Max, aún dependemos de scripts o sistemas como el Reaction Manager, que es útil pero tiene más clics que un youtuber en tendencia.
Y ya que estamos en un foro 3D, solo decir que sí, el hombro humano es una maravilla biomecánica... pero a la hora de riggear, parece diseñado por alguien que detestaba a los animadores.
|Agradecer cuando alguien te ayuda es de ser agradecido|