【发布时间】:2020-06-23 12:32:00
【问题描述】:
您好,我有一个脚本可以统一调整相机的距离,以确保对象始终完全在相机的视野中。我这样做是这样的:
Vector3 characterSize = UpdateBounds(totalPoints).size;
float objectSize = Mathf.Max(Mathf.Max(characterSize.x / 2, characterSize.y / 2), characterSize.z / 2);
float cameraView = 2f * Mathf.Tan(0.5f * Mathf.Deg2Rad * Camera.main.fieldOfView);
float rigRadius = cameraPadding * objectSize / cameraView;
在这种情况下,rigRadius 是与主体的距离,以确保相机视图包含整个对象。
我遇到的问题是,当对象在相对较小的时间段内大小发生很大变化时。相机运动感觉生涩,一点也不顺畅。
那么我该如何调整这段代码来添加某种平滑值呢?我似乎无法弄清楚。
据我所知,我需要平滑rigRadius 值,但我不知道如何:(
【问题讨论】:
标签: unity3d math camera smoothing