小米 发表于 2024-7-15 18:43

自学Unity相机跟随人物代码含注释

public class FollowTarget : MonoBehaviour
{
//角色位置
private Transform player;
//相机偏移量
private Vector3 offset;
//平滑度
private float smoothing = 3f;
private void Start()
{
//查找角色的位置=他的标签是Player.位置
player = GameObject.FindGameObjectWithTag(”Player”).transform;
//相机和人物的偏移量=相机位置-人物位置
offset = transform.position - player.position;
}
private void LateUpdate()
{
//相机跟随度 局部坐标转换世界坐标
Vector3 targetPosition = player.position + player.TransformDirection( offset);
//相机位置=向量插值(相机位置,相机跟随度,平滑度时间)
transform.position = Vector3.Lerp(transform.position, targetPosition, Time.deltaTime * smoothing);
//相机一直望着主角
transform.LookAt(player.position);
}
}

页: [1]
查看完整版本: 自学Unity相机跟随人物代码含注释