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

相关推荐
tealcwu1 小时前
【Unity高级】Unity URP:构建同时支持 2D 与 3D 场景的项目完全指南
3d·unity·游戏引擎
淡海水6 小时前
10-01-互操作-C#与C++边界的内存管理
unity·c#·游戏引擎·.netcore·gc
小小数媒成员8 小时前
UGUI原理(一)
开发语言·游戏·unity·游戏引擎
暴走约伯9 小时前
【VFX工具链源码拆解 04】拯救丢失的绑定:Timeline 一键克隆与层级相对路径重映射算法
unity·c#·游戏引擎·硬件工程
小小数媒成员11 小时前
Unity UGUI布局组件(LayoutGroup、ContentSizeFitter、LayoutElement)详解
unity·游戏引擎
tealcwu11 小时前
【Unity基础】Unity输入与Time.deltaTime的使用原则
unity·游戏引擎
chen_22721 小时前
godot做仪表hmi
游戏引擎·godot
郝学胜-神的一滴1 天前
AI 编程智能体 22:解析器赋能与实战落地全指南
人工智能·程序人生·游戏·unity·游戏引擎
BuHuaX1 天前
Lua 与 ToLua:运行机制及热更新原理
开发语言·unity·junit·c#·lua
Solange__2 天前
在线3D预览器、Blender和游戏引擎怎么选?按5类任务比较格式、隐私与编辑性
人工智能·游戏·3d·游戏引擎·blender·1024程序员节·关卡设计