【Unity】cinemachine核心知识

cinemachine核心知识

cinemachineVirtualCamera中body参数作用

在 Unity 的 Cinemachine Virtual Camera 中,Body 参数模块主要负责控制虚拟相机的位置(Position)逻辑,即 如何跟随目标(Follow Target),以及相机与目标之间的相对位置关系。它决定了相机的移动方式、偏移量、平滑度等核心行为,是控制相机动态跟随的核心模块

cinemachineVirtualCamera中body有哪些选项

  1. Do Nothing
    作用:此模式下,虚拟相机不会自动调整自身位置,保持初始设定的位置和姿态。这适用于你希望手动控制相机移动,或者相机在特定场景下不需要跟随目标移动的情况。例如,在游戏的开场动画中,相机静止展示一段固定画面,就可以使用该模式。
  2. Hard Lock to Target
    作用:相机直接锁定到目标对象的位置,与目标对象保持完全一致的位置。常用于第一人称视角的游戏,让玩家以目标对象(通常是角色)的视角来观察世界,就好像玩家 "附身" 在角色身上一样。
  3. Tracked Dolly
    作用:相机沿着一条预先定义好的路径移动并跟踪目标对象。路径可以是直线、曲线等多种形式。这种模式适合用于展示特定的场景或引导玩家的视线,比如在赛车游戏中,相机沿着赛道的特定路径跟随赛车,为玩家呈现精彩的比赛画面。
  4. Orbital Transposer
    作用:相机围绕目标对象进行轨道运动。可以设置相机与目标的距离、高度、角度等参数,并且可以根据需要调整相机在轨道上的旋转速度和方式。常用于第三人称视角的游戏,让玩家可以从不同角度观察角色,增加游戏的视觉体验。
  5. Framing Transposer
    作用:旨在将目标对象保持在相机画面的特定位置和大小。它会自动调整相机的位置,以确保目标对象在屏幕上占据合适的空间,并且可以根据目标的移动和大小变化进行动态调整。在 2D 游戏或者需要精确控制目标在画面中显示效果的场景中非常有用。
  6. Third Person Follow
    作用:专门为第三人称视角设计,相机通常位于目标对象的后方并稍微向上倾斜,以便玩家可以看到目标对象的全身以及周围的环境。同时,相机还会根据目标对象的移动和转向进行平滑的跟随和调整,提供舒适的视角体验。
  7. Free Look
    作用:允许相机在目标对象周围进行自由的旋转和移动。玩家可以通过输入设备(如鼠标、手柄)控制相机的视角,实现全方位的观察。常用于开放世界游戏或需要玩家自由探索环境的场景,让玩家能够自主调整观察角度。

cinemachineVirtualCamera中am参数作用以及选项

Aim 参数模块是 Cinemachine Virtual Camera 控制镜头旋转的核心工具,通过选择不同的算法(如 POV、Soft Look At),可以实现从第一人称视角到动态群体镜头的多样化效果。合理配置阻尼、输入响应和注视逻辑,是优化游戏镜头表现的关键。

有如下选项

算法类型 功能描述 适用场景
Do Nothing 不自动调整相机旋转,需手动控制(如脚本直接设置 <code>transform.rotation</code>)。 完全自定义旋转逻辑。
Hard Look At 相机直接注视目标点,无平滑过渡。 需要镜头瞬间对准目标的场景。
Soft Look At 相机平滑注视目标点,通过阻尼参数控制过渡速度。 平滑跟踪移动目标(如过场动画)。
Group Composer 同时注视多个目标,自动调整视角以包含所有目标。 多人对话、群体镜头。
POV 根据输入(如鼠标/手柄)直接控制相机的俯仰和偏航角度。 第一人称或自由视角控制。
Same As Follow Target 相机的旋转与 <code>Follow</code> 目标(父物体)的旋转同步。 固定于载具或父物体的视角。
Framing Transposer 与 Body 模块配合,保持目标在画面中的位置并自动调整旋转。 第三人称跟随镜头。
相关推荐
奔跑的犀牛先生3 小时前
unity学习23:场景scene相关,场景信息,场景跳转
unity
NoneCoder7 小时前
JavaScript系列(49)--游戏引擎实现详解
开发语言·javascript·游戏引擎
He Des1 天前
游戏引擎介绍:Game Engine
游戏引擎
无敌最俊朗@1 天前
14.模型,纹理,着色器
unity·着色器
He Des1 天前
游戏引擎分层架构与总体管线
架构·游戏引擎
Petrichorzncu1 天前
Games104——游戏引擎中物理系统的基础理论算法和高级应用
算法·游戏引擎
Dr.勿忘2 天前
C#常考随笔1:const和readonly有什么区别?
开发语言·前端·unity·面试·c#·游戏引擎
scott.cgi2 天前
「Unity3D」在Unity中使用C#控制显示Android的状态栏
unity·unity3d·android状态栏·c#控制android状态栏·unity显示状态栏
是店小二呀2 天前
【Linux】 冯诺依曼体系与计算机系统架构全解
linux·unity·系统架构