試圖控制健康條的填充量。有這個代碼:public float lerpSpeed = 2;public void FillBar(){ bar.fillAmount = Mathf.Lerp(0f, 0.7f, Time.deltaTime * lerpSpeed); Debug.Log(emotion.fillAmount);}當函數運行時,在單擊事件之后,bar.fillAmount 僅變為 0.28
1 回答

倚天杖
TA貢獻1828條經驗 獲得超3個贊
你的問題在細節上有點空洞。但是你沒有超過 0.28 的原因是因為 Mathf.Lerp 的第三個參數代表
兩個浮點數之間的插值。
因此,為了獲得正確的數量,您需要在每次填充條時設置一個變量并更新其中的值,最好是在協程或更新循環中。
public float lerpSpeed = 2;
private float t = 0;
public void FillBar()
{
bar.fillAmount = Mathf.Lerp(0f, 0.7f, t);
t += Time.deltaTime * lerpSpeed
}
- 1 回答
- 0 關注
- 118 瀏覽
添加回答
舉報
0/150
提交
取消