- Home /
problem with smooth camera look at target
hi all. it may sound really easy but it doesn't work right how can i make my camera smoothly look at target game object in the scene. so, i already have a script to shoot a ray from my camera toward mouse position and place an empty game object as a target at hit point.and i also have a script to make my camera smoothly look at that target.the problem is that, my camera who is being rotated toward the target is also responsible for shooting the ray, which makes my camera to rotate toward the target forever and it never stops.even if i'm not moving the mouse cursor, my camera will automatically rotates toward the target.how do tell the camera to stop look at target when it fully facing the target.(i made a simple scene to show the problem here(http://www.mediafire.com/file/c6du6jdjugt8b13/cam+look.unitypackage) i also made a gif (http://www.mediafire.com/view/55phgr5qrhy8fk1/record.gif)
and here are the scripts.
public Transform target;
public float speed;
public float minimumX;
public float maximumX;
public float minimumY;
public float maximumY;
void Update()
{
////// look at
Quaternion OriginalRot = transform.rotation;
transform.LookAt(target);
Quaternion NewRot = transform.rotation;
transform.rotation = OriginalRot;
transform.rotation = Quaternion.Lerp(transform.rotation, NewRot, speed * Time.deltaTime);
////////clamp rotation
float ry = transform.eulerAngles.y;
if (ry >= 180) ry -= 360;
float rx = transform.eulerAngles.x;
if (rx >= 180) rx -= 360;
transform.eulerAngles = new Vector3(Mathf.Clamp(rx, minimumX, maximumX), Mathf.Clamp(ry, minimumY, maximumY), 0);
}
}'
and here is the script to shoot ray
public float distance;
public LayerMask layers;
public Transform target;
public Camera cam;
void Update()
{
Ray ray = cam.ScreenPointToRay(Input.mousePosition);
RaycastHit hit;
if (Physics.Raycast(ray, out hit, distance, layers))
{
Debug.DrawLine(ray.origin, hit.point, Color.red);
target.position = hit.point;
}
}
}
any idea how to stop the camera from automatic rotation?
Your answer
Follow this Question
Related Questions
Camera follow player when player rotates in y-axis 1 Answer
Camera/can't turn on X 1 Answer
How can I mimic a Camera from a game to my project? 1 Answer
Free camera look question 2 Answers