# MoveRotation(Quaternion)

> Rotates the rigidbody to rotation.

## Definition

* **Type:** Method
* **Namespace:** [UnityEngine](/engine/6000.7/script-reference/unityengine.md)
* **Assembly:** UnityEngine.PhysicsModule

```csharp
public void MoveRotation(Quaternion rotation)
```

### Parameters

**** (\[Quaternion]\(/engine/6000.7/script-reference/unityengine/quaternion)): The new rotation for the Rigidbody.

### Remarks

Use [Rigidbody.MoveRotation](/engine/6000.7/script-reference/unityengine/rigidbody/moverotation.md) to rotate a [Rigidbody](/engine/6000.7/script-reference/unityengine/rigidbody.md), complying with the Rigidbody's interpolation setting.

If Rigidbody interpolation is enabled on the [Rigidbody](/engine/6000.7/script-reference/unityengine/rigidbody.md), calling [Rigidbody.MoveRotation](/engine/6000.7/script-reference/unityengine/rigidbody/moverotation.md) will resulting in a smooth transition between the two rotations in any intermediate frames rendered. This should be used if you want to continuously rotate a rigidbody in each FixedUpdate.

Set [\_rotation](/engine/6000.7/script-reference/unityengine/rigidbody/rotation.md) instead, if you want to teleport a rigidbody from one rotation to another, with no intermediate positions being rendered.

### Examples

```csharp
using UnityEngine;

public class Example : MonoBehaviour
{
    Rigidbody m_Rigidbody;
    Vector3 m_EulerAngleVelocity;

    void Start()
    {
        //Fetch the Rigidbody from the GameObject with this script attached
        m_Rigidbody = GetComponent<Rigidbody>();

        //Set the angular velocity of the Rigidbody (rotating around the Y axis, 100 deg/sec)
        m_EulerAngleVelocity = new Vector3(0, 100, 0);
    }

    void FixedUpdate()
    {
        Quaternion deltaRotation = Quaternion.Euler(m_EulerAngleVelocity * Time.fixedDeltaTime);
        m_Rigidbody.MoveRotation(m_Rigidbody.rotation * deltaRotation);
    }
}
```
