当前位置: 首页 > article >正文

Unity游戏(Assault空对地打击)开发(3) 摄像机跟随

摄像机丝滑跟随

首先给飞机改名为Player,方便认出。

在飞机对象下创建子对象Pos,为摄像机的目标位置,把它移动到飞机后上方。

然后创建脚本:

首先创建一个存放脚本的文件夹

然后在文件夹内新建脚本CameraFollow.cs

双击打开脚本写入:

using System.Collections;
using System.Collections.Generic;
using UnityEngine;

public class CameraFollow : MonoBehaviour
{
    private Transform targetPos;
    private Transform target;

    public float smoothSpeed = 2.75f;

    private void Start()
    {
        targetPos = GameObject.Find("Player/Pos").transform; // 对象名称随机应变
        target = GameObject.Find("Player").transform; // 对象名称随机应变
    }

    private void LateUpdate()
    {
        if (target != null)
        {
            transform.position = Vector3.Lerp(transform.position, targetPos.position, smoothSpeed * Time.deltaTime);
            transform.LookAt(target);
        }
    }
}

注释版

using System.Collections;
using System.Collections.Generic;
using UnityEngine;

public class CameraFollow : MonoBehaviour
{
    private Transform targetPos;
    private Transform target;

    public float smoothSpeed = 2.75f; // 跟随速度

    private void Start()
    {
        targetPos = GameObject.Find("Player/Pos").transform; // 目标位置 位于飞机后方
        target = GameObject.Find("Player").transform; // 飞机主体
    }

    private void LateUpdate()
    {
        if (target != null)
        {
            transform.position = Vector3.Lerp(transform.position, targetPos.position, smoothSpeed * Time.deltaTime); // 平滑移动
            transform.LookAt(target); // 始终朝向飞机主体
        }
    }
}

保存后把它挂载在摄像机对象下:

运行后摄像头丝滑地移动到飞机后上方。

飞机的飞行

首先给飞机添加碰撞体和刚体,使它的运动可以符合物理学,并且不会一直往下掉。

调整碰撞体的大小:

然后在脚本目录下新建一个叫做PlayerMove的脚本:
 

记得挂载到飞机对象上去:


http://www.kler.cn/a/523696.html

相关文章:

  • DeepSeek理解概率的能力
  • SQL教程-基础语法
  • k8s支持自定义field-selector spec.hostNetwork过滤
  • java基础-容器
  • Rust语言进阶之zip用法实例(九十五)
  • [MySQL]事务的理论、属性与常见操作
  • 卡通圣诞节404动画页面模板
  • Spring Security(maven项目) 3.0.2.8版本
  • 17.Word:李楠-学术期刊❗【29】
  • C语言中string.h头文件功能介绍
  • Vscode的AI插件 —— Cline
  • Vue Vine:Vue 组件开发的新范式探索
  • spark3.5.4兼容python 3.10.x以下版本
  • 环境搭建--vscode
  • Object类(2)
  • 使用 KNN 搜索和 CLIP 嵌入构建多模态图像检索系统
  • [论文总结] 深度学习在农业领域应用论文笔记14
  • 人工智能:农业领域的变革力量
  • 如何制作浪漫风格的壁纸
  • 【PowerShell专栏】利用PowerShell开启端口的监听
  • GEE | 提取随机样本点的数据,以CHIRPS降水为例
  • Kotlin函数式API
  • 【蓝桥杯嵌入式入门与进阶】2.与开发板之间破冰:初始开发板和原理图2
  • 【Java基础-41.5】深入解析Java异常链:构建清晰的错误追踪体系
  • [Dialog屏幕开发] 设置搜索帮助
  • 双指针算法精解:对撞指针与快慢指针的妙用与实践