using UnityEngine;
using System.Collections;
public class FPSCameraControl : MonoBehaviour
{
public float xAxisRotateMin = -30f;//绕X轴旋转的最小度数限制
public float xAxisRotateMax = 30f;// 最大
public float xRotateSpeed = 30f; //绕X轴旋转的速度
public float yRotateSpeed = 50f; //绕Y轴旋转的速度
float yRotateAngle;
float xRotateAngle;
void Update()
{
if (Input.GetMouseButton(0))
{
yRotateAngle += Input.GetAxis("Mouse X") * Time.deltaTime * yRotateSpeed;
xRotateAngle += Input.GetAxis("Mouse Y") * Time.deltaTime * xRotateSpeed;
if (xRotateAngle < xAxisRotateMin)
{
xRotateAngle = xAxisRotateMin;
}
if (xRotateAngle > xAxisRotateMax)
{
xRotateAngle = xAxisRotateMax;
}
transform.rotation = Quaternion.Euler(new Vector3(xRotateAngle, yRotateAngle, 0));//设置绕Z轴旋转为0,保证了垂直方向的不倾斜
}
}
}
上面脚本拖拽到相机上即可。
有什么不懂的可以给我发站内消息。~~~
追问可不可以我把我的图片发给你,你帮我生成下, 网上好多的办法我都试过了,效果就是和别人认为的不一样,会不会是我的环境或者哪里设置的问题