0
Q:

unity rotate towards

var rotationVector = transform.rotation.eulerAngles;
rotationVector.z = 0;  //this number is the degree of rotation around Z Axis
transform.rotation = Quaternion.Euler(rotationVector);
//if you put this in a coroutine and yielding for some amount of time 
//you can have something like a rotating loading icon
3
using UnityEngine;//Attach this script to a GameObject to rotate around the target position.
public class Example : MonoBehaviour
{
    private Vector3 target = new Vector3(5.0f, 0.0f, 0.0f);    void Update()
    {
        // Spin the object around the world origin at 20 degrees/second.
        transform.RotateAround(target, Vector3.up, 30 * Time.deltaTime);
    }
}
4
public Transform Position; // make reference in inspector

Position.Rotate(x, y, z);
6
Quaternion.RotateTowards(Quaternion from, Quaternion to, float maxDegreesDelta);
4
     using UnityEngine;     using System.Collections;          public class SCR_mouseRotation : MonoBehaviour {                  void Update () {             Vector3 mousePos = new Vector3(Input.mousePosition.x, Input.mousePosition.z, 10);             Vector3 lookPos = Camera.main.ScreenToWorldPoint(mousePos);             lookPos = lookPos - transform.position;             float angle = Mathf.Atan2(lookPos.z, lookPos.x) * Mathf.Rad2Deg;             transform.rotation = Quaternion.AngleAxis(angle, Vector3.down); // Turns Right                 transform.rotation = Quaternion.AngleAxis(angle, Vector3.up); //Turns Left                      }     }  
1
transform.Rotate(axis, degrees);
0
 private float desiredRot;     public float rotSpeed = 250;     public float damping = 10;      private void OnEnable() {         desiredRot = transform.eulerAngles.z;     }      private void Update() {         if (Input.GetMouseButton(0)) {              if (Input.mousePosition.x > Screen.width / 2) desiredRot -= rotSpeed * Time.deltaTime;              else desiredRot += rotSpeed * Time.deltaTime;          }          var desiredRotQ = Quaternion.Euler(transform.eulerAngles.x, transform.eulerAngles.y, desiredRot);         transform.rotation = Quaternion.Lerp(transform.rotation, desiredRotQ, Time.deltaTime * damping);     }
0
transform.RotateAround(point, axis, degrees);
-1

New to Communities?

Join the community