UE4 自定義結構體 類 資料表

2022-06-26 14:39:14 字數 2467 閱讀 8916

自定義資料表:

#pragma once#include 

"coreminimal.h

"#include

"engine/userdefinedstruct.h

"#include

"components/canvaspanel.h

"#include

"blueprint/userwidget.h

"#include

"runtime/engine/classes/engine/userdefinedstruct.h

"#include

"runtime/engine/classes/engine/datatable.h

"#include

"runtime/coreuobject/public/uobject/objectmacros.h

"#include

"minimapflagdata.generated.h"/*

blueprinttype:暴露成為藍圖資料型別,藍圖變數可以使用該結構體作為資料型別

*/ustruct(blueprinttype)

struct fuminimapflagdatac : public

ftablerowbase

;

成員變數新增uproperty標籤,可以享受到ue4垃圾自動管理機制,不用手動釋放變數記憶體。

自定義類

#pragma once#include 

"coreminimal.h

"#include

"engine/userdefinedstruct.h

"#include

"components/canvaspanel.h

"#include

"blueprint/userwidget.h

"#include

"runtime/engine/classes/engine/userdefinedstruct.h

"#include

"runtime/engine/classes/engine/datatable.h

"#include

"runtime/coreuobject/public/uobject/objectmacros.h

"#include

"minimapflagdata.generated.h"/*

***/uclass(blueprinttype)

class proj10_0121_api uminimapflagdata : public

uuserdefinedstruct

uminimapflagdata(uuserwidget* flag, aactor* actor, ucanvaspanelslot*slot)

:flag(flag), actor(actor), slot(slot)

{}/*flag(flag)表示將引數flag賦值給成員引數flag

使用方法:uminimapflagdata data(flag,actor,slot);

*/public

:

//小圖示

uproperty()

uuserwidget*flag;

//小圖示對應的actor

uproperty()

aactor*actor;

//小圖示對應的canvas panel slot

uproperty()

ucanvaspanelslot*slot;

uproperty()

intmyage;

};

自定義函式新增說明文字,可在藍圖中顯示,如果要支援中文,則只要把h和cpp檔案以utf-8編碼儲存就可以了。

注意:editanywhere,blueprintreadwrite等等修飾符不能拼寫錯誤,拼寫錯誤是不會有錯誤提示的,並且編譯出錯資訊也不會告訴我們是修飾符寫錯了,只會說編譯出錯,沒有詳細的出錯資訊。

arrayflag是在c++定義的函式,可以在藍圖中顯示中文說明文字。

UE4之自定義引擎類

可參考 新建umyengine類繼承自ugameengine class umyengine public ugameengine 在配置檔案defaultengine.ini中將引擎類修改為新的類 script engine.engine gameengine script mymodulenam...

UE4 自定義DLC Pak載入

廢話不說,直接上乾貨 htsharedptr class fpakplatformfile pakplatform class iplatformfile oldplatform load void loadandmountpak const fstring inpath cpp void udlc...

UE4簡單建立自定義模組

1.新建專案並在source資料夾下建立我們要新增的新模組 2.並在新建的newmodule資料夾下建立.h cpp build.cs 字尾的3個檔案 3.進入vs建立newmodule 篩選器 並把剛才資料夾裡新建立的3個檔案拖入newmodule下 4.為newmodule.build.cs新增...