藍(lán)圖中函數(shù)(Function)垄分,純虛函數(shù)(PureFunction),自定義事件(CustomEvent)娃磺,藍(lán)圖宏(BlueprintMacro)以及事件調(diào)度器的區(qū)別
函數(shù)VS純虛函數(shù)
- 純虛函數(shù)必須要有返回值
- 都有臨時(shí)變量(局部變量)薄湿,這個(gè)變量會(huì)在每次進(jìn)入函數(shù)的時(shí)候恢復(fù)成默認(rèn)值。
-
【關(guān)鍵】調(diào)用方式:普通函數(shù)是有執(zhí)行線的而調(diào)用純虛函數(shù)用的是返回值
普通函數(shù)的返回值只要是在同一條執(zhí)行線后面偷卧,那么從返回節(jié)點(diǎn)引出來的結(jié)果絕對(duì)是相同的豺瘤,因?yàn)檫@個(gè)函數(shù)只會(huì)執(zhí)行一次
而純虛函數(shù),你每次引出使用返回值听诸,都會(huì)執(zhí)行一次這個(gè)函數(shù)坐求,所以它的結(jié)果有可能不一樣。
自定義事件
-
自定義事件的代理
-
自定義事件的RPC
- 自定義事件不能有返回值
-
自定義事件的事件還可以在編輯器實(shí)例(拖入場(chǎng)景中的對(duì)象)中調(diào)用,只需要勾選(但是不能有輸入值)
- 一些只能在EventGraph中調(diào)用的節(jié)點(diǎn)仔蝌,如時(shí)間軸泛领。
-
都存在于同一空間,所以可以完成很多奇淫技巧
藍(lán)圖宏
我們先看看藍(lán)圖宏比其他的方法多了些什么
- 它可以像純虛函數(shù)一樣不需要執(zhí)行節(jié)點(diǎn)渊鞋,但是不同的是純虛函數(shù)內(nèi)部是有Exec的,而這樣的宏沒有Exec的,也就只能使用沒有Exec的節(jié)點(diǎn)了
- 可以有多個(gè)輸出Exec和輸入Exec锡宋,F(xiàn)orLoop循環(huán)就是宏做的儡湾,你可以雙擊查看實(shí)現(xiàn)
-
藍(lán)圖宏有類似于函數(shù)的局部變量,名叫本地變量Local执俩,但是請(qǐng)注意徐钠,完全不一樣,無論是值的限制奠滑,賦值方式都不一樣丹皱。這個(gè)值是具有持久性的(Persistent)。
這個(gè)本地變量在不同的地方(作用空間:EventGraph/函數(shù)/宏)執(zhí)行宋税,其結(jié)果也不相同
在EventGraph中調(diào)用:它的值是不會(huì)在這個(gè)宏調(diào)用結(jié)束后清空摊崭,意思就是這個(gè)值是持久的,
在函數(shù)中直接調(diào)用:它的值會(huì)在杰赛,函數(shù)執(zhí)行結(jié)束后(Return)清空呢簸,這個(gè)持久性只維持在這個(gè)函數(shù)中。
在函數(shù)中調(diào)用自定義事件中的宏:結(jié)果于在EventGraph中調(diào)用一致乏屯,因?yàn)閷?shí)際上還是在EventGraph中調(diào)用
在宏中調(diào)用宏:根據(jù)上面不同情況結(jié)果也不同根时。