2015-09-27 55 views
0

我試圖讓滑塊控制場景中的動畫。我需要滑塊的長度來匹配動畫的長度,當我滑動滑塊時,動畫應播放適當的部分。由UI滑塊控制的Unity 5 mecanim動畫

public Slider slider; 
public Animator animator; 

void Start() 
{ 
    slider.onValueChanged.AddListener(OnValueChanged); 
} 

private void OnValueChanged(float changedValue) 
{ 
    animator.speed = 0; 
    animator.Play("yourAnimationName", -1, slider.normalizedValue); 
} 

我也將它放在我的滑塊組件上的值改變部分,但兩者仍然不同步。我做錯了什麼/失蹤?

編輯 更新的代碼示例和刪除錯誤

回答

1

誤差約爲說得很清楚。委託必須有浮動參數。更改

private void OnValueChanged() 

private void OnValueChanged(float changedValue) 

更新:

動畫速度不要設置爲0:

public Slider slider; 
public Animator animator; 

void Start() 
{ 
    animator.speed = 0.00001f; 
    slider.onValueChanged.AddListener(OnValueChanged); 
} 

private void OnValueChanged(float changedValue) 
{ 
    animator.speed = 0.00001f; 
    animator.Play("yourAnimationName", -1, slider.normalizedValue); 
} 
+0

謝謝。我讚揚我的代碼,但我的動畫和滑塊仍然沒有下沉。這是真正的問題,我有 – Sean

+0

@我已經更新了我的答案。 –