【Unity2D 2022:Cinemachine】相机跟随与地图边界

一、导入Cinemachine工具包

  1. 点击Window-Package Manager,进入包管理界面
  1. 点击All,找到Cinemachine工具包,点击Install

二、相机跟随角色

  1. 选中Main Camera,点击Component-Cinemachine-CinemachineBrain,新建一个相机之脑
  1. 投射选为正交(即没有近大远小,投射模式有近大远小)、自定义相机尺寸大小
  1. 在层级面板中新建一个虚拟相机游戏对象
  1. 在新建的虚拟相机的Follow和Look At属性中挂载Ruby游戏物体

三、创建相机移动边界

  1. 创建相机边界游戏物体Camera Move Confine

新建一个空游戏物体,挂载Polygon Collider 2D(2D多边形碰撞器)组件(红色)

将Points-paths-Element 0-Size属性设置为4(代表有四条边)(蓝色)

调整碰撞体积大小,注意碰撞体积要略小于地图边界(黄色)

  1. 将Camera Move Confine的 Is Trigger 的属性设置为True
  1. 给PlayerCamera添加Cinemachine Confiner组件,将CameraConfine游戏物体挂载到Bounding Shape 2D属性上

四、创建人物移动边界

  1. 新建一个空游戏对象PlayerMoveConfine,再添加4个子物体
  1. 分别给每个子物体添加Box Collider 2D组件,再调节碰撞体积大小使之封住地图的一条边
  1. 给角色移动边界的层级设置为PlayerMoveConfine(没有这个层级的话就创建一个)
  1. 调节碰撞层级的关系,使Player Confine层只能与Player层碰撞

本章完。感谢阅读!

相关推荐
今夜有雨.几秒前
C# 学习文档(零基础入门)
开发语言·学习·c#
软件黑马王子38 分钟前
14.事件中心:主要作用和原理
开发语言·前端框架·c#
疯狂打码的少年2 小时前
【数据库技术】复习日:关系代数 + SQL + 规范化(整理对比表)
jvm·数据库·笔记·sql
维克兜率天2 小时前
【维克】特征归一化与标准化:为什么模型对数据的“尺度“很敏感?
人工智能·笔记·python·机器学习·量化
摇滚侠2 小时前
《SpringBoot 3:入门与应用实战》第 12 章 JDBC 与事务 使用 JdbcTemplate 阅读笔记 31
android·spring boot·笔记
金字塔頂の蝸牛3 小时前
商务日语口语全手册(一)
笔记·日语·语言·外语
玖玥拾3 小时前
Lua 基础语法(二)
开发语言·unity·lua
从零开始的嵌入式之旅3 小时前
day36
linux·c语言·经验分享·笔记·嵌入式硬件
墨雨晨曦885 小时前
2026/09/07笔记
笔记
志尊宝5 小时前
Vue3 零基础每日笔记(005):ref 响应式基础——为什么 script 里要 .value
前端·javascript·vue.js·笔记