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

相关推荐
BuHuaX12 小时前
Unity_数据持久化_IXmlSerializable接口
xml·unity·c#·游戏引擎·游戏策划
lihongli00012 小时前
消息系统技术文档
网络·unity·游戏引擎
Edision_li17 小时前
基于Mediapipe_Unity_Plugin实现手势识别
unity·游戏引擎·unity 手势识别
与火星的孩子对话18 小时前
Unity Shader编程完全入门指南:从零到实战 C# 实战案例
unity·c#·游戏引擎
谷宇.18 小时前
【Unity3D实例-功能-镜头】第三人称视觉
游戏·unity·unity3d·游戏开发·游戏编程·steam
两水先木示18 小时前
【Unity3D】Shader圆形弧度裁剪
unity·shader·圆形裁剪·弧度裁剪
深海潜水员1 天前
【Unity】背包系统 + 物品管理窗口 (上)
开发语言·vscode·游戏·unity·c#·游戏引擎
伽蓝_游戏1 天前
Unity UI的未来之路:从UGUI到UI Toolkit的架构演进与特性剖析(6)
游戏·ui·unity·架构·c#·游戏引擎·.net
X_StarX2 天前
【Unity笔记04】数据持久化
笔记·unity·游戏引擎·数据存储·数据持久化·大学生
AgilityBaby2 天前
解决「CPU Virtualization Technology 未开启或被占用」弹窗问题
ue5·游戏引擎·无畏契约·cpu 虚拟化技术