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下的身体类型选为静态的。

相关推荐
Artistation Game20 小时前
九、怪物行为逻辑
游戏·unity·游戏引擎
百里香酚兰20 小时前
【AI学习笔记】基于Unity+DeepSeek开发的一些BUG记录&解决方案
人工智能·学习·unity·大模型·deepseek
妙为20 小时前
unreal engine5制作动作类游戏时,我们使用刀剑等武器攻击怪物或敌方单位时,发现攻击特效、伤害等没有触发
游戏·游戏引擎·虚幻·碰撞预设
dangoxiba1 天前
[Unity Demo]从零开始制作空洞骑士Hollow Knight第十三集:制作小骑士的接触地刺复活机制以及完善地图的可交互对象
游戏·unity·visualstudio·c#·游戏引擎
先生沉默先2 天前
使用Materialize制作unity的贴图,Materialize的简单教程,Materialize学习日志
学习·unity·贴图
十画_8242 天前
Visual Studio 小技巧记录
unity·visual studio
red_redemption2 天前
cpp,git,unity学习
git·unity·游戏引擎
tealcwu2 天前
【Unity踩坑】Unity更新Google Play结算库
unity·游戏引擎
先生沉默先2 天前
unity 默认渲染管线材质球的材质通道,材质球的材质通道
unity·游戏引擎·材质
白鹭float.2 天前
【Unity AI】基于 WebSocket 和 讯飞星火大模型
人工智能·websocket·unity