定义跳转插件_虚幻插件Review:Logic Driver Pro 终极状态机插件
獲取與安裝
虛幻商城Logic Driver Pro地址
這是老王在虛幻商城出的第一滴血,99.99大刀,這個(gè)插件還有一個(gè)Lite版34.99刀。昨天剛購入,目前研究了一下基本工作邏輯,感覺還是很滿意的,所以推薦給大家。
Logic Driver Pro 是一個(gè)引擎插件,目前支持到4.19-4.26,下載啟用即可
原理和特性
Logic Driver就是一套通用狀態(tài)機(jī)系統(tǒng),可以用來開發(fā)游戲邏輯/AI/UI等等,狀態(tài)機(jī)驅(qū)動(dòng)的對(duì)象(在Logic Driver中被稱為上下文context)可以是任意類型的UObject,同時(shí)一個(gè)上下文可以擁有多個(gè)狀態(tài)機(jī)。Logic Driver支持子狀態(tài)機(jī)并且所有的狀態(tài)機(jī)類/狀態(tài)類/過渡類都可以定義在獨(dú)立的藍(lán)圖中,從而重復(fù)使用。狀態(tài)間不僅支持條件式轉(zhuǎn)移也支持事件式轉(zhuǎn)移。總之非常的靈活,是老王心目中理想的狀態(tài)機(jī)的樣子。(而且Logic Driver并行狀態(tài)運(yùn)行,聽著好高端)
條件式轉(zhuǎn)移: 轉(zhuǎn)移條件是由若干個(gè)變量組成的一個(gè)最終輸出值為布爾類型的表達(dá)式,當(dāng)表達(dá)式值為True即轉(zhuǎn)移,因此狀態(tài)機(jī)系統(tǒng)每一次Update都要檢查是否達(dá)成轉(zhuǎn)移條件。事件式轉(zhuǎn)移: 轉(zhuǎn)移條件和一個(gè)委托(Delegate)綁定,當(dāng)委托委托被調(diào)用(觸發(fā))即轉(zhuǎn)移狀態(tài)。狀態(tài)機(jī)
Node Class
Node Class藍(lán)圖是為了復(fù)用的,不需要復(fù)用的話直接在狀態(tài)機(jī)里創(chuàng)建就可以
使用范例
一個(gè)Actor有三個(gè)狀態(tài)State_A、State_B和State_C:
- State_A為默認(rèn)狀態(tài)
- 在State_A中持續(xù)2秒以后會(huì)跳轉(zhuǎn)到State_B(使用條件式跳轉(zhuǎn))
- 在State_B時(shí),當(dāng)我們按下鍵盤上的E鍵會(huì)跳轉(zhuǎn)到State_C(使用事件式跳轉(zhuǎn))
定義上下文
本例的上下文就是一個(gè)帶靜態(tài)模型的Actor,為它添加一個(gè)StateMachineComponent
注意: 除了用組件的形式也可以自定義StateMachineComponent類型的成員變量,但是使用組件最簡(jiǎn)單,它初始化的時(shí)候會(huì)自動(dòng)將所屬Actor設(shè)為自己的上下文。用用成員變量的就需要很多手動(dòng)設(shè)置,但是原理都是一樣的。定義狀態(tài)機(jī)
狀態(tài)機(jī)的樣子很像動(dòng)畫藍(lán)圖,一些細(xì)節(jié)設(shè)計(jì)也很到位
State_A to State_B
State_B to State_C
因?yàn)镾tate_B to State_C是事件式轉(zhuǎn)移,所以對(duì)它進(jìn)行事件觸發(fā)的設(shè)置
Delegate Owner Instance是委托事件所屬的對(duì)象,默認(rèn)是this 即狀態(tài)機(jī),本例設(shè)置為Context,選擇Context的類型,然后指定委托事件。
State_A/State_B/State_C
狀態(tài)的設(shè)計(jì)也很清晰明朗,可以通過GetContext節(jié)點(diǎn)獲取上下文
State_A
State_B
State_C
小結(jié)
面向狀態(tài)開發(fā)的必備插件,就是價(jià)格有點(diǎn)小貴。
總結(jié)
以上是生活随笔為你收集整理的定义跳转插件_虚幻插件Review:Logic Driver Pro 终极状态机插件的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: window把图片转成blob_将图片转
- 下一篇: abap mm后台表_【中后台应用】从表