Commit Graph

16 Commits

Author SHA1 Message Date
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
Ben Zeigler
24a8d60723 Copying //UE4/Dev-Core to //UE4/Dev-Main (Source: //UE4/Dev-Core @ 3208226)
#lockdown Nick.Penwarden
#rb None

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

Change 3173153 on 2016/10/25 by Graeme.Thornton

	Pak signing changes
	 - Integrated into EDL loader
	 - Changed to not encrypt each CRC in the sig file, rather just store a single encryped signature of the entire sig file. Removes need to decrypt thousands of signatures at startup.

Change 3173531 on 2016/10/25 by Steven.Hutton

	Removing unused j query packages.

Change 3174743 on 2016/10/26 by Gil.Gribb

	UE4 - fixed COTF with EDL

Change 3177896 on 2016/10/28 by Steve.Robb

	TSharedPtr and TSharedRef aliasing constructors.
	Removal of static_asserts for TSharedPtr<UObject>.

Change 3180343 on 2016/10/31 by Steve.Robb

	Reimplementation of changes from CL#s 3050329 and 3105715 that were lost in merges 3094597 and 3105741.

Change 3181382 on 2016/11/01 by Steve.Robb

	Visual Studio debugger visualizers for delegates.

Change 3182738 on 2016/11/02 by Graeme.Thornton

	Re-enable signed archive reader so non-pakpreacher based reads still get signature checked

Change 3183420 on 2016/11/02 by Steve.Robb

	Fix to TIsZeroConstructType for TScriptDelegate.

Change 3184872 on 2016/11/03 by Robert.Manuszewski

	Fixing memory stomps in SSL certificate initialization (found with mallocstomp)

Change 3184873 on 2016/11/03 by Robert.Manuszewski

	Adding thread safety checks to async loading code

Change 3185535 on 2016/11/03 by Ben.Zeigler

	Fix it so calling CreateDefaultSubobject with bTransient = true sets the object transient flag. This fixes EDL Crashes involving components.

Change 3186636 on 2016/11/04 by Graeme.Thornton

	AES encryption integrated into EDL system
	Pak signing and AES encryption now configurable by ini files rather than magical text files

Change 3186637 on 2016/11/04 by Graeme.Thornton

	Configured pak signing and encryption in ShooterGame for reference

Change 3186639 on 2016/11/04 by Graeme.Thornton

	Encryption changes for Orion
	* Move pak signing keys into new INI format
	* Add AES key and enable INI file encryption

Change 3186661 on 2016/11/04 by Graeme.Thornton

	Change unrealpak command line params to accept AES key as a separete parameter

Change 3186670 on 2016/11/04 by Robert.Manuszewski

	Adding a null check before using a package pointer in Linker code

	#jira UE-38237

Change 3186775 on 2016/11/04 by Graeme.Thornton

	Fix UBT defines that come in as quoted strings, losing the quotes when passed to the compiler
	 - PS4 and Mac fixes. Other platforms might need fixing too!

Change 3186823 on 2016/11/04 by Graeme.Thornton

	Fixed an incorrect size check in the EDL pak signing code

Change 3186925 on 2016/11/04 by Graeme.Thornton

	Allow UnrealPak to read encryption settings from project ini files

Change 3189885 on 2016/11/08 by Graeme.Thornton

	Static analysis warning fix

Change 3190015 on 2016/11/08 by Robert.Manuszewski

	Thread safety fix for UBlueprintGeneratedClass::PostLoadDefaultObject while UBlueprintGeneratedClass::SerializeDefaultObject runs on the async loading thread

Change 3190253 on 2016/11/08 by Chris.Wood

	Improved MDD performance for on the CR server.
	[UE-37566] - Improve MDD performance on CR server

	Blocked MDD init'ing the crash handling code as it isn't desirable on the server.
	Removed redundant call to SetSymbolPathsFromModules() from CrashDebugHelper.

Change 3192993 on 2016/11/10 by Robert.Manuszewski

	Thread Heartbeat will no longer report the same hang multiple times.

Change 3193111 on 2016/11/10 by Robert.Manuszewski

	Minor change in the condition that detects the same hangs - allow the same callstacks from different threads

Change 3193168 on 2016/11/10 by Steve.Robb

	TSparseArray now reserves space in reverse so that new elements get added to the front of the allocation rather than the back, which is better for memory traversal and meets expectations more closely.

Change 3193171 on 2016/11/10 by Steve.Robb

	Easier debugging of FPendingRegistrantInfo map.

Change 3193188 on 2016/11/10 by Steve.Robb

	TAutoPointer deprecated.

Change 3193796 on 2016/11/10 by Graeme.Thornton

	Fix pak creation failure when no pak signing keys are supplied

Change 3194524 on 2016/11/11 by Graeme.Thornton

	Another static analysis warning fix

Change 3195119 on 2016/11/11 by Steve.Robb

	TAutoPtr deprecated.
	Fixes to use of TAutoPtr with incompatible memory deallocations (TAutoPtr with FMemory::Malloc and new[]).
	Some large headers moved into .cpp files.

Change 3196582 on 2016/11/14 by Gil.Gribb

	UE4 - Changed a check to a warning related to detaching linekrs twice. Seen in nativized BP version of platformer game.

Change 3196878 on 2016/11/14 by Steve.Robb

	TScopedPointer deprecated.

Change 3198061 on 2016/11/15 by Steve.Robb

	Class array is no longer regenerated when saving UClasses.

Change 3198065 on 2016/11/15 by Robert.Manuszewski

	Making AssembleReferenceTokenStream thread safe for blueprints loaded on the async loading thread.

Change 3198199 on 2016/11/15 by Robert.Manuszewski

	Pak platform file will now only be used if pak files exist regardless of command line paraks like -pak, -singedpak and -signed.

Change 3199954 on 2016/11/16 by Graeme.Thornton

	Removing USING_SIGNED_CONTENT

Change 3200221 on 2016/11/16 by Chris.Wood

	CrashReportProcess code cleanup - removing unused using directives

Change 3200232 on 2016/11/16 by Chris.Wood

	Multiple CrashReportProcess updates and improvements (CRP v1.2.6)
	UE-36248 - CRP scalability: All bulk storage or shared data to S3 or suitable network drives

	InvalidCrashReports now saved to S3 instead of local folder
	Removed option tosync MinidumpDiagnostics from Perforce
	Moved MinidumpDiagnostics from old Perforce synched location to its own folder in E:\Services (makes more sense with manual publishing)
	Added improved logging to Slack with option to monitor MDD performance
	Added hourly log folders to MDD logs
	Added support for types of crashes we don't want to symbolicate (using it to skip callstack gen for hang detected ensures)

Change 3200382 on 2016/11/16 by Robert.Manuszewski

	Async Loading code will now detach the linker when resetting async package loader to avoid situations when loading the same asset multiple times results in the following load request finding the old linker after the package has been loading but the async package hasn't been deleted yet (async package for the old request in limbo state but linker exists).

Change 3200562 on 2016/11/16 by Gil.Gribb

	UE4 - Fixed rare issue with reloading nativized blueprints with the EDL and a minor simplication.

Change 3201093 on 2016/11/16 by Ben.Zeigler

	#UE 38654 Fix EDL cooking to correctly search components created directly by UBlueprints, as well as the CDO components it already covered. Also explicitly mark subobject templates as editor only.
	Fix issue where the AssetImportData associated with Blueprint-owned Curves was ending up in the cooked subobject template list. Stopped it from creating those objects, and mark the class editor only.

Change 3201736 on 2016/11/17 by Steve.Robb

	Strtoi64 platform and TCString functions.

	#fyi robert.manuszewski

Change 3201938 on 2016/11/17 by Ben.Woodhouse

	Dummy integrate of the Square render version workaround (CL 3201913) with _accept target_ to prevent it being integrated to dev-core in future.

	Commandline:
	p4 integrate //Tasks/UE4/Dev-LoadTimes/Engine/Source/Runtime/CoreUObject/Private/UObject/LinkerLoad.cpp@3201913,3201913 //UE4/Dev-Core/Engine/Source/Runtime/CoreUObject/Private/UObject/LinkerLoad.cpp

	#fyi robert.manuszewski

Change 3203757 on 2016/11/18 by Robert.Manuszewski

	Removing debug code from async loading code.

Change 3203927 on 2016/11/18 by Robert.Manuszewski

	Fixing comments in the async loading code.

Change 3204851 on 2016/11/18 by Steve.Robb

	Metafunction for testing if a particular operator<< overload exists, e.g. THasInserterOperator<FArchive&, FMyType&>::Value.

Change 3204854 on 2016/11/18 by Steve.Robb

	UEnumProperty.

Change 3205027 on 2016/11/18 by Ben.Zeigler

	Add useful functions to FAssetPtr and TAssetSubclassOf that already existed on TAssetPtr
	Add Get() to TSubclassOf so it matches our other wrappers
	Fix TSubclassOf and TAssetSubclassOf to use the more efficient template method of checking class compatibility
	Comment and template cleanups for AssetPtr, StringAssetReference, LazyPtr, and SubclassOf

Change 3206334 on 2016/11/21 by Ben.Zeigler

	#UE-38773: Fix it so non-component template subobjects of CDOs are not included as creation dependencies for BP classes, also clean up GetPreloadDependencies as it was adding redundant and null entries
	#UE-38799: Fix it so WidgetTrees don't get picked up as subobjects, and add ensure at cook time to find null outers that would crash at runtime. Make sure the instanced widget trees are transient.
	Cook finishes but game is still crashing in some cases, so I might adjust this after other testing

Change 3206353 on 2016/11/21 by Ben.Zeigler

	Fix EnumProperty to handle EDL preload dependencies properly

Change 3206625 on 2016/11/21 by Ben.Zeigler

	Fix enum property crash at runtime by copying what array property does and making sure inner property is not transient

Change 3206937 on 2016/11/21 by Ben.Zeigler

	#jira UE-38905 Fix it so enums inside arrays are migrated properly, the enum tag is lost so use the current one
	Disable other nested enum migrations as they are unlikely to work. Array property tags need to be refactored to be safer
	Correctly save enum tag for enum properties, it was being set but not serialized

Change 3207002 on 2016/11/21 by Ben.Zeigler

	#jira UE-38799
	Fix it so per-widget copy of widget tree and all widgets inside are properly transient, they were being cooked before but never accessed.
	Fix case where non ClientOnly public objects nested instead ClientOnly objects would cook but fail to load, and add ensure to catch these cases in the future.
	If the full outer chain isn't available, it can't be loaded anyway, and this finds issues at cook time instead of load time.
	We should generally outlaw non-transient objects with transient outers, it does not do what people expect.

Change 3207032 on 2016/11/21 by Ben.Zeigler

	#jira UE-38654 Re-Fix EDL cooking with SCS-added components. They used to have the DefaultSubObject flag but no longer do

