在C#中使用Vector3創(chuàng)建平滑動畫可以通過使用插值函數(shù)來實(shí)現(xiàn)。以下是一個(gè)簡單的示例代碼,演示了如何使用Vector3和Lerp函數(shù)創(chuàng)建平滑動畫:
using UnityEngine;
public class SmoothAnimation : MonoBehaviour
{
public Vector3 startPos;
public Vector3 endPos;
public float animationTime = 1f;
private float timer = 0f;
void Update()
{
timer += Time.deltaTime;
if (timer < animationTime)
{
// 使用Lerp函數(shù)計(jì)算當(dāng)前位置
float t = timer / animationTime;
transform.position = Vector3.Lerp(startPos, endPos, t);
}
}
}
在這個(gè)示例中,我們定義了起始位置startPos和目標(biāo)位置endPos,并設(shè)置了動畫的持續(xù)時(shí)間animationTime。在Update函數(shù)中,我們逐漸增加timer,并在動畫時(shí)間范圍內(nèi)使用Lerp函數(shù)計(jì)算當(dāng)前位置,從而實(shí)現(xiàn)平滑的移動動畫。
您可以根據(jù)需要調(diào)整動畫的起始位置、目標(biāo)位置和持續(xù)時(shí)間,以創(chuàng)建不同的平滑動畫效果。