【諶嘉誠】UE4基礎(chǔ)教程學(xué)習(xí)筆記-AI部分+動畫部分
27.AI部分:
(1)導(dǎo)航網(wǎng)格:體積-導(dǎo)航網(wǎng)格體邊界體積,即AI的活動范圍。
項目設(shè)置-導(dǎo)航網(wǎng)格體-運(yùn)行時生成-把靜態(tài)改為動態(tài),這樣ai就是實時檢測到是否有阻擋,但是性能開銷會變大。
(2)AI移動:創(chuàng)建自定義事件,AI移動:所用藍(lán)圖節(jié)點(diǎn),AI Move To,get random獲取可導(dǎo)航半徑內(nèi)的隨機(jī)點(diǎn)。
以事件設(shè)置定時器:重復(fù)事件。
?

(3)AI行為樹實現(xiàn)隨機(jī)和跟隨移動:(與(2)中藍(lán)圖控制AI不同)
黑板:變量集合;行為樹:邏輯集合。黑板相當(dāng)于大腦,行為樹的根就是黑板
在ai行為樹中新建任務(wù),選擇函數(shù)-重載選擇-接收執(zhí)行AI
總體邏輯:在AI藍(lán)圖中選擇剛剛建好的AI控制器,在AI控制器中運(yùn)行行為樹,
(4)尋找玩家與隨機(jī)找點(diǎn),為了避免我們稍微離開視線AI就離開了,我們可以設(shè)置焦距,讓AI視線追隨我們,需要把AI藍(lán)圖中的使用控制器旋轉(zhuǎn)Yaw打開,角色移動中的-將旋轉(zhuǎn)朝向運(yùn)動關(guān)閉,尋找玩家與隨機(jī)找點(diǎn)兩種情況的藍(lán)圖如下:
?


?
到此AI生成樹,Ai追蹤玩家完成。
(5)AI靠近玩家揮拳:給AI添加球形碰撞盒子用于碰到玩家時執(zhí)行揮拳動畫
以事件設(shè)置定時器來反復(fù)播放揮拳蒙太奇動畫:
?

在揮拳蒙太奇動畫中添加一個slot插槽節(jié)點(diǎn),作用是作為一個標(biāo)簽去告訴系統(tǒng)尋找用的是什么montage動畫
?

ai揮拳時會阻擋攝像機(jī),所以將ai碰撞預(yù)設(shè)改為自定義custom,取消camera的碰撞,如下:
?

?
?
?
(6)AI跟隨樣條移動:
①創(chuàng)建Spline藍(lán)圖,添加樣條組件,即可關(guān)閉
將Spline拖入場景,ALT拖拽方向即可生成下一個點(diǎn)
②在行為樹新建任務(wù):根據(jù)Spline隨機(jī)找點(diǎn):從接收執(zhí)行Ai開始編寫藍(lán)圖
?


?
運(yùn)行時AI視角問題:AI根據(jù)樣條線移動的時候,尋找玩家藍(lán)圖就不設(shè)置焦距了,不然AI又要看著玩家,又要看著樣條線的點(diǎn),就會瘋狂鬼畜轉(zhuǎn)動,基本上是這個邏輯,注意:這個時候記得把AI的轉(zhuǎn)動功能打開,根據(jù)控制器旋轉(zhuǎn)Yaw關(guān)閉,不然AI轉(zhuǎn)動會很生硬,不過AI也會卡頓,因為很容易脫離視角,AI就會自動去樣條點(diǎn),根據(jù)實際情況來使用。
!??!對前面所學(xué)類型轉(zhuǎn)換為的補(bǔ)充:類型轉(zhuǎn)換是為了保證只有碰到當(dāng)前轉(zhuǎn)換的類型才會響應(yīng)之后的邏輯
28.動畫部分:
(1)導(dǎo)入:先導(dǎo)入人物,再導(dǎo)入動畫
創(chuàng)建角色藍(lán)圖,放入攝像機(jī)和彈簧臂組件,調(diào)整位置(第三人稱)
選擇彈簧臂,打開使用pawn控制旋轉(zhuǎn),關(guān)閉類默認(rèn)值中的使用控制器選擇Yaw

(實現(xiàn)多角度觀看角色)
接著:
給角色寫上移動,鏡頭水平旋轉(zhuǎn),上下旋轉(zhuǎn)(基本完成)
運(yùn)行時角色頭發(fā)異常閃動:在項目設(shè)置中關(guān)閉動態(tài)模糊
(2)混合空間1D:在水平坐標(biāo)設(shè)置速度大小,調(diào)整采樣插值是的不同速度的


動畫切換有個過渡
(3)動畫藍(lán)圖:創(chuàng)建動畫藍(lán)圖,創(chuàng)建狀態(tài)機(jī)-在狀態(tài)機(jī)中添加混合空間1D,注意:混合空間1D需要傳入具體的數(shù)值才可以去播放對應(yīng)的動畫
所以先添加一個變量給1D
?

接著在動畫藍(lán)圖時間圖表中實時獲取角色的速度,賦值給變量即可
?

(4)蒙太奇播放:創(chuàng)建好蒙太奇動畫后可以在其上添加自己想要的插槽名字,接著在動畫藍(lán)圖狀態(tài)機(jī)中間添加插槽,插槽的名字選擇自己剛剛創(chuàng)建的名字
最后:在角色藍(lán)圖寫自己想要的蒙太奇動畫播放邏輯,如下:
?


?
注意:播放和停止蒙太奇動畫有兩種節(jié)點(diǎn),其中一種需要獲取動畫實例,根據(jù)實際情況來自己選擇用哪一種
?