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