Download

Is it possible to convert uint32 to int32? // Get user device's memory amount

Hello,

I’m in the middle of creating a small sequence where the game would gather basic user’s device specifications, which then later on would be displayed on a widget (through blueprints). In order to do so, I’ve created a very basic C++ structure gathering data.
As far as I have seen, the only way to obtain user’s amount of physical Ram is through: FGenericPlatformMemory::GetPhysicalGBRam, but the format of it comes out as a uint32, which is incompatible with blueprints.

Is there a way to convert uint32 into int32, string, or any other readable format? If not, are there other ways to obtain user’s Ram amount?

My code:



USTRUCT(BlueprintAble, CATEGORY = "MyCategory1")
struct FItemData
{
GENERATED_USTRUCT_BODY()
FItemData()
{
CpuName = FPlatformMisc::GetCPUBrand();
CpuCores = FPlatformMisc::NumberOfCores();
GpuName = FPlatformMisc::GetPrimaryGPUBrand();
PhysicalRam = FGenericPlatformMemory::GetPhysicalGBRam();
}



UPROPERTY(EditAnywhere, BlueprintReadWrite)
FString CpuName;
UPROPERTY(EditAnywhere, BlueprintReadWrite)
int32 CpuCores;
UPROPERTY(EditAnywhere, BlueprintReadWrite)
FString GpuName;
UPROPERTY(EditAnywhere, BlueprintReadWrite)
uint32 PhysicalRam;
};


Thanks in advance!