相机跟随

固定相机跟随:offsetPosition:相机与物体相差位置

{void Start () {
offsetPosition = transform.position - player.position;}
void Update () {transform.position = offsetPosition + player.position;}}

相机放大或缩小:

	{
	public float distance = 0;
	distance = offsetPosition.magnitude;//相机为物体相差的距离大小
	distance -= Input.GetAxis("Mouse ScrollWheel") * scrollSpeed;//大小加或者减去鼠标滑轮滚动的数值
	distance = Mathf.Clamp(distance, 4, 18);//限制距离的最大值和最小值
	offsetPosition = offsetPosition.normalized * distance;//相机的最终距离(物体为点A相机为点B,向量AB等于向量AB的摸长乘向量AB的单位向量,向量AB的单位向量模长乘角度)
	}

相机跟随的旋转:

			transform.RotateAround(player.position, player.up,rotateSpeed*Input.GetAxis("Mouse X"));//相机以player.up旋转
			Vector3 originalPos = transform.position;
			Quaternion originalRotation = transform.rotation;
			transform.RotateAround(player.position,transform.right ,-rotateSpeed*Input.GetAxis("Mouse Y"));//相机以自身旋转
			
			float x = transform.eulerAngles.x;
			if (x<10 || x>80) 
			{
				transform.position = originalPos;
				transform.rotation = originalRotation;
			}
		}
		offsetPosition = transform.position - player.position;
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值