Loading [MathJax]/jax/output/CommonHTML/config.js
前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >Unity虚拟相机Cinemachine教程[通俗易懂]

Unity虚拟相机Cinemachine教程[通俗易懂]

作者头像
全栈程序员站长
发布于 2022-09-01 06:10:11
发布于 2022-09-01 06:10:11
6.3K0
举报

大家好,又见面了,我是你们的朋友全栈君。

准备

在PackageManager中安装Cinemachine包。

1.CinemachineBrain组件

相当于虚拟相机的总管理。

参数介绍: Live Camera:当前显示的相机 Live Blend:过度相机时显示进度 Show Debug Text:在Game视窗里显示当前使用的相机

Show Camera Frustum:显示视锥 Ignore Time Scale:是否受TimeScale影响 World Up Override:自己设置覆盖Y轴防止万向节死锁。 Update Method:Update方法,选择默认的SmartUpdate即可。 Blend Update Method:相机混合时的Update方法。 Default Blend:混合时的曲线,比如线性或者Ease之类,也可以自定义。 Custom Blends:自定义混合方案。 Events:虚拟摄像机激活时将触发此事件。如果涉及混合,则事件在混合的第一帧时触发。

2.2D虚拟相机

通过选择菜单栏中的Cinemachine可以创建我们需要的虚拟相机。(注意相机要改为Orthographic) 参数介绍 Status Live:勾选solo意味只使用这一个相机。 Game Windows Guides:是否在游戏视窗显示线框

Save During Play:勾选后可以在运行时保存组件的修改。 Priority:根据数值大小决定优先显示哪个相机,越大的优先级越高 Follow:相机跟随目标 Look At:看向目标,相机不动(2D基本不用,大多数用Follow) Mode Override:相机模式选择 Ortho Filed:Orthographic模式下视野大小 Dutch:z轴旋转 Damping相关(阻尼):镜头缓动效果 ScreenX和ScreenY:镜头偏移 Dead Zone(死区):死区内镜头不会一直跟随。 Soft Zone(软区):在软区内镜头会缓慢跟随目标。超出软区相机会瞬移跟随。 Unlimited Soft Zone:不限制软区(去除红色部分) 下图中黑色部分为死区,蓝色部分为软区,超出红色会瞬移。

Lookahead Time:如果设置的话跟随目标点就会朝移动方向偏移,这样做比如在2D游戏中就可以看到更前面的视野。 Lookahead Smoothing:平滑值。 Lookahead Ignore Y:忽略Y轴影响。(2D游戏经常勾选,不然可能会导致镜头不稳) 黄点就是设置了Lookahead后所带来的偏移。

我们可以通过选择Extensions->AddExtension->CinemachineConfiner来为虚拟相机添加限制。

有两种方式,一种是新建一个空物体添加PolygonCollider2D组建调整好大小赋值过来。另一种如下图。

关于虚拟相机之间的切换我们常用的有两种,一种是设置Priority,会显示优先级高的。另一种是优先显示激活状态的相机,可以通过激活失活虚拟相机进行显示切换。

3.3D虚拟相机

这里只针对与2D虚拟相机的不同之处进行讲解。

参数介绍: Field Of View:Perspective模式下视野大小 Near Clip Plane:下图部分与相机距离

Far Clip Plane:下图部分与相机距离

Noise:相机效果 Noise Profile:效果选择 Amplitude Gain:振幅 Frequence Gain:频率

要用ctrl+shift+f调整相机位置时最好勾选目标相机的solo,不然可能会出bug调整所有相机。

3D镜头限制

利用Timeline控制虚拟相机

创建Timeline

我们可以在Window->Sequencing->Timeline打开Timeline面板。如果没有该选项的话可以在Window->PackageManager中进行下载。之后选中场景中物体点击Create即可创建新的Timeline。

创建后会自带一个Animation Track,并且选中物体上会添加一个Animator。我们暂时用不到直接删除。 我们可以右键左侧或者点击加号创建Cinemachine Track。

创建后需要给Track添加一个Cinemachine Brain组件。

之后直接往Track中拖入虚拟相机即可(或者右键选择Add Cinemachine Shot)。并且可以拖拽模块实现混合效果。

关于body和aim

body aim

Target Group Camera

Target Group Camera

镜头震动

