【发布时间】:2021-06-14 00:24:36
【问题描述】:
我正在制作一个无尽的跑步游戏,比如 Temple Run。相机在偏移处跟随玩家。当相机离玩家太近时,抖动变得非常明显。我认为当相机远离玩家时(在游戏开始时,尚未达到偏移量时),它仍然是抖动的。
如何解决抖动问题?
摄像头代码:
private void Start()
{
tempPos = target.position;
offset = transform.position - target.position;
}
// Update is called once per frame
void LateUpdate()
{
Vector3 followPos = target.position - target.forward * trailDistance;
followPos.y += heightOffset;
tempPos += (followPos - transform.position) * cameraDelay;
//var targetRotation = Quaternion.LookRotation(target.transform.position - transform.position);
//transform.rotation = Quaternion.Slerp(transform.rotation, targetRotation, turnSpeed * Time.deltaTime);
Vector3 smoothedPosition = Vector3.SmoothDamp(transform.position, tempPos, ref velocity, smoothSpeed);
transform.position = smoothedPosition;
transform.LookAt(target.transform);
}
【问题讨论】: