Commit Graph

50 Commits

Author SHA1 Message Date
Robert Millar
dc497f2e2f FNames containing asset paths are deprecated. FSoftObjectPath or FTopLevelAssetPath should be used instead.
Fixups for animation.

#jira UE-161932
#rb halfdan.ingvarsson
#preflight 63181d07980179553e5c8d21

[CL 21841184 by Robert Millar in ue5-main branch]
2022-09-07 00:40:02 -04:00
jose villarroel
d81534ce45 Added looping flag to anim sequences and blend spaces. This is used to set the default loop value when creating asset player nodes
#review-20570757 @Aaron.Cox, @Braeden.Shosa, @Thomas.Sarkanen
#jira none
#preflight 62a246ceb17fd2cd5a9ed6da

[CL 20583427 by jose villarroel in ue5-main branch]
2022-06-09 15:43:57 -04:00
Thomas Sarkanen
73c773c260 Fix error reporting for dynamic values that are not exposed on pins
#rb Jurre.deBaare

[CL 16739973 by Thomas Sarkanen in ue5-main branch]
2021-06-22 04:45:40 -04:00
Thomas Sarkanen
8386a21384 Fixed being unable to open newly-spawned empty blend sapce graphs
#jira UE-118296 - Unable to open newly spawned Blend Space Graph nodes
#rb Jurre.deBaare

[CL 16705828 by Thomas Sarkanen in ue5-main branch]
2021-06-17 12:08:21 -04:00
Thomas Sarkanen
2b033d861e Anim blueprint encapsulation improvements
Adds 'template' anim BP concept. These anim BPs have no TargetSkeleton and as such cannot have direct references to animations placed inside of their anim graphs
Adds function call support from anim nodes. All anim graph nodes can now call functions when initialized, updated, evaluated or when they first become relevant.
Relevancy is established using a new FAnimSubsystemInstance_NodeRelevancy which tracks nodes in a local map, per UAnimInstance, if nodes require it.
Functions are displayed on the node if bound, and in the details panel.
Added a new override point to FAnimSubsystemInstance to allow for WT init.
Moved FMemberReference customization into a public header so it can be used on anim node functions.
Wrapped functions up into FAnimNodeFunctionRef structure so they can be re-used more effectively. Converted CallFunction node to use them.
Added a couple of simple BP function libraries to demonstrate the use of the new FAnimNodeContext (this is intended to be a generic way of exposing FAnimNode_Base types to script without the node types themselves having to be known to script directly).
Added the ability to set exposed properties as 'always dynamic' so they appear in mutable data rather than being merged into constants. This allows for the anim node data API to be changed to be less strict (and more script friendly). Now values can be set in mutable data (via GET_MUTABLE_ANIM_NODE_DATA_PTR) and attempted sets to constant data can be ignored and reported to client code.
A few minor crash fixes with edge cases (inc when trying to open an asset editor fails because of a missing skeleton/cancellation).
Also fixes an issue where literal linked anim graph/control rig/custom poroperty node inputs didnt get copied

#rb Jurre.deBaare,Aaron.Cox

[CL 16703644 by Thomas Sarkanen in ue5-main branch]
2021-06-17 08:58:34 -04:00
Thomas Sarkanen
639e989101 Fix asset player names and 'empty' players not appearing in context menus correctly
Also fix asset references persisting when applying a property access binding

#jira UE-116509 - Unable to create empty Blend Space Graphs in the Anim Graph
#rb Jurre.deBaare

[CL 16657336 by Thomas Sarkanen in ue5-main branch]
2021-06-14 08:21:54 -04:00
Thomas Sarkanen
ebc803bd83 Unify titles of asset players to use a common format
Use correct title for asset players when asset is bound to property access

#jira UE-116472 - Asset players bound via property access incorrectly report that they use asset 'None'
#rb Jurre.deBaare

[CL 16466900 by Thomas Sarkanen in ue5-main branch]
2021-05-26 07:53:28 -04:00
Thomas Sarkanen
d411e1b010 Fixed unloaded assets in asset players not showing up in anim BP context menus
Unified the approach to gathering assets and spawning nodes from them. Previously each had its own slightly unique code doing similar things.
Note that with this change it is now possible to directly spawn 'evaluator' style nodes from the context menu instead of relying on a context menu conversion step.
Also tweaked icons, tooltips and titles for consistency

#rb Jurre.deBaare

[CL 16434364 by Thomas Sarkanen in ue5-main branch]
2021-05-24 06:45:16 -04:00
Thomas Sarkanen
16eee0289d Anim node data/compiler refactor
Per-node constant data is now held on a generated struct as part of sparse class data.
Per-node mutable data (i.e. pin links/property access mappings) is now held on a generated 'mutable data' struct that is compiled as part of the generated class.

The anim BP compiler is now extended more conventionally using UAnimBlueprintExtension, derived from UBlueprintExtension. This directly replaces the older 'compiler handler' pattern that was added in an emergency fashion for 4.26. Anim graph nodes now request their required extensions and these are held on the UAnimBlueprint in the UBlueprint::Extensions array. The Extensions array is potentially refreshed with any node addition or removal. The Extensions array is force-refreshed each time an anim BP is compiled for the first time to deal with newly added or removed requirements.

Const-corrected a bunch of UAnimInstance/FAnimInstanceProxy APIs that rely on (now truly) const data.
Added a split state/constant version of FInputScaleBiasClamp to allow some of its data to be split into constants.
Tweaked alignment/ordering of FPoseLinkBase to save a few bytes per pose link.
Deprecated FAnimNode_Base::OverrideAsset in favor of a more UAnimGraphNode_Base-based approach. Individual nodes can still have runtime overrides via specific accessors. The new approach will also give us the oppurtunity to override multiple assets per node if required in the future.

Moved property access into Engine module & removed event support from it - this was never used.
Reworked property access compilation API a little - construction/lifetime was a bit confusing previously.

Optimized path used to create UK2Node_StructMemberSet nodes in per-node custom events. When using mutable data, the structure used is large and very sparsely connected (i.e. only a few properties are written) so we only create pins that are actually going to be used, rather than creating all of them and conly connecting a few.

Patched the following nodes to use the new data approach:

- Asset players (sequences, blendspaces, aim offsets)
- Blend lists
- Ref poses
- Roots

#rb Jurre.deBaare, Martin.Wilson, Keith.Yerex

[CL 16090510 by Thomas Sarkanen in ue5-main branch]
2021-04-22 04:57:09 -04:00
Thomas Sarkanen
5364bab827 Backing out CL 16071104
[CL 16071592 by Thomas Sarkanen in ue5-main branch]
2021-04-21 08:01:44 -04:00
Thomas Sarkanen
0ddbfb9894 Anim node data/compiler refactor
Per-node constant data is now held on a generated struct as part of sparse class data.
Per-node mutable data (i.e. pin links/property access mappings) is now held on a generated 'mutable data' struct that is compiled as part of the generated class.

The anim BP compiler is now extended more conventionally using UAnimBlueprintExtension, derived from UBlueprintExtension. This directly replaces the older 'compiler handler' pattern that was added in an emergency fashion for 4.26. Anim graph nodes now request their required extensions and these are held on the UAnimBlueprint in the UBlueprint::Extensions array. The Extensions array is potentially refreshed with any node addition or removal. The Extensions array is force-refreshed each time an anim BP is compiled for the first time to deal with newly added or removed requirements.

Const-corrected a bunch of UAnimInstance/FAnimInstanceProxy APIs that rely on (now truly) const data.
Added a split state/constant version of FInputScaleBiasClamp to allow some of its data to be split into constants.
Tweaked alignment/ordering of FPoseLinkBase to save a few bytes per pose link.
Deprecated FAnimNode_Base::OverrideAsset in favor of a more UAnimGraphNode_Base-based approach. Individual nodes can still have runtime overrides via specific accessors. The new approach will also give us the oppurtunity to override multiple assets per node if required in the future.

Moved property access into Engine module & removed event support from it - this was never used.
Includes a thread-safety fix for 4.26 that hasnt made it over to 5.0 yet.
Reworked property access compilation API a little - construction/lifetime was a bit confusing previously.

Optimized path used to create UK2Node_StructMemberSet nodes in per-node custom events. When using mutable data, the structure used is large and very sparsely connected (i.e. only a few properties are written) so we only create pins that are actually going to be used, rather than creating all of them and conly connecting a few.

Patched the following nodes to use the new data approach:

- Asset players (sequences, blendspaces, aim offsets)
- Blend lists
- Ref poses
- Roots

#rb Jurre.deBaare, Martin.Wilson, Keith.Yerex

[CL 16071104 by Thomas Sarkanen in ue5-main branch]
2021-04-21 07:09:28 -04:00
john vanderburg
398515a9d3 Initial support for skeletal remapping, which allows you to play animation assets from one skeleton onto the other.
[CL 15464346 by john vanderburg in ue5-main branch]
2021-02-18 18:42:00 -04:00
danny chapman
9a6d7ca014 Reworks BlendSpace to make UBlendSpace the main runtime class, which is able to handle 1 and 2 dimensions.
#jira UE-108155
#rb thomas.sarkanen

[CL 15406467 by danny chapman in ue5-main branch]
2021-02-15 10:12:58 -04:00
Thomas Sarkanen
5419497f90 BlendSpace 2.0: Blendspace Graph Node
Added a new animation graph node that hosts its own UBlendSpaceBase. Modified UBlendSpaceBase to allow for pose links to be evaluated as the sample points.
The new blend space graphs can be spawned from existing UBlendSpace and UBlendSpace1D assets, or they can be created from scratch, or they can be converted from existing blendspace player nodes via the context menu.

Fixed anim node conversion functions so that their transactions work correctly.

Updated FBlueprintEditorUtils::IsGraphNameUnique to allow it to work with any object as the outer, not just UBlueprint. UBlueprint still has a special case for functions and events. This is to support GenerateUniqueGraphName within a scope (e.g. an outer graph).

Formalized the concept of 'node sub-graphs' (as well as the composite node pattern a little). Previously a number of known node types that contained sub-graphs (e.g. UK2Node_Composite) had special case logic for dealing with node/graph deletion etc. Now  any node can opt into this behaviour via the GetSubGraphs() override.

Added status bar readouts for the blendspace grid, so we dont have to stuff the prompts into the tooltip any more.

Moved anim BP related APIs out of FBlueprintEditor. They are always used via FAnimationBlueprintEditor.

Refactored graph title bar widget creation out into a function to allow other document tab factories to create it.

Altered breadcrumb trail click callbacks and SMyBlueprint::ExecuteAction to always JumpToHyperLink rather than calling OpenDocument directly. This allows unknown (to FBlueprintEditor) document types that reference objects to be correctly jumped to using the breadcrumb trail. Derived asset editors (i.e. FAnimationBlueprintEditor) can intercept the JumpToHyperlink call to ensure that the correct document is presented (i.e. the correct tab payload is generated).

Instead of making yet another bunch of duplicated code for handling the various alpha blend options, refactored this into FAnimGraphNodeAlphaOptions (for editor code) and FAnimNodeAlphaOptions (for runtime code).

Added OnCopyTermDefaultsToDefaultObject for per-node copying of default values from editor node to runtime node, rather than another special-case in the compiler.

#rb Jurre.deBaare,Phillip.Kavan

[CL 15177316 by Thomas Sarkanen in ue5-main branch]
2021-01-25 08:43:19 -04:00
Thomas Sarkanen
b85a3cea8c Animation sync node and anim graph attributes
Refactored tick record sync into utility structure - FAnimSync. This improves the odd API around tick records, better encapsulating functionality and leaving less for the caller to get wrong. This will also eventually allow this to be refactored out into a scriptable pipeline stage.
Added sync node and scoped sync message for new 'graph based sync'. Nodes that subscribe to graph-based-sync determine their sync group based on the scope that they are in.
Removed 4.26-style sync scopes - pushed all syncing up to the main anim instance. Linked anim instances no longer sync their own tick records.
To make graph based sync more useful, surfaced graph attributes and their visualizations as labels on pins and parallel wires to visualize flow.
This involves statically determining the attribute flow of the graph at compile time. Added a new compiler handler to deal with this new debug data.
Updated a lot of nodes to specify their attributes so graph flow can be correctly visualized.
Added tracing of attributes and sync records and visualization of traced records when debugging the anim graph.

#rb Jurre.deBaare, Martin.Wilson

[CL 14998555 by Thomas Sarkanen in ue5-main branch]
2021-01-06 09:11:59 -04:00
Thomas Sarkanen
eb63841a83 Merging using //UE5/Main_to_//UE4/Release-4.26 @ CL 14521949
Fixed issue with sync group collisions when syncing with 'component' scope

This change moves sync group management to use a name->group map instead of indices. Staying with indices cannot work across multiple instances as they are simply allocated at the point the single anim BP is compiled, so can easily collide in anything other than simple configurations.
Deprecated all index based access to sync groups in the runtime. Sync groups can still be enumerated on the generated class.

#jira UE-101030 - Sync groups with non-local scope can collide, causing incorrect behaviour
#rb Martin.Wilson,Jurre.deBaare

[CL 14521985 by Thomas Sarkanen in ue5-main branch]
2020-10-20 04:59:00 -04:00
Marcus Wassmer
3b81cf8201 Merging using //UE5/Main_to_//UE5/Release-Engine-Staging @14384769
autoresolved files
#rb none

[CL 14384911 by Marcus Wassmer in ue5-main branch]
2020-09-24 00:43:27 -04:00
ryan durand
627baf970a Updating copyright for Engine Editor.
#rnx
#rb none


#ROBOMERGE-SOURCE: CL 10869241 via CL 10869527 via CL 10869904
#ROBOMERGE-BOT: (v613-10869866)

[CL 10870586 by ryan durand in Main branch]
2019-12-26 15:33:43 -05:00
Chris Gagnon
2e87118a18 Copying //UE4/Dev-Editor to Dev-Main (//UE4/Dev-Main) Interim 4.24.
#rb none

[CL 8614014 by Chris Gagnon in Main branch]
2019-09-10 11:35:20 -04:00
Chris Gagnon
8fc25ea18e Merging //UE4/Dev-Main to Dev-Editor (//UE4/Dev-Editor)
#rb none

[CL 4676797 by Chris Gagnon in Dev-Editor branch]
2019-01-02 14:54:39 -05:00
Ben Marsh
7598af0532 Update copyright notices to 2019.
#rb none
#lockdown Nick.Penwarden

[CL 4662404 by Ben Marsh in Main branch]
2018-12-14 13:41:00 -05:00
Aaron McLeran
6afdb03acc Copying //UE4/Dev-AnimPhys to //UE4/Dev-Main (Source: //UE4/Dev-AnimPhys @ 4062005)
#lockdown Nick.Penwarden

============================
  MAJOR FEATURES & CHANGES
============================

Change 4005617 by Danny.Bouimad

	Fixing TM-AnimPhys lighting so it works on all platforms
	#jira UEENGQA-19924

Change 4014898 by Aaron.McLeran

	Adding simple delay feature

