稳定性
在操控玩家时,我们会发现玩家移动时,摄像头会有抖动,这是摄像机过度精确造成的。
创建名为RoundCameraPos的C#脚本,用Visual Studio打开
代码
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using Cinemachine;//导入Cinemachina框架//必须继承CinemachineExtension才能附加到Cinemachine处理管道的组件
public class RoundCameraPos : CinemachineExtension
{public float PixelsPerUnit = 32;//世界单元显示32个像素protected override void PostPipelineStageCallback(CinemachineVirtualCameraBase vcam, CinemachineCore.Stage stage, ref CameraState state, float deltaTime){if (stage == CinemachineCore.Stage.Body)//如果处于Body阶段,那么可以设置虚拟摄像机在space的位置{Vector3 pos=state.FinalPosition;//获取虚拟机的最终位置Vector3 pos2 = new Vector3(Round(pos.x), Round(pos.y), pos.z);//四舍五