Hola,
Para movimiento de péndulos, como primero debe hacer un movimiento hacia un lado y después otro a la inversa (ida y venida) necesitas hacer tres key frames. Tomemos como ejempo la manecilla grande de un relog, juyo movimiento deseamos que vaya de las 7 hacia las 5, y luego de vuelta a las 7 pasando por las 6.
Necesitaremos pues 3 keyframes, el primero con la manecilla a las 7, otro con la manecilla a las 6, otro con la manecilla a las 5. Esto define el moviliento en un solo sentido, lo que podemos hacer para que se repita a la inversa es usar un DataRef que pase por una serie de valores que el simulador automáticamente revierta en sentido contrario, como si contara de 1 a 3 y de 3 a 1 y vuelta a empezar. El vaivén nos lo darán pues la secuencia de valores, y nosotros definiremos la animación solo en un único sentido.
Para eso puedes usar una serie de DataRefs que han sido definidos para animar objetos, dichos DataRefs los encontrarás en la sección:
sim/graphics/animation/El más adecuado de ellos es este: sim/graphics/animation/
ping_pong_2Este DataRef tiene un ciclo de -1 a 1, pasando por el valor 0 y luego de 1 a -1 repitiendo el ciclo, de modo que puedes asignar al keyframe con la manecilla en las 7 el valor -1, el 0 para la manecilla a las 6, y el 1 para la manecilla a las 5 y con esto la manecilla pendulará de 7 a 5 y vuelta y repetirá el ciclo indefinidamente.
NOTA: En realidad con dos keyframes sería suficiente, una con el valor -1 con la manecilla a las 7 y otro keyframe con el valor 1 con la manecilla a las 5, así también serviría. El poner otros keyframes es para ajustar exactamente otro puntos para otros valores.
Lo que debes tener en cuenta es que la velocidad con la que estos DataRefs varian es constante y no modificable, lo que puede hacer que se creen movimientos que no sean a la velocidad que tu necesitas, en ese sentido, para que la animación vaya a la velocidad que quieras, no tendrás más remedio que crear un Custom DataRef y variarlo tu mismo entre dos valores límite, en secuencia, incrementandolo y decrementandolo en cierto valor a cada ciclo del simulador.
Con el uso de un Custom DataRef se puede afinar mucho, incluso se puede hacer que el incremento / decremento del Custom DataRef sea proporcional al tiempo que tarda el simulador en realizar un ciclo, por lo que puedes realizar con precisión movimientos que duren una cantidad determinada de tiempo deseado por ti.
Mi consejo es que investigues esto:
* Los DataRefs del simulador, que puedes encontrar aqui:
http://www.xsquawkbox.net/xpsdk/docs/DataRefs.html* Programación a medida de funciones mediante SASL, aqui tienes un script para SASL desarrollado por mi que te puede servir de guia, no anima nada, pero te servirá para ver cómo se hace:
http://www.x-plane.es/foro/index.php?topic=7899.0* Creación de custom DataRefs ( en SASL, por ejemplo ).
Recuerda los dichos, "no hay atajo sin trabajo" y "el que algo quiere, algo le cuesta". Investiga, que es duro pero compensa. Y si llegas a algún camino sin salida que no sepas / puedas resolver por ti mismo, pues pregunta, que seguro algun compañero te encamina.
Un saludo.