Attempt to spawn a PlayerState for the replay spectator controller during client replay recording, by falling back to the default game mode object if the authority game mode can't be found (only if GetNetMode() != NM_Client).
Expose the ability to get an actor's FNetworkGUID, and the actor that corresponds to an FNetworkGUID, if available. Allows games to correlate actors across multiple local worlds if there is a client-server relationship between them.
--------
Integrated using branch UE4-Orion-To-UE4 of change#2705235 by Ryan.Gerleve on 2015/09/24 17:12:18.
[CL 2705290 by Ryan Gerleve in Main branch]
- Native UProperties of an unconverted type, are replaced with properties of the first native type.
- support for Cast and DynamicCast
- various fixes
#codereview Mike.Beach, Robert.Manuszewski
[CL 2704010 by Maciej Mroz in Main branch]
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]
Lots of change in here:
- Improved UActorAnimationPlayer functionality to include looping and play speed (UI needs polish)
- Fixed actor object bindings not working in PIE. We now only store the object GUID (and an object path for a fallback), which can then be fixed up within a given context (UWorld for now).
- Added UActorAnimationInstance which is responsible for managing bindings on a UActorAnimation. UActorAnimation itself is now pretty much just a data asset.
- Levels are no longer responsible for ticking actor animations, this is now handled by the client (either AMovieSceneActor, or ticked automatically if created from a blueprint node)
[CL 2696822 by Andrew Rodham in Main branch]