//绑定在角色身上的脚本  
           using UnityEngine;
             using System.Collections;
public class PlayerMove : MonoBehaviour
         {
             // Update is called once per frame
             void Update()
             {
                 //按W键 前进
                 if (Input.GetKey(KeyCode.W))
                 {
                     transform.position += transform.forward * 1 * Time.deltaTime;
                 }
                 //按S键 后退
                 if (Input.GetKey(KeyCode.S))
                 {
                     transform.position += transform.forward * -1 * Time.deltaTime;
                 }
                 //按A键 向左旋转
                 if (Input.GetKey(KeyCode.A))
                 {
                     transform.Rotate(transform.up, -30 * Time.deltaTime);
                 }
                 //按D键 向右旋转
                 if (Input.GetKey(KeyCode.D))
                 {
                     transform.Rotate(transform.up, -30 * Time.deltaTime);
                 }
             }
         }
 //绑定在相机身上的脚本
             using UnityEngine;
             using System.Collections;
public class Follow : MonoBehaviour
         {
            public Transform target;
             public Vector3 offset;
             //向后的距离
             public float backDistance = 2;
            //高度
             public float topDistance = 2;
            //在LateUpdate中进行物理
             void LateUpdate()
             {
                 //设置偏移量
                 offset = -target.forward * backDistance + target.up * topDistance;
                 //使用插值,让宠物有一个平滑的移动
                 transform.position = Vector3.Lerp(transform.position, target.position + offset, Time.deltaTime);
                 //宠物的旋转和玩家的旋转保持一致
                 transform.rotation = target.rotation;
             }
         }
