使用不同摄像机并管理转场的一种好方法是使用Unity制造的Cinemachine软件包。在下面的动画中,我将通过更改两个虚拟电影机摄像机的优先级在它们之间切换。
- 使用默认相机创建一个新的空白场景。
- 在场景中心添加一个球体。这就是我们要用相机观察的对象。也许如上图所示,在球体下方添加一个平面以进行定向。
- 转到“窗口”->“包管理器”。搜索并安装Cinemachine。
- 在场景中选择当前的“主摄像机”游戏对象,然后添加CinemachineBrain组件。
- 有一个名为Cinemachine的新主菜单项。选择两次“创建虚拟相机”。将添加两个带有“ Cinemachine Virtual Camera”脚本的游戏对象。 CinemachineBrain组件充当这些虚拟摄像机的协调器。
- 在场景中放置两个虚拟摄像机,然后将Sphere拖动到两个虚拟摄像机的“ Look At”属性中。
- 如果启动项目,则第一个虚拟相机将处于活动状态。您可以提高第二个虚拟摄像机的“优先级”属性,视图将过渡到第二个摄像机。或者,您可以禁用第一个虚拟相机。
- Cinemachine非常强大。您可以在CinemachineBrain组件中更改虚拟摄像机之间的过渡。选择其他“默认混合”或添加“自定义混合”以进行过渡。
- 查看一些Official Cinemachine Tutorials以释放他们的全部力量。
一种非常简单的方法是仅禁用相机组件。
我有一个场景,其中有6个具有不同后处理功能的摄像机,我的一个AA插件在禁用摄像机对象后使游戏崩溃,然后我尝试仅禁用摄像机组件。
现在它可以正常工作了:)
第二个想法就是使用脚本删除 Camera Component 并将其添加到相机对象。
如何更改相机上的标签。通常,mainCam具有MainCamera标签。
我不确定这是否行得通。