Resultados 1 al 2 de 2

Movimiento armónico simple

  1. #1
    Fecha de ingreso
    Sep 2006
    Mensajes
    73

    Movimiento armónico simple

    Hola, inspirado por el trabajo que están haciendo sobre Davy Jones(que está bueno), decidí intentar usar la ecuación de movimiento armónico simple.

    Cuando lo uso para traslaciones no tengo problema, pero cuando lo pongo para que controle ángulos anda todo mal.

    Lo que hice fue crear un hueso, asignarle un controlador float script a la rotación en el eje y, y le puse esta ecuación Degtorad a*sin(w*s+p).

    A es la amplitud.
    W velocidad angular.

    S tiempo en segundos.

    P fase inicial.

    Luego a cada una de las variables le asigne una track.

    El primer problema que tuve fue que andaba rapidísimo, y ahora cuando le pongo menor velocidad angular en los primeros cuadros hace cualquier cosa y luego se estabiliza.

    Es la primera vez que hago algo por el estilo, entonces puede ser que este haciendo algo mal, por eso les puse todos los pasos que hice. Saludos y gracias.

  2. #2
    Fecha de ingreso
    Apr 2002
    Mensajes
    29,279

    Thumbs up Controlar rotación con movimiento armónico simple en 3ds Max

    El problema que describes suele venir por dos causas principales: las unidades de tiempo en 3ds Max y la confusión entre grados y radianes. En 3ds Max el valor interno de tiempo que devuelve el controlador es en ticks, no en segundos, y 1 segundo = 4800 ticks (es decir ticksPerSecond = 4800).

    Además, las funciones trigonométricas de MAXScript (sin, cos, ...) esperan ángulos en radianes, y los controladores de rotación trabajan normalmente con valores en radianes también. Si mezclas grados sin convertir o usas el tiempo en ticks como si fueran segundos obtienes movimientos demasiado rápidos o ruidos extraños.


    Usa esta formulación clara y estable: define la amplitud en grados (para que te resulte cómoda), define la frecuencia en Hz (veces por segundo) y la fase en grados; convierte a radianes donde haga falta y convierte el tiempo a segundos usando ticksPerSecond. Por ejemplo, en un Float Script (aplicado a la componente Y de la rotación) puedes poner:

    Código:
    a_deg = 20.0
    f_hz  = 0.5
    phase_deg = 0.0
    
    s = time / ticksPerSecond
    omega = 2 * 3.141592653589793 * f_hz
    angle = degToRad a_deg * sin(omega * s + degToRad phase_deg)
    
    angle
    Con eso la variable a_deg es la amplitud en grados, f_hz la frecuencia en hercios y phase_deg la fase inicial en grados. La salida angle es en radianes, lista para la rotación.

    Si quieres que la oscilación se vaya amortiguando, multiplica por una exponencial de decaimiento, por ejemplo para tener un amortiguamiento d por segundo:

    Código:
    d = 0.5
    angle = degToRad a_deg * exp(-d * s) * sin(omega * s + degToRad phase_deg)
    Asegúrate de que el controlador de rotación sea del tipo apropiado (por ejemplo Euler XYZ) y que sólo estés controlando el eje que deseas con el Float Script; no mezcles keyframes manuales en la misma propiedad que el script o producirás discontinuidades.

    Si notas jitter a frecuencias bajas, incrementa los Solver Iterations o usa una muestra temporal más fina: el problema no es la fórmula sino el muestreo/limitación del tiempo en la evaluación si hay otros controladores o constraints en la jerarquía. Por último, para depurar imprime o visualiza s, omega*y etc. para comprobar que el tiempo está en segundos y que la frecuencia está en Hz.

    Si quieres, te doy la versión lista para pegar en el Float Script con variables fáciles de editar (amplitud en grados, frecuencia en Hz, fase en grados y amortiguamiento).
    |Agradecer cuando alguien te ayuda es de ser agradecido|

Temas similares

  1. 3dsMax Cómo usar movimiento de Realviz para capturar movimiento
    Por masticas en el foro Animación y Rigging
    Respuestas: 5
    : 01-02-2017, 17:48
  2. Simple
    Por juanchi27 en el foro Cine y TV VFX
    Respuestas: 5
    : 01-01-2008, 17:02
  3. Campo de batalla: simple simulación simple de masas
    Por lisux en el foro Partículas y Dinámicas
    Respuestas: 22
    : 24-01-2007, 19:50
  4. Simple que te quiero simple continuación
    Por Hid! en el foro Cine y TV VFX
    Respuestas: 4
    : 09-06-2006, 05:27
  5. Simple que te quiero simple
    Por Hid! en el foro Trabajos en Proceso
    Respuestas: 18
    : 02-05-2006, 13:27

Etiquetas para este tema