Так гайка должна раскачиваться не равномерно?
Если равномерно, то можно через синус просто анимировать нужный вам параметр.
Например это код, изменяет поворот по икс туда-сюда
Используется csharp
using UnityEngine;
using System.Collections;
public class Mayatnik : MonoBehaviour
{
public float speed = 5f; //скорость туда-сюда
public float amp = 30; //величина размаха
void Update()
{
transform.rotation = Quaternion.Euler(new Vector3(Mathf.Sin(Time.time * speed) * amp, 0, 0));
}
}