UE4 制作一款动画播放器
因為網上關于利用UE4 設計控制3D動畫播放的方法沒有教程,因此,制作過程非常艱難,基本處于一邊嘗試一邊制作的狀態。也希望通過這篇博客,填補一下這個區域的空白。
主要涉及動畫藍圖的制作
1.確定全部的操作,包括:開始,暫停,倍速,后退操作:
2.在你想要控制的模型的骨架右鍵--創建--動畫藍圖:
3.打開這個動畫藍圖,可以發現有兩個界面,分別是動畫圖表和事件圖表,我們的主要操作在事件圖表上打開事件圖表。可以發現有兩個默認的方法,分別為 blueprint Update Animation,和blueprint Begin Play ,前者表示藍圖在動畫播放的每幀都進行更新,后者表示在開始的時候執行。在這里我們主要使用Blueprint Update Animation 事件
4.我們想一下都需要設置什么變量,控制速率的時候需要一個浮點類型的變量show_speed,控制暫停和開始需要一個布爾型變量play,h獲取當前播放時間的浮點類型time了,因為將模型放在了一個Pawn上,因此我在pawn的藍圖中創建了這些變量(右邊的眼睛表示這個變量是不是public類型):
5.來制作動畫播放速率的控制按鈕,我這里設定了播放速率在0.5-4之間,當達到4之后會返回為0.5,每點擊一次,播放速率增加0.5,為“倍速”按鈕添加Onclicked 事件:
因為,show_speed在teacherDemoCharater的藍圖中,因此需要先進行類型轉換,之后訪問TeacherDemoCharacter藍圖中的變量或者方法。
6.讓我們回到動畫藍圖中,在這里單擊右鍵,可以看到很多montage的方法,在這中間有一個方法的名字叫做Montage Set Play Rate,有三個輸入參數,分別是目標,需要播放的Montage,以及播放的速率,之后,我們獲得剛才設置的播放速率接在上面就可以了。
ps:不要忘記在藍圖進行Montage動畫的播放:
7.之后讓我們看一下效果,為了能夠實時看出來效果,將show_speed進行了實時地輸出,這也是 一個小技巧,可以讓你知道藍圖什么地方出錯了,或者不執行了。
8.現在進行相似的后退操作,在后退的button上綁定Onclick事件,這個就是需要將播放速率變成負的就可以了。
9.但是在這個時候就需要在倍速的響應時間那里加上一個判斷,因為可以知道,一般進行后退之后,開始播放就會使播放速率變成1 ,因此要設置一下:
10.在倍速的窗口也要進行判斷一下。
這就是對Montage動畫速率控制的部分的一些講解。
總結
以上是生活随笔為你收集整理的UE4 制作一款动画播放器的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 编写代码实现简单的扫雷游戏
- 下一篇: 【中文树库标记---CTB】