Unity2D设置摄像机追随和边界范围-拾艺肆

Unity2D设置摄像机追随和边界范围

在制做2D游戏时经常会遇见须要设置摄像机追随玩家的情况,通常情况下有三种处理比较简单的处理方式,第一种也是简单粗鲁的方式,把摄像机直接作为玩家的子物体就可以了草图大师怎么移动物体,其实这样做的后果就是不利于后续扩充更多的功能草图大师怎么移动物体,例如切换玩家控制的角色时,你还得想把这个摄像机的父物体改为新控制的角色的子物体,在一些视觉疗效例如摄像机联通扫过一片区域时,这些设置方法都会引起极大的限制。

第二种就是写一个脚本不断改变摄像机的位置让其位置一直和玩家保持一致,当要切换角色时改变摄像机要追踪的即可,视野联通时暂时关掉它的追踪或则设置追踪一个空物体(看上去好似是视野划过去了),后续扩充比上一种强好多。

然而上述两种方法都不好作出摄像机视野的边界疗效。

第三种方法就是使用Unity自带的插件,才能解决这些问题,导出插件的名称如图:

导出这个插件后,在组件选项中,右键添加2D,都会把场景中摄像机手动添加组件而且降低一个CMvacm1的游戏对象,这个对象可以拿来设置这个追随疗效的摄像机的各类疗效。

假如要使摄像机追随某个游戏对象,只须要把场景中的物体拖放到红线内的部份(须要追随的对象)就可以了,若果要设置边界,右键mera组件的最里边的选项平添一个2D摄像机的碰撞组件,设置摄像机的边界,随便设置一个新的空物体,添加六边形碰撞,之后将这个物体推入绿线部份,之后你才会发觉摄像机只能在碰撞体的范围内运动,之后按照自己的须要来设置边界就可以了实现需求了,这个插件能够实现关于摄像机晃动的好多疗效,才能降低自己写代码的麻烦(但问题在这个插件太久未更新,后续可能不再支持难以使用)。

但是我在使用了这个摄像机后发觉了一个问题,此时若果已有UI是绑定在玩家头上的而且渲染模式是覆盖或则摄像机,这么会引起玩家头上的UI开始飘着追随,如同右图:

想要解决这个问题,一是让让摄像机死追随玩家,而且假如遇到边界就难以解决,这些情况下,只能通过把渲染模式换成世界空间模式,而且写代码让UI控件实时跟随玩家才行,因而第三种方式相比第二种也并不是全占优势,其实假如你有更好的建议也可以在评论区提出,让我们共同进步。

来瞧瞧最后的修正疗效:

请登录后发表评论

    请登录后查看回复内容

 

昼夜

客服

点击联系站长 点击联系站长

在线时间
12:00 - 22:00

关注微信公众号

关注微信公众号
交流QQ群

244075032

站长邮箱 apeng123@88.com