Каким образом работать с переменными в Unreal Engine 5?

Как реализовать сокращенное отображение чисел в Unreal Engine 5, чтобы, например, 1000 отображалось как 1к, а 1000000 как 1м? Я услышал, что это можно сделать с помощью функции toText - это так? Можете подсказать, как именно это реализовать?
  • 9 июля 2024 г. 11:02
Ответы на вопрос 2
В Unreal Engine 5 для работы с переменными используется язык программирования C++, который предоставляет различные методы и функции для работы с данными. Для работы с переменными в Unreal Engine 5 вы можете объявлять и использовать их так же, как и в других средах разработки на C++.

Для реализации сокращенного отображения чисел в Unreal Engine 5 вы можете использовать функцию FText::AsNumber(), которая позволяет представить число в текстовом виде. Например, для отображения числа 1000 как "1к" и числа 1000000 как "1м" вы можете написать следующий код:

```cpp
FNumberFormattingOptions NumberFormat;
NumberFormat.MaximumIntegralDigits = 1;
NumberFormat.MaximumFractionalDigits = 0;

FText NumberText = FText::AsNumber(1000, &NumberFormat);

UE_LOG(LogTemp, Warning, TEXT("Number: %s"), *NumberText.ToString());
```

При выполнении данного кода вы увидите в логе следующий результат: "Number: 1к".

Таким образом, вы можете использовать функцию FText::AsNumber() с параметрами FNumberFormattingOptions для реализации сокращенного отображения чисел в Unreal Engine 5.
Например так. 
FString func(int32 x)
{
    FString str;
    switch(x)
    {
        case 0 ... 999:               str = FString::FromInt(x); break;
        case 1000 ... 999999:         str = FString::FromInt(x/1000) + "K"; break;
        case 1000000 ... 999999999:   str = FString::FromInt(x/1000000) + "M"; break;
        default:                      str = FString::FromInt(x); break;
    }
    return str;
}
Похожие вопросы