[CL 3208270 by Ben Zeigler in Main branch]
2016-11-22 18:45:44 -05:00
Ben Marsh
878ea7019e Copying //UE4/Dev-Build to //UE4/Dev-Main (Source: //UE4/Dev-Build @ 3125471)
#lockdown Nick.Penwarden
#rb none

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

Change 3105904 on 2016/08/30 by Ben.Marsh

	PR #2691: Copy .map-file to staging & cleanup (Contributed by projectgheist)

Change 3105974 on 2016/08/30 by Ben.Marsh

	PR #2748: [Bug-Fix] UGS - Ensure older events do not trample newer ones (Contributed by paulevans)

Change 3106035 on 2016/08/30 by Ben.Marsh

	PR #2746: [Bug-Fix] UGS - Starting build colour was the same as disabled (Contributed by paulevans)

Change 3106172 on 2016/08/30 by Ben.Marsh

	UAT: Do not default to submitting build products from BuildCookRun unless -submit is explicitly specified on the command line.

	#codreview Maciej.Mroz

Change 3107642 on 2016/08/31 by Matthew.Griffin

	More Monolithic editor fixes
	Fixed IMPLEMENT_MODULE macros with incorrect module name
	Wrapped some usages of GIsHotReload in WITH_HOT_RELOAD
	Fixed NiagaraConstants so that they can be used in multiple modules

Change 3107808 on 2016/08/31 by Matthew.Griffin

	Added Node to Compile UAT on Mac to catch any Mono failures which will run as part of monolithics aggregate

Change 3111527 on 2016/09/02 by Matthew.Griffin

	Duplicating CL#3111524 from Release-4.13 stream
	Including Documentation/Extras in installed build

Change 3117683 on 2016/09/08 by Ben.Marsh

	PR #2771: Fix compilation of C# projects on case-sensitive OSes (Contributed by slonopotamus)

Change 3119707 on 2016/09/09 by Ben.Marsh

	UBT: Add more explicit methods for querying Visual C++ and Visual Studio installation directories. Now uses the same logic in the Visual Studio batch files.

Change 3120824 on 2016/09/12 by Ben.Marsh

	UnrealGameSync: Add a project-wide option which can disable using the last code changelist for version files, and use the sync changelist instead. ("VersionToLastCodeChange" in the "[Options]" section). Update version to 1.80.

Change 3120996 on 2016/09/12 by Ben.Marsh

	Core: Fix lines of output text from FMonitoredProcess being truncated at 512 characters, due to pipe buffer size. Accumulate incomplete lines and merge them together again instead. Also remove CR-LF pairs if they occur at the end of a line.

	#jira UE-35659

Change 3121353 on 2016/09/12 by Ben.Marsh

	Core: Manually enumerate and load dependent DLLs for modules by the editor, to work around limitations in the number of search paths checked by the Windows loader. We previously temporarily modified the PATH environment variable to provide this functionality, but are close to the OS limit for length of that string. This method should not have any such restrictions (though it will not work for circular dependencies).

