Unity3d触摸屏手势控制镜头旋转卡位到目标对象

该文章详细讲解了在Unity3D中如何使用鼠标或触摸屏手势控制镜头平滑旋转并精准卡位到目标游戏对象。通过调整摄像机在世界坐标系中的x、y坐标,实现镜头围绕目标对象的流畅旋转效果。
摘要由CSDN通过智能技术生成

本文主要介绍如何在unity中通过鼠标或手指触控屏幕对镜头进行旋转,并实现镜头旋转卡位功能,使镜头平滑的旋转至目标角度。

镜头绕着目标对象进行旋转改变的是摄相机在世界坐标中的x、y方向的坐标值。那么我们只需要在脚本中控制相机的x\y坐标即可。

将脚本RotationTarget.cs添加到主摄相机上,在游戏场景里创建一个简单的游戏对象作为镜头旋转的参照物,将该游戏对象赋值给公开属性TargetObject;

下面是完整的RotationTarget.cs代码篇段:

using UnityEngine;
using System.Collections;

public class RotationTarget : MonoBehaviour {

	//摄相机位置的参照对象;
	public Transform TargetObject;
	//摄相机的Z轴坐标;
	private float distance = 9.0f;
	float maxDistance;
	//摄相机的角度;
	Vector3 targetV;
	//手指滑动的始\终位置;
	Vector2 firstV;
	Vector2 endV;
	//手旨在X轴方向上滑动的距离;
	float dx;
	//摄相机旋转的目标角度;
	float targetAngle;

	// Use this for initialization
	void Start () {
		maxDistance = 105.0f;
		targetAngle = 0;
		targetV = FirstCamera.transform.eulerAngles;
	}

	void Update () {

			if(Input.GetTouch(0).phase == TouchPhase.Began)
			{
				firstV
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值