镜头震动

发布者:全栈程序员栈长,转载请注明出处:https://javaforall.cn/140276.html原文链接:https://javaforall.cn

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2022年5月2,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
嵌入式- 使用寄存器点亮LED灯实验
在微控制器中,通常使用寄存器来控制某些特定的功能,例如点亮LED灯。以下是一个简单的例子,说明如何在基于寄存器的微控制器上使用寄存器点亮LED灯。
会洗碗的CV工程师
2024/02/02
5830
嵌入式- 使用寄存器点亮LED灯实验
详细介绍如何读懂STM32开发板电路原理图以及芯片文档和开发手册,并编写一个测试程序:点亮一个LED灯「建议收藏」
XX代表系列版本号,ARM公司开发的芯片大多数都是一样的,除非增加了新功能才会更正芯片手册,XX就代表该文档支持系列版本!
全栈程序员站长
2022/09/25
3.5K0
详细介绍如何读懂STM32开发板电路原理图以及芯片文档和开发手册,并编写一个测试程序:点亮一个LED灯「建议收藏」
STM32-GPIO模式+寄存器点灯
引脚的两个保护二级管可以防止引脚外部过高或过低的电压输入,当引脚电压高于VDD 时,上方的二极管导通,当引脚电压低于VSS 时,下方的二极管导通,防止不正常电压引入芯片导致芯片烧毁。尽管有这样的保护,并不意味着STM32 的引脚能直接外接大功率驱动器件,如直接驱动电机,强制驱动要么电机不转,要么导致芯片烧坏,必须要加大功率及隔离电路驱动。
云深无际
2022/02/09
7630
STM32-GPIO模式+寄存器点灯
stm32学习笔记之GPIO功能框图分析
  GPIO 是通用输入输出端口的简称,简单来说就是STM32 可控制的引脚,STM32 芯片的GPIO 引脚与外部设备连接起来,从而实现与外部通讯、控制以及数据采集的功能。STM32 芯片的GPIO被分成很多组,每组有16 个引脚,如型号为STM32F103VET6 型号的芯片有GPIOA、GPIOB、GPIOC 至GPIOE 共5 组GPIO,芯片一共100 个引脚,其中GPIO就占了一大部分,所有的GPIO引脚都有基本的输入输出功能。
用户6754675
2019/12/23
1.6K0
STM32F407 GPIO口输出配置配置步骤
STM32F407ZGT6 是意法半导体(STMicroelectronics)公司推出的一款高性能ARM Cortex-M4核心的32位微控制器(MCU)。它是 STM32F4 系列的一员,具备强大的处理能力和丰富的外设功能,适用于各种应用领域。
DS小龙哥
2023/07/08
7590
STM32F407 GPIO口输出配置配置步骤
(三)STM32基础——GPIO介绍
        GPIO(General Purpose Input Output)叫做通用输入输出口,可配置为8种输入输出模式。
小点点
2022/12/12
1.2K0
(三)STM32基础——GPIO介绍
【STM32H7教程】第17章 STM32H7之GPIO的HAL库API
本章教程为大家讲解GPIO(General-purpose I/Os)的API使用和注意事项。GPIO是所有外设里面较容易掌握的,但也是用到最多的。
Simon223
2019/05/15
1.6K0
STM32F407 串口配置步骤
介绍STM32F407串口配置步骤,完成串口的数据发送与接收、实现中断接收,支持printf重定向。
DS小龙哥
2023/07/08
7430
STM32F407 串口配置步骤
【STM32】IO口取反 | 寄存器方式 | 异或运算符 | 原理
在嵌入式系统中,IO口(输入/输出口)的控制是非常基础且重要的操作。STM32作为一种广泛使用的微控制器,提供了多种方式来操作其IO口。其中,利用寄存器直接操作和使用异或运算符来取反IO口的状态是一种高效且灵活的方法。本文将详细介绍如何通过寄存器方式和异或运算符对STM32的GPIO引脚进行取反操作,帮助读者深入理解这一过程。
LuckiBit
2024/12/11
7110
【嵌入式】手把手教你入门STM32的GPIO:初识GPIO输出
STM32是一系列基于ARM Cortex-M内核的32位微控制器。该系列微控制器广泛应用于计算机、通讯、工业自动化、消费电子、汽车电子、医疗仪器及家庭电器等领域。该系列控制器具有高性能、低功耗、智能化等特点。其中,GPIO就是STM32控制器中的一种重要的通用输入输出口。
用户10923087
2024/10/16
1.8K0
【嵌入式】手把手教你入门STM32的GPIO:初识GPIO输出
单片机零基础学习之从“点灯”入门STM32
  本篇文章通过一个简单的例子来熟悉模块化编程以及利用库函数的方法进行开发使用STM32外设的基本流程。
