【发布时间】:2019-09-17 08:28:45
【问题描述】:
我正在实现一个像地铁冲浪者这样的游戏,但在游戏中我也有转弯。所以我的问题是如何像地铁冲浪游戏那样流畅地跟随玩家?
Transform mTransform;
Vector3 currentPos;
Quaternion rot;
public static float XOffSet = 0.2f;
private void LateUpdate()
{
float targetX = -playerScript.targetXOffset * 0.2f;
offsetPosition.x = Mathf.Lerp(offsetPosition.x, targetX, xDamping * Time.deltaTime);
Vector3 wantedPos = player_.TransformPoint(offsetPosition);
wantedPos.y = Mathf.Lerp(mTransform.position.y, wantedPos.y, playerScript.camHeightDamping * Time.deltaTime);
mTransform.position = wantedPos;
Quaternion rot_ = Quaternion.Slerp(mTransform.localRotation, player_.localRotation, Time.deltaTime * xDamping);
mTransform.localRotation = rot_;
mTransform.localEulerAngles = new Vector3(14, mTransform.localEulerAngles.y, 0);
}
上面的代码工作得很好,但是我感觉它在跟随的时候并不流畅;感觉有点生涩。如何改进我的代码。
【问题讨论】: