The framework bundles the utfcpp library for simple Unicode support. You can check out its readme for documentation.
String types
For convenience, Core/Types.hpp defines a family of allocator-aware string type wrappers around the standard library:
FString- Equivalent tostd::string(the default, UTF-8 encoded)FString8- Equivalent tostd::u8stringFString16- Equivalent tostd::u16stringFString32- Equivalent tostd::u32stringFWString- Equivalent tostd::wstring
All of these use the framework’s custom allocator under the hood. The default FString is used everywhere in the framework’s public APIs (window titles, file paths, log messages, translations) and is assumed to be UTF-8.
When you need to interoperate with APIs that take other encodings (e.g. Win32 wide-string APIs that take wchar_t*), use utfcpp directly to convert between encodings.