Question by 
               AlvinFassari · Jan 07, 2016 at 02:30 PM · 
                cameraplayerfollow  
              
 
              Camera Follows 2D player
Hi, i got this script attached at my camera but the player moves faster then the camera. Here is the script attached on the camera:
public float xMargin = 1f; // Distance in the x axis the player can move before the camera follows.
 public float yMargin = 1f;        // Distance in the y axis the player can move before the camera follows.
 public float xSmooth = 8f;        // How smoothly the camera catches up with it's target movement in the x axis.
 public float ySmooth = 8f;        // How smoothly the camera catches up with it's target movement in the y axis.
 public Vector2 maxXAndY;        // The maximum x and y coordinates the camera can have.
 public Vector2 minXAndY;        // The minimum x and y coordinates the camera can have.
 private Transform player;        // Reference to the player's transform.
 void Awake()
 {
     // Setting up the reference.
     player = GameObject.FindGameObjectWithTag("Player").transform;
 }
 bool CheckXMargin()
 {
     // Returns true if the distance between the camera and the player in the x axis is greater than the x margin.
     return Mathf.Abs(transform.position.x - player.position.x) > xMargin;
 }
 bool CheckYMargin()
 {
     // Returns true if the distance between the camera and the player in the y axis is greater than the y margin.
     return Mathf.Abs(transform.position.y - player.position.y) > yMargin;
 }
 void FixedUpdate()
 {
     TrackPlayer();
 }
 void TrackPlayer()
 {
     // By default the target x and y coordinates of the camera are it's current x and y coordinates.
     float targetX = transform.position.x;
     float targetY = transform.position.y;
     // If the player has moved beyond the x margin...
     if (CheckXMargin())
         // ... the target x coordinate should be a Lerp between the camera's current x position and the player's current x position.
         targetX = Mathf.MoveTowards(transform.position.x, player.position.x, xSmooth * Time.deltaTime);
     // If the player has moved beyond the y margin...
     if (CheckYMargin())
         // ... the target y coordinate should be a Lerp between the camera's current y position and the player's current y position.
         targetY = Mathf.Lerp(transform.position.y, player.position.y, ySmooth * Time.deltaTime);
     // Set the camera's position to the target position with the same z component.
     transform.position = new Vector3(targetX, targetY, transform.position.z);
 }
 
               }
please help me!
               Comment
              
 
               
              Your answer
 
             Follow this Question
Related Questions
problem ghosting camera with 2 objets 0 Answers
Camera Following [2D] 2 Answers
Change Camera's size relative to player's speed 0 Answers
What this error? 0 Answers
Targeting Player when Zooming Camera 0 Answers