2024-03-12
分类:开源工具
阅读(169) 评论(0)
#关于摄像机
使用Cinemachine 的 Unity 包
使摄像机跟随你的主角
包就是一堆代码和资源,可以使用 Package Manager 将包添加到项目中
\>method
创建复杂的 3D 摄像机设置,从而允许在多个摄像机之间移动和切换。
\>正反打
2D helper 功能
\>将摄像机限制在特定边界范围内,使之不会显示地图边界之外的对象。
Cinemachine 使用虚拟摄像机,你可以在每个虚拟摄像机上选择不同的设置,然后告诉实际摄像机(在 Hierarchy 中名为 Main Camera)当前哪个虚拟摄像机处于活动状态,以便可以复制设置。
在你的示例中,只需更改 CM vcam1 虚拟摄像机上的设置,实际摄像机就会复制这些设置。
#创建摄像机
1. Window \> Package Manager-\>Cinemachine-\>Install![](https://img1.51tbox.com/static/2024-03-12/col/6f3a06d1ba51d162ca2135c00f97bf93/47192caecd4745b88dd40f5083911d72.png.jpg)
2. 将 Cinemachine 2D 摄像机添加到场景中
\> GameObject \> Cinemachine \> Create 2D Camer
#摄像机设置
缩放:Inspector \> Lens \> Orthographic Size
##摄像机模式
1. 透视:所有远离摄像机的线都会汇聚到一个点,因此距离摄像机越远,看起来就越小。这有点像一条直路在远处消失,这条路的两边看起来就像汇聚成了一个点。
2. 正交:所有平行线将保持平行。 \>2D默认正交orthographic
###Orthographic size
在摄像机的一半高度内可容纳多少个单位
\>由于我们将该属性设置为 5,所以可以在屏幕的垂直方向上看到 10 个世界单位
ps.宽度会随屏幕分辨率不同改变,但**垂直高度**相同
##跟随主角
将主角从Hierarchy拖到Inspector \> Follow
##摄像机边界
\>可以在地图边界添加阻止前进的方格
1. Inspector-\>Add Extension-\>CinemachineConfiner \>Confiner 需要使用 Composite Collider 2D 或 Polygon Collider 2D 作为边界
###exp.Polygon Collider 2D
1. Hierarchy\>Create按钮\>Create Empty(命名CameraConfiner)
2. Add Component \> Polygon Collider 2D \> Edit Collider
3. Inspector \> Points \> Element0\&size \>Size:4 点设置将值取整(保留一位小数)+X、Y两两相等确保边框是直线 ![](https://img1.51tbox.com/static/2024-03-12/col/6f3a06d1ba51d162ca2135c00f97bf93/6977410e01a849938b4a31f4ed313d39.png.jpg) 将主角从Hierarchy拖到Inspector \> Virtual Camera(vcm) \> CinemachineConfiner \> Bounding Shape 2D \>由于世界处在大型碰撞体中,角色被物理系统推出地图外
###图层设置
1. Inspector 右上角 \> Layer \> Edit Layer。
2. 选择一个空字段并将其命名为 Confiner。
3. 在 Confiner 游戏对象上,将 Layer 下拉选单设置为 Confiner。
4. Edit \> Project Settings \> Physics 2D-\>Layer Collision Matrix,取消勾选 Confiner 图层中的所有条目
众生皆苦,唯有自渡!