方法1:写代码
思路:镜头的x,y与Player的保持一致即可
ps:在写脚本的时候为什么会有大写的Transform和小写的transform?
大写的就是指Transform 类,小写的是指挂该脚本的节点的transform
方法2:插件
镜头跟踪小插件 cinemachine,然后我装不上啊,一直提示安装失败,我怀疑是路径里面有中文,so我再试一试。还真是...所以以后unity项目路径 不要有中文!!
安装成功之后新建一个2D camera 它会自动复制main camera的参数,并替代掉它
这个camera有一些参数,需要调一下
Follow的意思是相机要跟随的对象(把游戏对象赋值给它)
Lens里面是一些相机参数(暂时不用调,了解即可)
Body 的参数
Dead Zone是指:如果玩家在此区域中,镜头不移动,调不调都行,让我想起来 造梦西游的游戏效果。
很多时候角色并不是在镜头的中央,可以调节Screen X\Y
如何让游戏角色不跳出界面?
思路:给背景添加collider 镜头边边碰到了就不能出去了
第一步:给相机添加Confiner
然后就会发现有一个参数是Bounding Shape 需要复制一个碰撞体
给背景添加collider的时候必须添加polygon collider (意为多边形碰撞体)
注意,要将trigger勾选,只作为触发碰撞体使用,不然会把player直接弹飞
ps:多边形碰撞体默认是个点,如果想去掉点,按下ctrl然后点击那个点就可以了