第三人称
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
public class LookAty : MonoBehaviour
{
public Transform Player;
public Vector3 speed;
private Transform LR;
private Transform UD;
private Transform Zoom;
void Start()
{
Player = GameObject.FindGameObjectWithTag("Player").transform;
LR = transform.GetChild(0);
UD = LR.GetChild(0);
Zoom = UD.GetChild(0);
}
// Update is called once per frame
void Update()
{
float Maz = Input.GetAxis("Mouse ScrollWheel");
//transform.Translate(new Vector3(Max, May, Maz));
//if(Input.GetMouseButtonDown(0))
//{
// transform.Translate(new Vector3(Max, 0, 0));
//}
transform.position = Vector3.SmoothDamp(transform.position, Player.position, ref speed, 0.2f);
if (Input.GetMouseButton(0))
{
float Max = Input.GetAxis("Mouse X");
float May = Input.GetAxis("Mouse Y");
if (Max != 0)
{
LR.transform.localRotation *= Quaternion.Euler(Vector3.up * 100 * Time.deltaTime * Max);
}
if (May != 0)
{
UD.transform.localRotation *= Quaternion.Euler(Vector3.left * 180 * Time.deltaTime * May);
Vector3 temp = UD.transform.localEulerAngles;
UD.transform.localRotation = Quaternion.Euler(new Vector3(temp.x > 180 ? Mathf.Clamp(temp.x, 340, 359) : Mathf.Clamp(temp.x, 0, 60), temp.y, temp.z));
}
}
if (Maz!=0)
{
Zoom.transform.localPosition+= ( Vector3.forward * Maz);
Vector3 ovr = Zoom.transform.localPosition;
Zoom.transform.localPosition = new Vector3(ovr.x,ovr.y,Mathf.Clamp(ovr.z,-10,-4));
}
}
}