2014-11-14 22 views
0

我想在角色變大時改變相機的距離。但我不希望它立即發生,而是讓相機移動一兩秒鐘到位。逐漸將相機轉換到另一個位置?

如何在一秒鐘內將相機轉換到特定位置?有沒有一種方法來緩解,緩解過渡?

Vector3 position = new Vector3 (0, 0, -transform.localScale.x); 
    Camera.mainCamera.transform.localPosition = position; 

回答

1

不是每次都直接設置相機的位置,您可以聲明一個公共Vector3作爲目標。然後在您的更新功能(每幀調用)中,您可以使用Camera.mainCamera.transform.localPosition = Vector3.MoveTowards(Camera.mainCamera.transform.localPosition, targetPosition, speed * Time.deltaTime);

這會逐漸將您的相機移動到目標位置,最多爲每幀speed * Time.deltaTime個單位。如果您想確保過渡需要一秒鐘,那麼您可以在更改目標位置的同時將speed設置爲距離。

相關問題