概述
藍圖函數庫(Blueprint Function Library)和藍圖宏庫(Blueprint Macro Library)的意義和C/C++中函數以及宏大致相同。它們都是用於代碼複用,並且如果合理使用可以讓藍圖變得非常整潔。
藍圖函數庫
一個藍圖函數庫中可以定義若干個函數,這些函數都是全局函數,可以在任意藍圖中直接調用。
下面是個簡單的例子,定義了一個DoubleIt
把輸入的float
乘以2
藍圖宏庫
創建藍圖宏庫需要選擇一個“基類”,這樣藍圖宏庫中就可以使用基類的成員了
本例中以AActor
爲基類創建了一個宏庫,這樣我們就可以使用AActor
的GetGameMode
方法了
下面是我的TOPDOWN_Character
藍圖,在沒有使用宏時獲取並轉換爲TOPDOWN_GameMode
需要兩個節點
使用了上文定義的Get TOPDOWN Game Mode
就變成了下面的樣子