Change 4025071 by Lina.Halper

	Fix and more potential fix for invalid bone index issue

	http://crashreporter/Buggs/Show/2052839
	http://crashreporter/Crashes/Show/46656562

	#jira: UE-51931

Change 4042493 by Lina.Halper

	Fix issue with sequence evaluator to handle properly when jumps from end to front or front to end

	#jira: UE-58429

Change 4042892 by Lina.Halper

	Fix issue with being able to drag/drop montage onto anim track in sequencer
	#jira: UE-57863

Change 4043553 by Ethan.Geller

	#jira  UE-58340 Handle calls to FVoiceCaptureWindows::GetVoiceData outside of existing data calls. #rb none

Change 4043613 by Lina.Halper

	Fix issue with incorrect usage of staticclass

	#jira: UE-54413

Change 4044069 by James.Golding

	PR #4455: Add FAnimNode_StateMachine subclassing support. (Contributed by redfeatherplusplus)

	#jira UE-54599

Change 4044070 by James.Golding

	PR #4349: Final points on a line test were broken, changed Plane.PlaneDot to FM. (Contributed by DSDambuster)

	#jira UE-53554

Change 4044072 by James.Golding

	Add ENGINE_API to UPhysicsHandleComponent so it can be subclassed
	#jira UE-56397

Change 4044073 by James.Golding

	PR #4611: Expose a few API's so it's possible to make custom anim graph nodes using these objects. (Contributed by ill)
	#jira UE-57004

Change 4044075 by James.Golding

	PR #4618: Bugfix: typo in path for CustomMeshComponent (case error) (Contributed by malavon)
	#jira UE-57077

Change 4044077 by James.Golding

	Add ClassGroup to some components
	#jira UE-57587, UE-57609

Change 4044080 by James.Golding

	PR #4515: Adding API export macro to ACableActor (Contributed by maxtunel)
	#jira UE-55515

Change 4044082 by James.Golding

	Remove unused CopySkinnedModelData function
	#jira UE-57623

Change 4044083 by James.Golding

	Fix per-poly collision for skel meshes. Make sure to call UpdateKinematicBonesToAnim if bEnablePerPolyCollision is set, even if no bodies
	Integration of CL 3971421 from Release-4.19 stream
	#jira UE-56405

Change 4044084 by James.Golding

	Add option to preview 'fixed bounds' in SkelMesh editors.

Change 4044086 by James.Golding

	Remove unused RigidInfluenceIndex from CPU skinning code

Change 4044310 by James.Golding

	Roll back changes to make PhysX cool fails a log instead of warning (CL 3995372, UE-56466), now that content is fixed

Change 4044416 by Lina.Halper

	Provide BP interface to get curve list of names

	#jira: UE-52623

Change 4044419 by Lina.Halper

	added notification for updating pose asset

	#jira: UE-56233

Change 4046929 by Ethan.Geller

	#jira none add my developer folder to QAGame. #fyi dan.reynolds

Change 4047064 by Ethan.Geller

	[Dev-AnimPhys] #jira UE-57890 add additional binaries for Steam Audio to LibPhonon.Build.cs. #rb none

Change 4047564 by Lina.Halper

	Fix issue of not regenerating when reimport mesh

	#jira: UE-58284

Change 4047630 by Ethan.Geller

	Fix syntax error in libPhonon. #jira none #rb none

Change 4048050 by Thomas.Sarkanen

	Allowed "Follow Bone" to be popped out of the menu into the viewport

	This allows for quick re-selection of the bone to follow, avoiding multiple clicks
	Tweaks and extends the "pinned command list" system to allow dynamic text in labels and labels to be hidden.

	#jira UE-53070 - Follow bone - Follow selected bone

Change 4048064 by Thomas.Sarkanen

	Validate any bone references during compilation

	Bone references that are set to something other than NAME_None will be verified against the skeleton.
	Updated various anim nodes to call the base class ValidateAnimNodeDuringCompilation

	#jira UE-55680 - Anim graph nodes that use FBoneReference all need validation in ValidateAnimNodeDuringCompilation

Change 4048468 by James.Golding

	PR #4319: Allow UAnimNotify_PlayMontageNotify to be inherited by other dlls (Contributed by DSDambuster)
	#jira UE-53390

Change 4048470 by James.Golding

	Implement ApplyWorldOffset to CableComponent, to handle origin shifting
	#jira UE-53560

Change 4048471 by James.Golding

	PR #4396: fix cachebones for subclasses of FAnimNode_SkeletalControlBase (Contributed by tmiv)
	#jira UE-53799

Change 4048474 by James.Golding

	PR #4423: Rename confusing argument in LineBoxIntersection (Contributed by Hybrid0)
	#jira UE-54145

Change 4048485 by James.Golding

	Fix compile error display from PoseDriver node
	#jira UE-58306

Change 4048489 by James.Golding

	Finish support for ProceduralMeshComponent supporting multiple UV channels
	#jira UE-54049

Change 4048678 by Thomas.Sarkanen

	Allowing blend space samples to be optionally moved off-grid

	Grid samples are now each optionally snapped.

	#jira UE-56116 - Allow blend spaces to optionally use off-grid sample points

Change 4048773 by Lina.Halper

	Support pose factory with name input

	#jira: UE-55859

Change 4048844 by David.Hill

	Material Proxy Settings

	Updating the max on the material proxy texture size - old value could cause int32 overflow.

	#jira: UE-55441

Change 4049464 by Lina.Halper

	update curve is expensive, and we're doing multiple times with same curve sets. I'm changing it so that it only updates main, and copy from main instance to sub/post.

	#jira: UE-58459

Change 4050939 by Aaron.McLeran

	PR #4649: Activated reverbs will now take priority when world settings are used (i.e. no volume proxy is in use) (Contributed by Brandon-Wilson)

	#jira UE-57546

Change 4050954 by Aaron.McLeran

	PR #4594: Added class type to allow inherited versions of UAudioComponents to be created (Contributed by korypostma)

	#jira UE-56454

Change 4050960 by Aaron.McLeran

	Attempt to fix linux build.

Change 4051247 by James.Golding

	Fix ProcMeshComp UpdateSection not copying all UV sets
	Add test case for ProcMeshComp with multiple UVs

	#jira UE-54049

Change 4051250 by James.Golding

	Add bUseHighPrecisionTangentBasis option to SkeletalMesh
	Change SkeletalMesh source data to store tangents at higher precision
	#jira UE-58525

Change 4051616 by Thomas.Sarkanen

	Mass scale is no longer incorrectly clamped

	This now allows mass scales below 0.01 and above 100.

	#jira UE-49572 - MassScale has some edge cases for skeletal mesh component and small numbers

Change 4051619 by Thomas.Sarkanen

	Fixed notify drag/drop on high DPI displays

	#jira UE-55690 - Animation Notifies Do Not Move Past the Center of Timeline On a High DPI Display

Change 4051626 by Thomas.Sarkanen

	Fix anim dynamics debug rendering

	#jira UE-53902 - Anim Dynamics node is missing wireframe simulation box in preview
	#jira UE-57983 - GitHub 4674 : UE-57910 Fix the angular limits display issue while selecting the AnimDynamics node

Change 4051628 by Thomas.Sarkanen

	Constraints and bodies now rotate in their own local space in the physics asset editor

	When local coordinate system is applied

	#jira UE-50345 - rotating constraints or bodies in Phat with local axis

Change 4051634 by Thomas.Sarkanen

	Automatic rules for state transitions are now shown in tooltips

	#jira UE-57689 - Animation State Machine Transitions that use bAutomaticRuleBasedOnSequencePlayerInState, should indicate that in the transition

Change 4051636 by Thomas.Sarkanen

	NotifyTriggerChance is now hidden for nodify states as it has no effect

	#jira UE-55351 - NotifyTriggerChance should be grayed out for UAnimNotifyState

Change 4051669 by Thomas.Sarkanen

	Fixed accidental operation of pinned commands when closing them

	#jira UE-54051 - Unpinning settings will toggle the next setting

Change 4051671 by Thomas.Sarkanen

	Fix crash importing skeletal mesh with no vertices

	Not a fix for the jira, but found while investigating

	#jira UE-56330 - FBX Files Do Not Import After Using the Facial Anim Importer Unless Project is Reopened

Change 4051684 by James.Golding

	Fix high precision tangents when CPU skinning and mesh merging
	Remember bExistingUseHighPrecisionTangentBasis when re-importing SkelMesh
	#jira UE-58525

Change 4051686 by James.Golding

	PR #4297: Output animation name with ensure() - useful when debugging (Contributed by DSDambuster)
	#jira UE-53259

Change 4051801 by Jurre.deBaare

	A BlendSpace that puts the same asset on samples can stop its own animation on Switch
	#fix Ensure that we don't cause divide-by-zero situations when sampling blendspace data
	#jira UE-54030

Change 4051806 by Jurre.deBaare

	Fix geometry cache reimport + serialization issues

Change 4051807 by Jurre.deBaare

	Currently, it's not possible to assigned a material to a Geometry Cache .uasset
	#fix EditAnywhere rather than VisibleAnywhere
	#jira UE-58212

Change 4051809 by Jurre.deBaare

	GeomCache: Crash/Bug: When importing file
	#fix Ensure that we have a valid first frame when trying to import a sequence, if not error-out
	#jira UE-58285

Change 4051813 by Jurre.deBaare

	GeomCache: Bug: Normals Broken
	#jira UE-58287
	GeomCache - Normals are Bad on Import
	#jira UE-58283
	#fix ensure that we triangulate mesh attributes when necessary

	#misc per-attribute indices check

Change 4051816 by Jurre.deBaare

	Alembic QOL
	- Fix issue with reimport object flags not being applied
	- Now also store sampling data as part of Alembic asset import data

Change 4051817 by Jurre.deBaare

	PR #4550: Fixes bug where "Merge Actors" or HLOD proxies result in too many mesh sections (Contributed by trond)
	#fix Integrated pull-request in different form
	#jira UE-55976

Change 4051818 by Jurre.deBaare

	Emissive isn't baked correctly in TM-MeshbakeMap
	#fix ensure that we OR and Max the material flags and emissive scale
	#jira UE-54889

Change 4051819 by Jurre.deBaare

	Crash on project load when GeometryCache plugin is disabled
	#fix No longer force-load the geometry cache module as it was moved to be a plugin
	#jira UE-57875

Change 4051820 by Jurre.deBaare

	CLONE - Editor crash when Propagating Vertex Colors to Asset's source mesh
	#fix IsValidIndex check
	#jira UE-57127

	Vertex painting

Change 4051828 by Jurre.deBaare

	Merging negative-scaled actors breaks materials
	#fix Make sure we also reverse the section indices when a static mesh has a mirrored transform
	#jira UE-56953

Change 4051834 by Jurre.deBaare

	Unclear warnings when generating clusters in persistent level when sublevels have HLOD disabled
	#fix improved warning text + added uobject link to level in content browser
	#jira UE-55734

Change 4051993 by Jurre.deBaare

	Update Alembic automated test ground truth

	#jira none

Change 4052937 by James.Golding

	Remove now-unused version (merged change to skel source data from Main instead)

Change 4053291 by Aaron.McLeran

	Fix for CIS

	#jira none

Change 4053375 by Aaron.McLeran

	#jira UE-58716 Allow ability to bypass volume-weighting with using sound wave priority

Change 4057170 by Thomas.Sarkanen

	Fix shadow variable warning

	#jira UE-58806 - Linux: Shadow Variable Warnings building Editor - PhysicsAssetEditorEditMode.cpp

Change 4057653 by Lina.Halper

	Fix the issue with showing same item multiple times when opening control rig blueprint many times

	#jira: UE-58107

Change 4057701 by Jurre.deBaare

	//UE4/Dev-AnimPhys - Step 'Run Automated Tests' has completed with 13 Errors
	#fix reupdate alembic ground truths, little bit of a weird state
	#jira UE-58818

Change 4057710 by Ethan.Geller

	[Dev-AnimPhys] #jira UE-58004 Early exit if finish was called before StartSubmixRecording. #rb Aaron.McLeran

Change 4059295 by Ethan.Geller

	#jira UE-58004 Reduce logs from fatal to error, fix serialize crash. #rb aaron.mcleran

Change 4061061 by Aaron.McLeran

	Fixing animphys build from recent merge from main.

	#jira UE-58909

Change 4053154 by Aaron.McLeran

	#jira UE-58708 Fix to mic component to reduce clicks/pops on mic input.

	Fix was to simplify the way audio is copied from mic input. This change was used on the GDC demo floor for a number of features.

[CL 4062611 by Aaron McLeran in Main branch]
2018-05-09 18:45:58 -04:00
Ben Marsh
13d012685f Merging copyright update from 4.19 branch.
#rb none
#rnx
#jira

[CL 3818977 by Ben Marsh in Staging-4.19 branch]
2018-01-02 15:30:26 -05:00
Ben Marsh
cfc9f4775f Copying //UE4/Dev-Core to //UE4/Dev-Main (Source: //UE4/Dev-Core @ 3805092)
#lockdown Nick.Penwarden
#rb none

============================
  MAJOR FEATURES & CHANGES
============================

Change 3623004 by Ben.Marsh

	Fix RemoteExecutor not taking the remote machine specs into account.

Change 3623172 by Ben.Marsh

	UGS: Fix "More Info..." button not using P4 server override.

Change 3628820 by Ben.Marsh

	PR #3979: Get working directory from task element, not tool node (Contributed by nullbus)


Change 3630424 by Graeme.Thornton

	Make the AES key parameter const in FAES::EncryptData()

Change 3632786 by Steve.Robb

	FString constructor fixed to not take an ignored void* parameter, which can be misleading.

Change 3639534 by Ben.Marsh

	Remove old P4.NET library. Doesn't seem to be used by anything.

Change 3640536 by Steve.Robb

	GitHub #4007 : Delete unnecessary specialization of MakeArrayView

	#jira UE-49617

Change 3641155 by Gil.Gribb

	UE4 - Speculative fix for problem with summary reading in FAsyncArchive2.

Change 3643932 by Ben.Marsh

	Add an example build script for updating the version number, then compiling and staging the editor and tools to an output directory. Optionally submits at the end (requires -Submit argument).

Change 3644825 by Ben.Marsh

	Use VSWHERE to find the location of MsBuild.exe, if available.

	https://github.com/EpicGames/UnrealEngine/pull/3879#issuecomment-329688645

Change 3647395 by Ben.Marsh

	Allow compiling of monolithic binaries from BuildEditorAndTools.xml, using the -set:GameTarget=FooGame -set:TargetPlatforms=Win32;Win64 options.

Change 3650300 by Ben.Marsh

	UAT: Remove code that deletes cooked data on a failed cook. The engine should write packages out transactionally now (by writing to a temporary file and moving into place), and deleting the cooked data just prevents post-mortem analysis.

Change 3650856 by Robert.Manuszewski

	Adding checks to prevent FlushAsyncLoading and LoadObject/LoadPackage from being called from any threads other than the game thread

Change 3651022 by Gil.Gribb

	UE4 - Possible fix for mysterious ensure indicating problematic recursion in the pak precacher.

