* Multicast delegate Add* calls now return FDelegateHandles, and Remove* calls are now all deprecated, except for a new Remove function which takes a FDelegateHandle.
* New FConsoleManager::RegisterConsoleVariableSink_Handle and UnregisterConsoleVariableSink_Handle functions which work in terms of FConsoleVariableSinkHandle.
* Timer calls which don't take FTimerHandles are deprecated.
* FTicker::AddTicker now returns an FDelegateHandle and is removed by an overloaded Remove function.
* DEFINE_ONLINE_DELEGATE* macros now define _Handle variants of the Add/Remove functions which return/take handles.
* Various other handle-based registration changes.
* Some unity build fixes.
* Some simplification of delegate code.
* Fixes for lots of existing code to use handle-based registration and unregistration.
#codereview robert.manuszewski
[CL 2400883 by Steve Robb in Main branch]
- Cleaned up the code to decide what shader formats to use
- Added separate IOSRuntimeSetting for bSupportsMetalMRT, and check it when using -metalmrt flag
#codereview rolando.caloca
[CL 2368996 by Josh Adams in Main branch]
Now editor will tick at a decent frame rate while building shaders / caching textures.
#codereview Josh.Adams, Daniel.Wright, Matthew.Griffin
[CL 2318857 by Daniel Lamb in Main branch]
Tutorial contexts for IOS/Android/Whatever are now hooked up (console setup ones are still missing).
Analytics added for tutorial usage in various places.
Added ability to reset tutorial state with -ResetTutorials command-line flag.
Cleaned up some unused code (still a lot more to come here!).
[CL 2302314 by Thomas Sarkanen in Main branch]
add support for showing the various platforms in different menus whether they are properly installed or not
update FPlatformInfo to include information about SDK status, whether or not the platform should be shown on a particular executing platform (Win, Mac, Linux), and whether or not the platform should be shown as part of the binary distribution
fixed platform target modules for IOS, Android, and HTML5 for binary release
TTP341656, TTP342449, TTP342631
#ue4
#platforms
[CL 2238535 by Peter Sauerbrei in Main branch]
TTP# 337136 - SETTINGS: Target Platform settings polish
TTP# 337652 - EDITOR: Limit Project supported Android icons down to 1
TTP# 337650 - EDITOR: There is only 1 icon for Apple for Project Supported Platforms
DesktopPlatform now contains a static array of FPlatformInfo. This can be used to query UE4 about its available platforms, even when they're not available as a target platform.
FPlatformInfo contains the information required by the editor (such as a localized display name and icon), as well as whether a platform is a variation ("flavor") of another, and if so, whether the flavor affects the build output (eg, Win32 or Win64), or the cook output (eg, Android_XYZ). This lets the editor build up nested menus for the "Package Project" and "Cook Project" options, rather than just showing everything as a flat list.
ReviewedBy Thomas.Sarkanen, Max.Preussner
[CL 2095796 by Jamie Dale in Main branch]
User can now select target RHI's for windows under: Edit->Project Preferences->Windows->Targeted RHIs
Split up GetShaderFormats into GetAllPossibleShaderFormats and GetAllTargetedShaderFormats.
D3D11 and D3D10 remain the only two on, by default, for windows.
#ReviewedBy Nick.Penwarden
[CL 2068025 by Terence Burns in Main branch]