Cinemachine 1.虚拟摄像机
安装Cinemachine
通过Packages Manager,选择Unity Registry,可以搜到Cinemachine。
添加虚拟摄像机(Virtual Camera)
选择Virtual Camera,此时会在主摄像机上添加CinemachineBrain,它用来控制不同摄像机的切换,混合,另外自动生成一个虚拟摄像机。
Live Camera 显示当前正在使用的相机。
Live Blend 当发生相机切换时,这里会显示对应的相机,类似“相机2from相机1”。
Show Debug Text 会在Game视图左上角显示当前使用的相机和相机之间的切换。
Show Camera Frustum 显示当前相机的视锥体。
World Up Override 设置相机向上的向量,默认None表示世界空间中Y轴的方向,即 (0, 1, 0)。不然使用设置的GameObject的Y轴的方向。在俯视角游戏中设置该选项可以避免万向节锁(gimbal-lock)。
Update Method 更新相机位置和旋转,与什么方法同步。
- Fixed Update 与物理引擎同步。
- Late Update 与画面绘制同步,MonoBehaviour 中的 LateUpdate。
- Smart Update 根据目标的更新方式更新每个虚拟相机。
- Manual Update 写代码更新。
Blend Update Method 两个相机切换时与什么进行同步。
Default Blend 默认的相机切换模式。
Custom Blends 自定义两个相机间的切换模式。
Camera Cut Event 相机发生瞬间切换(Cut)时触发的事件。
Camera Cut Event 相机在非瞬间切换时,第一帧触发的事件。
可以看到虚拟相机的几个重要模块
- Lens:调整FOV参数
- Body:控制相机与目标物之间的相对位置
- Aim:控制相机的旋转
- Noise:相机抖动
- Extensions:扩展模块,如碰撞处理等。
Body提供了几种算法设置虚拟相机的移动
- 3rd Person Follow:第三人称跟随
- Framing Transposer:屏幕空间中保持相机和目标物的相对位置,常用于2D游戏
- Hard Lock To Target:把相机和目标物位置朝向进行绑定,常用于第一人称游戏
- Orbital Transposer:玩家可以控制相机在一个圆环上移动
- Tracked Dolly:相机沿着预设的轨道移动
- Transposer:相机和目标物的相对位置固定
Aim提供了几种算法来控制相机的旋转
- Composer:保持目标物在镜头内,可以设置多种约束
- Group Composer:保持多个目标物在相机内
- Hard Look At:保持目标物在相机中心
- POV:根据用户的操作旋转相机
- Same As Follow Target:将相机的旋转设置为跟随目标的旋转
跟随效果(Follow)
点Solo按钮会切换到当前相机能看到的画面。
Save During Play表示游戏运行时修改参数也会保存下来。
Follow是跟随的物体
Follow Offset设置相机的偏移量
Body属性选择相机跟随的方式,Transposer表示跟随目标移动,并在世界空间中保持相机和跟随目标之间的距离。
多个摄像机时,Priority设置优先级。
Damping用于设置阻尼,也就是相机移动的速度。
Follow和Body的设置只会影响到相机的Position,不会影响Rotation。
注视(Look At)
将模型的某个节点添加到Look At,相机会注视这个节点。
Aim属性用于设置相机旋转时使用什么算法,Composer为保持目标物体在镜头内。
屏幕中间空白的是死亡区,节点在这个区域内,摄像头就不会旋转。外圈蓝色的是缓冲区,当节点进入缓冲区,摄像机才会旋转并尽量保持节点在死亡区内。最外圈红色表示节点不能进入的区域。
Look At和Aim的设置只会影响到相机的Rotation。
抖动(Noise)
Noise用于设置一些摄像机抖动效果
参考视频
Cinemachine 1.虚拟摄像机相关推荐
- Softcam虚拟摄像机下载破解和使用
Softcam虚拟摄像机 下载地址http://www.xdowns.com/soft/softdown.asp?softid=17116 用户名: Registered Email: bill@ ...
- DirectX 3D_基础之模型表示 顶点格式 三角形 索引 虚拟摄像机 投影窗口 绘制流水线 局部坐标系 观察坐标系 世界坐标系 背面消隐 光照 裁剪 投影 视口变换 光栅化
每日一语: 当一切都安于现状后,这个社会就无法发展,也就无法从原始社会发展到现代社会,对于人也是一样,如果我们一直安于现状,就无法有更大更好的发展,我们不要想着,一直可以过安逸的生活,程序员这个职业, ...
- Unity3D实战【七】Cinemachine Post Processing 摄像机跟踪和后处理
一.摄像机跟随 1.PackManger中安装Cinemachine 2.点击菜单栏的Cinemachine->Create Virtual Camera,会代替原来的Main Camera 3 ...
- 【Unity3DRPG入门学习笔记第七卷】Cinemachine Post Processing 摄像机跟踪和后处理
一.相机跟随 1. 安装 Cinemachine 插件 2. 在 Hierarchy 面板中右键创建 Virtual Camera 3. 设置 Virtual Camera 参数 角色的中心默认在脚那 ...
- Unity 3D模型展示框架篇之自由观察(Cinemachine)
本项目将整合之前Unity程序基础小框架专栏在Unity 3D模型展示项目基础上进行整合,并记录了集成过程中对原脚本的调整过程.增加了Asset Bundle+ILRuntime热更新技术流程. 在U ...
- rPPG —— 非接触式心率测量程序
项目简介 heartbeat是一个国外的大佬发起的项目,自2016年维护至今,主要用途是利用视频图像完成非接触式心率测量,主要应用到的技术有深度学习和计算机视觉. 该项目拥有PC.Web.安卓三个版本 ...
- [Unity][FlowCanvas] FlowScript 实现切换当前 CineMachine 摄像机
cinemachine 的使用是需要在主摄像机上添加一个 cinemachine brain 组件,然后这个 brain 统一调控所有 cinemachine 的切换 假设先不管 cinemachin ...
- Unity Cinemachine之第三人称摄像机CinemachineFreeLook属性详解
演示 CinemachineFreeLook是一个第三人称视角相机插件,功能非常强大,内置了很多属性可以供开发者根据需求进行调整. 创建 首先是Cinemachine插件的导入,如果是2018以后 ...
- Unity虚拟相机Cinemachine教程
准备 在PackageManager中安装Cinemachine包. 1.CinemachineBrain组件 相当于虚拟相机的总管理. 参数介绍: Live Camera:当前显示的相机 Live ...
最新文章
- C语言访问MYSQL数据库的完整的代码例子
- Windows Mobile Crossbow详尽评测
- 看似简单的问题 静态方法和实例化方法的区别
- 设计一个shell程序,在/userdata目录下建立50个目录,并对每个目录给754权限!
- matlab中去掉矩阵重复行并且不改变原顺序
- 复杂知识库问答最新综述:方法、挑战与解决方案
- 辗转相除求最大公约数
- 页面跳转的方法以及301 和 302的区别
- laravel 数据库获取值的常用方法
- Vue给项目添加进度条
- Android学习按键事件监听与Command模式
- 叮!您收到一份超值Java基础入门资料! 1
- 95-080-048-源码-启动-启动standalonesession
- 解析对象体内与方法体内引用内部方法的不同
- 接口调用导致阻塞_RocketMQ与Dubbo之间线程之间如何阻塞和唤醒
- ip冲突 scan windows_如何检测IP有冲突 - 卡饭网
- 软件需求工程 高校教学平台 项目总体计划
- laravel框架使用phpQuery库来实现网页抓取
- 几种常用英文信件范文
- NLP学习笔记30-SVM 对偶、KTT,核函数
热门文章
- bui 教程php,bui框架前端自定义配色基础属性
- Oracle 复习大纲 知识点大全
- 美图秀秀快速将多张图片拼接成长图的方法
- 【JAVA程序设计教程 第三版 雍俊海】8.8 编写多文档文本编辑器
- LaTeX详细安装+电子科大模板运行
- Kotlin与Java单利模式对比实现
- 「 SLAM lesson-3.4 」欧拉角度定义、应用、缺点
- 跳伞的时候,伞包拉不开,如何自救?在线等... ..
- Echo:代理IP系统“4G新纪元”
- 做跨境电商,人工客服成本太大怎么办?教你这一招!