- Home /
Camera Follow Positive Y only - C#
I am trying to make a game in which the objective is to have the character reach a certain height. I am trying to have the camera follow the player only on the Y axis yet do not want the camera to follow if the the player falls from its current height. I need this as I intend to add a kill trigger for player death if it falls below the screen. Currently my camera follows the player both when climbing and falling. Current camera script is below. Thanks in advance for any advice! :D
using UnityEngine; using System.Collections;
public class CameraFollow : MonoBehaviour {
Transform player;
float offsetY;
// Use this for initialization
void Start () {
GameObject playerObj = GameObject.FindGameObjectWithTag("Player");
if(playerObj == null) {
Debug.LogError("Could not find an object with tag 'Player'");
}
player = playerObj.transform;
offsetY = transform.position.y - player.position.y;
}
// Update is called once per frame
void Update () {
if(player != null) {
Vector3 pos = transform.position;
pos.y = player.position.y - (offsetY/2);
transform.position = pos;
}
}
}
Answer by darthtelle · Apr 02, 2014 at 09:31 AM
You could place a cap value on the camera position so when the position is updated it will never fall below a certain height.
void Update()
{
// ... Previous code here
transform.position = pos;
if(transform.position.y < k_MinCameraHeightY)
transform.position.y = k_MinCameraHeightY;
}
Your answer
Follow this Question
Related Questions
Need Help Flipping my character depending on if the mouse is left or right. 1 Answer
[Please Help!] How Can I Make The Tip Of My Ship Follow My Cursor? 0 Answers
How can I limit the rotation on the Y axis so the player cant spin the camera 360 in an FPS game? 0 Answers
Help!Crash! FatalError"Callback registration failed kMaxCallback" 1 Answer
How to reset character orientation based on direction the camera is facing 1 Answer