Unity 2D让相机跟随角色移动

相机跟随移动

最简单的方式通过插件Cinemachine

在窗口/包管理器选择全部找到**Cinemachine,导入。**然后在游戏对象/Cinemachine创建2D Camera。此时层级中创建一个2D相机。选中人物拖入检查器Follow。此时相机跟随人物移动。

修改相机视口距离

在检查器中Lens下调正Ortho Size即可。

阻止相机超出边界

在Virtual Camer检查器中点击Add Extenison选择Cinemachine Confiner组件,在层级中创建一个新的游戏对象命名为GameConfiner添加Polygon Collider 2D组件,此时场景中会出现一个多边形拖拽线将场景包围。

在层级中选中Virtual Camera将GameConfiner拖拽到Cinemachine Confiner组件Bounding Shape 2D选项上。

运行会发现人物被挤到场景外面了,此时在Polygon Collider 2D下将是触发器选中。

阻止人物越过水面

在层级中点击Tilemap,在检查器中添加Tilemap Collider 2D组件,此时就会给地图所有精灵添加对撞机,人物将不能移动。

在Tiles文件夹下选中素材,检查器会展示相关信息碰撞类型默认是精灵,此时只需将可移动素材碰撞类型改为无即可。

在Tilemap添加Composite Collider 2D组件可提升性能会将同一区域的对撞机合并为一个,Tilemap Collider 2D下选中由复合使用。此时会自动添加一个Rigidbody 2D组件。在运行时人物移动你会发现一个问题,地图素材会受重力影响偏移,此时需将Rigidbody 2D下的身体类型选为静态的。

相关推荐
一种时光4 小时前
Unity 获取当前播放的动画,判断是否是某个动画
unity·游戏引擎
速冻鱼Kiel6 小时前
Lyra的相机系统
笔记·ue5·游戏引擎·虚幻
不绝1918 小时前
Unity入门 :场景叠加/预制体资源包/脚本资源/生命周期函数/Inspector页面
unity·游戏引擎
在路上看风景8 小时前
20. 资源和脚本的绑定关系
unity
yj爆裂鼓手11 小时前
unity对象池
unity·c#
在路上看风景12 小时前
3.7 SRP Batcher
unity
快乐觉主吖12 小时前
Unity方便修改产品名和包名的小工具
unity·游戏引擎
孟无岐13 小时前
【Laya】HttpRequest 网络请求
网络·typescript·游戏引擎·游戏程序·laya
JIes__1 天前
Unity(二)——MonoBehavior中的重要内容
unity·游戏引擎
孟无岐1 天前
【Laya】LocalStorage 本地存储
typescript·游戏引擎·游戏程序·laya