UE4: преобразовать цвет строки HEX в RGB или RBGA в Blueprint - PullRequest
0 голосов
/ 10 февраля 2020

Как преобразовать HEX Color String в RGB или RBGA в проекте Unreal Engine. Например: от # f0f8ff до 240/248/255 вектора RGB.

Большое спасибо.

1 Ответ

1 голос
/ 11 февраля 2020

Поскольку Blueprint API не поддерживает Hex для RGB или RGB для Hex, , но обычная структура FColor поддерживает , я бы посоветовал вам написать обертку для него в UBlueprintfunctionlibarary .

Я не буду go подробно описывать, как создать одну из этих библиотек, поскольку вы можете найти простое руководство в Unreal Wiki . Тем не менее, я могу дать вам код, который, будем надеяться, будет работать:

часть заголовка:

/** Converts hex string to color. Supports formats RGB, RRGGBB, RRGGBBAA, RGB, #RRGGBB, #RRGGBBAA */
UFUNCTION(BlueprintCallable, Category="YourFunctionLibrary")
static FColor HexToColor(FString HexString);

/** Converts color to hex string */
UFUNCTION(BlueprintCallable, Category="YourFunctionLibrary")
static FString ColorToHex(FColor Color);

часть блока компиляции:

FColor YourFunctionLibrary::HexToColor(FString HexString)
{
    return FColor::FromHex(HexString);
}

FString YourFunctionLibrary::ColorToHex(FColor Color)
{
    return Color.ToHex();
}

Haven ' Я еще не пробовал, но надеюсь, что это сработает!

...