Sunday, 9 October 2016

CamearaFollw

using UnityEngine;
using System.Collections;

public class CamearaFollw : MonoBehaviour {

private Vector2 velocity;

public float smoothTimeY;
public float smoothTimeX;

public GameObject player;

public bool bounds;

public Vector3 minCameraPos;
public Vector3 maxCameraPos;

void Start () {

player = GameObject.FindGameObjectWithTag ("Player");

}

void FixedUpdate () {

if (player == null) {

transform.position = new Vector3 (transform.position.x, transform.position.y, transform.position.z);
}
if (player != null) {
float posX = Mathf.SmoothDamp (transform.position.x, player.transform.position.x, ref velocity.x, smoothTimeX);
float posY = Mathf.SmoothDamp (transform.position.y, player.transform.position.y, ref velocity.y, smoothTimeY);

transform.position = new Vector3 (posX, posY, transform.position.z);
}
if (bounds)
{

transform.position = new Vector3(Mathf.Clamp(transform.position.x, minCameraPos.x , maxCameraPos.x),
                                Mathf.Clamp(transform.position.y, minCameraPos.y , maxCameraPos.y),
                                Mathf.Clamp(transform.position.z, minCameraPos.z , maxCameraPos.z));
}
}
}

No comments:

Post a Comment