Added 'Minimum OS Version' as a build condition of content projects for windows.
Fixed a small issue in GameProjectUtils that meant the Default(Engine) configs were not being checked against the project correctly.
UE-15605
#lockdown Josh.Adams
#platformnotify Josh.Adams
[CL 2575452 by Matthew Griffin in Main branch]
There are now overloads to FUIAction that take a FGetActionCheckState delegate which is able to return any of the entries from ECheckBoxState. FIsActionChecked still exists for backwards compatibility, and converts the returned bool into a ECheckBoxState via a passthrough function.
#codereview Matt.Kuhlenschmidt
[CL 2570717 by Jamie Dale in Main branch]
- The Slate RHI renderer now uses a larger upfront pool for vertex buffers to avoid many upfront recreations of the vertex buffers
- The window element lists are no longer destroyed each frame and are reused as long as the window that they reference exists. This reduces memory allocations because arrays are no longer destroyed
- Creation of the final rendering batches has now been moved to the rendering thread
- The mapping of layers to element batch arrays has been simplified and is no longer emptied each frame thus avoiding memory allocations
[CL 2560820 by Matt Kuhlenschmidt in Main branch]
* Each quality level allows the definition of the max audio channels to be used
* A sound cue node exists to allow branching behavior based on quality level.
* Wave assets from Wave Player sound nodes will not be loaded if connected only to a branch for a quality level that is not currently selected
* Quality Level to use for stand alone is specified via Game User Settings. Changes to this value will not take effect until the next run.
* Quality Level to use for PIE is specified from the Level Editor Play Settings and can be changed dynamically causing newly played sounds to use the alternate path
* Add SoundNodeAssetReferencer abstract class to operate as an interface for sound nodes that need to have assets loaded dependingo n the sound quality node
[CL 2551249 by Marc Audy in Main branch]
* Screen grid resolution is 1/8th of primary resolution, but with 4x temporal supersampling through jittering subsample positions. A longer history filter is required to hide the jittering which can increase ghosting.
* The main benefit of doing cone tracing on a screen grid instead of the previous surface cache is that it's performance is generally constant regardless of camera movement or noisy geometry (foliage)
* A global distance field is now used for cone traces after a certain distance, DFAO is 2-4x faster as a result.
* The global distance field is composed of 4 128^3 clipmaps that follow the camera around
* Clipmaps are scrolled so that only new or dirty regions are updated due to camera or object movement, with close to 0 average GPU cost. Worst case update cost (camera teleport) is 5ms on 7870.
* The global distance field currently breaks Distance Field GI
* Overall with these changes DFAO in a Fortnite level is 3.4ms on a 7870 (3.8ms on PS4), and 4.0ms in the Kite demo on 7870.
[CL 2546300 by Daniel Wright in Main branch]
config bCanSuppressAccessViolation added in Engine.ini, "false" by default.
#codereview Nick.Whiting, Michael.Noland
[CL 2544767 by Maciej Mroz in Main branch]
* Avoid unnecessary weak pointer evaluations by caching SoundWave pointer after loading from TAssetPtr
* Encapsulated SoundWave and SoundWaveAssetPtr to prevent getting out of sync
* Prevent sound waves from being garbage collected
[CL 2543325 by Marc Audy in Main branch]
Big conversion of FStrings and FNames to FText.
Version bump to move some MaterialFunction UProperty from a TArray<FString> to TArray<FText> (some Engine assets are older than being allowed to auto-convert the UProperty)
Auto conversion of FName to FText (and back) now supported (as well as TArrays of those types).
Searching categories by both the localized string and the source string is now supported in Blueprints.
#jira UE-14481 - We are missing ability to translate node categories
#codereview Justin.Sargent
[CL 2542875 by Michael Schoell in Main branch]
Added some default values for project setup.
Added type support to default value macros for manifest settings.
Added a macro for manifest generation that filters all non-alphanumeric or dot characters (this is a common requirement for manifest fields).
Filtered game name with alphanumericdot and productid with guid type to support projects that didn't use the same format as some others.
[CL 2541236 by Jeff Campeau in Main branch]