学习参考:b站Up主M_Studio(麦扣老师)的3DRPG系列教程
当前游戏已经实现了人物可以移动到点击位置。
但是存在一个问题,镜头始终是固定的,如上图所示,当人物向前移动时,它会距离镜头越来越远。可以使用Cinemachine包让摄像机一直跟随人物进行移动。
1.安装Cinemachine
在Package Manager中选中 Package :Unity Resgistry
搜素cinemachine进行安装,我使用的Unity是2020.2版本,所支持的cinemachine是2.6.3。
安装成功以后在菜单栏会显示cinemachine窗口,里面有很多种相机可以使用,这篇文章中使用第一个virtual虚拟相机。
虚拟相机创建以后会替代原有的Main camera
2.创建虚拟相机
1.选中Mian camera相机,找到菜单栏GameObject选择Align view to Selected
,将选择的物体锁定固定的Scene的窗口视角。
2.选择菜单栏Cinemachine的第一个Create Virtual Camera
创建虚拟相机,这是层级窗口中就会多出一个虚拟相机,它已经顶替了原有的MainCamera。
如图MainCamera上已经有了CinemachineBrain即cinemachine的大脑,CM vcam1就是新建的虚拟相机。
3.人物跟随选项设置
1.在CM vcam1虚拟相机的设置里进行修改Body选择frame
,Aim选择Do nothing
2.设置跟随点,把人物拖拽到follow
里
此时,选择游戏Game预览窗口,如下图所示
现在的cinemachine已经锁定了人物的下半身位置,屏幕的中心有一个小黄点,这是摄像机跟随人物的点,这个点其实是游戏人物的中心点。可以在人物的预制体里看到,人物默认的坐标位置就是根据小狗脚下的点。
4.适当调整跟随点
如果希望跟随人物的中心点可以在人物稍微靠上的位置。可以给人物创建一个空的字物体,起名LookAtPoint
,然后将这个字物体的位置向上,修改Y轴到达人物中心点的位置,然后在cinemachine里将这一个点重新拖拽到Follow里。
再次选中虚拟相机在game窗口中预览,对比上一张图黄色的中心点从人物的脚底挪到了人物中间的位置。
5.设置宽容度和相机距离
设置一些相机宽容度可以实现人物移动的过程中相机有一个缓慢跟随的效果。
调整Body里的DeadZoon
,我这里设置宽和 搞都是0.05,并且我这里把相机距离设置为12,使相机视角稍微变大。
与文章开始的效果图对比,已经实现了相机跟随人物移动的效果: