You've already forked UnrealEngineUWP
mirror of
https://github.com/izzy2lost/UnrealEngineUWP.git
synced 2026-03-26 18:15:20 -07:00
FText used to always perform two allocations, one for the shared display string pointer, and another for the text history. This change allows text that is generated at runtime (such as via FText::AsNumber) to allocate its string and history together in a single allocation. Profiling shows that this almost negates the cost of the text history, without having to remove the text history (which is essential for FText serialization). This means that we never have to take the hit of a second allocation for text which is generated at runtime and never serialized. Should text that was generated at runtime be serialized, then it will call TGeneratedTextData::PersistText to perform the allocation of the shared display string pointer, and allow the text to be saved, gathered, and localized. This change also removes some allocations from FTextHistory_Base and FFormatArgumentValue, makes the text history types fully movable, and allows you to move the arguments passed to FText::Format if you know you no longer need your own copy. [CL 2702379 by Jamie Dale in Main branch]