Change 3658331 by Steve.Robb

	Fix for the parsing of large integer values.

Change 3661958 by Gil.Gribb

	UE4 - Fixed rare hang in task graph.

Change 3664021 by Robert.Manuszewski

	Fix for a potential GC crash caused by stale pointer in AnimInstanceProxy

	See https://udn.unrealengine.com/questions/392432/gc-issue-uaniminstancemontageinstances-empty-but-u.html

Change 3664254 by Steve.Robb

	Use ANSI allocator when thread sanitizer is enabled.  This allows the generation of more accurate and meaningful reports.

Change 3664436 by Steve.Robb

	Use TUniquePtr instead of a thread-unsafe TSharedPtr to move data between threads.

Change 3666461 by Graeme.Thornton

	Improvements to signing/encryption key embedding and runtime access
	 - Changed method of embedding key into the executable to make it more secure
	 - Added FAESKey class to wrap a 32 byte key

Change 3666462 by Graeme.Thornton

	Cut ShooterGame AES key down to 32 characters

Change 3677560 by Ben.Marsh

	PR #4074: UBT: Add include and library-related fields to module JSON output (Contributed by adamrehn)


Change 3683534 by Steve.Robb

	Refactoring of enum/struct lookup during hot reload.

Change 3683754 by Steve.Robb

	Alignment fixes to allow int64 on 32-bit platforms
	Support for integral types in IsAligned.
	Static asserts so that alignment functions will no longer be called with non-intergal, non-pointer types.
	Some fixes to existing code.

Change 3686670 by Steve.Robb

	Fix for thread-unsafe modification of static array in FString::ParseIntoArrayWS.

Change 3687540 by Ben.Marsh

	Fix all UBT/UAT output going to stderr rather than stdout.

Change 3688931 by Gil.Gribb

	UE4 - Critical fix for a rare race condition in the pak file async IO layer.

Change 3690000 by Graeme.Thornton

	Manual copy of 4.18 CL 3687869

	Make UBT include the destination INI file for a given hierarchy if it exists
	Renamed VSCode enum value to VisualStudioCode, so it matches the source accessor plugin name

Change 3690030 by Graeme.Thornton

	VSCode fixes
	 - Source Code Accessor plugin changes. Add new interface method to open a solution at a given path
	 - GameProjectUtils now uses the source navigation API to open solutions rather than hardcoding which solution file types to look for
	 - Various fixes for vscode project file generation

	#jira UE-50554

Change 3690885 by Steve.Robb

	Atomic reads in FReferenceControllerOps<ESPMode::ThreadSafe>.

Change 3691052 by Steve.Robb

	Free stats thread on shutdown.

Change 3695138 by Steve.Robb

	AsConst helper function added.

Change 3696627 by James.Hopkin

	Changed player controller iterator typedefs to use TWeakObjectPtr rather than the deprecated TAutoWeakObjectPtr

	(review-3606695)

Change 3697099 by Steve.Robb

	GitHub #4105 : Removed redundant class access modifier

Change 3697154 by Steve.Robb

	Removal of deprecated functions in delegates.
	Mutable lambdas to can now be bound to delegates.

Change 3697180 by Steve.Robb

	GitHub #4115 : Incorrect CPPMacroType used for USoftClassProperty

Change 3697239 by Steve.Robb

	Allow TArray::Insert to take an array with any allocator type.

Change 3697269 by Steve.Robb

	RelocateConstructItems instead of MoveConstructItems.

Change 3697558 by Steve.Robb

	New _GetRef functions for TArray, which return a reference to the newly-added element.
	Unit tests for these functions.

Change 3699776 by Steve.Robb

	TSAN warning suppression around IAsyncReadRequest::bCompleteAndCallbackCalled.

Change 3702397 by Steve.Robb

	TIsTrivial type trait.

Change 3702569 by Steve.Robb

	Allow a TGuardValue to be assigned to a different type from the one being guarded.

Change 3706644 by Robert.Manuszewski

	Different stack ingore count for development builds for FArchiveStackTrace

Change 3709272 by Steve.Robb

	Removal of redundant UpdateVertices, which causes a race condition on the renderer thread.

Change 3709452 by Robert.Manuszewski

	Fixed a bug where with async time limit set to a low value the async loading could hang because the linker would keep reloading the preload dependencies

Change 3709454 by Robert.Manuszewski

	Added command line option -NOEDL to disable EDL

Change 3709487 by Steve.Robb

	Remove use of PLATFORM_HAS_64BIT_ATOMICS, which is always 1.

Change 3709645 by Ben.Marsh

	Fix race condition between multiple instances of UBT trying to write out the XML config cache.

Change 3711193 by Ben.Marsh

	Add an editor setting for the shared DDC location to use.

	#jira UE-51487

Change 3713811 by Steve.Robb

	Update .modules files after a hot reload.
	Don't check for directory timestamp changes as a way of detecting new files if hot reloading with a makefile, as this is already done during makefile invalidation checks.
	Pass hotreload flags around in UBT instead of relying on global state.

	This fixes the hot reload iteration speed regression without also regressing the fix to UE-42205.

	#jira UE-51472

Change 3715654 by Steve.Robb

	GitHub #4156 : Fixed not compiling template function Algo::UpperBoundBy.

Change 3718782 by Steve.Robb

	TSharedPtr, TSharedRef and TWeakPtr assignment are now implemented as copy-and-swap to avoid an invalid smart pointer state being visible to any destructors being called.

Change 3720830 by Steve.Robb

	Initial import of TAtomic object wrapper, which guarantees atomic access to an object.

Change 3720881 by Steve.Robb

	FCompression ThreadSanitizer data race fixes.

Change 3722640 by Graeme.Thornton

	Guard network platform file heartbeat function with the socket critical section. Stop heartbeat from causing a crash when firing during async loading.

	#jira UE-51463

Change 3722655 by Steve.Robb

	Don't null name table because it's already zeroed at startup.
	Some tidy-ups.

Change 3722754 by Steve.Robb

	Thread sanitizer fix.
	Small typo fix.

Change 3722849 by Graeme.Thornton

	Improve "caching file" message in networkplatformfile so it says "Requesting file..." and is only output when we actually request the file from the server

Change 3723081 by Steve.Robb

	TAtomic is now aligned to the underlying integer type.
	TAtomic will now static assert with a better error message when given an unsupported type.
	Define added for the maximum platform-supported atomic type, and used instead of a (wrong) hardcoded number.
	Misc renames.

Change 3723270 by Ben.Marsh

	Include /d2cgsummary argument when running UBT with -Timing.

Change 3723683 by Ben.Marsh

	Do not include documentation in the generated project files by default. Suspect that the 30,000 UDN files that get added to the solution take up memory and degrate performance.

Change 3725422 by Robert.Manuszewski

	When serializing compressed archive with multithreaded compression enabled, wait for the oldest async task instead of spinning.

Change 3725735 by Robert.Manuszewski

	Making all CheckDefaultSubobjects related functions const

Change 3726167 by Steve.Robb

	FMinimalName::IsNone added.

Change 3726458 by Steve.Robb

	TAtomic will no longer instantiate for types which are not exactly a size supported by the platform layer.

Change 3726542 by Ben.Marsh

	UGS: Always include the project filename in the editor build command. The project may not be in one of the .uprojectdirs paths.

Change 3726595 by Ben.Marsh

	Allow building multiple game targets in the example BuildEditorAndTools.xml script.

