【Unity2D】相机移动以及设置相机边界

添加相机

添加相机时,首先需要在unity中添加 Cinemachine 包

第一次使用这个包时,需要在Package Manager中搜索并安装

 安装Camera Mechine包后,添加2D Camera

设置跟随对象为Ruby (从Hierarchy中将Ruby拖动到Follow中)

 

同时,由于世界是有边界的,要为相机设置边界

通过添加Extension为相机添加Confiner(约束)

常用的约束有Composite Collider 2D 或 Polygon Collider 2D。对应着下面两种设置相机边界的方法

在Extension中选择要添加的Confiner

 

下图是使用Polygon Collider 的示例

设置相机边界

  在Hierarchy中添加空物体 

 使用Polygon Collider(五边形碰撞体边界),所以在空物体中添加Polygon Collider 2D 组件

 点击 Edit Collider ,拖动五边形,设置五边形边界的位置为合适位置

此时,如果尝试单击 Play 来运行游戏,你的角色将从屏幕上消失。如果在 Scene 视图中查看,就会看到角色被推到了世界之外。因为世界现在位于大型碰撞体内,所以物理系统会直接将你的角色推出去。

所以需要给 Polygon Collider设置层级

点击Inspector上方的 Layers 然后Edit Layers

编辑一个合适的层级作为我们的Polygon Collider的层级,将其改名为Confiner

然后将 Polygon Collider的Layer选定为Confiner

 

 选择 Edit > Project Settings > Physics 2D,然后取消勾选 Confiner 图层中的所有条目

这样Confiner将不会与任何其他物体碰撞

做完以上工作,我们的相机就可以实现跟随了,并且人物走到边界时,相机将不再移动

最后,我们为地图的四周设置碰撞体边界,即可防止相机不移动而人物仍可穿过地图边界

这个只需要在Hierarchy中添加四个空的Object,在Object中添加Box Collider组件,将其拉成矩形移动到地图的四边即可

如图,这是我的地图的下边界

同理设置上,左,右边界即可

选择Create Empty Child 创建一个空文件夹,命名为Confiners ,将 Confiner 、上下左右边界均添加到Confiners中,这样便于管理我们所有的边界

 到这里就完成了!

 

 

 

 

 

 

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值