UE4之基本資料型別講解
阿新 • • 發佈:2022-03-17
基本資料型別
typedef unsigned char uint8; typedef unsigned short uint16; typedef unsigned int uint32; #ifdef _MSC_VER typedef unsigned __int64 uint64; #else typedef unsigned long long uint64; #endif typedef signed int char32;
FNames:12byte
不區分大小寫,不可修改,不可被操作。如果一個變數滿足這樣的條件,則可以被定義為FName,通過鍵進行FNames的查詢和訪問速度很快。由於其在散列表中有且只有一份,故FNames的一個功能是使用散列表為FName轉換提供快速字串。
FString:12byte
FString可以進行搜尋、修改並且與其他字串比較。不過這些操作會導致FString的開銷比不可變自負串類大、這是因為FString物件儲存自己的字元陣列,而FName和FText物件儲存共享字元陣列的指標,並且可以完全根據索引值建立相等性。
其中過載了許多api函式,如整形與字串之間的轉換。
與其對應的是std::string,只不過在這裡又進行了一層封裝,從而和UE保持更好的相容性。
FText:24byte
主要用作顯示和文字本地化。
FVector:三維向量
在UE中可以代表一個三維的點;可以點乘, x乘等。
FVector2D:二維向量
在UE中可以代表一個二維的點:
FRotator:對應於UE中的旋轉操作。
首先知道:UE中採用的是左手座標系
包含三個值:Pitch、Yaw和Roll。
Pitch時圍繞Y軸旋轉,也叫作俯仰角;Yaw是圍繞Z軸旋轉,也叫偏航角;Roll是圍繞X軸旋轉,叫做翻滾角。
FTransform:
包含location、Rotation和Scale三個值,這三個值每個都分別有x、y、z三個分量。
Location代表的是物體在UE中的位置,Rotation代表的是物體在UE中的旋轉狀態,而Scale代表的是物體在UE中的縮放狀態。
class HELLOUEDPRO_API AHelloUE4ProGameModeBase : publicAGameModeBase{ GENERATED_BODY() public: virtual void BeginPlay() override{ } public: //如果想要暴露藍圖的話,就必須新增此巨集,將新增的變數反射到藍圖中 UPROPERTY(EditAnywhere, BlueprintReadOnly) bool bTestBoolean; }