Unity C# 可以在不禁用其中一台摄像机的情况下切换场景中的摄像机吗?

Ita*_*dan 0 c# unity-game-engine

我在一个场景中有两个摄像头,我想在不禁用它们的情况下在它们之间切换。是否可以?如果是,那么你能展示它是如何完成的吗?谢谢

小智 5

使用不同摄像机和管理​​过渡的一个好方法是使用 Unity 制作的 Cinemachine 包。在以下动画中,我通过更改优先级在两个 Virtual Cinemachine 摄像机之间切换。

通过更改优先级在 2 个虚拟电影机摄像机之间切换。

  1. 使用默认相机创建一个新的空场景。
  2. 在场景中心添加一个球体。这将是我们想用我们的相机观察的对象。也许还可以在球体下方添加一个平面,如上图所示,用于定位。
  3. 转到窗口-> 包管理器。搜索 Cinemachine 并安装它。
  4. 在场景中选择当前的 Main Camera 游戏对象并添加 CinemachineBrain 组件。
  5. 有一个名为 Cinemachine 的新主菜单条目。选择“创建虚拟摄像机”两次。将添加两个带有“Cinemachine Virtual Camera”脚本的游戏对象。CinemachineBrain 组件充当这些虚拟摄像机的协调器。
  6. 将两个虚拟摄像机放置在您的场景中,并将球体拖动到两个虚拟摄像机的“Look At”属性中。
  7. 如果您启动项目,第一个虚拟摄像机将处于活动状态。您可以提高第二个虚拟摄像机的“优先级”属性,视图将转换到第二个摄像机。或者,您可以禁用第一个虚拟摄像机。
  8. Cinemachine 非常强大。您可以在 CinemachineBrain 组件中更改虚拟摄像机之间的转换。选择不同的“默认混合”或为过渡添加“自定义混合”。
  9. 查看一些官方 Cinemachine 教程以释放它们的全部力量。