用户6754675
2020/01/13
7970
STM32寄存器讲解
原理讲解 芯片讲解 STM32F103芯片 我们看到的 STM32 芯片是已经封装好的成品,主要由内核和片上外设组成。若与电脑类比,内核与外设就如同电脑上的 CPU与主板、内存、显卡、硬盘的关系。 STM32F103采用的是 Cortex-M3内核,内核即 CPU,由 ARM公司设计。ARM公司并不生产芯片,而是出售其芯片技术授权。芯片生产厂商(SOC)如 ST、TI、Freescale,负责在内核之外设计部件并生产整个芯片,这些内核之外的部件被称为核外外设或片上外设。如 GPIO、USART(串口)、I2C、SPI等都叫做片上外设。(采用野火官方的介绍)。
跋扈洋
2021/02/02
1.8K0
STM32寄存器讲解
物联网-GPIO输出—使用固件库点亮LED灯
本实验板连接了 3 个 LED 灯,这些 LED 灯的阴极都是连接到 STM32 的 GPIO 引脚, 只要我们控制 GPIO 引脚的电平输出状态,即可控制 LED 灯的亮灭。 若您使用的实验板 LED 灯的连接方式或引脚不一样,只需根据我们的工程修改引脚即可,程序的控制原理相同。
会洗碗的CV工程师
2024/02/05
3390
物联网-GPIO输出—使用固件库点亮LED灯
GPIO基本知识
GPIO是通用输入/输出端口的简称,是STM32可控制的引脚。GPIO的引脚与外部硬件设备连接,可实现与外部通讯、控制外部硬件或者采集外部硬件数据的功能。那STM32引脚是如何分类的?GPIO内部结构是怎样的,随海翎光电的小编一起看看吧!
利又德智能感知
2023/07/07
2.5K0
GPIO基本知识
STM32F103GPIO-LED点灯
GPIO(General-Purpose IO ports,通用输入/输出接口),用于感知外界信号(输入模式)和控制外部设备(输出模式),如图 6.1.1 所示的STM32F103ZET6芯片四周的细引脚就是GPIO。
韦东山
2022/05/05
9850
STM32F103GPIO-LED点灯
STM点滴一
就就是你用BSRR和BRR去改变管脚状态的时候,没有被中断打断的风险。也就不需要关闭中断。
用户4645519
2020/09/07
3760
STM点滴一
STM32 GPIO的原理、特性、选型和配置
STM32 GPIO是通用输入/输出端口的英文简称,其可实现输入、输出、驱动、通信等功能,STM32的I/O 端口有8种模式(4种输入模式和4种输出模式),每个 I/O 端口位支持3种最大翻转速度(2MHz、10MHz、50MHz),均可自由编程,但I/O 端口寄存器必须按 32 位字、半字(16位)或字节(8位)进行访问,具体模式如下所示:
不脱发的程序猿
2021/01/20
1.2K0
【STM32】GPIO口以及EXTI外部中断
输出模式下可控制端口输出高低电平,用以驱动LED、控制蜂鸣器、模拟通信协议输出时序等
s-little-monster
2024/08/09
5880
【STM32】GPIO口以及EXTI外部中断
物联网-GPIO输入—按键检测
通过按键控制三个LED灯的关灭,按下按键k2,LED显示流水灯样式,按下按键k3,LED从新开始显示流水灯。
会洗碗的CV工程师
2024/02/07
5110
物联网-GPIO输入—按键检测
STM32F407 GPIO口输入配置配置步骤
介绍STM32F407新建寄存器工程流程,介绍输入模式的配置方式,以按键为例完成按键输入检测。
DS小龙哥
2023/07/08
4190
STM32F407 GPIO口输入配置配置步骤
相关推荐
嵌入式- 使用寄存器点亮LED灯实验
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档