Change 3726724 by Ben.Marsh

	Fix ambiguities in calculating root directory. (GitHub #4172)

Change 3726959 by Ben.Marsh

	Make sure that AutomationTool uses the same list of preprocessor definitions when compiling *.target.cs files as UnrealBuildTool does.

Change 3728437 by Steve.Robb

	VisitTupleElements now supports invocation of a functor taking arguments from multiple tuples in parallel.
	Some improved documentation.

	NOTE: This is a backward-incompatible change to VisitTupleElements.  Any existing calls will need their arguments swapping.

Change 3732262 by Gil.Gribb

	UE4 - Fixed rare hangs in the task graph.

Change 3732755 by Steve.Robb

	Stats TSAN fixes.
	Optimizations to FCycleCounter::Start() to only read the stat name once.

Change 3735000 by Robert.Manuszewski

	Always preload the AssetRegistry module on startup. even if EDL is disabled.

	Even without EDL, if the async loading thread is enabled the AssetRegistryModule will otherwise be loaded from the ASL thread and that will assert.

Change 3735292 by Robert.Manuszewski

	Made sure component visualizer is removed from VisualizersForSelection when UnregisterComponentVisualizer() is called otherwise it may cause crashes when the engine terminates.

Change 3735332 by Steve.Robb

	Refactoring of UDelegateProperty::Identical() to clarify logic.
	Fixed UMulticastDelegateProperty::Identical() to compare the bound function names.
	PPF_DeltaComparison removed, as it doesn't seem useful.

Change 3737960 by Graeme.Thornton

	VSCode - Add launch task for generating project files for the given folder

Change 3738398 by Graeme.Thornton

	Make Visual Studio source code accessor's module hotreload handler pass the 'save all files' message to the current accesor, rather than direct to the visual studio accessor

	#jira UE-51451

Change 3738405 by Graeme.Thornton

	VSCode: Format c/cpp settings strings using comment path formatting function

Change 3738928 by Steve.Robb

	Fix for lack of null conditional operators in some older Monos. (replicated from CL# 3729574 in Release-4.18)

	#jira UE-51842

Change 3739135 by Ben.Marsh

	Fix being unable to package projects in a folder called "Wolf". This is only a restricted folder for Epic's Perforce history.

	#jira UE-51855

Change 3739360 by Ben.Marsh

	UAT: Fix issue with P4PORT setting not being parsed correctly.

Change 3745959 by James.Hopkin

	#core Added ImplicitConv for safe upcasts to a specific required type, e.g. deduced delegate payload types

Change 3746125 by Steve.Robb

	FName ThreadSanitizer fixes.

Change 3747274 by Steve.Robb

	TSAN fix for FMediaTicker::Stopping.

Change 3747618 by Steve.Robb

	ThreadSanitizer data race fix for FShaderCompileThreadRunnableBase::bForceFinish.

Change 3747720 by Steve.Robb

	ThreadSanitizer fix for FMessageRouter::Stopping.

Change 3749207 by Graeme.Thornton

	First pass of CryptoKeys plugin. Allows creation/editing/cycling of AES/RSA keys.

Change 3749323 by Graeme.Thornton

	Fix UAT crash when only -targetplatform is specifiied

Change 3749349 by Steve.Robb

	TSAN_SAFE guards around LockFreeList to silence ThreadSanitizer.

Change 3749617 by Steve.Robb

	Logf static_assert for formatting string enabled.

Change 3749897 by Steve.Robb

	FDebug::LogAssertFailedMessage static assert for formatting string enabled.

Change 3754011 by Steve.Robb

	Static asserts that the allocator supports move.
	Move-enabled our allocators which don't support move.

Change 3754227 by Ben.Marsh

	Fix build command line in generated projects missing a space before the compiler version override.

	#jira UE-52226

Change 3754562 by Ben.Marsh

	PR #4206: Replace deprecated wsprintf with secure swprintf for Bootstrap executable (Contributed by jessicafalk)


Change 3755616 by Graeme.Thornton

	Runtime code for using the new crypto ini files to define signing/encryption keys

	#jira UE-46580

Change 3755666 by James.Hopkin

	Used ImplicitConv to remove Casts being used for up-casts

	#review-3745965

Change 3755671 by Graeme.Thornton

	Add log message in unrealpak to say which config file system it is using for crypto keys

Change 3755672 by Graeme.Thornton

	Updating ShooterGame with new CryptoKeys based security setup

Change 3756778 by Ben.Marsh

	Add support for running multiple jobs simultaneously on a single builder.

	When running job or agent setup, the --num-slots=X parameter defines the number of steps that can run simultaneously (EC procedures pass in the resource step limit). A lock file is created under the workspace root (D:\Build) and a reservation file is created for the first slot that can be allocated (slot-1, slot-2, etc...). The slot number is used to define the workspace name that should be used.

Change 3758498 by Ben.Marsh

	Re-throw exceptions when a file cannot be deleted when cleaning a target.

Change 3758921 by Steve.Robb

	ThreadSanitizer fix to FThreadSafeStaticStatBase::HighPerformanceEnable to do a relaxed atomic load on access.
	DoSetup() now returns the newly-allocated pointer, instead of reloading it from memory.

Change 3760599 by Graeme.Thornton

	Added missing epic header comment to some new source files

Change 3760642 by Steve.Robb

	ThreadSanitizer fix for concurrent access to GMainThreadBlockedOnRenderThread.

Change 3760669 by Graeme.Thornton

	Improvement to OpenSSL based signing key generator. Generate a full RSA key then steal the primes from it, rather than generating the primes manually.

	Added a test mode to the cryptokeys commandlet to test signing key generation

Change 3760711 by Steve.Robb

	ThreadSanitizer fixes to GIsRenderingThreadSuspended.

Change 3760739 by Steve.Robb

	ThreadSanitizer fix for FQueuedThread::TimeToDie.

Change 3760763 by Steve.Robb

	ThreadSanitizer fix for GRunRenderingThreadHeartbeat.
	Removal of unnecessary/dangerous initializer for GMainThreadBlockedOnRenderThread.

Change 3760793 by Steve.Robb

	Some simple refactoring to remove some volatile reads of BufferStartPos and BufferEndPos.

Change 3760817 by Steve.Robb

	ThreadSanitizer fixes for FAsyncWriter::BufferStartPos and BufferEndPos.

Change 3761331 by Josh.Engebretson

	UnrealBuildTool enforcement of Development and Debug configurations in existing .csproj

	#jira UE-52416

Change 3761521 by Steve.Robb

	ThreadSanitizer fixes for FEvent::EventStartCycles and EventUniqueId.

Change 3763117 by Graeme.Thornton

	PR #3722: Optimising FPaths::IsRelative() (Contributed by jovisgCL)


Change 3763358 by Graeme.Thornton

	Ensure that all branches within FGenericPlatformMisc::RootDir() produce an absolute path with no duplicate slashes
	Remove relative->abs conversion of root dir from FPaths::MakeStandardFilename(), now that we know RootDir() always returns an absolute path

	Derived from the content of this PR:
	PR #3742: Treat RootDirectory the same way as Standardized (Contributed by TroutZhang)


Change 3764058 by Graeme.Thornton

	Generate a .code-workspace file for the current workspace. Allows foreign projects to "mount" the UE4 folder so that the engine tasks are avaible, and all engine source is visible to VSCode for searching purposes

	#jira UE-52359

Change 3764705 by Steve.Robb

	Better handling of whitespace in ImportText_Internal() for set and map properties.
	Containers are now emptied upon import failure, to avoid leaving bad container states (unhashed, partial data).
	Fix to USetProperty's temp buffer size to avoid buffer overruns.
	Duplicate map keys are now skipped during import, same as USetProperty's behavior.

Change 3764731 by Steve.Robb

	Don't re-run UHT if only source files have changed in the same folder as headers.  This was already done for hot reload, but there's no reason why it should be limited to that.

Change 3765923 by Graeme.Thornton

	VSCode - "taskName" -> "label" for C# build tasks

Change 3766018 by Steve.Robb

	constexpr constructor for TAtomic.

Change 3766037 by Steve.Robb

	Misc tidyings in HotReload.cpp.

Change 3766046 by Steve.Robb

	ThreadSanitizer fixes to ENamedThreads::RenderThread and ENamedThreads::ENamedThreads_Local.

Change 3766288 by Steve.Robb

	Improved efficiency of adding/removing elements to UGCObjectReferencer::ReferencedObjects.

Change 3766374 by Josh.Engebretson

	Fix issue with ini quoted value comparison

	#jira UE-52066

Change 3766532 by Josh.Engebretson

	PR #3680: Added NetSerialize to FDateTime fixing UE-22533 (Contributed by druhasu)
	#jira UE-46156

Change 3766740 by Steve.Robb

	TMultiMap::Append added.

Change 3767523 by Steve.Robb

	ThreadSanitizer fix for UE4Delegates_Private::GNextID.

Change 3767601 by Steve.Robb

	ThreadSanitizer fix for FStats::GameThreadStatsFrame.

Change 3770567 by Ben.Marsh

	Add a FAnnotatedArchiveFormatter interface which allows querying structural type information that may not be in binary archives.

Change 3770826 by Ben.Marsh

	Move StructuredArchive implementation into Core, so primitive types can implement serialization overloads for it.

Change 3770875 by Steve.Robb

	Redundant UScriptStruct::PostLoad removed, which was causing a race condition in async loading.  This was re-establishing the CppStructOps, but that is unnecessary because native classes cannot change as a result of a load - only BP structs can, and they don't have CppStructOps.

Change 3772167 by Ben.Marsh

	Add a context-free binary formatter that can serialize tagged data. This functions as a lower-overhead binary intermediate format for JSON data.

Change 3772248 by Steve.Robb

	ThreadSanitizer fixes to FMalloc call counters.

Change 3772383 by Ben.Marsh

	Separate archive metadata from FArchive into FArchiveContext, so it can be safely exposed to consumers of FStructuredArchive.

Change 3772906 by Graeme.Thornton

	TextAssetCommandlet - Utility commandlet for testing/converting to text asset format

Change 3772932 by Ben.Marsh

	Fix "String:" prefix not being stripped from escaped string values.

Change 3772942 by Graeme.Thornton

	Add experimental setting to enable in-editor text asset format functionality
	Add "export to text" option into the content browser asset actions context menu

Change 3772955 by Ben.Marsh

	Add a new "stream" compound type to FStructuredArchive, which allows serializing a sequence of elements similarly to an array, but without serializing an explicit size. Allows passing through data to an underlying binary archive without breaking compatibility.

Change 3772963 by Ben.Marsh

	Allow querying record keys and stream lengths from annotated archive formatters, since these archives have markup for field boundaries.

Change 3773010 by Graeme.Thornton

	Added CORE_API to FArchiveFromStructuredArchive
	Gave text asset format experimental option a slightly less random tooltip comment

Change 3773057 by Ben.Marsh

	Add a flag to FArchive to determine whether the archive is text (IsTextFormat()).

	Add support for seeking within FArchiveFromStructuredArchive. For text formats, data is serialized to an in-memory buffer, with names and objects serialized as indices into an array. For non-text formats, data is serialized directly to the underlying archive.

	Also rename FStructuredArchive::TryEnterSlot() to TryEnterField().

Change 3773118 by Steve.Robb

	TSignedIntType and TUnsignedIntType type traits for getting an integer type of a given size.

Change 3773122 by Steve.Robb

	TAtomic fixes for pointer arithmetic.
	TSignedIntType used instead of reimplementing its own trait.

Change 3773123 by Steve.Robb

	Unit tests for TAtomic.

Change 3773138 by Steve.Robb

	Run numeric tests on integer types instead of basic tests.
	Fix for compiler warnings when subtracting from unsigned atomics.

Change 3773166 by Steve.Robb

	Refactoring of arithmetic operations into its own class, then basing the pointer and integral versions on that.

Change 3774216 by Gil.Gribb

	UE4 - Fix rare crash in the pak precacher immediately after unmounting a pak file.

Change 3774426 by Ben.Marsh

	Copy all C# tools to a staging directory before compiling them. This prevents access violations when compiling tools like iPhonePackager that reference DotNETCommon, and ensures we strip NotForLicensees folders out of them all.

	See: https://answers.unrealengine.com/questions/726010/418-will-not-build-from-source.html

Change 3774658 by Ben.Marsh

	Improve error reporting while generating intellisense for project files. Include the name of the target being compiled, and allow project file generation to continue without it.

Change 3775141 by Ben.Marsh

	Always output HTML5 diagnostics at "information" verbosity, to avoid every line being prefixed with "WARNING:" and screwing up the EC postprocessor.

Change 3775459 by Ben.Marsh

	Removing .NET Framework Perforce DLL as runtime dependency of engine third party library. The actual library is linked statically.

Change 3775522 by Ben.Marsh

	UGS: Treat .uproject and .uplugin files as code changes.

Change 3775597 by Ben.Marsh

	Fix post-build steps for plugins not being executed.

	#jira UE-52754

Change 3777895 by Graeme.Thornton

	StructuredArchiveFromArchive - An adapter class for wrapping an existing FArchive with a structured archive

Change 3777931 by Graeme.Thornton

	Refactored FArchiveUObjects serialization code into some static helpers
	Added FArchiveUObjectFromStructuredArchive which allows the adaption of a structured archive into an FArchive that supports the extra UObect serialization functions for weak/soft pointers

Change 3777942 by Graeme.Thornton

	Added missing CORE_API to FStructuredArchive::FStream
	Added FStructuredArchive::FSlot insertion operator for char
	Added specialization of TArray<uint8> serializer for structured archives which serializes the contents as one value

Change 3778084 by Graeme.Thornton

	Adding FPackageName::GetTextAssetPackageExtension() to access the file extension we use for text asset files

Change 3778096 by Graeme.Thornton

	Add a constructor to FArchiveUObjectFromStructuredArchive that takes a slot and passes it to the base class

Change 3778389 by Josh.Engebretson

	Fix an optimization issue with CPU benchmarking
	Add better support for debugging/testing local rocket builds

	UDN Link: https://udn.unrealengine.com/questions/400909/command-scalability-auto-gives-inaccurate-cpu-benc.html

	#jira UE-52192

Change 3778701 by Josh.Engebretson

	Ensure plugin content folders are mounted consistently.  Fixes TryConvertFilenameToLongPackageName failing to work on plugin assets

	UDN Link: https://udn.unrealengine.com/questions/276386/tryconvertfilenametolongpackagename-fails-for-plug.html

	#jira UE-40317

Change 3778832 by Chad.Garyet

	Adding enterprise path support for PCB's for UGS

Change 3780258 by Graeme.Thornton

	TextAssetCommandlet - Accumulate timings for loading packages and saving packages

Change 3780463 by Graeme.Thornton

	CryptoKeys improvements
	 - Enable CryptoKeys plugin by default
	 - Attempt to inherit settings from the old system by default
	 - Hide ini/index encryption settings from packaging settings and just inherit previous values into new system

	Minor UBT change to remove a trailing comma from the end of encryption/signing key binary strings

Change 3780557 by Ben.Marsh

	Fix LoginFlow module not being precompiled for the binary release.

Change 3780846 by Josh.Engebretson

	Improve filename to long package name resolution when provided a relative path

Change 3780863 by Ben.Marsh

	UAT: Add a better error message when a C# project has an invalid reference.

Change 3780911 by Ben.Marsh

	Update the BuildEditorAndTools.xml script to allow submitting archived binaries to Perforce.

	The "Submit To Perforce For UGS" node creates a zip of all the binaries that have been built, and submits it to the stream specified by the 'ArchiveStream' argument.

Change 3780956 by Josh.Engebretson

	Add support for ! (RemoveKey) config command to UBT

	UDN Link: https://udn.unrealengine.com/questions/397267/index.html

	#jira UE-52033

Change 3782957 by Robert.Manuszewski

	UE4 - Fixed a linear search in EDL that caused performance problems for very large maps.

Change 3784503 by Ben.Marsh

	Optimizations for FStructuredArchive:

	* Store the depth explicitly in element objects, to avoid having to loop through the scope stack to find it.
	* Prevent shrinking of arrays when removing elements.
	* Add an inline allocator to the scope and container stacks.

Change 3784700 by Ben.Marsh

	Remove the inline allocator from FStructuredArchive; checking whether the inline or backup allocator is being used is slower than just allocating up-front.

Change 3784989 by Ben.Marsh

	Compile out all the FStructuredArchive validation code when WITH_TEXT_ARCHIVE_SUPPORT = 0.

Change 3786860 by Gil.Gribb

	UE4 - Remove no buffering flag from windows async IO because it disabled the disk cache entirely.

Change 3787159 by Ben.Marsh

	Guard against UE4.0 backwards compatibility path when determining if an engine is a source distribution.

Change 3787493 by Josh.Engebretson

	Parallel pak generation now uses MaxDegreeOfParallelism option which is now set to the number of CPU cores
	Moved cryptography settings parsing out of threaded CreatePak method to avoid concurrency issue in ConfigCache.TryReadFile
	Fix for multiple threads parsing ini keys (PR 3995)

	#PR 3995
	#jira 52913
	#jira 49503

Change 3787773 by Steve.Robb

	Fix for missing final values from FOREACH_ENUM_ macros.

Change 3788287 by Ben.Marsh

	TBA: Add checks in debug builds that key names in maps and records for FStructuredArchive are unique.

Change 3788678 by Ben.Marsh

	Fix compile error due to inability to instantiate TArray<> of forward declared struct. Convert set of key names to an array to avoid including Set.h in public header for FStructuredArchive.

Change 3789353 by Graeme.Thornton

	Removed unused/rotten modes from TextAsset commandlet.
	Used existing "-iterations=n" switch to control a global iteration over the given command. Useful for performance testing.

Change 3789396 by Ben.Marsh

	Move code to validate container keys/sizes into DO_GUARD_SLOW checks, and allocate container metadata instances dynamically to fix problems with references to things not declared in headers that can't be included from StructuredArchive.h

Change 3789772 by Ben.Marsh

	Always strip trailing slashes from the end of paths specified by .build.cs files; they can cause quoted paths to be escaped on the command line.

Change 3790003 by Ben.Marsh

	TBA: Rename FStructuredArchive::EElementType::Object to FStructuredArchive::EElementType::Record.

Change 3790051 by Steve.Robb

	PIE is disabled during a hot reload.
	Hot reload in editor is disabled during PIE.
	Hot reload from IDE is deferred until after PIE is exited.
	Compiling multiple times before a hot reload (e.g. compiling multiple times in PIE) will now load the most recent change.

	#jira UE-20357
	#jira UE-52137

Change 3790709 by Steve.Robb

	Better move support for TVariant.
	EVariantTypes switched over to using an enum class to aid debugger visualization.

Change 3791422 by Ben.Marsh

	TBA: Return the type of a field from an annotated archive formatter at the point that we enter it, rather than querying all the time.

Change 3791489 by Graeme.Thornton

	TBA: Change StructuredArchiveFromArchive adapter to use the archive.Open() result directly, now that it's a slot and not a record

Change 3792344 by Ben.Marsh

	Improvements to base64 encoding library.

	* Now supports encoding and decoding with ANSICHAR and WIDECHAR implementations.
	* Added support for decoding base-64 blobs without padding marks.
	* Added support for decoding into pre-allocated buffer.
	* Added constexpr functions for determining the encoded and maximum decoded size of an input buffer.
	* Prevent writes past the end of allocated buffer (no longer need to manually remove padding bytes).

Change 3792949 by Ben.Marsh

	TBA: Rename FAnnotatedArchiveFormatter to FAnnotatedStructuredArchiveFormatter.

Change 3794078 by Robert.Manuszewski

	Fixing a crash that could happen when FGCObjects were constructed and destructed when shutting down the engine

	#jira UE-52392

Change 3794413 by Ben.Marsh

	TBA: Remove the element type parameter to SetScope(). It isn't really needed; we can just assume the element ID correctly identifies the item on the stack.

Change 3794731 by Ben.Marsh

	TBA: Optimize creation of stack elements for empty slots in FStructuredArchive. This saves a lot of bookkeeping when serializing a large number of individual fields. Since only one slot can be active at a time (and it only exists temporarily, until we write into it), we can just store the element ID assigned to it in a member variable.

Change 3795081 by Ben.Marsh

	UBT: Move LinuxCommon.cs into Platform/Linux folder.

Change 3795137 by Ben.Marsh

	UBT: Allow modules to specify private compiler definitions from the build.cs file, only visible within that module (via the "PrivateDefinitions" property).

Change 3795247 by Ben.Marsh

	Fix missing header when creating a new interface from the editor new code wizard.

	#jira UE-53174

Change 3796025 by Graeme.Thornton

	Fixed some deprecated "Definitions" warnings in OpenCV build files

Change 3796103 by Graeme.Thornton

	Disable experimental text asset option - it does nothing useful yet.

Change 3796157 by Graeme.Thornton

	Fix path type mismatch in visual studio source code accessor meaning that the DTE comms wouldn't identify a running instance of VS as having the current solution open.

	#jira UE-53206

Change 3796315 by Ben.Marsh

	Move Formatter to the correct position for initializer.

	#jira UE-53208

Change 3797082 by Ben.Marsh

	UAT: Work around for exception thrown by launching cook with "-platform=Android_ETC1 -targetplatform=Android -cookflavor=ETC1". Anrdoid_ETC1 is not a valid platform (it's a cook platform), and can't be parsed by UAT.

	#jira UE-53232

Change 3799050 by Ben.Marsh

	Make UnrealPak.version files writable for Mac and Linux.

Change 3801012 by Graeme.Thornton

	VSCode - Update source accessor to use code workspace as it's target, rather than just the project directory

Change 3801214 by Gil.Gribb

	UE4 - Remove assert to work around minor problem with lock free lists.

	#jira UE-49600

Change 3801219 by Steve.Robb

	WeakObjectPtrs now warn when casting away const.

Change 3801299 by Graeme.Thornton

	Fix quote issue with foreign project build tasks on PC

Change 3803292 by Graeme.Thornton

	Fix crash on startup when using cook-on-the-side. Force a flush of the asset registry background scanning when creating the cook-on-the-side platform registries

Change 3803559 by Steve.Robb

	TSAN fix for FMalloc::MaxSingleAlloc.

Change 3803735 by Graeme.Thornton

	Last set of cryptokeys changes
	 - Added some comments for editor exposed settings
	 - Split "encrypt assets" option into "encrypt uassets" and "encrypt all assets"

Change 3803929 by Ben.Marsh

	UGS: Show an in-place error panel when a project fails to open, allowing the user to retry and have their tabs saved instead of creating a modal dialog.

Change 3624590 by Steve.Robb

	AddReferencedObjects now generates a compile error with containers of UObject*s where the UObjectType is forward-declared, as these which won't be added to the reference collector.
	Tidy-up of existing calls to AddReferencedObjects.

Change 3629473 by Ben.Marsh

	Build: Rename the option for embedding source server information in PDB files for installed engine builds.

Change 3632894 by Steve.Robb

	VARARG* macros deprecated and usage replaced with variadic templates.

Change 3640704 by Steve.Robb

	MakeWeakObjectPtr added, which deduces a TWeakObjectPtr type from a raw pointer type.
	Fix to TWeakObjectPtr's constructor which implicitly removed const.
	Fixes to everything which didn't compile as a result.

Change 3650813 by Graeme.Thornton

	Removed FStartupPackages and associated code

Change 3651000 by Ben.Marsh

	Return the stack size from FPlatformStackWalk::CaptureStackBacktrace() rather than checking for the first null pointer, to prevent truncated callstacks if parts of the stack are zeroed out.

	#jira UE-49980

Change 3690842 by Steve.Robb

	FPlatformAtomics::AtomicRead added - needs optimizing.
	AtomicRead() used in FThreadSafeCounter::GetValue().

Change 3699416 by Steve.Robb

	Fix to debugger visualization of TArray with a TInlineAllocator or TFixedAllocator.
	Improved readability of TSparseArray visualization.

Change 3720812 by Steve.Robb

	Atomic functions for 8-bit and 16-bit.
	Android, Linux and Switch implementations now just use the Clang implementation.
	AtomicRead64 deprecated in favor of the int64* AtomicRead overload.

Change 3722698 by Steve.Robb

	VS debugger visualizers for TAtomic.

Change 3732270 by Steve.Robb

	Relaxed stores and loads.

Change 3749315 by Graeme.Thornton

	If UAT is invoked with platforms in both the -platform and -targetplatform command line switches, build using all of them rather than just the ones in -targetplatform

	#jira UE-52034

Change 3750657 by Josh.Engebretson

	Fixed issue when debugging editor cook/package and project launch operations

	#jira UE-52207

Change 3758514 by Steve.Robb

	Fixes to FString::Printf having non-literals being passed as its formatting string.

Change 3763356 by Steve.Robb

	ENamedThreads::RenderThread and ENamedThreads::RenderThread_Local encapsulated by getters and setters.

Change 3770549 by Steve.Robb

	Removal of obsolete PLATFORM_COMPILER_HAS_DEFAULTED_FUNCTIONS and PLATFORM_COMPILER_HAS_AUTO_RETURN_TYPES.
	Tidy up of existing code which uses it.

Change 3770553 by Ben.Marsh

	Adding structured serialization API to Core/CoreUObject for use with text-based assets.

	* FStructuredArchive abstracts an archive which is made up of compound types (records, arrays, and maps). Values are stored in slots within these types.
	* Records are string -> value dictionaries where the key names can be compiled out in non-editor builds or when WITH_TEXT_ARCHIVE_SUPPORT = 0.
	* Maps are string -> value dictionaries where the key names are present regardless of the build type.
	* Proxy objects are defined to express the context for serialization (FStructuredArchive::FRecord, FStructuredArchive::FArray, FStructuredArchive::FMap, FStructuredArchive::FSlot) which allows basic validation through static typing. These objects act as lightweight handles, and can be cheaply constructed and passed around on the stack. Most serialization to and from the archive is done through these objects.
	* Runtime checks perform additional validation to ensure that serialized data is well formed and written in a forward-only manner, regardless of the underlying archive type.
	* The actual input/output format is determined by a separate interface (FArchiveFormatter). Context validation (always causing matching LeaveArray for every EnterArray, etc...) is done by FStructuredArchive, so implementing these classes is fairly trivial. FArchiveFormatter can be de-virtualized in non-editor builds, where WITH_TEXT_ARCHIVE_SUPPORT = 0.
	* Includes implementations of FArchiveFormatter for binary and JSON formats.

Change 3771105 by Steve.Robb

	Deprecation warnings for PLATFORM_COMPILER_HAS_AUTO_RETURN_TYPES and PLATFORM_COMPILER_HAS_DEFAULTED_FUNCTIONS.
	Fix for incorrect warning formatting on Clang platforms.

Change 3771520 by Steve.Robb

	Start moving Clang-using platforms' pre-setup stuff into a Clang-specific header.

Change 3771564 by Steve.Robb

	More common macros moved to the Clang pre-setup header.

Change 3771613 by Steve.Robb

	EMIT_CUSTOM_WARNING_AT_LINE moved to ClangPlatformCompilerPreSetup.h.

Change 3772881 by Ben.Marsh

	Add support for serializing FName and UObject through FStructuredArchive.

	In order to allow custom linker behavior when serializing objects:

	* The constructor to JSON input formatter now takes a delegate to convert a string object name into a UObject pointer.
	* The constructor to tagged binary formatter takes a delegate to serialize a UObject pointer into any form it chooses (likely an integer index into the import table)

	Object and name types are stored as strings in JSON, using an "Object:" or "Name:" prefix to differentiate them from regular strings. Any strings that already contain one of these prefixes are prepended with a "String:" prefix (as is any string that already has a "String:" prefix).

Change 3772941 by Graeme.Thornton

	Make build work when including StructuredArchive.h from core container types
	Added standard header to new files
	Add structured archive serializer for TArray
	Fix bug in structured archive where containers weren't being popped from the scope stack

Change 3772972 by Ben.Marsh

	Add an adapter which presents a legacy FArchive interface to a FStructuredArchive slot.

	Data is serialized into this slot as a stream of elements; raw data is buffered up into fixed size chunks, names and objects are serialized separately.

	When used with FBinaryArchiveFormatter, this should result in all data being passed through to the underlying archive in a backwards compatible way, wiith no additional bookkeeping fields.

Change 3773006 by Ben.Marsh

	Rename FStructuredArchive::FRecord::EnterSlot() to EnterField().

Change 3773013 by Steve.Robb

	bUseInlining target rule added to UnrealBuildTool, which defaults to true, to allow inlining to be disabled for debugging purposes.

Change 3774499 by Ben.Marsh

	Minor fixes for FStructuredArchive related classes:

	* Text-based archive formats are now compiled out when WITH_TEXT_ARCHIVE_SUPPORT = 0.
	* Fixed issue with FTaggedBinaryArchiveFormatter state becoming corrupted when looking ahead at field types.
	* FArchiveFieldName constructor is now explicit, to fix cases where strings were being passed directly to serialize functions.

Change 3774600 by Ben.Marsh

	Add CopyFormattedData() function, which can copy data from one formatter to another. Add a test case to SerializationAPI that converts from data -> JSON -> binary -> JSON -> data.

	This function can be used to implement a generic visitor pattern, by implementing a FArchiveFormatter which receives the deserialized data.

Change 3789721 by Ben.Marsh

	TBA: Split FTaggedBinaryArchiveFormatter into separate classes for reading and writing.

Change 3789920 by Ben.Marsh

	TBA: Support automatic coercion between any numeric types in tagged binary archives. Also report the smallest type that can contain a value, rather than just in32/double.

	#jira UECORE-364

Change 3789982 by Ben.Marsh

	TBA: Change FStructuredArchive::Open() to return a slot, rather than a record, to make it easier to implement a raw FArchive adapter.

Change 3792466 by Ben.Marsh

	TBA: Better handling of raw data in text based assets. Short sequences of binary data are Base64 encoded as a single string. Longer sequences are stored as an array of Base64 encoded lines, push a SHA1 hash to detect cases where the data was merged incorrectly.

	In order to allow inference of the correct type for a field, other fields called "Base64" will be escaped to "_Base64", and any field beginning with "_" will have an additional underscore inserted. Reading files back in reverses these transformations.

Change 3792935 by Ben.Marsh

	TBA: Rename FArchiveFormatter to FStructuredArchiveFormatter for consistency with FStructuredArchive.

Change 3795100 by Ben.Marsh

	UBT: Rename the ModuleRules Definitions property to PublicDefinitions, to make its semantics clearer.

Change 3795106 by Ben.Marsh

	Replace all internal usages of ModuleRules.Definitions, and replace it with ModuleRules.PublicDefinitions.

Change 3796275 by Ben.Marsh

	Fix paths to Version.h includes from resource files.

Change 3800683 by Josh.Engebretson

	Remove WER from Mac and Linux crash reports in favor of unified runtime-xml format
	#jira UE-50073

Change 3803545 by Steve.Robb

	TWeakObjPtr const-dropping assignment fix.
	Fixes to change.

[CL 3805231 by Ben Marsh in Main branch]
2017-12-12 18:32:45 -05:00
Marc Audy
57d3748759 Copying //UE4/Dev-Framework to //UE4/Dev-Main (Source: //UE4/Dev-Framework @ 3227619)
#rb none
#lockdown Nick.Penwarden

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

Change 3198996 on 2016/11/15 by Marc.Audy

	BeginPlay calls will now be dispatched in a consistent order regardless of placed in persistent level, streamed in level, or dynamically spawned
	AActor::BeginPlay is now protected, you should call DispatchBeginPlay instead.
	#jira UE-21136

Change 3199019 on 2016/11/15 by Marc.Audy

	Mark user-facing BeginPlay calls as protected

Change 3200128 on 2016/11/16 by Thomas.Sarkanen

	Dont propgate threaded update flag from UAnimBluepint to CDO if we fail thread safety checks

	Also fully deprecated (with _DEPRECATED) older flags in UAnimInstance.

	#jira UE-38362 - Disable multi-threaded update when anim blueprints are not thread-safe

Change 3200133 on 2016/11/16 by Martin.Wilson

	Fix Set Anim Instance Class not working on the second attempt (InitAnim would not be called)

	#jira UE-18798

Change 3200167 on 2016/11/16 by Martin.Wilson

	Newly added virtual bones are now selected in the skeleton tree

	#jira UE-37776

Change 3200255 on 2016/11/16 by James.Golding

	Stop SkeletalMeshTypes.h being globally included

Change 3200289 on 2016/11/16 by Jurre.deBaare

	Hidden Material References from Mesh Components Fix
	#fix Make sure that in PostEditChangeProp we reset the override material arrays
	#misc changed a property comparison to use GET_MEMBER_NAME_CHECKED instead
	#jira UE-38108

Change 3200291 on 2016/11/16 by Jurre.deBaare

	Imported Alembic skeletal anims have cut-off shadow due to moving out of the bounds
	#fix retrieve bounds from alembic archive at various levels (global, transform, meshes) and build archive bounds which is set on the animation sequence
	#jira UE-37274

Change 3200293 on 2016/11/16 by Jurre.deBaare

	Overlapping UV's cause merge actor texture baking issues
	#fix Only look for overlapping UVs if vertex data baking is actually expected/enabled
	#jira UE-37220

Change 3200294 on 2016/11/16 by Jurre.deBaare

	Scrubbing Playback Speed under Geometry Cache in the details panel is too sensitive
	#fix Make the UIMin/Max smaller than the clamping value for proper user interaction while sliding (thanks James for the tip!)
	#jira UE-36679

Change 3200295 on 2016/11/16 by Jurre.deBaare

	Merge Actor Specific LOD level can be set to 8
	#fix Change clamping value and added UI clamp metadata
	#jira UE-37134

Change 3200296 on 2016/11/16 by Jurre.deBaare

	In Merge Actors if you select use specific Lod level you have access to all the merge material settings
	#fix Added edit condition to non-grayed out material settings
	#jira UE-36667

Change 3200303 on 2016/11/16 by Thomas.Sarkanen

	Fixed diagonal current scrub value in anim curves

	#jira UE-35787 - The red time indicator for viewing curves in persona is slightly tilted

Change 3200304 on 2016/11/16 by Thomas.Sarkanen

	Rezero is now explicit about what it does (current vs. specified frame)

	Also no longer ingores Z-offset (legacy feature - root motion can have any translation, not just 2D).

	#jira UE-35985 - Rezero doesn't work by frame

Change 3200307 on 2016/11/16 by Thomas.Sarkanen

	Add curve panel to anim BP editor

	Also improve curve modification message routing. We were needlessly passing delegates up and down the widget hierarchy and conflating smart name edits with curve edits (key addition etc.).

	#jira UE-35742 - Anim Curve Viewer allowed in Anim BP

Change 3200313 on 2016/11/16 by Jurre.deBaare

	Animations with materials driven by scalar parameters from curves wont update until persona is closed and reopened
	#fix in debug skeletal mesh component just mark the cached parameters dirty every tick
	#jira UE-35786

Change 3200316 on 2016/11/16 by Jurre.deBaare

	Converted Skeletal To Static Mesh Gets Corrupted When Merged
	#fix Assume that the all static meshes will contain valid texture coordinates for channel 0 (which is expect by static mesh code as well)
	#misc Ensure that we set the lightmap index for converted skeletal meshes to either an empty one or the highest one used
	#jira UE-37988

Change 3200321 on 2016/11/16 by Jurre.deBaare

	Scrolling/scroll bar are disabled in Alembic Import window if you scroll a certain way down
	#fix change the way the layout is constructed
	#jira UE-37260

Change 3200323 on 2016/11/16 by Jurre.deBaare

	Toggling sky in Persona does not effect reflections
	#fix turn of skylight together with the actual environment sphere
	#misc found incorrect copy paste in toggling floor/environment visibility with key stroke
	#jira UE-26796

Change 3200324 on 2016/11/16 by Jurre.deBaare

	Open Merge Actor menu on right clicking two selected actors
	#fix Added option 'Merge Actors' to right-click context menu when having selected one or multiple actors in the viewport
	#jira UE-36892

Change 3200331 on 2016/11/16 by Benn.Gallagher

	Added support for suspending clothing simulations at runtime, exposed also to blueperints. And aded option in Persona to pause simulations when animations are paused.
	#jira UE-38620

Change 3200334 on 2016/11/16 by Jurre.deBaare

	Dynamic light settings in Persona viewport cause edges to appear hardened
	#fix Makeing the directional light stationary to ups the shadowing quality
	#jira UE-37188

Change 3200356 on 2016/11/16 by Jurre.deBaare

	Rate scale option for animation nodes in blend spaces
	#added Rate scale variable to blend space samples, these rates are now multiplied with the global rate scale during playback
	#misc bumped framework object version to update all blendspaces on load
	#jira UE-16207

Change 3200380 on 2016/11/16 by Jurre.deBaare

	Fix for Mac CIS issues

Change 3200383 on 2016/11/16 by Marc.Audy

	Split FAttenuationSettings in to FBaseAttenuationSettings and FSoundAttenuationSettings in preparation for reuse of the base attenuation for force feedback

Change 3200385 on 2016/11/16 by James.Golding

	Refactor SkeletalMesh to use same color buffer type as StaticMesh

Change 3200407 on 2016/11/16 by James.Golding

	Fix CIS error in FbxAutomationTests.cpp

Change 3200417 on 2016/11/16 by Jurre.deBaare

	Fix for CIS issues
	#fix Rogue }

Change 3200446 on 2016/11/16 by Martin.Wilson

	Change fix for Set Anim Instance Class from CL 3200133

	#jira UE-18798

Change 3200579 on 2016/11/16 by Martin.Wilson

	Fix for serialization crash in Odin

	#jir UE-38683

Change 3200659 on 2016/11/16 by Martin.Wilson

	Fix build errors

Change 3200801 on 2016/11/16 by Lina.Halper

	Fix error message

Change 3200873 on 2016/11/16 by Lina.Halper

	Test case for Update Rate Optimization

	- LOD_URO_Map.umap - test map
	- LODPawn - pawn that contains mesh with URO setting
	- You can tweak the value in LODPawn

Change 3201017 on 2016/11/16 by Lina.Halper

	- Allow slave component to be removed when setting master pose to nullptr
	- licensee reported this issue. https://udn.unrealengine.com/questions/321037/skeletalmeshcomponent.html

Change 3201765 on 2016/11/17 by Jurre.deBaare

	Improved tooltip for FBlendParameter.GridNum

Change 3201817 on 2016/11/17 by Thomas.Sarkanen

	Added display/edit of bone transforms in details panel

	Added UBoneProxy tickable editor object held by the skeleton tree that updates its internal transforms in Tick().
	Updated various bits of supporting code to allow selection to be properly preserved in cases such as undo/redo. This allows the bone proxy object to be displayed over an undo/redo event. It also fixes some inconsistency with selection between the skeleton tree and the preview scene.
	Breaking change: Updated FOnPreviewMeshChangedMulticaster delegate signature to take both the old and new skeletal mesh. This is to allow clients to skip certain logic if the skeletal mesh hasnt really changed (in this case de-selection).

	#jira UE-38144 - Selected Bone Transform not visible in Persona on the AnimBP tab

Change 3201819 on 2016/11/17 by Thomas.Sarkanen

	Fix CIS error

Change 3201901 on 2016/11/17 by Lina.Halper

	With new system, the skeleton curve count is not the one we should check but BoneContainer.GetAnimCurveNameUids().
	- removed GetCurveNumber from skeleton
	- changed curve count to  use BoneContainer's curve list.

	#code review: Laurent.Delayen

Change 3201999 on 2016/11/17 by Thomas.Sarkanen

	Add local/world transform editing to bone editing

	Added details customization & support code for world-space editing of bone transforms

	#jira UE-38144 - Selected Bone Transform not visible in Persona on the AnimBP tab

Change 3202111 on 2016/11/17 by mason.seay

	Potential test assets for HLOD

Change 3202240 on 2016/11/17 by Thomas.Sarkanen

	Fixed extra whitespace not being removed in front of console commands.

	GitHub #2843

	#jira UE-37019 - GitHub 2843 : Fixed extra whitespace not being removed in front of console commands.

Change 3202259 on 2016/11/17 by Jurre.deBaare

	Readded missing shadows in advanced preview scene

Change 3203180 on 2016/11/17 by mason.seay

	Moved and updated URO Map

Change 3203678 on 2016/11/18 by Thomas.Sarkanen

	Bug fix for menu extenders in PhAT.

	GitHub #2550
	#jira UE-32678 - GitHub 2550 : Bug fix for menu extenders in PhAT.

Change 3203679 on 2016/11/18 by Thomas.Sarkanen

	Fixed LOD hysteresis not being properly converted from the old metric

	This addreses some 'LOD lag' issues seen when just treating as an equivalent fudge factor, as the magnitude needed to have an effect has changed.

	#jira UE-38640 - Skeletal mesh LODs render incorrectly and incosistently

Change 3203747 on 2016/11/18 by Jurre.deBaare

	Crash when repeatedly undoing and readding of animation to a AnimOffset 1D - IsValidBlendSampleIndex
	#fix Ensure we reset the hightlighting / dragging / selection state when PostUndo is called, this makes sure we repopulate tooltips if need etc.
	#jira UE-38734

Change 3203748 on 2016/11/18 by Jurre.deBaare

	Crash Generating Proxy Meshes after replacing static meshes in the level
	#fix just calculate bounds for the used UVs (old behaviour was wrong)
	#jira UE-38764

Change 3203751 on 2016/11/18 by james.cobbett

	Changes to TM-PoseSnapshot and new test assets

Change 3203799 on 2016/11/18 by Thomas.Sarkanen

	Switched fudged auto-LOD calculations to use a pow() decay instead of a recprocal

	Still a fudge when LOD reduction has not been performed in-engine, but a fudge with similar outcomes to the previous method.
	Also fixed up the naming of some variables that still referred to screen areas & LOD distances.

	#jira UE-38674 - LOD distance switching have changed since 4.14 and merged lod actors seem to switch at incorrect screen scales as a result

Change 3203856 on 2016/11/18 by james.cobbett

	TM-PoseSnapshot - Rebuild lighting and updated anims

Change 3203880 on 2016/11/18 by Ori.Cohen

	Copying //UE4/Dev-Physics-Upgrade to Dev-Framework (//UE4/Dev-Framework)

Change 3203940 on 2016/11/18 by Ori.Cohen

	Fix missing newline for ps4

Change 3203960 on 2016/11/18 by Ori.Cohen

	Readd fix for linux macro expansion warning

Change 3203975 on 2016/11/18 by Ori.Cohen

	Fix for linux toolchain not knowing about no-unused-local-typedef

Change 3203989 on 2016/11/18 by Ori.Cohen

	Make sure physx automation doesn't try to build html5 APEX.

Change 3204031 on 2016/11/18 by james.cobbett

	Minor update to test level

Change 3204035 on 2016/11/18 by Marc.Audy

	Additional Attenuation refactor cleanup

Change 3204044 on 2016/11/18 by Ori.Cohen

	Fix typo of NV_SIMD_SSE2

Change 3204049 on 2016/11/18 by Ori.Cohen

	Fix missing newline for PS4 compiler

Change 3204463 on 2016/11/18 by mason.seay

	Finalized URO test map

Change 3204621 on 2016/11/18 by mason.seay

	Small improvements

Change 3204751 on 2016/11/18 by Ori.Cohen

	Make PhAT highlight selected bodies and constraints in the tree view

Change 3205868 on 2016/11/21 by Marc.Audy

	Merging //UE4/Dev-Main to Dev-Framework (//UE4/Dev-Framework) @ 3205744

Change 3205887 on 2016/11/21 by Jurre.deBaare

	Fix for similar crash in blendspace editor like UE-38734

Change 3206121 on 2016/11/21 by Marc.Audy

	PR #2935: Minor subtitle issues (Contributed by projectgheist)
	#jira UE-38803
	#jira UE-38692

Change 3206187 on 2016/11/21 by Marc.Audy

	PR #2935: Minor subtitle issues (Contributed by projectgheist)
	Additional bits
	#jira UE-38519
	#jira UE-38803
	#jira UE-38692

Change 3206318 on 2016/11/21 by Marc.Audy

	Fix Linux compiler whinging

Change 3206379 on 2016/11/21 by Marc.Audy

	Fix crash when streaming in a sublevel with a child actor in it (4.14.1)
	#jira UE-38906

Change 3206591 on 2016/11/21 by Marc.Audy

	Refactor restrictions to allow hidden and clarify disabled

Change 3206776 on 2016/11/21 by Marc.Audy

	ForceFeedback component allows rumble events to be placed or spawned in to the world with attenuation settings that dictate how intensely the rumble pattern will be applied to the player based on their distance to the effect.
	ForceFeedback Attenuation settings can be defined via the content browser or directly on the component.
	#jira UEFW-244

Change 3206901 on 2016/11/21 by Marc.Audy

	Fix compile error in automation tests

Change 3207235 on 2016/11/22 by danny.bouimad

	Updated Map

Change 3207264 on 2016/11/22 by Thomas.Sarkanen

	Disable bone editing in anim blueprint editor

	#jira UE-38876 - Transform options in bone Details panel in Anim Blueprint Persona editor appear editable

Change 3207303 on 2016/11/22 by Lina.Halper

	Clear material curve by setting it directly because the flag might not exist

	#jira: UE-36902

Change 3207331 on 2016/11/22 by Jon.Nabozny

	Fix overflow issues in SerializeProperties_DynamicArray_r. Also, fix crash from not ensuring properties were serialized successfully.

Change 3207357 on 2016/11/22 by Danny.Bouimad

	Updating testcontent for pose drivers

Change 3207425 on 2016/11/22 by Lina.Halper

	Fix frame count issue with montage

	#jira: UE-30048

Change 3207478 on 2016/11/22 by Lina.Halper

	Fix so that curve warning doesn't happen when your name is same.
	#jira: UE-34246

Change 3207526 on 2016/11/22 by Marc.Audy

	Fix crash when property restriction introduces a hidden entry

Change 3207731 on 2016/11/22 by danny.bouimad

	MoreUpdates

Change 3207764 on 2016/11/22 by Lina.Halper

	#fix order of morphtarget to first process animation and then BP for slave component

Change 3207842 on 2016/11/22 by Ben.Zeigler

	Fix it so ActiveStructRedirects are checked in addition to ActiveClassRedirects when serializing a raw UStruct reference, such as in a blueprint UStructProperty. This fixes issue with the attenuation settings struct rename, and should have always been working this way. ActiveClassRedirects will still work.

Change 3208202 on 2016/11/22 by Ben.Zeigler

	#jira UE-38811 Fix regression with gimbal locking in player camera manager.
	The quat->rotator->quat->rotator conversions are introducing more error than in 4.13, so a pitch limit of -89.99 was too precise.

Change 3208510 on 2016/11/23 by Wes.Hunt

	Disable UBT Telemetry on internal builds #jira AN-1059
	#tests build a few different ways, add more diagnostics to clarify if the provider is being used.

Change 3208734 on 2016/11/23 by Martin.Wilson

	Change EnsureAllIndicesHaveHandles to try and maintain validity of as many of the handles as possible + Make FRichCurve key member private as it needs to stay in sync with map on base class

	#jira UE-38899

Change 3208782 on 2016/11/23 by Thomas.Sarkanen

	Fixed material and vert count issues with skeletal to static mesh conversion

	Material remapping was not bein gbuilt, so material indices were overwitten inappropriately.
	Vertex tangentY was being recalculated incorrectly (discarding the W component when transformed), so vertices were not correctly re-merged later in the static mesh build phase.

	#jira UE-37898 - Materials are incorrect on static mesh made from skeletal mesh

Change 3208798 on 2016/11/23 by James.Golding

	UE-38478 - Fix collision on procmesh created in BeginPlay in cooked builds

Change 3208801 on 2016/11/23 by Jurre.deBaare

	Hidden Material References from Mesh Components Fix
	#fix forgot to mark the renderstate dirty and wrapped it to only apply when overridematerials actually contain something
	#jira UE-38108

Change 3208807 on 2016/11/23 by Thomas.Sarkanen

	CIS fix

Change 3208824 on 2016/11/23 by danny.bouimad

	More content updates for Testing

Change 3208827 on 2016/11/23 by Danny.Bouimad

	Removing Old Pose driver Testassets I created awhile ago.

Change 3209026 on 2016/11/23 by Martin.Wilson

	CIS Fix for FRichCurve

Change 3209083 on 2016/11/23 by Marc.Audy

	Don't crash if after an undo the previously selected object no longer exists (4.14.1)
	#jira UE-38991

Change 3209085 on 2016/11/23 by Marc.Audy

	Don't crash if a negative length passed in to UKismetStringLibrary::GetSubstring (4.14.1)
	#jira UE-38992

Change 3209124 on 2016/11/23 by Ben.Zeigler

	#jira UE-38867 Fix some game mode log messages
	From PR #2955

Change 3209231 on 2016/11/23 by Marc.Audy

	Auto removal

Change 3209232 on 2016/11/23 by Marc.Audy

	GetComponents now optionally can include components in Child Actors

Change 3209233 on 2016/11/23 by Marc.Audy

	ParseIntoArray resets instead of empty

Change 3209235 on 2016/11/23 by Marc.Audy

	Allow child actor components to be selected in viewports
	Fix selection highlight not working on nested child actors
	#jira UE-16688

Change 3209247 on 2016/11/23 by Marc.Audy

	Merging //UE4/Dev-Main to Dev-Framework (//UE4/Dev-Framework) @ 3209194

Change 3209299 on 2016/11/23 by Marc.Audy

	Use MoveTemp to reduce some memory churn in graph schema actions

Change 3209347 on 2016/11/23 by Marc.Audy

	Don't dispatch a tick function that had been scheduled but has been disabled before being executed.
	#jira UE-37459

Change 3209507 on 2016/11/23 by Ben.Zeigler

	#jira UE-38185 Keep player controllers in their same order during a seamless travel
	From PR #2908

Change 3209882 on 2016/11/24 by Thomas.Sarkanen

	Copy-to-array now works with the fast path

	Refactored the copy record generation/validation code to be clearer with better seperation of concerns.
	Made sure we always properly generate a full exec chain for our events, despite some other them potentially using the fast path (this may have been a bug waiting to happen).
	Fixed a potentiual bug with sub anim instances were potentiall fast path non-array properties were skipped.
	Added tests for fast path validity to EditorTests project. Assets to follow.

	#jira UE-34569 - Fast Path gets turned off if you link to multiple input pins

Change 3209884 on 2016/11/24 by Thomas.Sarkanen

	File I missed

Change 3209885 on 2016/11/24 by Thomas.Sarkanen

	Support assets for fast path tests

Change 3209939 on 2016/11/24 by Benn.Gallagher

	Fixed anim blueprint compiler not following reroute nodes when building cached pose fragment list
	#jira UE-35557

Change 3209941 on 2016/11/24 by Jurre.deBaare

	Removing and readding a point to the Anim Offset graph results in the animation to not preview correctly.
	#fix make sure that when we delete a sample point we reset the preview base pose
	#misc changed how the preview base pose is determined/updated
	#jira UE-38733

Change 3209942 on 2016/11/24 by Thomas.Sarkanen

	Fixed transactions being made when setting bone space in details panel

	Also added reset to defaults to allow easy removal of bone modifications.

	#jira UE-38957 - Switching between Local and World Location in Persona Bone Transform options creates an Undo transaction

Change 3209945 on 2016/11/24 by james.cobbett

	Test assets for Pose Snapshot Test Case

Change 3210239 on 2016/11/25 by Mieszko.Zielinski

	Making Navmesh react to changes done to static mesh's collision setup via the SM Editor #UE4

	#jira UE-29415

Change 3210279 on 2016/11/25 by Benn.Gallagher

	Fixed anim sub-instances only allowing one pin to work when any pin required a call out to the VM for evaluation
	#jira UE-38040

Change 3210288 on 2016/11/25 by danny.bouimad

	Cleaned up Pose Driver Anim BP's

Change 3210334 on 2016/11/25 by Benn.Gallagher

	Fixed preview mesh references getting broken in physics assets when renaming the preview mesh asset. Added explicit reference collection for the TAssetPtr
	#jira UE-22145

Change 3210349 on 2016/11/25 by James.Golding

	UE-35783 Fix scrolling in PoseAsset editor panels

Change 3210356 on 2016/11/25 by James.Golding

	UE-38420 Disable 'Convert to Static Mesh' option if no MeshComponents selected (e.g. cables)

Change 3210357 on 2016/11/25 by Jurre.deBaare

	Numeric textbox value label incorrect for aimoffset/blendspaces in grid
	#fix change lambda capture type (was referencing local variable)

Change 3210358 on 2016/11/25 by Jurre.deBaare

	Crash Generating Proxy Mesh with Transition Screen Size set to 1
	#fix 1.0 was not included within the possible range
	#jira UE-38810

Change 3210364 on 2016/11/25 by James.Golding

	Improve BuildVertexBuffers to use stride and avoid copying colors

Change 3210371 on 2016/11/25 by Jurre.deBaare

	You can no longer enable tooltip display when using anim offset
	#fix Added back ability to show advanced preview sample weighting to tooltip under CTRL down
	#jira UE-38808

	It's not clear that the user has to hold shift to preview in blend spaces
	#fix Preview value is now set by default and has a tooltip state, this will inform the user how to move the preview value
	#jira UE-38711

	#misc refactored out some duplicate code :)

Change 3210387 on 2016/11/25 by james.cobbett

	Updating test asset

Change 3210550 on 2016/11/26 by Marc.Audy

	Merging //UE4/Dev-Main to Dev-Framework (//UE4/Dev-Framework) @ 3209927

	Brings IWYU in and required substantial fixups

Change 3210551 on 2016/11/26 by Marc.Audy

	Delete empty cpp files

Change 3211002 on 2016/11/28 by Lukasz.Furman

	added navigation update on editting volume's brush
	#ue4

Change 3211011 on 2016/11/28 by Marc.Audy

	Roll back CL# 3210334 as it is causing deadlocks during GC

Change 3211039 on 2016/11/28 by Jurre.deBaare

	Merge Actors tool is splitting every vertex on spline meshes, causing hard edged vertex colors.
	#fix prevent using the wedge map when propagating spline mesh vertex colours
	#jira UE-36011

Change 3211053 on 2016/11/28 by Ori.Cohen

	Make sure objects without simple collision do not simulate. Fixes crash when two trimesh only objects collide

	#JIRA UE-38989

Change 3211101 on 2016/11/28 by mason.seay

	Adjusting trigger collision so it can't be triggered by projectiles

Change 3211171 on 2016/11/28 by Jurre.deBaare

	Previewing outside of Blendspace Graph points causes unexpected weighting
	#jira UE-32775
	Second Animation Sample added to AimOffset or Blendspace swaps with the first sample
	#jira UE-36755

	#fix Changed behaviour for calculating blendspace grid weighting for one, two or colinear triangles
	- One: fill grid weights to single sample
	- Two: find closest point on line between the two samples for the grid point, and weight according to the distance on the line
	- Colinear: find two closest samples and apply behaviour above
	#misc rename variables to make the code more clear and correct

Change 3211491 on 2016/11/28 by Marc.Audy

	Provide proper tooltip for GetParentActor/Component
	Expose GetAttachParentActor/SocketName to blueprints
	De-virtualize Actor GetAttach... functions
	#jira UE-39056

Change 3211570 on 2016/11/28 by Lina.Halper

	Title doesn't update when asset is being dropped

	#jira: UE-39019

Change 3211766 on 2016/11/28 by Ori.Cohen

	Remove warning when a constraint has two empty components. This can be a valid usecase for when components are determined dynamically.

	#JIRA UE-36089

Change 3211938 on 2016/11/28 by Mason.Seay

	CSV's for testing gameplay tags

Change 3212090 on 2016/11/28 by Ori.Cohen

	Expose angular SLERP drive to blueprints

	#JIRA UE-36690

Change 3212102 on 2016/11/28 by Marc.Audy

	Fix shadow variable issue
	#jira UE-39099

Change 3212182 on 2016/11/28 by Ori.Cohen

	PR #2902: Fix last collision preset display (Contributed by max99x)

	#JIRA UE-38100

Change 3212196 on 2016/11/28 by dan.reynolds

	AEOverview Update:

	Minor tweaks and fixes

	Added Attenuation Curve Tests

	Renamed SC to SCLA for Sound Class prefix

	WIP SCON (Sound Concurrency)

Change 3212347 on 2016/11/28 by Ben.Zeigler

	#jira UE-39098 Fix issues with adding tag redirectors with the editor open, it now checks the redirector list in the editor
	Fix chained tag redirectors to work properly
	Const fixes and removed a bad error message spam, and fix rename message

Change 3212385 on 2016/11/28 by Marc.Audy

	Avoid duplicate GetWorld() calls

Change 3212386 on 2016/11/28 by Marc.Audy

	auto shoo

Change 3213018 on 2016/11/29 by Marc.Audy

	Fix shadow variable for real

Change 3213037 on 2016/11/29 by Ori.Cohen

	Fix deprecation warnings

Change 3213039 on 2016/11/29 by Marc.Audy

	Generalize logic for when a component prevents an Actor from auto destroying
	Add forcefeedback component to the components that will hold up the auto destroy of an actor

Change 3213088 on 2016/11/29 by Marc.Audy

	Move significance manager out of experimental

Change 3213187 on 2016/11/29 by Marc.Audy

	Add InsertDefaulted to mirror options available when Adding

Change 3213254 on 2016/11/29 by Marc.Audy

	add auto-complete for showdebug forcefeedback

Change 3213260 on 2016/11/29 by Marc.Audy

	Allow systems to inject auto-complete console entries

Change 3213276 on 2016/11/29 by Marc.Audy

	add auto-complete entry for showdebug significancemanager

Change 3213331 on 2016/11/29 by James.Golding

	Split SkeletalMesh skin weights into their own stream
	Remove unused FGPUSkinVertexColor struct
	Remove unused FSkeletalMeshVertexBuffer::bInfluencesByteSwapped bool
	Fix FSkeletalMeshMerge::GenerateLODModel to handle >4 weights
	Update friendly name for FColorVertexBuffer now it's used by skel mesh as well

Change 3213349 on 2016/11/29 by Ben.Zeigler

	Fix tag rename feedback message

Change 3213355 on 2016/11/29 by Ben.Zeigler

	#jira UE-39115 PR #2987: Added IsPaused to AGameModeBase (Contributed by RoyAwesome)

Change 3213406 on 2016/11/29 by Ori.Cohen

	Make sure body transforms are not set while the physx simulation is running.

	#JIRA UE-37270

Change 3213508 on 2016/11/29 by Jurre.deBaare

	When performing a merge actor on an actor merging multiple materials certain maps aren't generated
	#fix Apparently rendering out specular etc now outputs its value only to the red channel, so had to change how we populate the combined metallic/roughness/specular map
	#jira UE-38526

Change 3213557 on 2016/11/29 by Ben.Zeigler

	#jira UE-22145 Fix issues where TAssetPtrs weren't getting properly fixed up during rename fixup, it now runs the StringAssetReference fixup on the nested reference. This should fix lots of weird issues with references going away

Change 3213634 on 2016/11/29 by Ori.Cohen

	Make sure if no shapes are found for vehicle wheels we create spheres and attach them to the actor.

Change 3213639 on 2016/11/29 by Ori.Cohen

	Fix from nvidia for vehicle suspension exploding when given a bad normal.

	#JIRA UE-38716

Change 3213812 on 2016/11/29 by James.Golding

	UE-35925 Remove hard-coded asset<->animnode mapping, add SupportsAssetClass virtual instead

Change 3213824 on 2016/11/29 by Ori.Cohen

	Fix CIS

Change 3213873 on 2016/11/29 by Ori.Cohen

	Fix welded bodies not properly computing mass properties.

	#JIRA UE-35184

Change 3213950 on 2016/11/29 by Mieszko.Zielinski

	Fixed navigation collision being generated wrong for StaticMeshes created from BSP #Orion

	#jira UE-37221

Change 3213951 on 2016/11/29 by Mieszko.Zielinski

	Fixed perception system having issue with registering perception listener spawned in sublevels #UE4

	#jira UE-37850

Change 3214005 on 2016/11/29 by Ori.Cohen

	Fix mass kg override not propagating to blueprint instances.

Change 3214046 on 2016/11/29 by Marc.Audy

	Duplicate all instanced subobjects, not just those that are editinlinenew
	Make AABrush.Brush instanced rather than export
	#jira UE-39066

Change 3214064 on 2016/11/29 by Marc.Audy

	Use GetComponents directly where safe instead of copying in to an array

Change 3214116 on 2016/11/29 by James.Golding

	Fix tooltip when dragging anim assets onto players

Change 3214136 on 2016/11/29 by Ori.Cohen

	Make it so moving bodies is immediate when in editor. Useful for editor tools that rely on physx data

	#JIRA UE-35864

Change 3214162 on 2016/11/29 by Mieszko.Zielinski

	Fixed a bug in EnvQueryGenerator_SimpleGrid resuting in one extra column and row of points being generated #UE4

	#jira UE-12077

Change 3214177 on 2016/11/29 by Marc.Audy

	Use correct SocketName (broken in CL#2695130)
	#jira UE-39153

Change 3214427 on 2016/11/29 by dan.reynolds

	AEOverview Update

	Fixed Attenuation tests when overlapping attenuation ranges between streamed levels

	Added Sound Concurrency Far then Prevent New testmap

	Removed some Sound Concurrency assets

Change 3214469 on 2016/11/29 by dan.reynolds

	AEOverview Update

	Added Sound Concurrency Test for Stop Farthest then Oldest

Change 3214842 on 2016/11/30 by Jurre.deBaare

	LookAt AimOffset in the Anim Graph causes character to explode
	#jira UE-38533
	#fix ensure that the source socket exists on the skeleton during compilation (as far as we can), and skip blendspace evaluation in case of it not being valid during runtime

Change 3214866 on 2016/11/30 by james.cobbett

	Updating Pose Snapshot test assets

Change 3214964 on 2016/11/30 by thomas.sarkanen

	Added test data for facial animtion curves

Change 3215015 on 2016/11/30 by Jurre.deBaare

	When a Aim Offset axis value is edited drastically the preview mesh will be deformed
	#fix change the way we change data when axis values are changed, simply remap normalized samples to new axis range
	#misc marked some data/functions editor only (not needed during runtime so reduces footprint a little bit)
	#jira UE-38880

Change 3215029 on 2016/11/30 by Marc.Audy

	Fix CIS

Change 3215033 on 2016/11/30 by Marc.Audy

	Add a delegate for when new classes are added via hotreload
	Change existing hotload class reinstancing delegates to be multicast

Change 3215048 on 2016/11/30 by Jon.Nabozny

	Use getKinematicTarget whenever a body is kinematic.
	This should fix some edge cases in FBodyInstance where stale transforms may be used when operations are run in PrePhysics.

	#jira UE-37877

Change 3215052 on 2016/11/30 by Marc.Audy

	Generalize the volume actor factory logic
	Create volume factories when hotreload adds a new volume class
	#jira UE-39064

Change 3215055 on 2016/11/30 by Marc.Audy

	Probable fix for IOS CIS failure

Change 3215091 on 2016/11/30 by Lina.Halper

	Easy alternative fix for blending two curves per bone. For now we just combine.

	To fix this properly - i.e. per bone to affect curve - it is very expensive process, so opting into this for 4.15.

	#jira: UE-39182

Change 3215179 on 2016/11/30 by Jurre.deBaare

	Preview viewport should only use rendering features supported in project
	#fix replace the skylight with a sphere reflection component, this will not give image based lighting but does supply the user with a reflection map + intensity
	#jira UE-37252

Change 3215189 on 2016/11/30 by Jurre.deBaare

	CIS fix

Change 3215326 on 2016/11/30 by Ben.Zeigler

	#jira UE-39077 Fix OnActive gameplay cues on standalone servers, it was incorrectly assuming it was in mixed replication mode.
	Regression caused by CL #3104976

Change 3215523 on 2016/11/30 by James.Golding

	Fix cooking old skel meshes in commandlet - vertex buffer was not recreated so UpdateUVChannelData would crash

Change 3215539 on 2016/11/30 by Marc.Audy

	Fix failure to cleanup objects in a hidden always loaded sub-level
	#jira UE-39139

Change 3215568 on 2016/11/30 by Aaron.McLeran

	UE-39197 Delay node of 0.0 causes crash

Change 3215719 on 2016/11/30 by Aaron.McLeran

	UE-39074 Audio related Client crash experienced on latest live build ++UT+Release-Next-CL-3193528

Change 3215773 on 2016/11/30 by Aaron.McLeran

	PR #2819 : Fixed typo in SoundWave.h

Change 3215828 on 2016/11/30 by James.Golding

	PR #2900: fixed a former change that overlooked the 2 character difference between 16 and 32. (Contributed by MartinMittringAtOculus)

Change 3215831 on 2016/11/30 by James.Golding

	UE-36688 Add BlendOption (with CustomCurve) to PoseBlendNode

Change 3215904 on 2016/11/30 by Marc.Audy

	Fix significance calculations

Change 3215955 on 2016/11/30 by James.Golding

	UE-36791 Fix scaling of rotated convex elements, by baking element transform into cooked convex data.

Change 3215959 on 2016/11/30 by James.Golding

	Remove LogTemp warning from FAnimBlueprintCompiler::FinishCompilingClass

Change 3216057 on 2016/11/30 by Marc.Audy

	Don't reset expose on spawn properties when in a PIE world
	#jira UE-36771

Change 3216114 on 2016/11/30 by James.Golding

	Move SkeletalMeshComponent and SkinnedMeshComponent functions out of SkeletalMesh.cpp into correct cpp files

Change 3216144 on 2016/11/30 by Jon.Nabozny

	Fix FConstraintInstance scaling issues in FSkeletalMeshComponent::InitArticulated.

	InitArticulated uses the default Constraint Template from the Physics Asset a skeletal mesh is associated with.
	This caused issues if a skeletal mesh had bone scales that differed from those in the physics asset.

	#jira UE-38434

Change 3216148 on 2016/11/30 by Jon.Nabozny

	Create test map and asset for Skeletal Mesh Component Scaling and Skeletal Mesh Uniform Import Scaling.

Change 3216160 on 2016/11/30 by Aaron.McLeran

	Fixing a memory leak in concurrency management

Change 3216164 on 2016/11/30 by James.Golding

	Move SkeletalMeshActor code into its own cpp file
	Fix CIS for SkeletalMeshComponent.cpp

Change 3216371 on 2016/11/30 by dan.reynolds

	AEOverview Update

	Minor tweaks

	Completed Sound Concurrency Rule Test Maps

	Added additional test files

Change 3216509 on 2016/11/30 by Marc.Audy

	Fix missing include

Change 3216510 on 2016/11/30 by Marc.Audy

	Code cleanup

Change 3216723 on 2016/12/01 by Jurre.deBaare

	When clearing a blend sample animation the animation will try and blend to the ref pose
	#fix do not delete sample when animation == nullptr but mark it as invalid, it then will be rendered in red on the grid and discarded during triangle/line generation
	#fix indice mapping for 2d blend spaces was incorrect before (luckily never caused an error)
	#misc weird whitespace changes
	#jira UE-39078

Change 3216745 on 2016/12/01 by Jurre.deBaare

	- Blend space triangulation was incorrect in some cases, due to refactor some data was not initialised.
	- UDN user was hitting a check within the triangle flipping behaviour

	#fix Revisited the conditions to determine whether or not a point lies within a triangles circumcircle
	#fix In case we cannot flip the current triangle we skip it and move onto the next one instead of putting in a hard check
	#misc refactored triangle flipping code to make it smaller (more readible)

Change 3216903 on 2016/12/01 by mason.seay

	Imported mesh for quick test

Change 3216904 on 2016/12/01 by Jurre.deBaare

	CIS Fix
	#fix replaced condition by both non-editor as editor valid one

Change 3216998 on 2016/12/01 by Lukasz.Furman

	fixed AI slowing down on ramps due to 3D input vector being constrained by movement component
	#jira UE-39233
	#2998

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

	Checking in James' fix on drag/drop to replace assets

	#code review: James.Golding
	#jira: UE-39150

Change 3217031 on 2016/12/01 by james.cobbett

	Updating Pose Snapshot Assets. Again.

Change 3217033 on 2016/12/01 by Martin.Wilson

	Update bounds on all skel meshes when physics asset is changed

	#jira UE-38572

Change 3217181 on 2016/12/01 by Martin.Wilson

	Fix imported animations containing a black thumbnail

	#jira UE-36559

Change 3217183 on 2016/12/01 by Martin.Wilson

	Add some extra debugging code for future animation compression / ddc issues

Change 3217184 on 2016/12/01 by james.cobbett

	Fixing a test asset by checking a check box. Sigh.

Change 3217216 on 2016/12/01 by Martin.Wilson

	Undo part of CL 3217183. Will need to add this back differently.

Change 3217274 on 2016/12/01 by Marc.Audy

	When serializing in an enum tagged property follow redirects
	#jira UE-39215

Change 3217419 on 2016/12/01 by james.cobbett

	Changes to test assets for more Pose Snapshot tests

Change 3217449 on 2016/12/01 by Aaron.McLeran

	Adding new audio setting to disable EQ and reverb.

	Hooked up to XAudio2 (for now).

Change 3217513 on 2016/12/01 by Marc.Audy

	Improve bWantsBeginPlay deprecation message

Change 3217620 on 2016/12/01 by mason.seay

	Updated test assets for HLOD

Change 3217872 on 2016/12/01 by Aaron.McLeran

	UEFW-113 Adding master reverb to audio mixer

	- Added new submix editor to create new submixes
	- Created new default master submixes for reverb and EQ and master submixes
	- Fixed a number of minor issues found in auido mixer while working on feature

Change 3218053 on 2016/12/01 by Ori.Cohen

	Added mass debug rendering

	#JIRA UE-36608

Change 3218143 on 2016/12/01 by Aaron.McLeran

	Fixing up reverb to support multi-channel (5.1 and 7.1) configurations.

	- Added default reverb send amount

Change 3218440 on 2016/12/01 by Zak.Middleton

	#ue4 - Made some static FNames const.

Change 3218715 on 2016/12/02 by james.cobbett

	Fixed bug in test asset.

Change 3218836 on 2016/12/02 by james.cobbett

	Fixing up test asset

Change 3218884 on 2016/12/02 by james.cobbett

	Moar test asset changes

Change 3218943 on 2016/12/02 by Ori.Cohen

	Make sure welded bodies include the center of mass offset. Note this also changes the COM nudge to be world space instead of local space

	#JIRA UE-35184

Change 3218955 on 2016/12/02 by Marc.Audy

	Fix initialization order issues
	Remove monolithic includes
	Change signature to pass string by const ref

Change 3219149 on 2016/12/02 by Ori.Cohen

	Fix SetCollisionObjectType not working on skeletal mesh components

	#JIRA UE-37821

Change 3219162 on 2016/12/02 by Martin.Wilson

	Fix compile error when blend space on aim offset nodes is exposed as pin

	#jira UE-39285

Change 3219198 on 2016/12/02 by Marc.Audy

	UEnum::FindValue/IndexByName will now correctly follow redirects
	#jira UE-39215

Change 3219340 on 2016/12/02 by Zak.Middleton

	#ue4 - Optimized and cleaned up some Actor methods related to location and rotation.

	- Inlined GetActorForwardVector(), GetActorUpVector(), GetActorRightVector(). Wrapped them to simply call the methods on USceneComponent rather than using a different approach to computing these vectors.
	- Inlined blueprint versions: K2_GetActorLocation(), K2_GetActorRotation(), K2_GetRootComponent().
	- Cleaned up template methods that are used to delay compilation of USceneComponent calls to make them private and prefix "Template" to their names so they don't show up in autocomplete for calls to the public methods.

Change 3219482 on 2016/12/02 by Ori.Cohen

	Fix crash when double deleting a clothing actor due to destroying USkeletalMesh before USkeletalMeshComponent.

	#JIRA UE-39172

Change 3219676 on 2016/12/02 by Martin.Wilson

	Make clearer that ref pose is from skeleton

Change 3219687 on 2016/12/02 by Aaron.McLeran

	Supporting multi-channel reverb with automatic downmixing of input to stereo

Change 3219688 on 2016/12/02 by Martin.Wilson

	Fix crash when remapping additive animations after skeleton hierarchy change

	#jira UE-39040

Change 3219699 on 2016/12/02 by Zak.Middleton

	#ue4 - Fix template's use of old GetActorRotation() function.

Change 3219969 on 2016/12/02 by Ben.Zeigler

	#jira UE-24800 Disable replicatied movement updates for actors that are welded to something else, to avoid them fighting with the welded parent's replication
	Modified from shelve Zak.Middleton made of PR #1885, after some more testing

Change 3220010 on 2016/12/02 by Aaron.McLeran

	Fixing up sound class editor

Change 3220013 on 2016/12/02 by Aaron.McLeran

	Deleting monolithic file

Change 3220249 on 2016/12/02 by Aaron.McLeran

	Changing reverb settings parameter thread sync method

	- Switching to a simple ring buffer rather than using a crit sect

Change 3220251 on 2016/12/02 by Aaron.McLeran

	Removing hard-coded audio mixer module name for the case when using -audiomixer argument,

	-added new entry to ini file that allows you to specify the audio mixer module name used for the platform.

Change 3221118 on 2016/12/05 by Jurre.deBaare

	Back out changelist 3220249 to fix CIS

Change 3221363 on 2016/12/05 by Martin.Wilson

	Change slot node category from Blends to Montage

Change 3221375 on 2016/12/05 by Jon.Nabozny

	Change AGameModeBase::GetGameSessionClass to return GameSessionClass when set.

	#jira UE-39325

Change 3221402 on 2016/12/05 by Jon.Nabozny

	Add sanitization code around PhsyX flags and refactor the ways flags are managed through a single code path.

	#jira UE-33562

Change 3221441 on 2016/12/05 by Thomas.Sarkanen

	Fixed crash when reimporting a mesh when a different animation was open

	#jira UE-39281 - Editor crashes when reimporting a skeletal mesh after enabling recalculate tangents

Change 3221473 on 2016/12/05 by Marc.Audy

	Get rid of auto.
	Use GetComponents directly instead of copying in to temporary arrays

Change 3221584 on 2016/12/05 by Jon.Nabozny

	Fix CIS for Mac builds from CL-3221375

Change 3221631 on 2016/12/05 by Martin.Wilson

	Possible fix for rare marker sync crash on live servers

	#jira UE-39235
	#test ai match, animation seemed fine, no crashes

Change 3221660 on 2016/12/05 by mason.seay

	Resubmitting to add Viewport Bookmark

Change 3221683 on 2016/12/05 by Mieszko.Zielinski

	Temp (but decent) fix to ARecastNavMesh::GetRandomPointInNavigableRadius sometimes retrieving invalid locations even if there's a valid piece of navmesh in the area #UE4

	#jira UE-30355

Change 3221750 on 2016/12/05 by Jon.Nabozny

	Real CIS fix.

Change 3221917 on 2016/12/05 by Jon.Nabozny

	Fix CIS for real this time.

Change 3222370 on 2016/12/05 by mason.seay

	Start of Gameplay Tag testmap

Change 3222396 on 2016/12/05 by Aaron.McLeran

	UEFW-44 Implementing EQ master submix effect for audio mixer

	- New thread safe param setting temlate class (for setting EQ and Reverb params)
	- Hook up reverb submix effect to source voices
	- Implementation of FBiquad for biquad filter coefficients and audioprocessing
	- Implementation of Filter class which hold FBiquad instance per channel, computes coefficents once
	- Implementation of equalizer class which is a serial bank of filters set to ParametricEQ filter type

Change 3222425 on 2016/12/05 by Aaron.McLeran

	Checking in missing files

Change 3222429 on 2016/12/05 by Aaron.McLeran

	Last missing file!

Change 3222783 on 2016/12/05 by Jon.Nabozny

	Update SkelMeshScaling map.

Change 3223173 on 2016/12/06 by Martin.Wilson

	Fix crash in thumbnail rendering when creating a new montage

	#jira UE-39352

Change 3223179 on 2016/12/06 by Marc.Audy

	auto/NULL cleanup

Change 3223329 on 2016/12/06 by Marc.Audy

	Fix (hard to explain) memory corruption
	#jira UE-39366

Change 3223334 on 2016/12/06 by Jon.Nabozny

	Add HasBeenInitialized check inside AActor::InitializeComponents

Change 3223340 on 2016/12/06 by Jon.Nabozny

	Refactor SkeletalMesh constraint scaling fixes. Add a check on bodies to ensure they are valid.

	#jira UE-39238

Change 3223372 on 2016/12/06 by Marc.Audy

	Probably fix HTML5 CIS failure

Change 3223511 on 2016/12/06 by Jon.Nabozny

	Fix Mac CIS shadow warning

Change 3223541 on 2016/12/06 by Lukasz.Furman

	fixed missing NavCollision data in static meshes
	#jira UE-39367

Change 3223672 on 2016/12/06 by Ben.Zeigler

	#jira UE-39394 Fix GameplayTagContainerCustomization to work like GameplayTagCustomization as a popup instead of a window, this fixes the references button
	Remove unnecessary code from both customizations

Change 3223751 on 2016/12/06 by Marc.Audy

	Properly remove components from their owner when manipulating through editinlinenew properties
	#jira UE-30548

Change 3223831 on 2016/12/06 by Ben.Zeigler

	#jira UE-39293 Don't show non-working tag operations when ini tag editing is not enabled
	#jira UE-39344 Improve feedback messages when deleting explicit tags that have other explicit tag children
	Don't allow deleting a leaf explicit tag whose implicit parent tags are still referenced and it is the only thing keeping them alive
	Add Tag Source to tooltip in management mode
	Fix RequestGameplayTagChildrenInDictionary to work properly

Change 3223862 on 2016/12/06 by Marc.Audy

	Hide deprecated attach functions for all games not just Paragon

Change 3224003 on 2016/12/06 by Marc.Audy

	Put behavior of player camera back to how it was prior to Ansel plugin support changes. Make photography only work a different way.
	#jira UE-39207

Change 3224602 on 2016/12/07 by Jurre.deBaare

	Crash on creating LODs with Medic
	#fix Added clamp for UVs -1024 to 1024
	#jira UE-37726

Change 3224604 on 2016/12/07 by Jurre.deBaare

	Fix for incorrect normal calculation in certain circumstances
	#fix Make sure we propagate the matrices to samples after we (re)calculated normals
	#fix Conditionally swap/inverse the vertex data buffers instead of always
	#fix Set preview mesh for alembic import animation sequences
	#misc removed commented out code and added debug code

Change 3224609 on 2016/12/07 by Jurre.deBaare

	Alembic Import Issues (skeletal) w. UVs and smoothing groups
	#fix Changed the way we populate smoothing group indices for alembic caches
	#misc removed commented out code, set base preview pose for alembic imported skeletal meshes / anim sequences
	#jira UE-36412

Change 3224783 on 2016/12/07 by James.Golding

	Support per-instance skeletal mesh vertex color override

Change 3224784 on 2016/12/07 by James.Golding

	Add skelmesh vert color override map. Fix my vert color material to work on skel mesh.

Change 3225131 on 2016/12/07 by Jurre.deBaare

	Crash when baking matrix animation when importing an alembic file as skeletal
	#fix condition whether or not to apply matrices had not been moved over in previous change
	#jira UE-39439

Change 3225491 on 2016/12/07 by Lina.Halper

	- Morphtarget fix on the first frame

	#jira: UE-37702

Change 3225597 on 2016/12/07 by mason.seay

	Updated materials on meshes to ones that don't have physical materials, also rebuilt lighting

Change 3225758 on 2016/12/07 by Aaron.McLeran

	UE-39421 Fix for sound class graph bug

Change 3225957 on 2016/12/07 by Ben.Zeigler

	#jira UE-39433 Fix crash with mass debug data

Change 3225967 on 2016/12/07 by Lina.Halper

	Fix not removing link up cache when removed.

	#jira: UE-33738

Change 3225990 on 2016/12/07 by Ben.Zeigler

	#jira OR-32975 Sort gameplay tags before saving out modified ini, to help with merge issues

Change 3226123 on 2016/12/07 by Aaron.McLeran

	Fix for sound class asset creation from within the sound class graph

Change 3226165 on 2016/12/07 by mason.seay

	Replaced skelmesh gun with static mesh cube

Change 3226336 on 2016/12/07 by Aaron.McLeran

	Fixing up sound class replacement code.

	If you delete a sound class but replace with another, now it properly replaces sound classes in the sound class graphs without totally destroying them

Change 3226701 on 2016/12/08 by Thomas.Sarkanen

	Merging //UE4/Dev-Main to Dev-Framework (//UE4/Dev-Framework) @ CL 3226613

Change 3226710 on 2016/12/08 by Jurre.deBaare

	Fix for alembic import crash
	#misc update num mesh samples and take into account user set start frame in case of skipping preroll frames

Change 3226834 on 2016/12/08 by Jurre.deBaare

	Fix for incorrect matrix samples being applied during Alembic cache importing
	#fix Change way we loop through samples and determine correct matrix and mesh sample indices

Change 3227330 on 2016/12/08 by Jurre.deBaare

	Temporary fix for animBP compilation error, underlying issue is causing the skeleton to not be fully loaded when we are validating the animation node. This makes the socket name check fail and consequently output a compilation error
	#UE-39499

	#fix Ensure that the skeleton is loaded by checking for RF_NeedPostLoad
	#misc corrected socket name output, removed unnecessary nullptr check

Change 3227575 on 2016/12/08 by Marc.Audy

	Merging //UE4/Dev-Main to Dev-Framework (//UE4/Dev-Framework) @ 3227387

Change 3227602 on 2016/12/08 by Marc.Audy

	Copyright 2016 to 2017 updates for new Framework files

[CL 3227721 by Marc Audy in Main branch]
2016-12-08 16:58:18 -05:00