Commit Graph

14 Commits

Author SHA1 Message Date
Ben Marsh
20bf0eb6a1 Updating copyright notices to 2017 (copying from //Tasks/UE4/Dev-Copyright-2017).
#rb none
#lockdown Nick.Penwarden

[CL 3226823 by Ben Marsh in Main branch]
2016-12-08 08:52:44 -05:00
Ben Marsh
4ba423868f Copying //UE4/Dev-Build to //UE4/Dev-Main (Source: //UE4/Dev-Build @ 3209340)
#lockdown Nick.Penwarden
#rb none

==========================
MAJOR FEATURES + CHANGES
==========================

Change 3209340 on 2016/11/23 by Ben.Marsh

	Convert UE4 codebase to an "include what you use" model - where every header just includes the dependencies it needs, rather than every source file including large monolithic headers like Engine.h and UnrealEd.h.

	Measured full rebuild times around 2x faster using XGE on Windows, and improvements of 25% or more for incremental builds and full rebuilds on most other platforms.

	  * Every header now includes everything it needs to compile.
	        * There's a CoreMinimal.h header that gets you a set of ubiquitous types from Core (eg. FString, FName, TArray, FVector, etc...). Most headers now include this first.
	        * There's a CoreTypes.h header that sets up primitive UE4 types and build macros (int32, PLATFORM_WIN64, etc...). All headers in Core include this first, as does CoreMinimal.h.
	  * Every .cpp file includes its matching .h file first.
	        * This helps validate that each header is including everything it needs to compile.
	  * No engine code includes a monolithic header such as Engine.h or UnrealEd.h any more.
	        * You will get a warning if you try to include one of these from the engine. They still exist for compatibility with game projects and do not produce warnings when included there.
	        * There have only been minor changes to our internal games down to accommodate these changes. The intent is for this to be as seamless as possible.
	  * No engine code explicitly includes a precompiled header any more.
	        * We still use PCHs, but they're force-included on the compiler command line by UnrealBuildTool instead. This lets us tune what they contain without breaking any existing include dependencies.
	        * PCHs are generated by a tool to get a statistical amount of coverage for the source files using it, and I've seeded the new shared PCHs to contain any header included by > 15% of source files.

	Tool used to generate this transform is at Engine\Source\Programs\IncludeTool.

[CL 3209342 by Ben Marsh in Main branch]
2016-11-23 15:48:37 -05:00
Robert Manuszewski
17538be4f8 Copying //UE4/Dev-Core to //UE4/Dev-Main (Source: //UE4/Dev-Core @ 3151653)
#lockdown Nick.Penwarden

==========================
MAJOR FEATURES + CHANGES
==========================

Change 2975891 on 2016/05/12 by Gil.Gribb

	merged in new async stuff from dev-rendering.

Change 2976695 on 2016/05/13 by Gil.Gribb

	updated precache list

Change 2977030 on 2016/05/13 by Gil.Gribb

	Added time slicing to CreateAsyncPackagesFromQueue, radically reduced the frequency of "precache trimming" and changed a few things in the test rig and logging

Change 2977090 on 2016/05/13 by Gil.Gribb

	Fixed module manager threading and added cmd line param to force async loading thread.

Change 2977292 on 2016/05/13 by Gil.Gribb

	check for thread safety in looking at asset registry

Change 2977296 on 2016/05/13 by Gil.Gribb

	removed some super-expensive check()s from precacher

Change 2978368 on 2016/05/16 by Gil.Gribb

	Move several exposive bools inside of the basic tests inside of FLinkerLoad::Preload, saves a fraction of second.

Change 2978414 on 2016/05/16 by Gil.Gribb

	Added support and testing for unmounting pak files to the pak precacher.

Change 2978446 on 2016/05/16 by Gil.Gribb

	Allow linker listing in non-shipping builds

Change 2978550 on 2016/05/16 by Gil.Gribb

	Allowed some linker spew in non-shipping builds (instead of debug builds). Some tweak to help track down the music.uasset leak.

Change 2979952 on 2016/05/17 by Robert.Manuszewski

	Merging //UE4/Dev-Core @ 2979938 to Dev-UE-30519-LoadTimes

Change 2984927 on 2016/05/20 by Gil.Gribb

	fix a few bugs with an mcp repro

Change 2984951 on 2016/05/20 by Gil.Gribb

	fixed issues with USE_NEW_ASYNC_IO = 0

Change 2985296 on 2016/05/20 by Gil.Gribb

	Fixed several bugs with the MCP boot test

Change 2987956 on 2016/05/24 by Robert.Manuszewski

	Fixing leaked linkers created by blocking load requests during async loading.

Change 2987959 on 2016/05/24 by Joe.Conley

	Enable load timings in block loading also (in addition to async loading).

Change 3017713 on 2016/06/17 by Robert.Manuszewski

	Removing GUseSeekFreeLoading.

Change 3017722 on 2016/06/17 by Robert.Manuszewski

	Renaming LOAD_SeekFree flag to LOAD_Async to better reflect its current purpose.

Change 3017833 on 2016/06/17 by Robert.Manuszewski

	Merging //UE4/Dev-Core to Dev-UE-30519-LoadTimes (//Tasks/Dev-Core/Dev-UE-30519-LoadTimes)

Change 3017840 on 2016/06/17 by Robert.Manuszewski

	Re-doing Dev-Core changes to Delegates 2/2

Change 3022872 on 2016/06/22 by Gil.Gribb

	reorder memory trim and deleting loaders

Change 3059218 on 2016/07/21 by Robert.Manuszewski

	Fixing compilation errors - adding missing load time tracker stats.

Change 3064508 on 2016/07/26 by Robert.Manuszewski

	Removing blocking loading path in cooked builds. LoadPackage will now use the async path.

Change 3066312 on 2016/07/27 by Gil.Gribb

	Event driven loader, first pass

Change 3066785 on 2016/07/27 by Gil.Gribb

	Removed check...searching forward for export fusion can release a node

Change 3068118 on 2016/07/28 by Gil.Gribb

	critical bug fixes for the event driven loader

Change 3068333 on 2016/07/28 by Gil.Gribb

	correctly handle the case where a file is rejected after loading the summary

Change 3069618 on 2016/07/28 by Robert.Manuszewski

	Merging //UE4/Dev-Core to Dev-UE-30519-LoadTimes (//Tasks/Dev-Core/Dev-UE-30519-LoadTimes)

Change 3069901 on 2016/07/29 by Robert.Manuszewski

	Fixing an hang when loading QA-Blueprints level

Change 3070171 on 2016/07/29 by Gil.Gribb

	fixed CDO cyclic dependencies

Change 3075288 on 2016/08/03 by Gil.Gribb

	misc fixes to the event driven loader

Change 3077332 on 2016/08/04 by Robert.Manuszewski

	Fixing checkSlow asserts caused by new loading code not being flagged as IsInAsyncLoadThread() and CreateSynchEvent deprecation warning.

Change 3078113 on 2016/08/04 by Gil.Gribb

	implemented "nicks rule" and undid some previous material and world hacks needed without it.

Change 3079480 on 2016/08/05 by Gil.Gribb

	fixes and tweaks on event driven loader

Change 3080135 on 2016/08/07 by Gil.Gribb

	misc fixes for event driven loader, now with reasonable memory

Change 3083722 on 2016/08/10 by Robert.Manuszewski

	Fixing hangs when async loading packages.

Change 3091747 on 2016/08/17 by Gil.Gribb

	Fix all hitches in streaming load that were regressions.

Change 3093258 on 2016/08/18 by Gil.Gribb

	Fix bug that caused an assert when packages fail to load for certain reasons (like loading an uncooked file).

Change 3095719 on 2016/08/20 by Gil.Gribb

	reenable async loading thread and cleanup and bug fixes

Change 3096350 on 2016/08/22 by Gil.Gribb

	tweak task priorities a bit to minimize precaching memory

Change 3096355 on 2016/08/22 by Gil.Gribb

	add support for precaching for "loose files" in the generic async layer.

Change 3098091 on 2016/08/23 by Gil.Gribb

	Split header into a separate file and disabled a bad optimization in the bulk data.

Change 3099783 on 2016/08/24 by Gil.Gribb

	rework dependency graph to be much, much faster. About half done.

Change 3100995 on 2016/08/25 by Gil.Gribb

	fixed bugs with streaming texture from .uexp and cook time check that should have been runtime only

Change 3101369 on 2016/08/25 by Gil.Gribb

	fixed bug with blueprints in the new loader.

Change 3102793 on 2016/08/26 by Gil.Gribb

	PS4 - fixed small block memcpy to actually be inline

Change 3103785 on 2016/08/27 by Gil.Gribb

	fixed case bug with pak order. devirtualized flinkerload::serialize, made sure -fileopenlog is not heavily skewed

Change 3104884 on 2016/08/29 by Gil.Gribb

	fixed a BP bug and tweaked the -fileopenlog behavior to do leaf assets DFS

Change 3105266 on 2016/08/29 by Ben.Zeigler

	Editor build compilation fix

Change 3105774 on 2016/08/30 by Gil.Gribb

	add checks to locate cases where we try to use something that isn't loaded yet

Change 3107794 on 2016/08/31 by Gil.Gribb

	fixed abug with BP's not loading the parent CDO soon enough

Change 3114278 on 2016/09/06 by Gil.Gribb

	looping loads for paragon load test

Change 3114311 on 2016/09/06 by Ben.Zeigler

	Fix linux compile

Change 3114350 on 2016/09/06 by Ben.Zeigler

	Linux supports fast unaligned int reads

Change 3116169 on 2016/09/07 by Ben.Zeigler

	Force enable separate bulk data cooking when using split cooked files, end-of-exp-file doesn't make sense with the new cook scheme and will crash at runtime

Change 3116538 on 2016/09/07 by Gil.Gribb

	add dependencies for CDO subobjects

Change 3116596 on 2016/09/07 by Ben.Zeigler

	Change crash to warning when trying to load an import to a missing native class, can happen with editor only classes.

Change 3116855 on 2016/09/07 by Ben.Zeigler

	Move cook dialog down a bit so I can cook without constant dialogs popping up

Change 3117452 on 2016/09/08 by Robert.Manuszewski

	Fixing hang when suspending async loading with the async loading thread enabled.

Change 3119255 on 2016/09/09 by Robert.Manuszewski

	Removing texture allocations from PackageFileSummary as they were not used by anything.

Change 3119303 on 2016/09/09 by Gil.Gribb

	Fixed font issue by making all all bulk data either inline or in a ubulk. Added support for compressed packages.

Change 3120324 on 2016/09/09 by Ben.Zeigler

	Fix Cook warnings. Skip transient and client/server only objects when adding dependencies, and mark ShapeComponent BodySetups as properly transient.

Change 3121960 on 2016/09/12 by Ben.Zeigler

	Add RandomizeLoadOrder CVar to randomize the package serial number it uses for sorting async loads

Change 3122635 on 2016/09/13 by Gil.Gribb

	reworked searching disk warning and minor change to the background tasks used for decompression

Change 3122743 on 2016/09/13 by Gil.Gribb

	added some checks around memory accounting

Change 3123395 on 2016/09/13 by Ben.Zeigler

	Enable MallocBinned2 by default on cooked windows builds, similar to how PS4 works.
	Disabled thread pool cache clearing on windows, the threading function it was using is very slow on windows specifically

Change 3124748 on 2016/09/14 by Gil.Gribb

	Store template in import/export table and refer to it for each export to avoid calling GetArchetypeFromRequiredInfo. Minor fix for some NeedLoadForCLient etc stuff on landscape and CDOs. Fix texture streamer minmips stuff.

Change 3125153 on 2016/09/14 by Gil.Gribb

	don't put transient objects in the import map

Change 3126668 on 2016/09/15 by Gil.Gribb

	Fix critical bug with imports not waiting for the corresponding export to serialize. Fixed paragon test rig to run longer looping by flushing the renderer. Made random mode more random.

Change 3126755 on 2016/09/15 by Gil.Gribb

	ooops, test rig fix

Change 3127408 on 2016/09/15 by Ben.Zeigler

	Back out changelist 3123395, restoring windows memory to 4.13 setup

Change 3127409 on 2016/09/15 by Ben.Zeigler

	Remove Memory trim from FlushAsyncLoading, because it gets called much more often in new flow and is slow on some platforms

Change 3127948 on 2016/09/16 by Gil.Gribb

	Added a check() on any attempt to serialize a pointer to something that hasn't been created yet. This will help us find missing dependencies. There is an exception to this related to CDOs.

Change 3128094 on 2016/09/16 by Robert.Manuszewski

	Fixing exports referenced by weak object pointers not being added to the preload dependency list of of the exports that depend on them.

	+ Moved weak object pointer serialization to FArchive operator << to be able to override its behavior when cooking.

Change 3128148 on 2016/09/16 by Robert.Manuszewski

	Gil's mod to how we detect exports with missing dependencies

Change 3129052 on 2016/09/16 by Ben.Zeigler

	Add Missing Serialize helpers for WeakObjectPtrs, fixes crash with replicating weak objects

Change 3129053 on 2016/09/16 by Ben.Zeigler

	Fake integrate CL #3123581 from Dev-Framework, to correctly handle detecting components as editor only even when they have collision. Fixes crashes with blueprint editor only components that depend on native templates

Change 3129630 on 2016/09/17 by Gil.Gribb

	better logging for missing dependencies and properly ifdef'd the CDO primitive comp hack

Change 3130178 on 2016/09/19 by Robert.Manuszewski

	Use the correct macro (COOK_FOR_EVENT_DRIVEN_LOAD instead of USE_NEW_ASYNC_IO) for SavePackage changes from CL #3128094

Change 3130224 on 2016/09/19 by Robert.Manuszewski

	Compile error fix

Change 3130391 on 2016/09/19 by Gil.Gribb

	Add cook time fatal errors, and undid a previous change we don't seem to need relating to editor only CDOs

Change 3130484 on 2016/09/19 by Gil.Gribb

	fixed botched GetArchetypeFromRequiredInfo

Change 3131966 on 2016/09/20 by Robert.Manuszewski

	Making the new event driven loader disabled by default. It's now also configurable via project settings (under Streaming Settings -> Event Driven Loader Enabled).

	Enabled the event driven loader for a few internal projects.

Change 3132035 on 2016/09/20 by Gil.Gribb

	fix dynamic switch on new loader

Change 3132041 on 2016/09/20 by Robert.Manuszewski

	Fix for packages not being saved to disk when cooking with event driven loader disabled.

Change 3132195 on 2016/09/20 by Robert.Manuszewski

	Enabling the event driven loader for Zen

Change 3133870 on 2016/09/21 by Graeme.Thornton

	Config files now enable the event driven loader with the correct cvar name

Change 3135812 on 2016/09/22 by Gil.Gribb

	fixed some bugs with GC during streaming

Change 3136102 on 2016/09/22 by Robert.Manuszewski

	Release GC lock when FlushingAsyncLoading when running GC.

Change 3136633 on 2016/09/22 by Gil.Gribb

	fix bug with linkers finsihing before other things linked their imports

Change 3138002 on 2016/09/23 by Robert.Manuszewski

	Added an assert that will prevent content cooked for the event driven loader to be loaded by game builds that have the EDL disabled.

Change 3138012 on 2016/09/23 by Gil.Gribb

	Improved the fix to prevent packages from finishing before external imports have linked. Async load object libraries.

Change 3138031 on 2016/09/23 by Gil.Gribb

	do not preload obj libs in editor

Change 3139176 on 2016/09/24 by Gil.Gribb

	fixed another bug with an attempt to call GetArchetypeFromRequiredInfo

Change 3139459 on 2016/09/26 by Robert.Manuszewski

	Merging //UE4/Release-4.13 to Dev-LoadTimes (//Tasks/UE4/Dev-LoadTimes)

Change 3139668 on 2016/09/26 by Gil.Gribb

	change some checks to errors on bad bulk data loads

Change 3141127 on 2016/09/27 by Robert.Manuszewski

	Preventing linkers from being detached too early when async loading.

Change 3141129 on 2016/09/27 by Robert.Manuszewski

	Releasing GC Lock before calling post GC callbacks to allow StaticFindObject use in these callbacks

Change 3142048 on 2016/09/27 by Robert.Manuszewski

	Changing async loading code to not close DelayedLinkerClosePackages linkers until the async package that triggered their creation has finished loading.

Change 3143132 on 2016/09/28 by Gil.Gribb

	fixed text render comp, which has some editor only issues. Fixes a runtime crash and adds a cooktime warning.

Change 3143198 on 2016/09/28 by Gil.Gribb

	fixed it so that bogus loads of bulk data are warned but do not crash

Change 3143287 on 2016/09/28 by Robert.Manuszewski

	UBT will now invalidate its makefiles if ini files are newer than the makefile (ini files may contains global build settings).

	+ Android toolchain will add hashed command line values to the action reposnse filenames to actually allow it to detect compiler command line changes when detecting actions to execute

Change 3143344 on 2016/09/28 by Robert.Manuszewski

	Make UAT pass the project filename to UBT when build non-code projects so that UBT can parse all ini files.

Change 3143865 on 2016/09/28 by Gil.Gribb

	iffy fix for the net load assert in paragon, plus a few checks and one bit of code removed that should never be hit in the EDL, but makes no sense

Change 3144683 on 2016/09/29 by Graeme.Thornton

	Minor refactor of pak file non-filename stuff
	 - Don't check for file existing before running through the security delegate
	 - Default behaviour when using new IO is to reject uasset/umap/ubulk/uexp files immediately. Can be disabled by setting EXCLUDE_NONPAK_UE_EXTENSIONS to 0 in project .build.cs

Change 3144745 on 2016/09/29 by Graeme.Thornton

	Orion non-pak file whitelisting is enabled for all cooked game only builds now, rather than just clients

Change 3144780 on 2016/09/29 by Gil.Gribb

	use poison proxy on non-test/shipping builds

Change 3144819 on 2016/09/29 by Gil.Gribb

	added a few asserts and added an improved fix for the net crash

Change 3145414 on 2016/09/29 by Gil.Gribb

	fixed android assert....not sure why I need that block of code.

Change 3146502 on 2016/09/30 by Robert.Manuszewski

	Fix for GPU hang from MarcusW

Change 3146774 on 2016/09/30 by Robert.Manuszewski

	Fixing a crash when constantly streaming levels in and out caused by keeping references to objects (levels) that were requested to be streamed out.

	- Removed FAsyncObjectsReferencer. References will now be owned by FAsyncPackage
	- UGCObjectReferencer is now more thread safe

Change 3148008 on 2016/10/01 by Gil.Gribb

	add additional error for attempting to create an object from a class that needs to be loaded

Change 3148009 on 2016/10/01 by Gil.Gribb

	fix very old threading bug whereby the ASL and GT would attempt to use the same static array

Change 3148222 on 2016/10/02 by Robert.Manuszewski

	Fix for an assert when an FGCObject is removed when purging UObjects

Change 3148229 on 2016/10/02 by Gil.Gribb

	disable assert that was crashing paragon ps4

Change 3148409 on 2016/10/03 by Robert.Manuszewski

	Allow another case for removing FGCObjects while in GC.

Change 3148416 on 2016/10/03 by Robert.Manuszewski

	Merging //UE4/Release-4.13 to Dev-LoadTimes (//Tasks/UE4/Dev-LoadTimes)

Change 3149566 on 2016/10/03 by Ben.Zeigler

	#jira UE-36664 Fix issue where objects loaded during async loading could be added to the wrong package's object list, if a time slice ended at the wrong point

Change 3149913 on 2016/10/04 by Gil.Gribb

	better broadcast

Change 2889560 on 2016/03/02 by Steven.Hutton

	Packages for scheduled tasks.

Change 2889566 on 2016/03/02 by Steven.Hutton

	Remaining nuget packages for hangfire, unity and scheduled tasks.

Change 2980458 on 2016/05/17 by Chris.Wood

	Attempt to fix crash report submission problems from CRP to CR website
	[UE-30257] - Crashreports are sometimes missing file attachments

	Passing crash GUID so that website can easily check for duplicates in future
	Increased request timeout for AddCrash to be longer than website database timeout
	Logging retries for future visibility
	CRP v.1.1.6

Change 3047870 on 2016/07/13 by Steven.Hutton

	Updated CRW to entity framework with repository models. #rb none

Change 3126265 on 2016/09/15 by Steve.Robb

	Fix for TCString::Strspn.

Change 3126266 on 2016/09/15 by Steve.Robb

	Alternative fix for GitHub 2698: Fix one bug : Parsing command "Enable True" is invalid.

	#jira UE-34670

Change 3126268 on 2016/09/15 by Steve.Robb

	UWorld can no longer be extended by users.
	UHT now handles final class declarations.

	#jira UE-35708

Change 3126273 on 2016/09/15 by Steve.Robb

	A further attempt to catch uninitialized pointers supplied to the GC.

	#jira UE-34361

Change 3130042 on 2016/09/19 by Steve.Robb

	Super for USTRUCTs.

	Suggested here: https://udn.unrealengine.com/questions/310461/automatically-typedef-super-for-ustructs.html

Change 3131861 on 2016/09/20 by Steven.Hutton

	Reconciling work for view engine changes #rb none

Change 3131862 on 2016/09/20 by Steve.Robb

	Removal of THasOperatorEquals and THasOperatorNotEquals from Platform.h, which should have happened as part of CL# 3045963.

Change 3131863 on 2016/09/20 by Steven.Hutton

	Adding packages #rb none

Change 3131869 on 2016/09/20 by Steve.Robb

	Improved error message for enum classes with a missing base:

	Error: Missing base specifier for enum class 'EMyEnum' - did you mean ': uint8'?

Change 3132046 on 2016/09/20 by Graeme.Thornton

	Fix for cvar thread access assert in FLandscapeComponentGrassData serialization function
	 - This function can be called from the async thread so access CVarGrassDiscardDataOnLoad with GetValueOnAnyThread() rather than GetValueOnGameThread()

Change 3133201 on 2016/09/20 by Ben.Zeigler

	Reorganize WindowsPlatformMemory and MacPlatformMemory to work like LinuxPlatformMemory where there is an enum to select the allocator, and move some of it up to GenericPlatformMemory
	Add command line options to select malloc at runtime for Windows and Linux, I don't know how Mac options work
	Improve the performance of BroadcastSlow_OnlyUseForSpecialPurposes on windows, but there are cases where it occaisionally stalls for a few seconds waiting for the flush
	Add MallocBinned2 as an option for mac, linux, and windows, but default to off due to some threading issues

Change 3133722 on 2016/09/21 by Graeme.Thornton

	Cooker forces a shader compilation flush when it detects that it has passed the max memory budget

Change 3133756 on 2016/09/21 by Steve.Robb

	Refactor of TrimPrecedingAndTrailing to avoid a call to FString::Mid with a negative count, which is now illegal.

	#jira UE-36163

Change 3134182 on 2016/09/21 by Steve.Robb

	GitHub #1986: Don't show warnings and erros in console twice with UCommandlet::LogToConsole == true

	#jira UE-25915

Change 3134306 on 2016/09/21 by Ben.Zeigler

	Fix it so FMallocBinned2::Trim skips task threads on desktop platforms, they are too slow and don't allocate much memory
	Enable MallocBinned2 as default binned malloc on Windows
	Remove the -Run command line check as it was removed from the old version as well

Change 3135569 on 2016/09/22 by Graeme.Thornton

	Don't create material resources if we are in a build that can never render
	 - Saves a few MB of memory

Change 3135652 on 2016/09/22 by Steve.Robb

	New async-loading-thread-safe IsA implementation.

	#jira UECORE-298

Change 3135692 on 2016/09/22 by Steven.Hutton

	Minor bug fixes to view pages #rb none

Change 3135990 on 2016/09/22 by Robert.Manuszewski

	Adding ENGINE_API to FStripDataFlags sp that it can be used outside of the Engine module.

Change 3136020 on 2016/09/22 by Steve.Robb

	Display a meaningful error and shutdown if Core modules fail to load.

	https://udn.unrealengine.com/questions/312063/mac-unrealheadertool-failing-randomly.html

Change 3136107 on 2016/09/22 by Chris.Wood

	Added S3 file upload to output stage of Crash Report Process (v.1.1.26)
	[UE-35991] - Crash Report Process to write crash files to S3

	Also adds OOM alerts to CRP.
	Also disk space alerts changed to 5% free space and repeat once every 30 minutes instead of 10 minutes.

Change 3137562 on 2016/09/23 by Steve.Robb

	TUniquePtr<T[]> support.

Change 3138030 on 2016/09/23 by Steve.Robb

	Virtual UProperty functions moved out of headers into .cpp files to ease iteration.

Change 3140381 on 2016/09/26 by Chris.Wood

	Disabled uploads via CRRs while leaving services switched on to avoid crashes in some clients.
	[UETOOL-1005] - Turn off CrashReportReceivers

Change 3141150 on 2016/09/27 by Steve.Robb

	Invoke support for TFunction.

Change 3141151 on 2016/09/27 by Steve.Robb

	UBoolProperty now supports hashing and is therefore usable as a TSet element or TMap key.
	FText is now prevented from being a TSet element or TMap key.
	UTextProperty::GetCPPTypeForwardDeclaration implementation moved to the .cpp file.

	#jira UE-36051
	#jira UE-36053

Change 3141440 on 2016/09/27 by Chris.Wood

	Removed legacy queues and unnecessary duplication checks from Crash Report Process (v1.2.0)
	[UE-36246] - CRP scalability: Simplify CRP inputs to DataRouter/S3 only

Change 3142999 on 2016/09/28 by Chris.Wood

	Added dedicated PS4 crash queue to Crash Report Process (v1.2.1)

Change 3144831 on 2016/09/29 by Steve.Robb

	InternalPrecache now flags the archive as in-error so that it can be checked by a caller, rather than popping up a dialog box and asserting.

	#jira https://jira.it.epicgames.net/browse/OPP-6036

Change 3145184 on 2016/09/29 by Robert.Manuszewski

	FScopedCreateImportCounter will now always store the current linker and restore the previous one when it exits.

Change 3148432 on 2016/10/03 by Robert.Manuszewski

	Thread safety fixes for the async log writer + made the async log writer flush its archive more often.

Change 3148661 on 2016/10/03 by Graeme.Thornton

	Fixing merge of IsNonPakFilenameAllowed()
	 - Removed directory search stuff... we pass everything to the delegate now anyway

Change 3149669 on 2016/10/03 by Ben.Zeigler

	Lower verbosity of warnings from deleting native properties. These cases do not cause any problems and are not fixable without resaving the content after it has started warning. I checked Jira history and neither of these warnings has ever found a real bug, but has caused a lot of content to be resaved unnecessarily.

Change 3149670 on 2016/10/03 by Ben.Zeigler

	Merge CL #3149566 from Dev-LoadTimes
	#jira UE-36664 Fix issue where objects loaded during async loading could be added to the wrong package's object list, if a time slice ended at the wrong point

Change 3149835 on 2016/10/04 by Graeme.Thornton

	Thread safety fix for SkyLightComponent
	 - Add to global update list from PostLoad rather than PostInitProperties so that it happens on the game thread, and not the async loading thread (if enabled)

Change 3149836 on 2016/10/04 by Graeme.Thornton

	Thread safety fix for ReflectionCaptureComponent
	 - Add to global update list from PostLoad rather than PostInitProperties so that it happens on the game thread, and not the async loading thread (if enabled)

Change 3149959 on 2016/10/04 by Robert.Manuszewski

	Allow import packages to be missing if they're on the KnownMissingPackages list

Change 3150023 on 2016/10/04 by Steven.Hutton

	Updating jira strings. #rb none

Change 3150050 on 2016/10/04 by Steve.Robb

	MakeShared now returns a TSharedRef (which is implicitly convertible to TSharedPtr) rather than a TSharedPtr (which is not implicitly convertible to TSharedRef), for ease of use and because MakeShared can't return a null pointer anyway.

Change 3150110 on 2016/10/04 by Robert.Manuszewski

	Allow UGCObjectReferencer::AddObjects to happen during BeginDestry and FinishDestroy. It's fine as long as we're not adding new objects during reachability analysis.

Change 3150120 on 2016/10/04 by Gil.Gribb

	fix task graph/binned2 broadcast for PS4

Change 3150195 on 2016/10/04 by Robert.Manuszewski

	Fixing WEX crash
	#jira UE-36801

Change 3150212 on 2016/10/04 by Robert.Manuszewski

	Increasing compiler memory limit to fix CIS errors
	#jira UE-36795

Change 3151583 on 2016/10/05 by Robert.Manuszewski

	Temporarily switching to the old IsA path

	#jria UE-36803

Change 3151642 on 2016/10/05 by Steve.Robb

	Dependency fixes for GameFeedback modules.

Change 3151653 on 2016/10/05 by Robert.Manuszewski

	Maybe fix for crash on the Mac

	#jira UE-36846

[CL 3152539 by Robert Manuszewski in Main branch]
2016-10-05 16:51:01 -04:00
Andrew Grant
2000999e23 Copying //UE4/Orion-Staging to //UE4/Main (Source: //Orion/Dev-General @ 2997507)
#lockdown Nick.Penwarden

==========================
MAJOR FEATURES + CHANGES
==========================

Change 2997066 on 2016/06/01 by Michael.Noland

	Engine: Marked engine performance target cvars ECVF_Scalability so they can be adjusted via scalability buckets at runtime for games that target different framerates on different levels of hardware
	#rb none
	#tests Ran Paragon and changed video settings and tested t.TargetFrameTimeThreshold

Change 2996816 on 2016/06/01 by Dan.Youhon

	Add FixedWorldDirection option for Root Motion Radial Forces; code/BP hook-up for allowing Price's reworked RMB to send all targets in the same (correct) direction
	- FixedWorldDirection added to both root motion system and corresponding ability tasks
	- Exposed AddHitResult for EffectContexts for modifying EffectContext hit results from BP
	- Hooked up to Price RMB - we (somewhat dirtily) route Price's location and facing through the HitResult of the EffectContext for his displacement GE

	#rb Dave.Ratti
	#tests MultiPIE
	#codereview Billy.Rivers
	#lockdown Billy.Rivers

Change 2996526 on 2016/06/01 by Brian.Karis

	Fixed tube light typo

	JB made this robomerge up.  Shader recompiling in our future.

	#RB:none
	#Tests:none

	#ROBOMERGE: MAIN, 27, 26.2

Change 2996428 on 2016/06/01 by Rolando.Caloca

	O - Made r.D3D.RemoveUnusedInterpolators a system setting which now also alters ddc key; fix r.Shaders.FastMath actually affecting compilation when =0
	#rb Chris.Bunner
	#codereview Michael.Noland, Marcus.Wassmer
	#jira OR-22573
	#tests Run with and without r.D3D.RemoveUnusedInterpolators=1 on DefaultEngine.ini

Change 2996090 on 2016/06/01 by Jason.Bestimt

	#ORION_MAIN - Merge 26.2 @ CL 2995754

	#RB:none
	#Tests:none

	#ROBOMERGE-SOURCE: CL 2995816 in //Orion/Main/...
	#ROBOMERGE-BOT: ORION (Main -> Dev-General)

	#CodeReview: jason.bestimt

Change 2995785 on 2016/06/01 by Robert.Manuszewski

	Don't delete non-backup log files when cleaning up the logs folder.

	#rb none
	#tests Tested in the editor with multiple old log files

Change 2995556 on 2016/05/31 by Dmitry.Rekman

	More info about timers on crash (OR-21986).

	- Somewhat desperate attempt to get more clue about timer crash. Intended to be removed later.

	#rb Michael.Noland
	#codereview Marc.Audy, Michael.Noland
	#tests Compiled the Linux server, ran it, crashed a few times.

Change 2995397 on 2016/05/31 by Michael.Noland

	Rendering: Made the optimization to combine upscaling/downscaling and tonemapping optional based on the amount of upscaling that will occur
	- r.Tonemapper.ScreenPercentage has been renamed to r.Tonemapper.MergeWithUpscale.Mode
	- r.Tonemapper.MergeWithUpscale.Threshold is a new setting used when r.Tonemapper.MergeWithUpscale.Mode is set to 2, which indcates to only try to merge the passes if the ratio of the area before upscale/downscale to the area afterwards is greater than the threshold
	This prevents running the tonemapper on all of the target res pixels when the source res is far smaller, as that can cause it to be a loss to merge the passes

	Upgrade Notes: r.Tonemapper.ScreenPercentage has been renamed to r.Tonemapper.MergeWithUpscale.Mode

	#rb marcus.wassmer
	#tests Ran Paragon at various resolutions on Intel and NV cards
	#rn

Change 2995118 on 2016/05/31 by David.Decker

	- Fix for build failure

	#rb none
	#tests golden path game

Change 2994929 on 2016/05/31 by David.Decker

	#Orion_Analytics
	-Added PacketRecievedHistogram event that fires every minute in game the rate is configurable in DefaultGame.ini
	-Moved FHistogram from PerfCountersModule to ProfilingHelpers
	-Re-enabled Location event

	#rb Dmitry.Rekman
	#codereview Dmitry.Rekman, John.Pollard, Christopher.Wright
	#tests golden path game

Change 2994920 on 2016/05/31 by Daniel.Lamb

	Added some more cooking stats to save package.
	#rb Wes.Hunt
	#test Cook Orion.

Change 2994622 on 2016/05/31 by Zak.Middleton

	#orion - Pickup and Coin filter collision optimizations.

	- Added coin collision profile preset and made it ignore everything but Pawn (importantly, now ignores triggers).
	- Pickups filter out collision with AI earlier. Profile already did this but this avoids more branches and cache misses in PreFilter.
	- Coins now additionally filter out more efficiently Heroes that can't pick them (no overlap events generated at all).

	#rb Jon.Lietz, Frank.Gigliotti
	#tests PlayGo MultiPIE

Change 2994305 on 2016/05/31 by Andrew.Grant

	Restoring prompt/exit on signed archive issue to help identify causes
	#rb none
	#tests compiled

Change 2994226 on 2016/05/31 by Jason.Bestimt

	#ROBOMERGE-AUTHOR: jason.bestimt
	#ORION_MAIN - Merge 27 @ CL 2993946

	#RB:none
	#Tests:none

	[CodeReviewed]: graeme.thornton

	#ROBOMERGE-SOURCE: CL 2994225 in //Orion/Main/...
	#ROBOMERGE-BOT: ORION (Main -> Dev-General)

Change 2994204 on 2016/05/31 by bruce.nesbit

	More banner changes
	-Fixed an issue with InterpToComponent with very short times
	-revisions to test banner
	-added fade to banner/charms
	-tries to set team color on decativate FX

	#rb none

	#tests Game+PIE

	#codereview Jason.Bestimt

Change 2993973 on 2016/05/30 by Robert.Manuszewski

	Updated protection handling

	#rb none
	#tests Compiled and applied protection

Change 2993588 on 2016/05/27 by Michael.Noland

	Engine: Removed a bogus autocomplete for ShowMaterialDrawEvents, which was previously renamed r.ShowMaterialDrawEvents
	#rb none
	#tests Typed in ShowMat in the console and verified that no autocomplete appeared
	#rn

Change 2993510 on 2016/05/27 by John.Pollard

	Fix issue with root motion sources and replays, fixes TwinBlast RMB ability animation issue, and other artifacts

	#rb RyanG
	#tests Replays

Change 2993484 on 2016/05/27 by Uriel.Doyon

	New logic for computing the skel mesh streaming scales
	#rb marcus.wassmer
	#tests loaded editor, played with streaming scale

Change 2993211 on 2016/05/27 by Uriel.Doyon

	Workaround for lightmap streaming flags not being correctly set.
	#codereview marcus.wassmer
	#rb marcus.wassmer
	#tests building lighting and investigating streaming

Change 2993068 on 2016/05/27 by Marcus.Wassmer

	Duplicate 2989729
	Fix for lightmaps and shadowmaps having low resolutions after building lightings
	#rb none
	#test PC at various scalability
	#codereview Uriel.Doyon

Change 2993066 on 2016/05/27 by Lukasz.Furman

	fixed behavior tree getting stuck on ResumeLogic call
	copied from //UE4/Dev-Framework, CL# 2993058
	#jira OR-22498
	#rb none
	#tests none

Change 2992706 on 2016/05/27 by Marcus.Wassmer

	Duplicate 2991726
	Fix for grey skin in simple lighting model (shadows off)

	#rb none
	#test lowest settings on PC

Change 2992705 on 2016/05/27 by Marcus.Wassmer

	Duplicate 2991727
	Fix emissive decals in simple forward renderer
	#rb none
	#test PC lowest settings

Change 2992658 on 2016/05/27 by David.Ratti

	Remove all occurrences of Ability.PersistPastDeath from granted tags. Fix code to *only* check asset tags for this tag, instead of both.

	#rb none
	#test pie

Change 2992646 on 2016/05/27 by Ben.Marsh

	BuildGraph: Add a BuildGraph task to run a UE4 commandlet. Syntax is <Commandlet Name="..." Project="..." Arguments="...">.

	#rb none
	#tests none

Change 2992252 on 2016/05/26 by Jason.Bestimt

	#ORION_DG - Unclog ROBO Merge in DG

	#RB:none
	#Tests:none

Change 2992180 on 2016/05/26 by John.Pollard

	Fix issue where external data wasn't saving out properly

	#rb RyanG
	#tests Replays

Change 2992159 on 2016/05/26 by Michael.Noland

	CVar to disable/freeze GPU particle simulation (r.GPUParticle.Simulate)
	[Replicated from Dev-Rendering checkin CL# 2989752 by Olaf]
	#rb olaf.piesche
	#tests Tested the command in Agora and verified that GPU particles were not being drawn

Change 2992158 on 2016/05/26 by Michael.Noland

	Rendering: Added a cvar that controls unbinding of all texture resources between materials changes in the DX11 renderer (r.UnbindResourcesBetweenDrawsInDX11) to improve the readability of GPA captures
	Note: This will probably be moved to be on when markers are on rather than an independent cvar, but it is currently separate for testing
	#codereview marcus.wassmer
	#rb none
	#tests Ran with the var off and on and verified in GPA captures

Change 2991645 on 2016/05/26 by Andrew.Grant

	Fix for filesize returning 0 if file not found
	#rb none
	#tests bugit now works
	#jira OR-20488

Change 2991290 on 2016/05/26 by Mieszko.Zielinski

	Added a static flag to NavigationSystem that can be used to short-circuit dynamic navigation related functions #UE4

	Will save some perf on PS4 in Orion, since clients do use navigation system there.

	#rb Lukasz.Furman
	#test golden path

Change 2991288 on 2016/05/26 by Mieszko.Zielinski

	CL#2990243 manually redone in for Orion #UE4

	Original description:
	> Fixed behavior tree observers not being applied correctly

	#rb Lukasz.Furman
	#test golden path

Change 2991271 on 2016/05/26 by Jason.Bestimt

	#ROBOMERGE-AUTHOR: jason.bestimt
	#ORION_MAIN - Merge 26.2 @ CL 2990688

	#RB:none
	#Tests:none

	#ROBOMERGE-SOURCE: CL 2991269 in //Orion/Main/...
	#ROBOMERGE-BOT: ORION (Main -> Dev-General)

Change 2991185 on 2016/05/26 by Mieszko.Zielinski

	Fixed UAITask_MoveTo not releasing paths properly, or clearing path observing when task is being reused #UE4

	Also, fixed FNavigationPath::DoneUpdating not converting ENavPathUpdateType properly

	#rb Lukasz.Furman
	#test golden path

Change 2990788 on 2016/05/25 by Marcus.Wassmer

	Fix deprecation warning
	#rb none
	#test none

Change 2990582 on 2016/05/25 by Marcus.Wassmer

	Now that render commands are enqueued again on servers, we shouldn't outright crash if an allocation gets to nullrhi
	#codereview Dmitry.Rekman
	#rb none
	#test none

Change 2990450 on 2016/05/25 by Martin.Mittring

	OR-22233 GPU Sprites invisible unless solo'd
	#rb:David.Hill
	#jira:OR-22233
	#test:PC

Change 2990199 on 2016/05/25 by Marcus.Wassmer

	Remove experimental HDR support in tonemapper. Brings tonemapper cost back down into line
	#rb none
	#codereview Michael.Noland,Brian.Karis

Change 2989908 on 2016/05/25 by Andrew.Grant

	Changed warning about DDC cache full to Display
	#rb none
	#tests compiled

Change 2989903 on 2016/05/25 by Mieszko.Zielinski

	Made BT component ignore subtree injection request if relevant BT nodes already use indicated asset #UE4

	#rb Lukasz.Furman
	#test golden path

Change 2989795 on 2016/05/25 by Ryan.Gerleve

	Fix for storing the correct URL on the pending net game for replay playback.
	Re-implemented this fix from Dev-Networking CL 2981198, fixes deathcam after latest main integration.

	#tests played a reply, enabled deathcam
	#rb none

Change 2989483 on 2016/05/25 by David.Ratti

	ToggleJuggernaut cheat
	#rb danY
	#tests pie

Change 2989384 on 2016/05/25 by Graeme.Thornton

	Extra chunk decryption tests and logging to help diagnose the random failure we're seeing in the wild
	 - retry decrypt three times
	 - after the first attempt, re-decrypt original source, just incase the decrypt cache has been corrupted

	#tests cooked pc client + dedicated server
	#rb robert.manuszewski

Change 2989225 on 2016/05/24 by Dmitry.Rekman

	Fix rare crash in Linux threading code (OR-22193).

	- Sometimes, for some reason, freeing memory for an alternate thread from a thread in PostRun() can crash because the jemalloc apparently does not have an arena for this thread anymore.
	- This change works around the problem by allocating the said memory statically in LinuxThread class.

	#rb none
	#codereview Bob.Tellez, David.Vossel
	#tests Compiled Linux server, started it.

Change 2988768 on 2016/05/24 by Uriel.Doyon

	Added support for SkinnedMesh in the texture streaming MeshCoordSize accuracy viewmode.
	#RB marcus.wassmer
	#tests loaded game and editor

Change 2988462 on 2016/05/24 by Mieszko.Zielinski

	Added a piece of logging to both scenarios or movement aborting in UPathFollowingComponent::UpdatePathSegment to be able to tell them appart while reading the log #Orion

	#rb Lukasz.Furman
	#test golden path

Change 2988036 on 2016/05/24 by Jason.Bestimt

	#ROBOMERGE-AUTHOR: jason.bestimt
	#ORION_MAIN - Merge 26.2 @ CL 2987910

	#RB:none
	#Tests:none

	#ROBOMERGE-SOURCE: CL 2988035 in //Orion/Main/...
	#ROBOMERGE-BOT: ORION (Main -> Dev-General)

Change 2987457 on 2016/05/23 by Mieszko.Zielinski

	Redone changes from CL#2981193 #UE4

	Original description: fixed missing observers in behavior tree when dynamic subtree is changed while waiting for full restart (out of nodes)

	#rb Lukasz.Furman
	#test golden path

Change 2987388 on 2016/05/23 by Olaf.Piesche

	Replicating CL 2985226; don't push mesh emitter transform to pixel shader unless used in the material graph

	#rb marcus.wassmer
	#tests editor game PC

Change 2986255 on 2016/05/22 by Mieszko.Zielinski

	Manually resolving conflict that stoped robomerge from Main to DG #Orion

	#rb none
	#test compile
	#codereview Jason.Bestimt

Change 2986209 on 2016/05/21 by Andrew.Grant

	Removed hitchunter logging from http thread
	#rb none
	#tests compiled

Change 2986202 on 2016/05/21 by Andrew.Grant

	Merging //UE4/Main @ 2981382 from //UE4/Orion-Staging
	#rb none
	#tests engine & game QA passed, built locally

Change 2985899 on 2016/05/20 by Rob.Cannaday

	Move PS4 HTTP processing to HTTP thread
	#tests golden path
	#rb dmitry.rekman

Change 2985884 on 2016/05/20 by Bart.Bressler

	Fix issue where oodle wasn't enabled in shipping correctly.

	#rb john.pollard
	#tests ran orion server in shipping and connecting with a client

Change 2985778 on 2016/05/20 by Jason.Bestimt

	#ROBOMERGE-AUTHOR: jason.bestimt
	#ORION_MAIN - Merge 26.2 @ CL 2985753

	#RB:none
	#Tests:none

	#ROBOMERGE-SOURCE: CL 2985774 in //Orion/Main/...
	#ROBOMERGE-BOT: ORION (Main -> Dev-General)

Change 2985760 on 2016/05/20 by Rob.Cannaday

	Second pass on HTTP threading
	Move threaded objects into separate class, FHttpThread.  FCurlHttpThread derives from FHttpThread and the curl multi work is performed in FCurlHttpThread
	Removed code that limited number of curl easy requests that were added to the multi simultaneously / per frame as now that curl work is performed on a separate thread the performance no longer directly impacts the game thread
	Remove lock from CurlHttp and instead of use FThreadSafeCounter
	#rb dmitry.rekman
	#tests golden path (PC & PS4)

Change 2985658 on 2016/05/20 by John.Pollard

	Fixed issue with cached http replay results making time go backwards

	#rb none
	#tests replays

Change 2985640 on 2016/05/20 by Jason.Bestimt

	#ROBOMERGE-AUTHOR: david.ratti
	Ability System: call OnRemove event for gameplay cues that are mispredicted. Previously if a looping GC was predictively added, it would only get the OnRemove event if the replicated GC was removed. In the case of a mis prediction there is no replicated version, so the OnRemove was never called and cleanup was never happening.

	#rb FrankG
	#tests multi pie

	#ROBOMERGE-SOURCE: CL 2985638 in //Orion/Main/...
	#ROBOMERGE-BOT: ORION (Main -> Dev-General)

Change 2985631 on 2016/05/20 by Jason.Bestimt

	#ROBOMERGE-AUTHOR: david.ratti
	Fast TArray serialization fixes:
	1. Fix case where Array ReplicationKey has changed no items between base and current state have changed. Previously server would early out and not send an update: but this needs be sent so that the client can potentially perform an implicit delete.

	This fixes the case where client TArray would have stale items hanging around until a new update was sent (which could potentially be never).

	2. Fix case where an array item would be deleted by both explicit delete and implicit delete: causing other items in the array to be deleted (!).

	#rb frankG, pollard
	#tests golden path
	[CodeReviewed] Bob.Tellez, Billy.Bramer, Ben.Zeigler

	#ROBOMERGE-SOURCE: CL 2985629 in //Orion/Main/...
	#ROBOMERGE-BOT: ORION (Main -> Dev-General)

Change 2985542 on 2016/05/20 by Daniel.Lamb

	Added per package stats.
	Optimized cooker, moved FTextureSource::Compress from UTexture::Presave to UTexture::Serialize so we can avoid it in the cooker.
	#rb Robert.Manuszewski, Andrew.Grant, Marcus.Wassmer
	#test cook paragon, save packages paragon editor

Change 2985152 on 2016/05/20 by Jason.Bestimt

	#ROBOMERGE-AUTHOR: jason.bestimt
	#ORION_MAIN - Merge 26.2 @ CL 2985092

	#RB:none
	#Tests:none

	#ROBOMERGE-SOURCE: CL 2985150 in //Orion/Main/...
	#ROBOMERGE-BOT: ORION (Main -> Dev-General)

Change 2985001 on 2016/05/20 by Chris.Wood

	Move fullcrashdump location for Paragon from QA deptartment storage to Paragon project storage. Changes CrashReportClient config only.

Change 2984839 on 2016/05/20 by Robert.Manuszewski

	Renaming some confusing function names and updating messages related to exception handling.

	#rb none
	#tests Cooked Win64 Client and Server, Tested crash reporting in cooked game

Change 2984517 on 2016/05/19 by Mike.Larson

	Adjusted 'PlatformHeadroom' audio volume settings to DB-3 on both Windows and PS4

Change 2983932 on 2016/05/19 by jason.bestimt

	#ORION_MAIN - Merge 26.2 @ CL 2983814

	#RB:none
	#Tests:none

	#ROBOMERGE-SOURCE: CL 2983921 in //Orion/Main/...
	#ROBOMERGE-BOT: ORION (Main -> Dev-General)

	#ROBOMERGE-SAYS: Beep boop! I couldn't merge this change. Please do it yourself, human.
	#CodeReview: jason.bestimt

Change 2983864 on 2016/05/19 by Wes.Hunt

	Added missing assignment copy/move ops to FAnalyticsEventAttribute. Doh, should have looked at more usages of PLATFORM_COMPILER_HAS_DEFAULTED_FUNCTIONS...
	#codereview:steve.robb
	#rb none
	#tests compiled Orion Editor Win64

Change 2983780 on 2016/05/19 by Wes.Hunt

	Modernize FAnalyticsEventAttribute usage. #jira UE-30551.

	Replaced FAnalyticsEventAttribute various ctors with a perfect forwarding one that can convert them to strings.
	* The Name must be convertible to a string
	* The value must be convertible to a string via an AnalyticsConversion::ToString() overload.
	* Added/expanded the supported conversions to strings to analytics attribute values. See AnalyticsConversion.h which contains all the previously supported conversions and more.

	Added MakeAnalyticsEventAttributeArray(), which uses variadic templates to create an array of event attributes inline, which can be passed to RecordEvent[Json] and efficiently taken ownership of:
	    RecordEvent("EventName", MakeAnalyticsEventAttributeArray(
	        "Attr1", false,
	        "Attr2", 42.0,
	        "Attr3",  SomeMap,
	        "Attr4", SomeArray);

	#codereview:steve.robb,david.decker,sam.spiro
	SamS - you've been asking for better attribute conversion facilities for years. Finally got it, haha.
	SteveR - I only added copy/move ctors to FAnalyticsEventAttribute. Do I also need to explicitly add the copy/move assignment ops?
	DavidD - This will allow you to create attributes a lot more easily and efficiently now.
	#rb steve.robb,david.decker
	#tests orion editor runs

Change 2983702 on 2016/05/19 by Daniel.Lamb

	Renumbered cooking stats to be more correct
	#rb Wes.Hunt
	#test cook paragon.

Change 2983392 on 2016/05/19 by Jason.Bestimt

	#ROBOMERGE-AUTHOR: jason.bestimt
	#ORION_MAIN - Merge 26.2 @ CL 2983342

	#RB:none
	#Tests:none

	#ROBOMERGE-SOURCE: CL 2983391 in //Orion/Main/...
	#ROBOMERGE-BOT: ORION (Main -> Dev-General)

Change 2982910 on 2016/05/18 by Marcus.Wassmer

	Don't fail entire deployments because obsolete manifest can't find the files to delete
	#rb none
	#codereview Peter.Sauerbrei
	#test none

Change 2982902 on 2016/05/18 by Marcus.Wassmer

	Disable HTTP networkfilesystem because it constantly crashes cookonthefly servers.  platform team is aware
	#rb none
	#test cookonthefly

Change 2982837 on 2016/05/18 by David.Ratti

	Spot merge safety check in ~FAgggregator. From BobT CL 2966255.

	#rb none
	#tests compile

Change 2982723 on 2016/05/18 by Wes.Hunt

	Analytics no longer adds IsEditor attribute to all events. Wasn't actually used by anyone anymore. #jira UE-30559
	#rb none
	#tests none

Change 2982716 on 2016/05/18 by Wes.Hunt

	Remove Analytics code to divert legacy code to source data collector. #jira UE-27794
	#rb none
	#tests run orion editor

Change 2982707 on 2016/05/18 by Wes.Hunt

	AnalyticsET support for arbitrary Json events. #jira UE-30375
	* AnalyticsET supports a new API, RecordEventJson.
	* API supports rvalue refs to avoid unnecessary copies of the attribute array.
		/**
		 * Sends an event where each attribute value is expected to be a string-ified Json value.
		 * Meaning, each attribute value can be an integer, float, bool, string,
		 * arbitrarily complex Json array, or arbitrarily complex Json object.
		 *
		 * The main thing to remember is that if you pass a Json string as an attribute value, it is up to you to
		 * quote the string, as the string you pass is expected to be able to be pasted directly into a Json value. ie:
		 *
		 * {
		 *     "EventName": "MyStringEvent",
		 *     "IntAttr": 42                 <--- You simply pass this in as "42"
		 *     "StringAttr": "SomeString"    <--- You must pass SomeString as "\"SomeString\""
		 * }
		 *
		 * @param EventName			The name of the event.
		 * @param AttributesJson	array of key/value attribute pairs where each value is a Json value (pure Json strings mustbe quoted by the caller).
		 */
		virtual void RecordEventJson(const FString& EventName, TArray<FAnalyticsEventAttribute>&& AttributesJson) = 0;
	#codereview:david.decker
	#rb david.decker
	#tests run orion editor

Change 2982057 on 2016/05/18 by David.Ratti

	GameplayCue loading - fix issue where GCM would invoke fully loaded when there were still UGameplayCueNotify_Statics to be loaded.

	#rb Ori.Cohen
	#tests golden path

Change 2981943 on 2016/05/18 by Jason.Bestimt

	#ROBOMERGE-AUTHOR: jason.bestimt
	#ORION_MAIN - Merge 26.2 @ CL 2981896

	#RB:none
	#Tests:none

	#ROBOMERGE-SOURCE: CL 2981942 in //Orion/Main/...
	#ROBOMERGE-BOT: ORION (Main -> Dev-General)

Change 2981812 on 2016/05/18 by Robert.Manuszewski

	Suspending thread heartbeat when a message box is being displayed. Fixes false positives in hand detection.

	#rb Steve.Robb
	#tests Cooked and launched win64 client and server

Change 2981718 on 2016/05/18 by Robert.Manuszewski

	Changed how suspending/resuming thread heartbeat works: it will no longer create a heartbeat for a thread that hasn't sent any heartbeats yet.

	Reimplementing CL #2951209 from Dev-Core

	#rb Steve.Robb
	#tests None

Change 2981108 on 2016/05/17 by Wes.Hunt

	Fix perfect forwarding constructor in CookStats stuff.
	#rb none
	#tests investigating assembly output of cook stats code.
	#codereview:daniel.lamb

Change 2981028 on 2016/05/17 by Nick.Atamas

	Fixing hittest grid with virtual cursor.
	We now prefer any directly hit-test widgets with higher layer ids to those discovered through a distance search.

	#rb none
	#test Game menus
	#codereview Cody.Haskell,Matt.Kuhlenschmidt,Sammy.James,Dan.Hertzka

Change 2980963 on 2016/05/17 by Marc.Audy

	Fix shadowed variable
	#rb None
	#tests Compile

Change 2980917 on 2016/05/17 by Daniel.Lamb

	Removed script packages from unable to find packages warning.
	#rb Andrew.Grant
	#test cook paragon

Change 2980838 on 2016/05/17 by Marc.Audy

	Shave some time out of UPlayerInput::ProcessInputStack
	#rb Michael.Noland
	#tests Input works, performance improvement

Change 2980710 on 2016/05/17 by Michael.Noland

	Engine: Added helpful comments to the LOD visualization colors
	#rn
	#rb david.ratti
	#tests none

Change 2980706 on 2016/05/17 by Michael.Noland

	Engine: Removed unused setting bAllowDebugViewmodesOnConsoles (replaced some time ago by r.ForceDebugViewModes)
	#rn
	#rb david.ratti
	#tests Ran a cooked build with only r.ForceDebugViewModes=1 and confirmed that debug view modes still worked

Change 2980703 on 2016/05/17 by Michael.Noland

	Blueprints: Added support for emitting the Blueprint Description as tooltip metadata for the compiled Blueprint class (displayed in class pickers, etc...)
	#rb david.ratti
	#tests Tested on a Blueprint in Paragon
	#codereview mike.beach
	#rn

Change 2980702 on 2016/05/17 by Michael.Noland

	Rendering: Added ProfileGPU to the console autocomplete list
	#rb david.ratti
	#tests Tried typing Profile in the console and verified that the completion worked and tooltip was displayed
	#rn

Change 2980697 on 2016/05/17 by Michael.Noland

	Landscape: Added a 'resource' name for landscape to improve display in the mesh summary list of ProfileGPU
	#codereview jack.porter
	#rb david.ratti
	#tests Used ProfileGPU while standing on some terrain
	#rn

Change 2980692 on 2016/05/17 by Michael.Noland

	Landscape: Added a scalability CVar for landscape LOD biasing (r.LandscapeLODBias)
	#codereview jack.porter
	#rb david.ratti
	#tests Ran around in Paragon with various r.LandscapeLODBias values
	#rn

Change 2980630 on 2016/05/17 by Daniel.Lamb

	Added more warnings to help track down crash in paragon cook.
	#rb Andrew.Grant
	#test cook orion

Change 2980585 on 2016/05/17 by Jamie.Dale

	Fixed an issue where the editable text caret could become invisible when using UI scaling

	It's now clamped to a min draw size of 1px.

	#jira OR-18524
	#rb none
	#tests Built and ran the game. Verified that the caret now appears where it didn't before.

Change 2979908 on 2016/05/16 by jason.bestimt

	#ORION_MAIN - Merge 26.2 @ CL 2979859

	#RB:none
	#Tests:none

	#CodeReview: jaymee.stanford

Change 2979472 on 2016/05/16 by Nick.Atamas

	Added support for not clearing the render target when rendering a widget.

	#rb Nick.Darnell
	#test PIE w/ minimap

Change 2979434 on 2016/05/16 by Dmitry.Rekman

	Server: Add reporting of frame time without sleep.

	- Also add NumClients to each event so it's easy to filter events that didn't have 10 clients.

	#rb none
	#tests Built Linux server, ran match on a compatible content.

Change 2979267 on 2016/05/16 by Dmitry.Rekman

	Improvements in server hitch hunting / alerting.

	- Add an analytics event for unplayable conditions.
	- Send % of frames we hitched and time we spent hitching.
	- Send more detail about the machine.

	#rb none
	#tests Built Linux server and Windows client, played a match.

Change 2979030 on 2016/05/16 by Andrew.Grant

	Added quick way to reasign GUIDs (-AssignNewMapGuids) to map objects
	#rb none
	#tests used in editor

Change 2978914 on 2016/05/16 by David.Ratti

	Fix issue causing gameplay cue parameters not properly being passed through in cases where GA adds/removes gameplay cue.

	#rb DanY
	#tests multi pie
	#codereview Dave.Ewing

Change 2978681 on 2016/05/16 by Martin.Wilson

	Performance improvements for recalc required bones, removed a lot of unneeded array iterating. Reduces cost to roughly 30% of original code.

	#rb Thomas.Sarkanen
	#tests PS4 games, ded server

Change 2978098 on 2016/05/15 by Andrew.Grant

	Clearer error message
	#rb none
	#tests ran game

Change 2977597 on 2016/05/13 by Olaf.Piesche

	Merging using //UE4/Dev-Rendering->//Orion/Dev-General; fixes for beam particle selection code

	#rb martin.mittring
	#tests PC editor game

Change 2977531 on 2016/05/13 by Daniel.Lamb

	Added cooking stat for PreSave callback.
	#rb Wes.Hunt
	#test cook paragon

Change 2977340 on 2016/05/13 by jason.bestimt

	#ORION_MAIN - Merge 26@ CL 2977290

	#RB:none
	#Tests:none

	#ROBOMERGE-SOURCE: CL 2977329 in //Orion/Main/...
	#ROBOMERGE-BOT: ORION (Main -> Dev-General)

	#ROBOMERGE-SAYS: Beep boop! I couldn't merge this change. Please do it yourself, human.
	#CodeReview: jason.bestimt

Change 2977139 on 2016/05/13 by Jason.Bestimt

	#ROBOMERGE-AUTHOR: jon.lietz
	OR-20830 only allow the periodic effects from a gameplay volume trigger first application triggers on BeginOverlap and Enable volume.

	#RB DaveR
	#test tracked when the poinson from an active card is applied and not applied

	#ROBOMERGE-SOURCE: CL 2977135 in //Orion/Main/...
	#ROBOMERGE-BOT: ORION (Main -> Dev-General)

Change 2976741 on 2016/05/13 by David.Ratti

	GameplayCues that are triggered off animation notifies on the non-primary mesh will now properly attach to that non primary mesh.

	#rb lietz
	#test pie, golden path

Change 2976715 on 2016/05/13 by Jason.Bestimt

	#ROBOMERGE-AUTHOR: andrew.grant
	[NULL MERGE]
	Fix for bad merge
	#rb none
	#tests built automation

	#ROBOMERGE-SOURCE: CL 2976680 in //Orion/Release-0.26/... via CL 2976712 via CL 2976713 via CL 2976714
	#ROBOMERGE-BOT: ORION (Main -> Dev-General)

Change 2976679 on 2016/05/13 by Robert.Manuszewski

	Tweaks to DLL injection detection code

	#rb Steve.robb
	#tests cooked Win64 client

Change 2976670 on 2016/05/13 by Robert.Manuszewski

	UAT: Arxan upgrade to 3.9.1

	#rb Ben.Marsh
	#tests Win64 cooked client (test config)

Change 2976654 on 2016/05/13 by Graeme.Thornton

	Shadowed variable warning fix

	#rb none
	#tests compiled win64/ps4 client

Change 2976645 on 2016/05/13 by Graeme.Thornton

	Refactoring of resident mip calculations
	 - Cooker takes into account the same compression block thresholds that the runtime previously used
	 - Runtime doesn't attempt to calculate which mips to perma-load, but just looks at the ones whose bulk data is flagged as end-of-file or seperate-file

	#rb nick.penwarden
	#tests win64/ps4 client builds, golden path

[CL 3000872 by Andrew Grant in Main branch]
2016-06-04 01:20:53 -04:00
Robert Manuszewski
58e0ccabfa Making FFeedbackContext's Errors and Warnings list thread safe (safe way of fixing crash on cook exit)
#codereview Steve.Robb
#lockdown Nick.Penwarden

[CL 2981807 by Robert Manuszewski in Main branch]
2016-05-18 09:41:58 -04:00
Unrealbot
3f463d80d4 Branch snapshot for CL 2959226
[CL 2959226 in Main branch]
2016-04-28 13:50:05 -04:00
Matthew Griffin
bb70b349ce Merging CL 2804086 from //UE4/Release-4.11 to Dev-Main (//UE4/Dev-Main) to isolate copyright update
#lockdown Nick.Penwarden

[CL 2819020 by Matthew Griffin in Main branch]
2016-01-07 08:17:16 -05:00
Mike Fricker
a3443c81d5 Fixed C++ variable shadowing in Windows-specific code
- Two actual bugs were fixed (GitSourceControlUtils.cpp, VisualStudioSourceCodeAccessor.h)
- (These errors were found by using the Clang compiler on Windows platform)

#codereview marc.audy

[CL 2532216 by Mike Fricker in Main branch]
2015-04-30 13:50:55 -04:00
Ben Marsh
149375b14b Update copyright notices to 2015.
[CL 2379638 by Ben Marsh in Main branch]
2014-12-07 19:09:38 -05:00
Andrew Rodham
4ad1b987fc Improved progress reporting in the editor
FScopedSlowTask has been refactored to better allow for nesting of slow operations. This allows us to cascade nested scopes and provide accurate feedback on slow tasks. FScopedSlowTasks now work together when nested inside sub functions. Break up long functions that contain calls to multiple nested FScopedSlowTasks with FScopedSlowTask::EnterProgressFrame().

Example Usage:
void DoSlowWork()
{
    FScopedSlowTask Progress(2.f, LOCTEXT("DoingSlowWork", "Doing Slow Work..."));
    // Optionally make this show a dialog if not already shown
    Progress.MakeDialog();

    // Indicate that we are entering a frame representing 1 unit of work
    Progress.EnterProgressFrame(1.f);

    // DoFirstThing() can follow a similar pattern of creating a scope divided into frames. These contribute to their parent's progress frame proportionately.
    DoFirstThing();

    Progress.EnterProgressFrame(1.f);
    DoSecondThing();
}

This addresses TTP#338602 - NEEDS REVIEW: Editor progress bars nearly always just show 100%, don't offer useful indication of progress

[CL 2322391 by Andrew Rodham in Main branch]
2014-10-08 04:42:34 -04:00
Mike Fricker
1f5c22cff5 SlateViewer now compiles and runs using Clang for Windows
- Fixed bad casting in "slow task" window creation code
- Also added comment about treating warnings as errors with Clang

[CL 2260828 by Mike Fricker in Main branch]
2014-08-18 10:23:54 -04:00
Ben Marsh
7aa5f3825c Move the feedback context window to the front when it's first displayed.
[CL 2077835 by Ben Marsh in Main branch]
2014-05-19 13:08:20 -04:00
Ben Marsh
25264358fd Fix updates not writing out to the log in FWindowsNativeFeedbackContext.
[CL 2073609 by Ben Marsh in Main branch]
2014-05-14 19:56:42 -04:00
Ben Marsh
45ebc11eb9 Add native feedback context for Windows, and use it to display project file generation progress in UnrealVersionSelector. Also generate project files when switching versions.
[CL 2073201 by Ben Marsh in Main branch]
2014-05-14 14:53:19 -04:00