相機跟隨和鼠標滾輪控制縮放
using UnityEngine;
using System.Collections;
/// <summary>
/// 腳本掛在相機上
/// </summary>
public class CameraFollow : MonoBehaviour {
//相機要跟隨的物體
public Transform FollowTargetTransfrom;
//相機 和 跟隨物體之間的偏移量
public Vector3 offset;
//攝像機的FieldOfView範圍
private float MinMainCameraFieldOfView;
private float MaxMainCameraFieldOfView;
void Start () {
offset = new Vector3(0.4857328f, 9.1733f, 11.28004f);
MinMainCameraFieldOfView = 20;
MaxMainCameraFieldOfView = 90;
}
// Update is called once per frame
void Update () {
}
void FixedUpdate()
{
Vector3 targetPos = FollowTargetTransfrom.position + offset;
transform.position = Vector3.Lerp(transform.position, targetPos, Time.deltaTime);
//滾輪控制視野縮放
//zoom in
if (Input.GetAxis("Mouse ScrollWheel") < 0)
{
if (Camera.main.fieldOfView +2 < MaxMainCameraFieldOfView)
{
Camera.main.fieldOfView += 2;
}
else
{
Camera.main.fieldOfView = MaxMainCameraFieldOfView;
}
}
//zoom out
if (Input.GetAxis("Mouse ScrollWheel") > 0)
{
if (Camera.main.fieldOfView > MinMainCameraFieldOfView)
{
Camera.main.fieldOfView -= 2;
}
else
{
Camera.main.fieldOfView = MinMainCameraFieldOfView;
}
}
}
}