Change 3121996 on 2016/09/12 by Ben.Marsh

	Add support for Visual Studio 2017 (aka "15"; assuming consistent naming with other versions until final name is announced).

	* Compiler, STL implementation and CRT are binary compatible with VS2015 (see https://blogs.msdn.microsoft.com/vcblog/2016/08/24/c1417-features-and-stl-fixes-in-vs-15-preview-4/), so no new third-party libraries needed so far. WindowsPlatform.GetVisualStudioCompilerVersionName() returns "2015" as a result.
	* Default compiler for compiling and generating project files is still VS 2015 for now. Pass -2017 on the command line to GenerateProjectFiles.bat to generate VS2017 projects. Projects generated for VS2017 will use the 2017 compiler by default.
	* Visual Studio source code accessor can talk to VS 2017 instances.
	* Added a VS2017 configuration for UnrealVS, and added precompiled vsix package.
	* Switched GetVSComnTools to check the SOFTWARE\Microsoft\VisualStudio\SxS\VS7 registry key rather than the individual product install registry key. "15" doesn't seem to have it's own "InstallDir" key, but this system seems to work for all versions of Visual Studio (including previous releases of VS Express).
	* Removed ATL dependency from VisualStudioSourceCodeAccessor. It's not installed with VS by default any more, and is only used for a couple of smart pointer classes.

	Tested running the editor and packaging TP_Flying for Win64. Packaging from the editor still defaults to using the 2015 compiler, so ConfigureToolchain() needs to be overriden from the .target.cs file if multiple Visual Studio versions are installed.

Change 3123144 on 2016/09/13 by Ben.Marsh

	BuildGraph: Fix exception due to mismatched argument lists.

Change 3123160 on 2016/09/13 by Ben.Marsh

	Linux: Make PLATFORM_SUPPORTS_JEMALLOC a globally defined macro rather than just defined by the jemalloc module. Core supplies a default value for this macro which is inconsistent unless your module has an explicit dependency on jemalloc.

Change 3123211 on 2016/09/13 by Ben.Marsh

	UBT: Fix exception writing a version manifest if the output directory does not exist.

Change 3125300 on 2016/09/14 by Ben.Marsh

	UnrealVS: Few fixes to single-file compile command.

	* All documents are now saved before compile starts.
	* Now gives a useful error when trying to compile non-cpp files, rather than falling back to the invalid default command handler.
	* Trying to do a single-file compile while an existing build is running now prompts to stop it, rather than falling back to the default command handler (which gives a "Invalid command" message for makefile projects)

Change 3125437 on 2016/09/14 by Ben.Marsh

	UnrealVS: Update version number to 1.43 in order to prevent installer from bailing unless existing version is uninstalled first.

[CL 3126342 by Ben Marsh in Main branch]
2016-09-15 08:33:13 -04:00
Marc Audy
eb44cd9882 Copying //UE4/Dev-Framework to Dev-Main (//UE4/Dev-Main)
#lockdown Nick.Penwarden
#rb None

[CL 3016298 by Marc Audy in Main branch]
2016-06-16 11:54:44 -04:00
Marc Audy
ad1d2f130f Copying //UE4/Dev-Framework to //UE4/Dev-Main (Source: //UE4/Dev-Framework @ 2994668)
#lockdown Nick.Penwarden

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

Change 2967465 on 2016/05/05 by Marc.Audy

	Fix VS2015 shadow variables fixes

Change 2970637 on 2016/05/09 by Martin.Wilson

	Fix incorrect conflict resolve in merge from main

Change 2976393 on 2016/05/12 by Zak.Middleton

	#ue4 - Set AudioComponent bUseAttachParentBounds=true to reduce cost of transform updates (avoids virtual CalcBounds() when transform changes).

	#tests PIE w/ audio

Change 2976770 on 2016/05/13 by Lina.Halper

	Improvement on mirroring fix branch

	#code review: Zak.Middleton

Change 2976774 on 2016/05/13 by Lukasz.Furman

	fixed missing memory callbacks for instanced behavior tree nodes
	#jira UE-30305

Change 2976775 on 2016/05/13 by Lukasz.Furman

	fixed multiple calls to behavior tree's instance cleanup
	#jira UE-30593

Change 2976801 on 2016/05/13 by Jon.Nabozny

	Add an optional argument FSkeletalMeshMerge. When set to EMeshBufferAccess::ForceCPUAndGPU, keeps a reference to the vertex buffer on CPU (e.g. for spawning particle effects).

	#JIRA UE-30405

Change 2976985 on 2016/05/13 by Jon.Nabozny

	Fix initializer list ordering for FSkeletalMeshMerge.

Change 2977532 on 2016/05/13 by Marc.Audy

	PR #2348: [Local Multiplayer] Gamepad player assignment improvements (Contributed by kukiric)
	#jira UE-30162

Change 2977637 on 2016/05/13 by Marc.Audy

	Add Get/Set controller ID for a player in gameplay statics
	#jira UE-28718

Change 2979387 on 2016/05/16 by Jon.Nabozny

	Initialize FBox used to store results for CalculateQuatACF96Bounds.

	#JIRA UE-30846

Change 2979968 on 2016/05/17 by bruce.nesbit

	Added comment in FCanvasLineItem to warn only SE_BLEND_Opaque will be used when rendering.

Change 2979969 on 2016/05/17 by bruce.nesbit

	Added comment in AddLine/AddPoint to warn only SE_BLEND_Opaque will be used when rendering.

Change 2980271 on 2016/05/17 by Lina.Halper

	Improved comment

	#code review: Benn.Gallagher

Change 2980317 on 2016/05/17 by Lukasz.Furman

	removing NavCollision from static mesh on property change and PostLoad if static mesh is not supposed to have one
	#ue4

Change 2980717 on 2016/05/17 by Zak.Middleton

	#ue4 - Optimize UCapsuleComponent::CalcBounds() to remove sqrt and use tighter bounding sphere radius.

Change 2981193 on 2016/05/17 by Lukasz.Furman

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

Change 2981927 on 2016/05/18 by Lina.Halper

	- Remove vertex animation code
	  - Removing UVertexAnimation
	  - Fixed reinitialization issue that was triggered by SetVertexAnimation

	- todo: consolidate UMorphtarget and UVertexAnimBase

	#code review: James.Golding, Martin.Wilson

Change 2981957 on 2016/05/18 by Lina.Halper

	Add recursive stack check on update animation

	#code review: Martin.Wilson

Change 2982116 on 2016/05/18 by Benn.Gallagher

	Removed optimize macros accidentally left after bounds extension feature for skel meshes

Change 2982255 on 2016/05/18 by Jon.Nabozny

	FSkeletalMeshMerge constructor "MeshBufferAccess" default should be EMeshBufferAccess:Default instead of EMeshBufferAccess::ForceCPUAndGPU.

Change 2982607 on 2016/05/18 by Marc.Audy

	Cleanup places calling GetWorld() multiple times

Change 2982621 on 2016/05/18 by Marc.Audy

	Make UActorComponent::GetWorld final and inlined to avoid unnecessary function calls
	Put uncached logic in to a separate function

Change 2983424 on 2016/05/19 by Marc.Audy

	Minor tweaks to reduce GetWorld calls

Change 2983465 on 2016/05/19 by Lina.Halper

	Combine VertexAnimBase and MorphTarget to just MorphTarget

	 - VertexAnimBase is gone
	 - Modified most of VertexAnim to MorphTarget
	 - Removed state, time related data

	#code review: James.Golding, Rolando.Caloca

Change 2983609 on 2016/05/19 by Marc.Audy

	Inline AActor::GetLevel
	Half GetWorld() calls from AActor::GetNetMode()

Change 2983772 on 2016/05/19 by Marc.Audy

	Fix Mac compile

Change 2983931 on 2016/05/19 by Marc.Audy

	Remove pointless AccelMouse function

Change 2984061 on 2016/05/19 by Marc.Audy

	Reorg some headers to fix compilation issues

Change 2984409 on 2016/05/19 by Aaron.McLeran

	#jira UE-31049 Updating the Oculus Audio SDK to vs 1.02

	Implementing 2984316 from Releases/4.12 to Dev-Framework

Change 2984574 on 2016/05/19 by Aaron.McLeran

	Fix for platform headroom scalar. Using correct dB to linear formula (not one for power)

	dB = 20 * log(Linear), not dB = 10 * log(Linear)

Change 2985041 on 2016/05/20 by Jon.Nabozny

	ConvertQueryOverlap only returns the base actor if multiple actors have bSimulatePhysics enabled and are welded together.

	#JIRA UE-30484

Change 2985118 on 2016/05/20 by Marc.Audy

	Another attempt to convince Mac to build

Change 2985192 on 2016/05/20 by Marc.Audy

	Properly forward declare ABrush

Change 2985724 on 2016/05/20 by Zak.Middleton

	#ue4 - Optimize NaN and Infinite checks for FVector, FQuat, FRotator, FMatrix, FTransform. SIMD version VectorContainsNaNOrInfinite() also optimized on relevant platforms. Added startup tests for VectorContainsNaNOrInfinite().

	- All our "ContainsNaN()" tests are in fact "IsNaN() || IsInfinite()", which is the same as "!IsFinite()", so exploited this to simplify the tests. Both NaN and +/-Inf are not finite (http://en.cppreference.com/w/cpp/numeric/math/isfinite). In the future we should rename ContainsNaN().
	- Still need to audit some uses in shipping configs.

	#jira UE-30999

Change 2986016 on 2016/05/20 by Zak.Middleton

	#ue4 - Fix uint32 used for int32 values. Behavior was unaffected.

Change 2986017 on 2016/05/20 by Zak.Middleton

	#ue4 - Fix overlaps being dropped from within a FScopedMoveUpdate when rotation occurs. Remove invalid assert.

Change 2986833 on 2016/05/23 by Zak.Middleton

	#ue4 - Move ETeleportType from ActorComponent.h to EngineTypes.h. Add comment to FHitResult for ImpactPoint when it's penetrating.

Change 2986916 on 2016/05/23 by Rolando.Caloca

	DF - GPU morph targets proof of concept
	- Disabled by default
	- Not compatible with gpu skin cache
	- No extra memory required yet until it's used; creates buffers per frame (very slow!)

Change 2987539 on 2016/05/23 by Rolando.Caloca

	DF - Remove unused member and downgrade FActiveMorphTarget to not be a USTRUCT

Change 2987981 on 2016/05/24 by James.Golding

	PR #2162 : Exported AAudioVolume so that projects can derive custom classes.
	https://github.com/EpicGames/UnrealEngine/pull/2162
	#github 2162
	#jira UE-28533

Change 2987982 on 2016/05/24 by James.Golding

	PR #2318 : Fix memory allocation in CustomMeshComponent.cpp
	https://github.com/EpicGames/UnrealEngine/pull/2318
	#github 2318
	#jira UE-29864

Change 2987983 on 2016/05/24 by James.Golding

	Merging engine changes back from GDC demo:
	- Export FFIRFilterTimeBased from Engine module
	- Add FFIRFilterTimeBased::SetWindowDuration
	- Add FBaseCompactPose::CopyBonesTo

Change 2987984 on 2016/05/24 by James.Golding

	UE-30137 No longer include collision in StatiMeshComponent bounds (bounds no longer user for any collision calculation)

Change 2987985 on 2016/05/24 by James.Golding

	UE-27801 Export ConvertToCollisionChannel, ConvertToObjectType, and ConvertToTraceType members of UCollisionProfile

Change 2987987 on 2016/05/24 by James.Golding

	OR-17910 : Support 'show collision' in Test configuration

Change 2988123 on 2016/05/24 by Jon.Nabozny

	Prevent FBodyInstance::Weld causing duplicate PhsyXShapes to be created / added to ShapeToBodiesMap when toggling SimulatePhysics on PrimitiveComponent.

	#JIRA UE-31189

Change 2988449 on 2016/05/24 by Rolando.Caloca

	DF - Split FActiveMorphTarget's weight into its own array in prep for GPU friendly data

Change 2988485 on 2016/05/24 by Jon.Nabozny

	Swap order of setRigidBodyFlag and setRigidDynamicFlag inside UpdateInstanceSimulatePhysics to prevent PhysX error about Kinematic bodies not using CCD.

	#JIRA UE-30993

Change 2988969 on 2016/05/24 by Rolando.Caloca

	DF - GPU morph targets
	- Enable using r.MorphTarget.Mode 1

Change 2989645 on 2016/05/25 by Marc.Audy

	Apply CL# 2989481 to Dev-Framework
	#jira UE-31055

Change 2989987 on 2016/05/25 by Wes.Hunt

	Redo of CL#2982707 2982716 2982723 2983780 2983864 from //Orion/Dev-General in preparation for continuing Analytics refactor in a Dev branch.

	AnalyticsET support for arbitrary Json events.
	* AnalyticsET supports a new API, RecordEventJson.
	* API supports rvalue refs to avoid unnecessary copies of the attribute array.
	#AUTOMERGE using branch Orion-Dev-General-To-UE4-Dev-Framework of change#2982707 by Wes.Hunt on 2016/05/18 17:22:20.

	Remove Analytics code to divert legacy code to source data collector.
	#AUTOMERGE using branch Orion-Dev-General-To-UE4-Dev-Framework of change#2982716 by Wes.Hunt on 2016/05/18 17:27:25.

	Analytics no longer adds IsEditor attribute to all events. Wasn't actually used by anyone anymore.
	#AUTOMERGE using branch Orion-Dev-General-To-UE4-Dev-Framework of change#2982723 by Wes.Hunt on 2016/05/18 17:29:40.

	Modernize FAnalyticsEventAttribute usage.

	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);

	#AUTOMERGE using branch Orion-Dev-General-To-UE4-Dev-Framework of change#2983780 by Wes.Hunt on 2016/05/19 13:51:48.

	Added missing assignment copy/move ops to FAnalyticsEventAttribute. Doh, should have looked at more usages of PLATFORM_COMPILER_HAS_DEFAULTED_FUNCTIONS...
	#AUTOMERGE using branch Orion-Dev-General-To-UE4-Dev-Framework of change#2983864 by Wes.Hunt on 2016/05/19 14:17:05.

Change 2989988 on 2016/05/25 by Wes.Hunt

	Fix usage of FAnalyticsEventAttribute constructor using a bitfield that was invalidated by the change to make FAnalyticsEventAttribute use a perfect forwarding constructor. bitfields cannot be perfect-forwarded... :(

Change 2990493 on 2016/05/25 by Joe.Graf

	Added tooltips to the collision analyzer's buttons

	#CodeReview: james.golding

Change 2991064 on 2016/05/26 by James.Golding

	- Remove many Animation headers from Engine.h
	- Remove AnimationAsset.h from SkeletalMeshComponent.h, Character.h, CharacterMovementComponent.h

Change 2991113 on 2016/05/26 by Benn.Gallagher

	Fixed edge case in random sequence player where we might trigger an extra loop when waiting on a blend to finish. And made it impossible for a shuffle list to start with the animation that is currently playing (seemingly duplicating the anim).

Change 2991163 on 2016/05/26 by Rolando.Caloca

	DF - Rename and refactor some morph target compute shader in prep for interop with skin cache

Change 2991167 on 2016/05/26 by Jon.Nabozny

	Add `#include "DataTable.h"` to GameplayTagsManager.h. FGameplayTagTableRow is derived from FTableRowBase which isn't necessarily included. This issue is hidden in most cases as "Engine.h" includes "DataTable.h".

Change 2991183 on 2016/05/26 by Wes.Hunt

	Disable general forwarding constructor for AnalyticsEventAttribute for non arithmetic types, so they are free to choose other overloads more appropriately.

Change 2991199 on 2016/05/26 by Wes.Hunt

	Drastically reducing the headers dependencies on analytics headers. Analytics headers no longer appear in PCH files, and rarely if ever appear in a header file.

	IAnalyticsProviderModule.h only touches 8 source files.
	Analytics.h only touches 8 source files.
	IAnalyticsProvider.h only touches 5 headers and 97 source files.
	AnalyticsET.h only touches 12 source files.

Change 2991301 on 2016/05/26 by James.Golding

	Fix CIS for Fortnite

Change 2991319 on 2016/05/26 by James.Golding

	Fix CIS for Orion

Change 2991373 on 2016/05/26 by Joe.Graf

	Tweaked the tooltip text for the collision analyzer record button to be correct for both states
	Added a common button style so that the buttons have a consistent look

	#CodeReview: james.golding

Change 2991401 on 2016/05/26 by James.Golding

	Fix UT CIS

Change 2991406 on 2016/05/26 by James.Golding

	Fix Ocean CIS

Change 2991491 on 2016/05/26 by Lina.Halper

	Moved MorphTarget.h

	- Checked in modified functions fo AnimationRuntime for other features coming up
	 - Should not change any behavior of existing content

	#code review: James.Golding, Rolando.Caloca

Change 2991494 on 2016/05/26 by Wes.Hunt

	Fix for Unity error in AnalyticsET module after hedaer dependency reduction

Change 2991503 on 2016/05/26 by Jon.Nabozny

	Fix issue where FConstraintInstance (inside UPhysicsConstraintComponent) is not editable in InstanceEditor but is editable in BlueprintEditor.

	#JIRA UE-31267

Change 2991562 on 2016/05/26 by Zak.Middleton

	#ue4 - Reduce allocations during movement and overlap queries and when grabbing shapes from physx actors.

Change 2991586 on 2016/05/26 by James.Golding

	More CIS fixes for Orion and Fortnite

Change 2991673 on 2016/05/26 by Wes.Hunt

	Another non-unity fix for Analytics include dependency reduction.

Change 2991733 on 2016/05/26 by Zak.Middleton

	#dev - Test map, 50 walking dudes.

Change 2991781 on 2016/05/26 by Lina.Halper

	Back out revision 15 from //UE4/Dev-Framework/Engine/Source/Runtime/Engine/Private/Animation/AnimationRuntime.cpp

	- Back out a part of changes that I didn't mean to check in.

Change 2991922 on 2016/05/26 by Zak.Middleton

	#ue4 - Maybe fix Mac build.

Change 2991957 on 2016/05/26 by Joe.Graf

	Fixed the collision analyzer file open text (said project instead of collision)

Change 2991991 on 2016/05/26 by Lina.Halper

	Fix compile error

Change 2992089 on 2016/05/26 by Zak.Middleton

	#ue4 - Fix Mac/PS4 build.

Change 2992108 on 2016/05/26 by Wes.Hunt

	Yet another non-unity fix for Analytics header inclusion reduction.

Change 2992190 on 2016/05/26 by Zak.Middleton

	#ue4 - Mark FHitResult, FOverlapResult, FOverlapInfo as POD types. Avoids destructors etc when in TArrays.

Change 2992593 on 2016/05/27 by Martin.Wilson

	Build fixes for non editor platforms

Change 2992885 on 2016/05/27 by Rolando.Caloca

	DF - Fix crash on thumbnails
	#jira UE-31398

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

	fixed behavior tree getting stuck on ResumeLogic call
	#jira OR-22498

Change 2993064 on 2016/05/27 by Zak.Middleton

	#ue4 - Fix root motion network corrections not clearing root motion data.

	udn: https://udn.unrealengine.com/questions/294985/jittering-in-character-movement-during-networked-m.html
	#jira UE-31316

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

	gameplay debugger fixes: navmesh rendering is not hidden after disabling tool, player stuck in spectator mode after disabling tool, confusing version description for categories without data packs
	added replicated input bindings for debugger's categories
	#ue4

Change 2993521 on 2016/05/27 by Zak.Middleton

	#ue4 - Reduce allocations in UI Canvas items.

Change 2993995 on 2016/05/30 by Mieszko.Zielinski

	Temporary fix for BBKeySelector not handling properly multiple UObject subtypes #UE4

	#jira UE-31435

Change 2993998 on 2016/05/30 by Mieszko.Zielinski

	Improves handling of a special case in EQS score normalization, where all items have the same score #UE4

	We used to set the normalized score of 1 for all items, which was counter intuitive if all items have scored 0 in an unnormalized test. The improve handling detects that and assigns score of 0 in that case.

Change 2993999 on 2016/05/30 by Mieszko.Zielinski

	Fixed FEQSParametrizedQueryExecutionRequest converting non-BB values into EQS params wrong #UE4

Change 2994000 on 2016/05/30 by Mieszko.Zielinski

	Exposed UNavigationInvokerComponent as part of ENGINE_API so that it can be spawned procedurally in C++ in game specific code #UE4

Change 2994003 on 2016/05/30 by Mieszko.Zielinski

	Fixed naming of console variable controllin v-logging of FGameplayAttribute #UE4

	The old name was copy-pasted from somewhere.

Change 2994007 on 2016/05/30 by Mieszko.Zielinski

	Fixed unregistering listeners from perception system not clearing up all data #UE4

	Also, introduced two precisely named functions, GetCurrentlyPerceivedActors and GetKnownPerceivedActors to replace ambiguous GetPerceivedActors
	Also, renamed UAIPerceptionComponent::TActorPerceptionContainer to UAIPerceptionComponent::FActorPerceptionContainer

Change 2994475 on 2016/05/31 by Wes.Hunt

	Fix Unity build failure for analytics inclusion reduction for IOSFlurry.

[CL 2994701 by Marc Audy in Main branch]
2016-05-31 13:51:34 -04:00
Andrew Grant
f25badee7f Copying //UE4/Orion-Staging to //UE4/Main (Origin: //Orion/Dev-General @2826496)
#lockdown Nick.Penwarden

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

Change 2826201 on 2016/01/13 by Zabir.Hoque

	Add more verbose logging to try to understand #OR-11297

	#lockdown Andrew.Grant
	#CodeReview Marcus.Wassmer
	#RB none
	#TESTS compiled Win64 debug editor, ran agora_p

Change 2826170 on 2016/01/13 by Marcus.Wassmer

	Flush unloaded resource properly in LoadMap
	#codereview Gil.Gribb
	#rb none
	#test cycling game.  memory is freed properly now.
	#lockdown Andrew.Grant

Change 2826135 on 2016/01/12 by Michael.Noland

	Orion: Improve login screen on PC to reduce the potential impact of framerate on data center ping calculation
	- Disabled async streaming for the duration of the QOS ping measurement to avoid hitches
	- Added a circular throbber in the top left corner of the login screen indicating that something is async streaming (as a diagnostic tool for users affected by the datacenter ping, can be removed in the future)
	- Added logging of the current average frame time when the datacenter ping is finalized
	- Added a 'Pick Ideal Settings' button to the login screen (note: on the actual screen, not the login widget, so it will not appear on PS4)
	#jira OR-12453
	#rb paul.moore
	#tests Ran a QOS server and client and verified that the new logging is occurring, tried out the new benchmark button, etc...

	Merging CL# 2826128 using //Orion/Main_to_//Orion/Dev-General

Change 2826131 on 2016/01/12 by Michael.Noland

	#UE4 - added print out of MS/FPS during Qos ping evaluation
	#rb michael.noland
	#tests loaded up through login screen to see output

	Merging CL# 2825678 using //Orion/Main_to_//Orion/Dev-General

Change 2826128 on 2016/01/12 by Michael.Noland

	Orion: Improve login screen on PC to reduce the potential impact of framerate on data center ping calculation
	- Disabled async streaming for the duration of the QOS ping measurement to avoid hitches
	- Added a circular throbber in the top left corner of the login screen indicating that something is async streaming (as a diagnostic tool for users affected by the datacenter ping, can be removed in the future)
	- Added logging of the current average frame time when the datacenter ping is finalized
	- Added a 'Pick Ideal Settings' button to the login screen (note: on the actual screen, not the login widget, so it will not appear on PS4)
	#jira OR-12453
	#rb paul.moore
	#tests Ran a QOS server and client and verified that the new logging is occurring, tried out the new benchmark button, etc...

	Merging CL# 2826116 using //Orion/Release-Next->//Orion/Main

Change 2826116 on 2016/01/12 by Michael.Noland

	Orion: Improve login screen on PC to reduce the potential impact of framerate on data center ping calculation
	- Disabled async streaming for the duration of the QOS ping measurement to avoid hitches
	- Added a circular throbber in the top left corner of the login screen indicating that something is async streaming (as a diagnostic tool for users affected by the datacenter ping, can be removed in the future)
	- Added logging of the current average frame time when the datacenter ping is finalized
	- Added a 'Pick Ideal Settings' button to the login screen (note: on the actual screen, not the login widget, so it will not appear on PS4)
	#jira OR-12453
	#rb paul.moore
	#tests Ran a QOS server and client and verified that the new logging is occurring, tried out the new benchmark button, etc...
	#lockdown andrew.grant
	#codereview josh.markiewicz

Change 2825772 on 2016/01/12 by Dmitry.Rekman

	Linux signal handling improvements.

	- Switch crash handlers to use "crash malloc" (preallocated memory) on crash.
	- Remove unnecessary memory allocations from graceful termination handler.

	#rb none
	#tests Run the Linux server and crashed it a few times.
	#codereview David.Vossel, Michael.Trepka

Change 2825768 on 2016/01/12 by Josh.Markiewicz

	#UE4 - added print out of MS/FPS during Qos ping evaluation
	#rb michael.noland
	#tests loaded up through login screen to see output

Change 2825703 on 2016/01/12 by Brian.Karis

	Switched on new motion blur. Set temporal AA sharpness to 1.

	#rb none
	#TESTS editor

Change 2825689 on 2016/01/12 by Lina.Halper

	Fix for get animation notify crash

	https://jira.ol.epicgames.net/browse/OR-12248
	https://jira.ol.epicgames.net/browse/OR-12348

	- Also fixed the crash in preview of persona due to blend sample cache contains previous animation data
	- Also fixed blend space player to reinitialize cache data
	- The main issue is marker doesn't clamp the length, causing notifies ensure to trigger.

	#rb : Laurent.Delayen
	#tests: 10 Sparrows bot match for long time
	#code review: Martin.Wilson
	#lockdown: Andrew.Grant

Change 2825680 on 2016/01/12 by Martin.Mittring

	fixed all cases with r.Tonemapper.ScreenPercentage, ScreenPercentage, Fringe, Vignette, ViewRect, flickering with transluceny (View members have been modified while other thread was reading)
	#rb:Olaf.Piesche, David.Hill
	#test: PC, many cases

Change 2825579 on 2016/01/12 by Chris.Bunner

	Force shadow shape bone indices on the required update list.
	#rb Lina.Halper, Rolando.Caloca
	#tests Editor
	#codereview Daniel.Wright
	#jira OR-12339

Change 2825443 on 2016/01/12 by Martin.Mittring
2016-01-14 08:11:47 -05: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
Andrew Grant
c0452957a1 Merging latest engine code from Orion via //depot/UE4-To-//UE4/Main
[CL 2744667 by Andrew Grant in Main branch]
2015-10-28 08:58:16 -04:00
Lina Halper
b7bb87c947 Added rebuilding index buffer for static LOD model
Merging

//depot/UE4-Orion/Engine/Source/...

to //depot/UE4/Engine/Source/...

[CL 2714862 by Lina Halper in Main branch]
2015-10-02 14:40:00 -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
Michael Noland
928559eaa0 Editor: Coding-standards fixes (TypeName [*|&] VariableName -> TypeName[*|&] VariableName)
[CL 2316341 by Michael Noland in Main branch]
2014-10-01 14:45:23 -04:00
Jaroslaw Palczynski
65ba5d456f TArray documentation and a coupld of methods deprecation.
Changes mostly in Array.h. The changes in other files are only renames for deprecated functions.

[CL 2312616 by Jaroslaw Palczynski in Main branch]
2014-09-29 04:23:44 -04:00
Mike Fricker
2c6f571a5d Various compilation fixes for Clang on Windows platform
- Fixed some warnings and errors in Windows code when bCompileWithClang=true

[CL 2284753 by Mike Fricker in Main branch]
2014-09-04 13:15:42 -04:00
Mikolaj Sieluzycki
5d03a01712 Remove redundant headers from Engine.h.
#proj core
#branch UE4
#summary Remove redundant headers from Engine.h. (NavDataGenerator.h NavLinkRenderingProxy.h NavigationModifier.h NavigationOctree.h ContentStreaming.h ComponentReregisterContext.h InstancedFoliage.h UnrealExporter.h EngineService.h NavigationSystemHelpers.h HardwareInfo.h EngineModule.h)
#codereview Robert.Manuszewski

[CL 2109115 by Mikolaj Sieluzycki in Main branch]
2014-06-18 07:25:31 -04:00
Jaroslaw Palczynski
ebce413232 UE4 Refactoring. Changed OVERRIDE and FINAL macros to keywords override and final.
[CL 2104397 by Jaroslaw Palczynski in Main branch]
2014-06-13 06:14:46 -04:00
Tim Sweeney
324683ce78 Engine source (Main branch up to CL 2026164) 2014-03-14 14:13:41 -04:00