官方文檔連接:http://docs.unrealengine.com/latest/CHN/Gameplay/DataDriven/index.htmlhtml
略懶,稍微麻煩重複的工做,總但願能找人幫忙一塊兒作,可是有人對於稍微一點點的規則他都理解不了(主要也是懶,不想作),因而我從xml來到了scv文件,scv文件能夠從Excel文件中導出,也能夠在Excel裏面編輯,因而幫忙的人也就是須要在Excel裏面填入數據便可。c++
1.我定義了這麼一張簡單的表格,這裏的中文才是後面有坑的地方數據結構
2.須要在UE4定義對應的數據格式,這裏提供兩種方式編碼
a.藍圖定義數據結構:spa
b.c++定義數據結構,記得數據結構名稱F開頭,編譯:code
/** Example Data */ USTRUCT(BlueprintType) struct FExampleData : public FTableRowBase { GENERATED_USTRUCT_BODY() public: /** Name */ UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = ExampleData) FString Name; /** Age */ UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = ExampleData) int32 Age; FExampleData() { Age = 0; } };3.將Excel另存爲.csv並用Notepad++或者記事本將其轉爲utf-8的編碼格式,導入UE4後會是亂碼,將.csv文件拖入UE4中,他會要求你選擇一種數據格式,拉開選項就有開始咱們定義的兩個選項,一個BP_StructExample, 一個ExampleData,由於定義的同樣的格式,這裏選擇誰均可以。
我這裏選擇C++定義的結構,方便後面在C++中直接調用數據(藍圖同樣de)。xml
4.調用數據:htm
FExampleData* _ExampleData = Example->FindRow<FExampleData>("002", "data002"); GEngine->AddOnScreenDebugMessage(-1, 10.0f, FColor::Red, _ExampleData->Name+ FString::FromInt(_ExampleData->Age));5.運行結果:
6.假如咱們最開始的Excel不見了,又須要其餘人幫忙更改數據,咱們就須要再將UE4的數據導出爲CSVblog
7.而後你用Excel打開csv,你就會發現他全部數據都在第一格,或者亂碼了,這裏咱們須要將他的編碼如上改成ANSI,再用Excel打開就能夠正常編輯了。ip