Commit Graph

78 Commits

Author SHA1 Message Date
matt kuhlenschmidt
2466840461 Added filtering to details panels to filter the set of incoming objects passed to a details panel
Changed the way details panels handle multiple root objects.  The filter can now specify this without setting a specific flag on a details panel at creation time.

[CODEREVIEW] chris.gagnon


#ROBOMERGE-OWNER: matt.kuhlenschmidt
#ROBOMERGE-AUTHOR: matt.kuhlenschmidt
#ROBOMERGE-SOURCE: CL 11308033 via CL 11308037 via CL 11308040
#ROBOMERGE-BOT: (v653-11302973)
#rb none

[CL 11310703 by matt kuhlenschmidt in Main branch]
2020-02-10 15:43:53 -05:00
JeanMichel Dignard
70d074639f Merging //UE4/Dev-Main @ 10886849 to Dev-Tools-Staging (//UE4/Dev-Tools-Staging)
#rb none
#rnx

[CL 10906274 by JeanMichel Dignard in Dev-Tools-Staging branch]
2020-01-08 13:26:18 -05: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
sebastian nordgren
138a3c542e Adding an entry to an array in a component being edited in a locked details view no longer asserts.
This was occurring due to the construction script being rerun and the old instance of the component being garbage collected. When the view is not locked this was handled by the selection being set, but with a locked view we were relying on SDetailsView::ReplaceObjects, which was failing to match the existing component to the newly created component.

#jira UE-61711
#rb paul.chipchase

[CL 9954537 by sebastian nordgren in Dev-Editor branch]
2019-11-01 07:45:52 -04:00
JeanMichel Dignard
d4f0f4d3f2 Copying //UE4/Dev-Enterprise @ cl 9420543 to Dev-Main (//UE4/Dev-Main)
#rb none

[CL 9420574 by JeanMichel Dignard in Main branch]
2019-10-04 13:11:45 -04:00
Francis Hurteau
57c677da93 Copying //UE4/Dev-Enterprise@4705006 to Dev-Main (//UE4/Dev-Main)
#rb none
#lockdown Nick.Penwarden

[CL 4705151 by Francis Hurteau in Main branch]
2019-01-10 17:26:53 -05: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
Chris Gagnon
9361422fa4 Adjusted padding slightly to ensure highliglting looks good.
#jira UE-66377
#codereview Lauren.Ridge
#rb Lauren.Ridge

[CL 4559131 by Chris Gagnon in Dev-Editor branch]
2018-11-12 11:14:14 -05:00
Matt Kuhlenschmidt
46e3285149 Merging //UE4/Dev-Main to Dev-Editor (//UE4/Dev-Editor)
#rb none

[CL 4543237 by Matt Kuhlenschmidt in Dev-Editor branch]
2018-11-06 10:00:36 -05:00
projectgheist
406758e8c1 PR #4230: Layout changes to SWidgetDetailsView (Contributed by projectgheist)
#rb me

[CL 4378096 by Lauren Ridge in Dev-Editor branch]
2018-09-19 13:51:14 -04:00
Lauren Ridge
dfbe92ae20 Hiding Show Modified Properties and adding custom Show Overridden Parameters in Material Instance editor. This works for all parameters and needs additional work for general properties (Physical Material, etc.).
#jira UE-63896
#rb Chris.Gagnon
#fyi Michael.Noland

[CL 4370634 by Lauren Ridge in Dev-Editor branch]
2018-09-17 16:52:32 -04:00
Matt Kuhlenschmidt
7a83cd6530 Merging //UE4/Dev-Main to Dev-Editor (//UE4/Dev-Editor)
#rb none

[CL 4368773 by Matt Kuhlenschmidt in Dev-Editor branch]
2018-09-17 09:26:59 -04:00
projectgheist
ffb0a05993 PR #5034: Clear search filters on Escape button press in the settings windows (Contributed by projectgheist)
#rb none

[CL 4345735 by Chris Gagnon in Dev-Editor branch]
2018-09-05 16:04:18 -04:00
Shaun Kime
9232998f0c Merging //UE4/Main to Dev-Niagara (//UE4/Dev-Niagara)
#rb none
#tests auto-tests for Niagara pass
#lockdown nick.penwarden

[CL 4336979 by Shaun Kime in Dev-Niagara branch]
2018-08-31 13:27:28 -04:00
Frank Fella
80ea3ef089 PropertyEditor - Fix refresh for custom node builders by forcing a rebuild of the tree nodes whenever a custom node builders children are rebuilt, also create a new utilities interface for functions that need to be handled separately for the details view and the property row generator.
#rb none
#codereview Matt.Kuhlenschmidt

[CL 4303601 by Frank Fella in Dev-Niagara branch]
2018-08-21 09:26:15 -04:00
Matt Kuhlenschmidt
ad74d6e0cd GitHub 4077 : Hide SDetailView Filterbox when no actor selected
#rb none

[CL 4081601 by Matt Kuhlenschmidt in Dev-Editor branch]
2018-05-18 17:43:33 -04:00
Shaun Kime
0ca45afbd4 Copying //UE4/Dev-Niagara to //UE4/Dev-Main (Source: //UE4/Dev-Niagara @ 4074996)
#lockdown Nick.Penwarden
#rb none
============================
  MAJOR FEATURES & CHANGES
============================

Change 3853627 by Shaun.Kime

	Merging using OrionDevNiagaraToUE4DevNiagara_DoNotUse VectorVM

	#tests non-gpu auto tests pass

Change 3853628 by Shaun.Kime

	Merging using OrionDevNiagaraToUE4DevNiagara_DoNotUse Runtime

	#tests all non-gpu auto tests pass

Change 3853629 by Shaun.Kime

	Merging using OrionDevNiagaraToUE4DevNiagara_DoNotUse Engine\Shaders

	#tests all non-gpu auto tests pass

Change 3853630 by Shaun.Kime

	Merging using OrionDevNiagaraToUE4DevNiagara_DoNotUse Engine\Plugins\FX

	#tests all non-gpu auto tests pass

Change 3853631 by Shaun.Kime

	Jonathan's material function from Orion\DevNiagara

	#tests all non-gpu auto tests pass

Change 3853633 by Shaun.Kime

	Merging using OrionDevNiagaraToUE4DevNiagara_DoNotUse EngineTest

	#tests all non-gpu auto tests pass

Change 3853911 by Shaun.Kime

	GPU rendering now works

	#tests GPU tests now pass

Change 3854179 by Shaun.Kime

	Removing dead system

	#tests now just with a warning

Change 3854731 by Shaun.Kime

	Checkpointing current work

	#tests n/a

Change 3855080 by Shaun.Kime

	Fixing not all control paths return a value error

	#tests n/a

Change 3856185 by Bradut.Palas

	MultiStack with pinning support.
	#jira UE-53459

	#tests none

Change 3856615 by Shaun.Kime

	Preventing a null pointer dereference when copying unallocated data

	#tests auto tests pass

Change 3856622 by Shaun.Kime

	Getting rid of the bogus get alias method

	#tests auto tests pass

Change 3856644 by Shaun.Kime

	Adding the ability to query the number of filtered triangles, index those triangles directly, and compute the position, velocity, UV, and NBT of a triangle.

	#tests all auto tests now pass

Change 3856645 by Shaun.Kime

	Added several new auto tests and tweaked existing ones.
	+ PerParticleRandom still had some randomness in it
	+ UserColorCurve has a user color curve defined in 3 different components referencing the same system
	+ BasicSkinnedEmitter has 4 skinning sub-tests, attached as a subcomponent, referencing a world skeletal mesh, using a material filter, and using a bone filter

	+ added a skinning module that spawns based off exec index and a data interface that queries the number of triangles on a skeletal mesh.

	#tests auto tests pass

Change 3856675 by Shaun.Kime

	Fixing crash on delete of an emitter

	#tests removed one and multiple emitters from active multi-emitter. No crash

	#jira UE-54378

Change 3860613 by jonathan.lindquist

	New dynamic input

Change 3862549 by Shaun.Kime

	Missing last known good images

Change 3864525 by Simon.Tovey

	Fix for vm compiler crash when using structs as constants.

	#tests No longer crashes.

Change 3864729 by Frank.Fella

	Sequencer - Fixed a few places which were modifying sequencer data, but not calling the NotifySequencerDataChanged.

Change 3864737 by Frank.Fella

	Niagara - Fix the timeline in the niagara editor plus other fixes.
	+ Turned on looping in the timeline by default.
	+ Added simulation options to control playback in the editor, including turning off auto-play, disabling reset on change, and disabling resimulation when changing while paused.
	+ Added a buttons to the timeline for each renderer an emitter has which shows a renderer specific icon and will allow navigation directly to the renderer with future stack changes.
	+ Fixed issues in the emitter life cycle and spawn rate modules which were preventing delay and looping from working consistently. (includes auto-test)
	+ Added top level metadata for modules.
	+ Added the ability to add metadata to a module and it's inputs to allow it to be edited directly using timed sections in the timeline.  Currently configured for the emitter life cycle module.
	+ Changed the way the "MaxSimTime" on niagara component works so that it now represents the maximum frame time which should be used when seeking the component to the desired age.  This previously was the maximum amount of simulation time to run which would prevent simple effects from simulating quickly, and would also allow more complicated effects to hang the UI while seeking.
	+ Changed the behavior of niagara component when seeking to desired age so that it always uses the exact specified seek delta instead of trying to seek to the exact desired age.
	+ Fixed the component so that systems which are seeking to the desired age in the editor no longer draw in fast forward mode.
	+ Changed the default playback range for effects in the timeline from 1000 seconds to 10 seconds, and fixed the timeline so that the playback range is serialized into the asset which will persist the setting across loads.
	+ Fixed scrubbing in the timeline so that it doesn't immediately reset when scrubbing backwards.
	+ Added a button to the timeline track for enabling and disabling isolation mode for emitters.
	+ Added a checkbox to the timeline to enabled and disable emitters from the timeline.
	+ Fixed PinToNiagaraVariable so that it asserts if bNeedsValue is specified and it can't actually provide a value.
	+ Create a class called FNiagaraStackFunctionInputBinder which allows binding to an input of a function on a stack so that you can easily set and get the value of the input without having to worry about modifying the graph or rapid iteration parameter sets directly.

	#tests Existing auto-tests and 1 new test for life cycle changes.

Change 3867179 by Frank.Fella

	Niagara - Turn off GPU simulation for test assets for Shaun.

Change 3869201 by Simon.Tovey

	Bypassing JonLs issue

	#tests no longer crashes.

Change 3869897 by Frank.Fella

	Niagara - Fix crashes when using the skeletal mesh data interface.  NOTE: The change to the actual skeletal mesh data interface code doesn't seem needed, but without it, it crashes with the stomp allocator on.  We'll have to investigate further.

Change 3870487 by Frank.Fella

	Niagara - Always generate cached skin data immediately, and make sure we're not indexing triangles that don't exist.  This is a temporary fix to avoid a crash when changing the skeletal mesh source on an effect in the level from the details panel.

Change 3877378 by Frank.Fella

	Niagara - Update the burst and lifecycle modules with new metadata for incoming timeline changes.

Change 3877564 by Frank.Fella

	Sequencer - Fix a few more places which were modifying sequencer data without calling NotifyMovieSceneDataChanged.

Change 3877565 by Frank.Fella

	Niagara - Remove old unused burst code from some runtime classes.

Change 3877567 by Frank.Fella

	Niagara - Add support for keying bursts on the timeline which is configured using script metadata.

Change 3877699 by Frank.Fella

	Niagara - Fix a crash in the new timeline code for when you have bursts, but you have inputs on the emitter lifecycle bound, also set lower bound of view range of the timeline to be -.1 so that you can more easily interact with keys at 0.

Change 3877715 by Frank.Fella

	Sequencer - Update the change type when pasting keys from the clipboard from Unknown to TrackValueChanged to avoid unnecessary work.  From code review on last change.

Change 3879285 by Simon.Tovey

	A couple of fixes for using struct constants

	#tests Jon's case now compiles and works correctly.

Change 3879378 by Frank.Fella

	Niagara - Fix a few spots where recursive graph traversal was visiting nodes multiple times because of diamonds in the pin connections.  This reduces a terrible hang in UNiagaraScriptSource::InitializeNewRapidIterationParameters from 5 minutes to 5 seconds but there are futher issues to investigate becasue even 5 seconds it too long.

Change 3879858 by Shaun.Kime

	Moved the VM script compilation to the DDC in order to facilitate better team compilation behavior. Significant changes to the translator and overall compile workflow to make the data behave better for a future multi-threaded compilation path.
	In order to know when to compile, a key is generated that uses the compile id's of the graphs that influence the compilation of our node. In this way, if an end user goes and edits a function or module and checks in, the overall compile id will not match b/c that function is in the dependency list of a system downstream. The system will then know to recompile. However, everyone else on the team will generate the same key because the asset in question was checked in with its local compile id already changed.

	Additionally, we now employ change tracking on traversals from a node graph. These traversals walk through all the nodes leading to a given output node and see if they've been altered. If they have, a new compile id is generated. If not, the old compile id is used. This also means that if you edit a particle update section in the stack, the emitter section won't force the system to recompile.

	GPU scripts now have their own script slot rather than riding alongside particle spawn scripts. This allows us to address them independently in the translator and put them in the DDC as well. Once the text is generated, we then go back out to the DDC to generate the shader associated.

	Known issues:
	+ Emitters are sometimes marked dirty on open
	+ Nodes connected to event writes aren't part of the hashing
	+ DataInterface signature changes don't dirty the compiles
	+ Struct changes don't dirty the compiles
	+ On system loading, we go out to the DDC instead of using existing scripts, which is slower..

	#tests all auto-tests pass, additional tests run to validate proper behavior

Change 3879859 by Shaun.Kime

	Content update post DDC change

Change 3879862 by Shaun.Kime

	Niagara plugin content to ddc

Change 3879958 by Frank.Fella

	Niagara - Actually fix the bad recursion in this function by using the existing traversal method.

Change 3881727 by Damien.Pernuit

	Niagara - Houdini - Created a separate plug-in for the Houdini CSV Data Interface.

Change 3881877 by Simon.Tovey

	Fix for mac compile issue

Change 3882773 by Simon.Tovey

	Actual fix for Mike

Change 3882822 by Shaun.Kime

	Rather than throw a check, I instead emit an error when we can't match up a data interface and instantiate a CDO version. Not perfect, but this will let you recompile.

	#tests allows me to open jonathan's file

Change 3883538 by Shaun.Kime

	Moving particle-level scripts to compile with the emitter named Emitter in their internal scripts. This simplifies the dependencies quite a bit, but causes some complexity on the wiring side (most of which we were already doing anyway).
	Getting rid of some allocations in translation (still more to go).
	Fixed some of the logic for emitters that had modules of the same name to now properly concatenate.

	Compile version bumped, so all scripts will be forced to recompile. Not saving this into the test files for now, as I expect this to happen a bit for the near term.

	#tests all auto-tests pass, creating a new emitter and system on PC works

Change 3883552 by Shaun.Kime

	Fixing renaming to work properly now. It just invalidates the system script compile id's, forcing it to auto-compile.

	#tests auto-tests pass

Change 3884722 by Bradut.Palas

	Added searchbar with basic name search for Niagara stack

	#tests none
	#jira UE-53469

Change 3884793 by Shaun.Kime

	Adding pragma once

	#tests no longer complains about duplicate definition

Change 3885629 by Wyeth.Johnson

	Setting up a transient meshrotation framework pre-integration

Change 3887440 by Wyeth.Johnson

	Custom HLSL failure for Shaun

Change 3888911 by Bradut.Palas

	stack search box now has a minimum width of 300 pixels

	#tests none

Change 3890843 by Shaun.Kime

	Creating a Niagara quaternion type.

	#tests created in editor, saw default was correct, carried through to VM runtime through attribute viewer

Change 3890849 by Shaun.Kime

	Porting over 4.19 fix to Dev-Niagara

	#tests allows creation of valid scripts even when ini is cleared.

Change 3891088 by Frank.Fella

	Sequencer - When getting selected tracks for the external selection api, include tracks if any of their child nodes are selected.  This matches the behavior object guid external selection.

Change 3891114 by Bradut.Palas

	Fixing crash that sometimes happens if a stack tree changes while a stack search is active

	#tests none

Change 3891131 by Frank.Fella

	Sequencer - Move section headers for bool, int, vector, and color to the public directory so they can be used by the niagara level sequence integration.

Change 3891165 by Wyeth.Johnson

	error for shaun

Change 3891354 by Shaun.Kime

	Adding Quat struct to more locations. Now treated like hlsl float4.

	#tests EulerToQuaternion now compiles

Change 3891463 by Bradut.Palas

	Fix crash that sometimes happens when deleting module and hitting Ctrl-Z to undo (the condition for removing the listeners from the rootentry should not be tied to the validity of weak pointers for system and emitter, because sometimes they are out of sync when changing the graph)

	#tests none

Change 3891641 by Wyeth.Johnson

	resave node

Change 3893143 by Shaun.Kime

	Fixing issue where you try to bind a vertex color sampler to a mesh without it. We failthe binding rather than crash due to a check later. Also fixed up error logging to only mention the one that failed.

	#tests can open NiagaraSystem'/Game/FX/SkeletalMeshDissolve/EmittersAndSystems/FightSceneDissolve.FightSceneDissolve' with an error..

Change 3893528 by Bradut.Palas

	fix another crash when search results are invalidated during search

	#tests none

Change 3893830 by Shaun.Kime

	Fix for copy & paste of comment boxes

	#tests can now copy and paste comment boxes

Change 3894012 by Bradut.Palas

	no longer executing search tick if the rootentry is null

	#tests none

Change 3894828 by Frank.Fella

	Niagara - Runtime changes to support sequencer animation
	+ Reset the simulation when force solo is changed on the component.
	+ Invalidate the render data and clear the buffers when resetting to avoid previously rendered particles from drawing.
	+ Automatically sync the override parameters in the component when the source assets exposed parameters change and removed forced syncing from various places.
	+ Remove lots of refresh code from the niagara component details which should not be neccessary anymore.

	#TESTS Ran autotests, tested through the UI while building the sequencer tests asests.

Change 3894832 by Frank.Fella

	Niagara - Level sequence support for spawning and animating system life cycle and select user parameter types.

	#Tests Ran existing tests and added a new test to verify added functionality.

Change 3896944 by Bradut.Palas

	safeguard entries with no search items (it actually can be null)

	#tests none

Change 3896948 by Bradut.Palas

	Fix assert when dereferencing source array (no need for a raw pointer to the array since it's initialized with the content anyway)

	#tests none

Change 3896950 by Bradut.Palas

	fix compile error with previous commit

	#tests none

Change 3897698 by Frank.Fella

	Niagara - Fix some safety issues with parameter initialization on the niagara component.
	+ Kill the current system if we synchronize parameters to avoid issues with data interface lifetime.
	+ Always sync parameters when the asset is set to prevent missing data interfaces in the override list.
	+ Add an enum to control how data interface parameters are handled when calling CopyParametersTo.
	+ When the system instance is copying the asset parameters, have it copy data interfaces by reference so that it's not creating data interfaces copies which will be deleted at the next garbage collection.

	#Tests Auto-tests, also doesn't crash anymore when opeining Jonathan's disolve effect and then opening a level.

Change 3897953 by Frank.Fella

	Niagara - Remove some namespace restrictions from the code that generates the available parameters to read from in the stack UI since it was preventing the use of custom namespaces in modules and it was not clear what issue it was solving since we already prevent scripts from addressing parameters from lower level scripts.  Also move user parameters to their own menu section.

	#Tests Custom namespaces are usable again in the stack.

Change 3898926 by Bradut.Palas

	Fix for crash caused by garbage collection and async search
	#jira UE-55284 (Stack search doesn't work on collapsed entries) now searching through unfiltered children, will need extra fixes on the stack to eliminate "ghost" results"
	Both are still under code review, submitting because they are simple to rollback and harmless to other features.

	#tests none

Change 3899069 by Shaun.Kime

	Parallel compilation

	Major changes:
	Rather than a custom streaming version that we know influences a rebuild, I'm moving away to a guid that you need to regenerate if you change the compiler in any meaningful way
	needed for multiple reasons,
	1) if two people are making changes to the compiler, having something other than a guid as the value makes the content of the ddc ambiguous
	2) when iterating I often need to make multiple changes to get to a working final result, bumping the version number each time that happens gets old fast

	We fully clone the input graph to do the compile in the background. While the translation step is not a huge amount of time, it keeps the main thread responsive.

	We currently have a big critsec around the crosscompiler to bytecode as it isn't threadsafe. Future changes will push this to the ShaderCompilerWorker.

	#tests all tests pass as well as stress tests around saving while compilng, long compile times, etc.

Change 3899071 by Shaun.Kime

	Fixing the availability flags for system and emitter scripts.

	#tests all auto tests pass

Change 3899077 by Shaun.Kime

	Fixing assets to have their wait on compile finished checkbox checked in the editor for testing

	#tests n/a

Change 3899114 by Wyeth.Johnson

	Random bool custom hlsl node

Change 3899184 by Bradut.Palas

	implemented categories for module inputs (now inputs can be assigned a category in the module editor and they will be grouped by those categories in the Niagara stack)

	#tests none

Change 3899329 by Bradut.Palas

	fix broken commit by adding missing new files NiagaraStackInputCategory.cpp and .h

	#tests none

Change 3899439 by Yannick.Lange

	Niagara reroute node.

Change 3899516 by Shaun.Kime

	Official angle conversion modules.

	#tests made a local test emitter that converted back and forth between angles. Results were correct.

Change 3900193 by Shaun.Kime

	Fixing build

	#tests now compiles

Change 3900474 by Shaun.Kime

	Fixes to help Mac compile

	#tests n/a

Change 3901131 by Simon.Tovey

	Warmup feature.

	CPU Sim only.

	Also has ability to advance simulation by tick count or seconds via BP/C++.

	Includes some engine tests.

	#tests editor + autotests

Change 3901455 by Frank.Fella

	Niagara - Add WITH_EDITORONLY_DATA to prevent non-editor compile failures.

Change 3902477 by Frank.Fella

	Niagara - Fix FNiagaraEditorTypeUtilities to be a thread safe TSharedFromThis since it's always created with a thread safe shared pointer, also fix up issues related to this change.  Fixes a crash which occurrs when it's the target object of a delegate binding.

	#Tests adding a curve data interface to a parameter collection no longer crashes.
	#jira UE-55403

Change 3903478 by Shaun.Kime

	No longer doing the check if compiling on load is enabled as this always forces different change ids'

	#tests n/a

Change 3903783 by Shaun.Kime

	Trimming down excess log spew

	#tests auto-tests pass

Change 3905753 by Shaun.Kime

	Made Sine(Degrees), Sine(Radians), and Sine, and the variants thereof for trig functions.

	#tests n/a

Change 3905759 by Shaun.Kime

	Auto tests for mesh orientation

	#tests these now pass

Change 3905762 by Shaun.Kime

	These files needed to be resaved for some reason to keep passing.

Change 3906727 by Bradut.Palas

	Curve UX improvements
	#jira UE-55134

	#tests none

Change 3908177 by Shaun.Kime

	Fixing build due to typo

	#tests now compiles

Change 3908199 by Shaun.Kime

	Trying to fix compilation when destroying objects. We cannot safely attach anything beneath us at this point ,we just need to clear out the queues.

	#tests normal work day-to-day

Change 3908201 by Shaun.Kime

	Working to fix crashes where the component was destroyed out from underneath us due to PIE shutting down and we have a Niagara item editable in Blueprint or world editor.

	#tests n/a

Change 3908985 by Bradut.Palas

	Renaming ColorCurveAsset to CurveAsset to better reflect the actual usage of the variable (fixing copy-paste issue)

	#tests none

Change 3909222 by Yannick.Lange

	Niagara graph connection colors

Change 3909436 by Bradut.Palas

	fix crash in curve ux when importing a linear curve (curve of floats)

	#tests none

Change 3909561 by Bradut.Palas

	Updating LUT before sending NotifyPostChange when editing curves inline (so that LUT will not go out of sync)

	#tests none

Change 3910010 by Yannick.Lange

	Use new Niagara Actor icon

Change 3910191 by Yannick.Lange

	Fix viewport widget showing up in the viewport when pressing W, E or R.
	#jira UE-55142

Change 3910213 by Frank.Fella

	PropertyEditor - PropertyRowGenerator - Added features and fixes to support integration into niagara's stack view.
	+ Added a method to get filter/search strings for an IDetailTreeNode to support external searching and filtering.
	+ Added a delegate to the layout builder for when one of it's owned nodes has it's visibility forcibly changed by a customization.
	+ Changed the filtering so nodes are generated for properties marked as advanced.
	+ Pass the notify hook down to the detail utilities so that change notifications work as expected.
	+ Add layout data for the widgets returned from the IDetailTreeNode to prevent alignment and sizing issues in custom implementations.

Change 3910307 by Frank.Fella

	PropertyEditor - Missed in last checkin.

Change 3910509 by Frank.Fella

	Niagara - Removed nested details panels from the stack and integrate them properly plus other fixes.
	+ Generate rows for nested objects using the details panel property row generator.
	+ Fix the horizontal sizing for niagara parameter editors.
	+ Add an IsValid() method to the base niagara stack entry so that derived classes can know if the associated view models are still valid when processing events.  This is a temporary measure to fix a crash in the user parameter UI.
	+ Set stack entries to be expandable by default and delete usages which were setting it to true.
	+ Highlight the active search result with a border since property rows can't highlight text.

Change 3911653 by Frank.Fella

	Niagara - Fix stack spacer sizing.

Change 3911667 by Frank.Fella

	PropertyEditor - Actually fix the notify hook handling in the property row generator.

Change 3911896 by Yannick.Lange

	Niagara function input context menu.

Change 3911900 by Yannick.Lange

	Project setting for not showing comment bubbles.

Change 3911996 by Yannick.Lange

	Niagara fix if node persistent guids for older nodes. The OutputVarGuids are always synced on PostLoad.

Change 3912221 by Wyeth.Johnson

	Renderer Icons for timeline

Change 3912608 by Bradut.Palas

	stack style refactor
	#jira UE-55399

	#tests none

Change 3913063 by Wyeth.Johnson

	Icons for stack added, including new system param png

Change 3913618 by Shaun.Kime

	Fixing two of the most common Illegal call to StaticFindObject() errors while compiling.

	#tests ran through compilation after changes.

Change 3914369 by Bradut.Palas

	Using new SystemParams.png icon provided by Wyett (instead of the old "Parameters.png")

	#tests none

Change 3914782 by Wyeth.Johnson

	Adjusting icon for update to not indicate "flow"

Change 3915738 by Shaun.Kime

	Moving away from the generic and super-slow EdGraphSchema ShouldAlwaysPurgeOnModification being true to using the same mechanism we use to invalidate the compile to synchronize nodes. This should be substantially faster.

	#jira UE-55463

	#tests ran through a variety of tests creating and wiring nodes

Change 3915739 by Shaun.Kime

	Assignment nodes need to invalidate the graph for compile.

Change 3915741 by Shaun.Kime

	Making default values more accessible and making it possible to route renderers to use different values than the defaults.

	#tests n/a

Change 3915798 by Frank.Fella

	SearchBox - Add options to show the number of search results and an option to show a throbber when a search is active.

Change 3915966 by Shaun.Kime

	Changing the default for velocity to 0,0,0 as requested  by Wyeth

	#tests n/a

Change 3915982 by Shaun.Kime

	Making the default text more readable

	#tests n/a

Change 3916237 by Frank.Fella

	PropertyEditor - Change the DetailCategoryBuilderImpl so that it sets the horizontal alignment to fill for value widgets when generating stand alone widgets so that the behavior in the property row generator matches the behavior of the property grid.

Change 3916240 by Frank.Fella

	Niagara - Should prevent some recent crashes due to stack entry delegates and lifetime.

Change 3916261 by Frank.Fella

	Niagara - Lots of minor stack ui fixes and adjustments
	+ Tweaked padding in a bunch of different places.
	+ Added a dark background behind the stack and stack header to prevent the colors from bleeding together.
	+ Fixed the group text not being white anymore.
	+ Hooked up new features of the search box for showing the search result data and an is searching throbber.
	+ Fixed an issue where the current search result couldn't be interacted with.
	+ Fix some other inconsistencies with searching where you might jump more than one result.
	+ Replace the checkbox for showing curve in the curves tab with an icon based button. (icon is placeholder)

Change 3916833 by Shaun.Kime

	Fixing issue where the system wasn't set to wait for compilation on load, sometimes leading to failures for auto-tests

	#tests this test now passes when forced to recompile

Change 3916846 by Shaun.Kime

	Missed one system in the scene.

	#tests n/a

Change 3917458 by Shaun.Kime

	Fixing another potential race condition on the DDC.

	#tests n/a

Change 3918349 by Frank.Fella

	Niagara - Invalidate the node visuals when reallocating pins.

	#Jira UE-55698

Change 3918783 by Olaf.Piesche

	Correct 'temp' to 'Temp' in map set

Change 3919262 by Shaun.Kime

	We weren't properly updating the default values for user data interface components when tweaked in the editor.

	#tests open skinned mesh auto test system change the preview for the user skinned mesh to be SK_Mannequin_Niagara. It now updates, it didn't before.

Change 3919602 by Shaun.Kime

	Fixing the skeletal mesh to now clamp to the end of the index buffer for safety as well as adding IsValidTriCood. This lets us keep going even when swapping out the skeletal mesh underneath.
	Tested out isvalidtricoord in the test skinning module.

	#tests auto tests pass
	#codereivew simon.tovey

Change 3921701 by Yannick.Lange

	Make Vector2 and Vector4 default blue color to be consistent with blueprints.

Change 3922331 by Damien.Pernuit

	Niagara - Houdini - Added support of CSV File as UAsset (HoudiniCSV)
	Modified the Data Interface to use the CSV asset instead of the imported buffers from the CSV File Path.
	Added some new functions to the DI:
	GetLastParticleIndexAtTime()
	GetCSVPositionAndTime()
	GetCSVVectorValue()
	GetCSVFloatValueByString()

Change 3923118 by Simon.Tovey

	PS4 compile fix.

Change 3924934 by Bradut.Palas

	fix Mac compile issues
	#jira UE-55426

	#tests none

Change 3925168 by Bradut.Palas

	Curve logspamming
	#jira UE-55593

	#tests none
	The UpdateCompiledDataInterfaces would end up comparing LUTs when copying curves and the source LUT was out of date.

Change 3925366 by Frank.Fella

	Slate - SMenuAnchor - Fix the implementation of "BelowRightAnchor" to align the right edge of the menu with the right edge of the anchor.  There aren't any other usages of this in the engine as far as I can tell, hopefully people weren't relying on the broken behavior in a game somwhere.

Change 3925423 by Frank.Fella

	Niagara - Remove the large add buttons from the stack and add smaller add buttons in the group headers.

Change 3925877 by Olaf.Piesche

	New collision modules, separating query, linear and angular impulse; Solve forces and velocity takes care of integrating f->v->p and fA->vA->O; linear impulse module would probably be cleaner by zeroing velocity on collision and calculating a force instead of setting new velocity directly

Change 3926582 by Simon.Tovey

	PS4 compile fix

Change 3927401 by Shaun.Kime

	Fixing events due to added member

	#tests all tests pass as of 3925423 with this change

Change 3927496 by Shaun.Kime

	Getting auto-tests to run
	Questions: Why did I have to recompile the GPU tests... something is missing in their key generation?
	Resaved several files.

	#tests almost all pass now

Change 3927582 by Shaun.Kime

	Fixing last failing auto test

	#tests all tests now pass

Change 3927924 by Simon.Tovey

	Chunk level vm parallelism.
	Any execution processing > batch_size chunks will go wide.

	The batch size is 4 currently but adjsutable via vm.ParallelChunksPerBatch.
	VM parallelism can be disabled by vm.Parallel 0

Change 3927990 by Shaun.Kime

	Submitting redirector

Change 3928426 by Frank.Fella

	Niagara - Always propagate rapid iterations parameters when merging an emitter.

Change 3929823 by Frank.Fella

	Niagara - Fix hlsl generation for system/emitter spawn script so that we read the engine and user parameters from the data set instead of initializing them to 0.

	#Tests Full recompile + auto-tests

Change 3929983 by Simon.Tovey

	Curve LUT Interpolation

	+ updated test altered by it.

Change 3930551 by Frank.Fella

	Niagara - Fix what looks like a copy/paste error in the SNiagaraSelectedEmitterGraph destructor which was preventing clean removal of delegates and causing a crash.

	#Tests closing the "Selected Emitter Graph" tab and then changing the selected emitter no longer crashes.

Change 3932695 by Damien.Pernuit

	Niagara - Houdini:

	Houdini CSV Asset:
	- Packed vector values in the CSV file are now properly supported (not just for Position/Normal) and can be of any size.
	- Added support for reimporting Houdini CSV files.
	- Added an "open in text editor" entry in the context menu.
	- Improved error/warning logging during the parsing of the file

	Houdini Niagara Data Interface:
	- Added GetParticleIndexesToSpawnAtTime():
	New helper functions returning the min index, max index and number of particles to be spawned for a given time value.
	Uses an internal LastSpawnIndex to avoid spawning the same particles twice.
	- Modified GetLastParticleIndexAtTime():
	If the CSV file doesn't have time informations, returns false and set the LastIndex to the last particle
	If desiredTime is smaller than the first particle, LastIndex will be set to -1
	If desiredTime is higher than the last particle in the csv file, LastIndex will be set to the last particle's index

Change 3933425 by Shaun.Kime

	Made the spreadsheet debugger capable of capturing in-world systems as long as they are solo'ed.

	#tests have been running with it for several days, debugging real-world assets stably

Change 3933986 by Frank.Fella

	Niagara - Fixed a bug with merging where added dynamic inputs which changed names could end up with the wrong rapid iteration parameters.  Also fixed an issue where added dynamnic inputs would be renamed when they didn't need to be.

	#Tests Engine tests and fixes custom repro.

Change 3934052 by Frank.Fella

	Niagara - Added a console command to dump rapid iteration parameters for a system or emitter asset.

Change 3934436 by Simon.Tovey

	Fixes for sprite VF depth test failure issue

Change 3934658 by Frank.Fella

	Niagara - Make disabled modules visually distinct.

	#Tests General stack use.

Change 3935383 by Shaun.Kime

	Fixing mac compile errors

	#tests n/a
	#jira UE-55911

Change 3935420 by Yannick.Lange

	Niagara parameter UI first version.

Change 3935482 by Yannick.Lange

	Add missing files for parameters

Change 3935591 by Shaun.Kime

	more macos compile

	#tests na

Change 3935637 by Shaun.Kime

	Reverting to prior behavior

	#tests na

Change 3936541 by Yannick.Lange

	Remove the merge up menu entry for set variables module items.

Change 3936841 by Wyeth.Johnson

	Bool comparison dynamic input

Change 3936895 by Simon.Tovey

	A few perf improvements and fixes to the SetSolo transfering between solo and batched so all lightning sims can run batched after they're warmded up.

Change 3936899 by Simon.Tovey

	Missed a file

Change 3937178 by Krzysztof.Narkowicz

	Fixed bHasSkipOutputVelocityParameter for shaders without PreviousLocalToWorldMatrix (e.g. particles)

	#jira UE-50914

Change 3937222 by Yannick.Lange

	Random event spawn

Change 3937292 by Yannick.Lange

	Fix Adding a new parameter then renaming it the default name deletes the new parameter
	#jira UE-55994

Change 3938472 by Yannick.Lange

	Fix new parameters in emitters saving by using the editable emitter.

Change 3938474 by Yannick.Lange

	- Store graphs as weak object pointers in the parameter UI.
	- Allow right mouse menu on parameters in the system toolkit.
	- Refresh only the parameter actions when deleting an entry instead of refreshing the graphs aswell.

Change 3938525 by Yannick.Lange

	Fix creating an unique FName every tick for parameterstores by using a FString instead.

Change 3938596 by Shaun.Kime

	Macos compile

	#tests n/a

Change 3939362 by jonathan.lindquist

	Adding a new Component Spacing input to the debug value functions. This will allow users to make better use of space when debugging values.

Change 3939365 by Shaun.Kime

	Back out changelist 3936895 and 3936899
	Leaving in some changes around stats as they should be harmless.
	These changes were removed b/c they added poor perf to Jonathan's dissolve effect and also caused multiple tests to fail in engine tests.

	#tests all tests pass besides Yannick's FName/FString warning, with the exception of BPTimeControl, Hypnotizer, and MeshOrientation, which seem to be off by one frame, but have been consistently off for several days (CL 3929823 had same issues for me)

Change 3939367 by jonathan.lindquist

	Adding greyscale output

Change 3939368 by jonathan.lindquist

	Changing the pin order

Change 3939377 by Shaun.Kime

	Allows the unnormalized lut table flag to be copied over

	#tests all tests pass besides Yannick's FName/FString warning, with the exception of BPTimeControl, Hypnotizer, and MeshOrientation, which seem to be off by one frame, but have been consistently off for several days (CL 3929823 had same issues for me)

Change 3939379 by Yannick.Lange

	Rename FParameterStore Name to DebugName to prevent loading a FName into a FString with existing assets.

Change 3939382 by Shaun.Kime

	Adding the ability to have a default curve index with a custom switch node.

	#tests all tests pass besides Yannick's FName/FString warning, with the exception of BPTimeControl, Hypnotizer, and MeshOrientation, which seem to be off by one frame, but have been consistently off for several days (CL 3929823 had same issues for me)

Change 3939383 by Shaun.Kime

	Converting existing curves over to using the new default pin

	#tests all tests pass besides Yannick's FName/FString warning, with the exception of BPTimeControl, Hypnotizer, and MeshOrientation, which seem to be off by one frame, but have been consistently off for several days (CL 3929823 had same issues for me)

Change 3939501 by Shaun.Kime

	Submitting missing files

	#tests n/a

Change 3939580 by Wyeth.Johnson

	Default curve indexing to three more DIs

Change 3940122 by Yannick.Lange

	Parameters view: - Jump to new parameter added and request rename for new parameter.
	- Remove adding parameters to the parameterstore when a pin is requested.
	- Only show make new parameters in the dropdown to add a new parameter.
	- Use Sections of UI as types instead of int32.

Change 3940214 by Bradut.Palas

	fix crash when rename skeletal mesh user variable
	#jira UE-55236

	#tests none

Change 3940215 by Bradut.Palas

	undo not working in graph editor
	#jira UE-55466

	#tests none
	Overriding the BreakPinLinks methods to include a transaction

Change 3940250 by Bradut.Palas

	Creating stats tab in module toolkit to show LastOpCount

	#tests none

Change 3940251 by Bradut.Palas

	#jira UE-55684 create inline menus for stack

	#tests none

Change 3940262 by Simon.Tovey

	Back out changelist 3939365 with fixes
	Tests all now pass

Change 3940333 by Shaun.Kime

	Nullptr check

	#tests n/a

Change 3940338 by Krzysztof.Narkowicz

	Niagara sprite particles - implemented get previous position in order to fix sprite particle motion vectors

	#jira UE-52865

Change 3940407 by Yannick.Lange

	Create pin on map get and set node when dragging without recompiling the graph.

Change 3940534 by Shaun.Kime

	Making sure that collision returns defaults of 0 if nothing was found.

	#tests auto-tests that have been passing still pass

Change 3940709 by Simon.Tovey

	Temp hacks for the skeletal mesh painting issues.

Change 3940960 by Yannick.Lange

	Only build parameter menu once when graphchanged is called multiple times in a frame.
	Also use the existing metadata from graph to build the parameter menu, because the metadata already looped through all nodes and pins.

Change 3941019 by Yannick.Lange

	Meta data UI refresh next tick to avoid refreshing multiple times a tick.

Change 3941853 by Simon.Tovey

	Adding more dynamic parameters

Change 3941957 by Frank.Fella

	Property Editor - Fix issues with property row generator to support the niagara stack.
	+ Make the detail tree node name accessible through the interface, and fix the implementations for category group and property item.
	+ Add a temporary fix for passing instance customizations from the property row generator to the detail property row through the detail layout builder.  This should be unified in a nicer way, but this will work for the time being.

Change 3942174 by Frank.Fella

	Niagara - Stack UI Pass
	+ Advanced rows are not handled properly per item.
	+ Expanded and scroll state is now saved in editor data per asset.
	+ Added a "View Options" drop down for showing all advanced rows, and for showing/hiding outputs.
	+ Added an option to collapse all stack items from the emitter header context menu.
	+ Added support for "Edit Conditions" on module and dymaic inputs which will enable and disabled an input based on the value of another input.  This includes showing a checlbox inline for the edit condition toggle input.
	+ Added support for "Visible Conditions" on module and dynamic inputs which will hide and show inputs based on the value of another input.
	+ Removed the pencil icon for locally editable values in the stack.
	+ Fixed issues with invisible search results.  It's still possible for a search result to not highlight the text correctly, but the outline never disappears.
	+ Removed pinning for module inputs.
	+ Fixed the event handler properties so that they use the property row generator instead of an embedded details panel.
	+ Unified indent handling across all stack classes.
	+ Unified stack editor data across all stack classes.

Change 3942427 by Simon.Tovey

	Another hack for vertex painting tool

Change 3942453 by Simon.Tovey

	Some more hacks for skel mesh vertex painting until Jurre's rework is ready.

Change 3942799 by Yannick.Lange

	Rebuild metadata, input and output parameters UI next frame instead of on every graph changed call.

Change 3942833 by Frank.Fella

	Niagara - Fix the visibility of the advanced expander item.

Change 3942923 by Yannick.Lange

	Revert using metadata for parameters to looping through pins to find parameters in maps not connected to anything.
	Temporary fix to remove used parameters if they are found in the graph.

Change 3943094 by Wyeth.Johnson

	Rollback //UE4/Dev-Niagara/Engine/Plugins/FX/Niagara/Content/Modules/Spawn/Location/SphereLocation.uasset to revision 5

Change 3943154 by Wyeth.Johnson

	Metadata to sphere location module

Change 3943256 by Wyeth.Johnson

	Testing out sweet new metadata control

Change 3943374 by Olaf.Piesche

	Fixing mesh motion blur

Change 3943382 by Olaf.Piesche

	Turning on base pass velocities until I can fix separate vel pass for particles

Change 3943471 by Yannick.Lange

	Emitter view stats only show particles count. Use Niagara.EmitterStatsFormat 0 and 1 to switch between all data and only particle count. Default is 1 to only show particle count.

Change 3943497 by Yannick.Lange

	Paramater map remove FTickableEditorObject and use SWidget::Tick

Change 3943589 by Olaf.Piesche

	-Fix for linear impulse (offset by 1/2*velocity*dt instead to avoid distracting bounciness)
	-Collision Rest; add after impulse modules to make particles rest if in collision under threshold velocity magnitude

Change 3943644 by Olaf.Piesche

	Turn shader development mode back off

Change 3943718 by Olaf.Piesche

	Fix vertex factories

Change 3943776 by Olaf.Piesche

	Properly calculate old particle position using dt for velocity rendering

Change 3943780 by Frank.Fella

	Niagara - Fix ensure when removing dynamic inputs due to incorrect logic which would have left unused nodes in the graph.

Change 3943870 by Yannick.Lange

	Parameter drag drop window

Change 3943994 by Frank.Fella

	Niagara - Fix some editor settings not saving across sessions.

Change 3944056 by Shaun.Kime

	Updating to replace values reset when Wyeth resaved files.

	#tests DrawOrderGPU, DrawOrder, and TestDifferentInactiveEmitters now pass

Change 3944068 by Simon.Tovey

	Back out of my changes to vertex painting and replaced with Jurre's fixes.

Change 3944174 by Frank.Fella

	Niagara - Fix stack categories so that they don't freak out when the stack is refreshed, and also remove the uncategorized heading and move uncategorized inputs to the top.

Change 3944313 by Shaun.Kime

	Updated screenshots after motion blur

Change 3944321 by Shaun.Kime

	Fixing error message to be clearer about a disconnected Get node.

	#tests n/a

Change 3944351 by Shaun.Kime

	Making safe against weak pointers going away.
	Track error encountered by Jonathan.

	#tests n/a

Change 3944368 by Yannick.Lange

	Remove automatic adding prefix "particles."  when renaming functioninput.

Change 3944383 by Shaun.Kime

	Just adding some more nullptr check

	#tests n/a

Change 3944384 by Shaun.Kime

	Providing more context for a check that existed previosuly  and was encountered by Wyeth today

	#tests n/a

Change 3944872 by Yannick.Lange

	Remove old material parameter node.

Change 3945209 by Shaun.Kime

	Fixing possible infinite recurson on child array size of zero

	#tests n/a

Change 3945865 by Yannick.Lange

	Spreadsheet filter for output attributes

Change 3946091 by Simon.Tovey

	Per particle sorting for translucent sprites and meshes

Change 3946095 by Simon.Tovey

	Updated screens for dynamic param tests

Change 3946378 by Olaf.Piesche

	Another sprite motion blur fix

Change 3946864 by Shaun.Kime

	SkinnedMesh per-instance data requires 16 byte alignment due to usage of FMatrix. We were not guaranteeing that in our per-instance data system. We are now enforcing that to be true by aligning all memory size requests.

	#tests autotests pass

Change 3946928 by Wyeth.Johnson

	Skeletal mesh location metadata. THIS VERSION ALSO CRASHES ON SAVE FYI

Change 3946934 by Frank.Fella

	Niagara - Clean up rapid iteration parameters on compile.

	#Tests - Fixes the jira below, all auto tests which were currently passing still pass, and GDC effects load and look correct.

	#jira UE-55932

Change 3946936 by Frank.Fella

	Niagara - Fix crash when undoing adding a dynami input.

Change 3947213 by Simon.Tovey

	Fix for thread safety in collision data interface.
	Previously I'd made them thread safe between VM chunks but they already weren't safe between system instances.

Change 3947279 by Simon.Tovey

	Fixed thread safety issue with niagara global dynamic buffer

Change 3947788 by Simon.Tovey

	Fix enum property warnings

Change 3947849 by Olaf.Piesche

	Normalize orientation quats. Safety first.

Change 3947877 by Frank.Fella

	Niagara - Fix a crash when editing meta-data for a module currently open in a system or emitter editor stack.  This updates the FNiagaraStackFunctionInputBinder to track the lifetime of the default pin correctly.

Change 3948445 by jonathan.lindquist

	Inverting alpha output

Change 3948615 by Olaf.Piesche

	Don't access data layouts that are invalid because their bindings don't exist

Change 3949361 by Yannick.Lange

	Command to expand all groups and collapse all items of those groups in the stack.

Change 3949365 by Yannick.Lange

	Missing file for change 3949361

Change 3951123 by Simon.Tovey

	Fix bug with dynamic parameters in Niagara mesh particle VFs

Change 3951199 by Simon.Tovey

	Fix for issues caused by unsafe reads of GT data from RT

Change 3951293 by Olaf.Piesche

	Workaround for jittering particles with collision at rest state; will need to revisit after GDC

Change 3951533 by Yannick.Lange

	Collapse parameter menu by default

Change 3952106 by Frank.Fella

	Niagara - Fix data interface input initialization when inserting modules and dynamic inputs.  We now put all inputs into categories in the stack and this code didn't handle that.

Change 3954809 by Frank.Fella

	HoudiniNiagara - Add include to fix CIS incremental build.

Change 3954857 by Frank.Fella

	Niagara - Accept newer versions of 3 automated tests images as they are stable and still look correct for what they are testing.

Change 3954935 by Frank.Fella

	Niagara - Fix a crash in the skeletal mesh sampling info details customization when a mesh has no skeleton.

Change 3954969 by Simon.Tovey

	Compile fix for gpu emitters

Change 3955012 by Frank.Fella

	Niagara - Fix clang and deprecation warnings.

Change 3955988 by Olaf.Piesche

	Fixing collision queries (separating line query trace direction and velocity, so we can look a frame ahead properly); various fixes to the impulse modules; rest module now allows for color change when particles are set to rest. This checkin should stabilize collision dynamics substantially.

Change 3956730 by Yannick.Lange

	Cleanup parameter

Change 3957065 by Bradut.Palas

	enable/disable mechanism for renderers

	#tests none

Change 3957802 by Olaf.Piesche

	-Removing Velocity parameter from collision query DI, since velocity at query time is known and can just be passed along in temporary parameter; this stops the compiler from falling over in unity builds and also makes the Perform Query function more sane as an actual line check
	-Put some safeguarding against non-collisions (v.n>0) reported as intersections into the collision query module to avoid instances of particles being pushed through geometry
	-Updated modules to use the new function signature

	#tests modular explosion test map, EngineTests

Change 3957804 by Olaf.Piesche

	Updated tests for 3957802

Change 3957859 by Frank.Fella

	Niagara - Add missing #if to fix some of the nightly build errors.

Change 3958065 by Olaf.Piesche

	Fix GPU sim hlsl for the collision data interface; should make GPU collision bounce test run again

Change 3958302 by Olaf.Piesche

	modified test for sane depth bounds; accepting new results; some changes to hlsl for collision data interface

Change 3959007 by Simon.Tovey

	Further defining the barrier between GT and RT data.

	Not finished yet, especially for GPU sims but we're heading in the right direction.

Change 3960004 by Bradut.Palas

	QOL change, now committing search text in the stack (pressing enter) will jump to the next occurrence.

	#tests none

Change 3960019 by Frank.Fella

	Niagara - Preemptively fix up stack related header includes to avoid manual merges.

Change 3964217 by Bradut.Palas

	Fixing compile issue after renderer enable feature(the Isolate features require the WITH_EDITORONLY_DATA preprocessor directive to be enabled)

	#tests none

Change 3964581 by Frank.Fella

	Niagara - Get things compiling again after merge.  Mostly include fixes and commeting out lots of sequencer related stuff that needs to be fixed.

Change 3965057 by Frank.Fella

	Niagara - Fix compile issues in the houdini plugin.  Also add the houdini pluging to EngineTest so that it compiles by default when running tests.

Change 3965075 by Frank.Fella

	Niagara - Fix another include issue that was caught on the build machine.

Change 3965308 by Frank.Fella

	Niagara - One more header fix.  Should fix the win64 build in CIS.

Change 3965313 by Frank.Fella

	Niagara - Fix in editor playback.  The timeline data is still broken.

Change 3965482 by Yannick.Lange

	Stack source taken apart into different files.

Change 3965863 by Shaun.Kime

	Fixes scope level variable definition causing my local build to fail

	#tests n/a

Change 3965866 by Shaun.Kime

	Crash fix when the module is missing. Now show an error message as well as checking for script validity before calling method on it

	#tests n/a

Change 3968174 by Frank.Fella

	Niagara - Fix more merge fallout.  The emitter/system editor timeline now matches the stack data again.

Change 3968183 by Frank.Fella

	Niagara - Delete commented out include from merge.

Change 3972162 by Frank.Fella

	Niagara - Updated level sequence testing assets.

Change 3972880 by Shaun.Kime

	Merging using DevNiagaraToGDC2018
	Allowing disabled modules to still influence parameter maps.

	#tests n/a

Change 3973269 by Shaun.Kime

	Disabling warning about divide by zero as it is often incorrect

	#tests n/a

Change 3973273 by Shaun.Kime

	Forcing all three planes to be GPU

	#tests n/a

Change 3973307 by Shaun.Kime

	Fixing CIS win32 errors

	#tests n/a

Change 3973374 by Shaun.Kime

	Fixing minor static analysis warnings

	#tests n/a

Change 3976107 by Shaun.Kime

	Updating multiple files as they have the unversioned file warning

	#tests auto tests now show green

Change 3976114 by Shaun.Kime

	Taking snapshots after the integration for time control to clear automated tests. Frank was uncertain about the current behavior being correct, but didn't want to hold up integration for that.

	#jira UE-57117

Change 3976119 by Shaun.Kime

	Makiing GPU shaders contain the dependencies and the compile id's and other items so that they update properly.

	#tests auto-tests now pass

Change 3976449 by Shaun.Kime

	Adding additional debugging to logs

	#tests n/a

Change 3977172 by Frank.Fella

	Niagara - Fix issues with the level sequence integration for niagara caused by the integration from main, and accept the new test image.  This code should be updated at some point to use the new channel blending in sequencer.

	NOTE: There is still a timing issue that is evident in the automated test screen shot due to float timing and rounding issues in niagara, but the sequencer code is functioning correctly.

Change 3977362 by Bradut.Palas

	UE-55601 curve snapping not working in Niagara curve editor

	#tests none

Change 3977363 by Bradut.Palas

	exposed added external asset for function input so it would appear in context menu in the Niagara stack.

	#tests none

Change 3977368 by Bradut.Palas

	#jira UE-51052 If you undo an emitter rename we get invalid values
	The CachedUsageInfo got emptied but it didn't get restored by the undo, sending the system in an endless Compile() loop
	Added a Modify() call in the UNiagaraScriptSource::InvalidateCachedCompileIds()

	#tests none

Change 3978716 by Shaun.Kime

	Fixing half of CIS static analysis warnings and localization symbol dupe warnings from Jamie Dale

	#tests auto tests pass other than known level sequence test

Change 3978857 by Shaun.Kime

	The map SpawnTest niagara actor didn't have its wait for compilation flag set, potentially leading to artifacts. Disabling for now as that didn't resolve the issue.

Change 3979594 by Shaun.Kime

	Potential fix for cook on Orion

	#tests n/a

Change 3979713 by Shaun.Kime

	Fixing several more CIS static analysis warnings as well as duplicate localization string warnings from Jamie Dale

	#tests n/a

Change 3980017 by Shaun.Kime

	Fixing CIS static analysis warnings as well as duplicate localization string warnings from Jamie Dale

	#tests n/a

Change 3981859 by Shaun.Kime

	Fixing crash in Paragon when the normals buffer was not present during startup with just UI screens.

	#jira UE-57188

	#tests got through to paragon main screen, related auto-tests pass

Change 3982685 by Shaun.Kime

	For some reason, when Lightmass is spinning off workers, the render thread is null, causing us to trigger checks that we shouldn't trigger when killing of system instances.
	#jira UE-57214

	#tests all auto-tests pass

Change 3983902 by Simon.Tovey

	Speculative fixes for mac errors regarding niagara vertex decls.

Change 3984023 by Andrew.Rodham

	Sequencer: No longer upgrade bIsInfinite for section types that do not support open ranges

Change 3986727 by Wyeth.Johnson

	Fixed add velocity from point to work in more situations, not cause errors regardless of stack location, made it more programmable with inputs, and added metadata

Change 3988114 by Wyeth.Johnson

	fixed color and inherit parent vel

Change 3989175 by Simon.Tovey

	Improved VM error reporting.

	#tests engine tests

Change 3995007 by Yannick.Lange

	Parameter menu in system layout

Change 3995192 by Yannick.Lange

	Fix niagara script details panel search

Change 3995291 by Yannick.Lange

	Parameter menu tooltip fix

Change 3997804 by shaun.kime

	Lookup table is off for this. Keys are 0,0 and 1,1, so you'd expect normalized age as a sampler to just return the same value from lookup. If LUT is disabled, this is true. If LUT is enabled, it isn't, especially the farther one gets from 0.

Change 3998124 by Simon.Tovey

	Fixed Curve LUT generation

	#tests editor
	#jira UE-57604

Change 3998286 by Wyeth.Johnson

	Fixed normalized execution index to, you know, work.

Change 4000324 by Shaun.Kime

	Replacing a thread-safety issue where we get an enum on an as-needed basis. This was causing crashes in cooking as you cannot find from the global table while serializing.

	#tests have not gotten the crash since

Change 4000428 by Bradut.Palas

	UE-55750 focus curve editor when "show" button is pressed
	UE-55791 user variable curves cannot be shown in the Curve tab
	These issues were related and touched the same area of code, so I fixed them together. UE-55791 is basically just getting curve data from the system exposed variables too.

	#tests none

Change 4001094 by Frank.Fella

	Niagara - Fix slowdown in the metadata editor due to delegate rebinding.

Change 4001098 by Frank.Fella

	Niagara - Remove the tool tip from the additional options drop-down for modules since it covers the drop down menu.

Change 4001133 by Bradut.Palas

	Fix curve editor getting focused each time a curve was changed.
	#jira UE-57708

	#tests none

Change 4001253 by Frank.Fella

	PropertyEditor - Fix issues with external root handling.
	+ Fix external nodes not being cleaned up correctly when custom node builders rebuild children.
	+ Fix expanded state being trampled when processing external nodes due to the expanded nodes list being emptied every time RestoreExpandedItems was called.
	+ Fix performance issues with refreshing during tick by moving all calls to RestoreExpandedItems to UpdateFilteredDetails, and then only calling UpdateFilteredDetails once per tick as needed instead of per root property node and per root external node.

Change 4003365 by Shaun.Kime

	If the physical material has gone away, make sure to set value values. Note that if this data interface is going to go on in parallel to the game thread, we'll need something more sophisticated.

	#tests Win64 tests pass

Change 4003367 by Shaun.Kime

	Making sure that the system has finished compiling before we begin cooking.

	#tests n/a

Change 4003374 by Frank.Fella

	Niagara - Fix a crash when adding and removing modules and dynamic inputs with data interfaces.

	#jira UE-57749

Change 4003696 by Shaun.Kime

	Getting rid of whitelist, now open on all platforms.

	#tests n/a

Change 4005368 by Shaun.Kime

	Fixing compile error on Linux

	#tests n/a

Change 4013779 by Shaun.Kime

	Interpolated spawn on GPU does not yet work but checkpointing work.
	+ Added AdditionalDefines to the VMCompileId, switched interpoalted spawn to use that
	+ Added rough interpolated spawn support to translator by refactoring away from specific calls and hard-coded update/spawn somewhat... could improve for events
	+ Revised shader variables away from Phase0/Phase1 terminology to the true Update/Spawn meaning. Leaving the phase numbers as an implementation detail within the usf.
	+ Added ToString to ParameterStores for debugging
	+ Changed GPU ExecIndex() logic to actually work similar to the VM

	#tests collision gpu fails

Change 4015355 by Simon.Tovey

	Persistent IDs final.

	Still need to change the compile ID parts over to use the new additional defines but the core functionality is in.

	#tests editor + engine tests

Change 4018445 by Simon.Tovey

	Some missing assets

Change 4021647 by shaun.kime

	Moving jonathan's DebugParticleData to Niagara Extras

Change 4024809 by Yannick.Lange

	Parameter map hover text using metadata description.

Change 4025042 by Wyeth.Johnson

	Dogfooding the skeletal Mesh location module w/ comments, reroute pins, map gets and sets, metadata, tooltips, etc.

Change 4025236 by Shaun.Kime

	Working on getting interpolated spawning working. Submitting to get assistance from Simon.

	... PLEASE DON'T SYNC UNLESS YOU'VE SPOKEN TO ME...

	#tests collision test on GPU is better, but not yet right.. ribbon id emitter is ensuring on LUT table generation

Change 4025372 by Shaun.Kime

	Making the debug particle data stay the same size as the base particle for easier debugging.

	#tests n/a

Change 4025701 by Shaun.Kime

	Debug asset for Simon

	#tests n/a

Change 4027865 by Shaun.Kime

	Fixing parameter map stores to properly handle reset. Previously was leaving around padding info from previous version of the script which could be totally wrong.

	#tests now don't crash

Change 4029638 by Wyeth.Johnson

	Refactor Skeletal mesh location module to test some ideas on coding standards and shake out workflow issues

Change 4030135 by Shaun.Kime

	Interpolated spawning now works on the GPU.

	#tests collision gpu has stray collisions and the GenerateLocationEvent was recently updated that broke . will fix in a later update

Change 4030197 by Wyeth.Johnson

	Refactor static mesh location module

Change 4033437 by Simon.Tovey

	Adding a few simple new functions for direct access to vertex positions for cannabis.cod3r.

Change 4033937 by Shaun.Kime

	Setting the wait for compilation flag

	#tests now pass consistently

Change 4034391 by Shaun.Kime

	Created a parameter map default node to start default call chains.Updated standard modules and dynamic inputs.

	#tests all previoulsy passing tests pass

Change 4035002 by Shaun.Kime

	Updated to work with latest main integration

	#tests n/a

Change 4035523 by Wyeth.Johnson

	Refactor Cone stuff to coding standards, replace some things with functions

Change 4035672 by Shaun.Kime

	Fixing build warnings

	#tests n/a

Change 4036887 by Wyeth.Johnson

	Some metadata, some optimization, some additional refactoring and swapping in functions. Straight Dogfoodin'

Change 4037132 by Shaun.Kime

	Adding GPU test versions of several assets

Change 4037241 by Wyeth.Johnson

	Optimizing, metadata, and making some coding standards changes

Change 4037436 by Wyeth.Johnson

	Fixing a pointless module to make it... pointful?

Change 4037629 by Frank.Fella

	Niagara - Fix issues with data interfaces as parameters
	+ Collect data interface reads and writes from parameter maps during compilation so they can be hooked up a runtime.
	+ Add new runtime parameter stores for systems and emitters at runtime which bind the exposed data interfaces into the execution contexts.
	+ Fix the editor code which updates the compiled data interfaces so that it updates the correct ones regardless of where they are defined.
	+ Fix an issue where failed compiles weren't being propgated to the UI correctly.

Change 4037832 by Shaun.Kime

	Properly handling nullptr references

	#tests deleting a module from the stack after it was recently refreshed now doesn't crash

Change 4037917 by Wyeth.Johnson

	Fix add velocity from point (needed begin defaults), reorg, comment and metadata

Change 4038250 by Wyeth.Johnson

	Big refactor of spawn per unit

Change 4038665 by Shaun.Kime

	Events now take parameter map in/out pins

	#tests now the events auto-tests should pass

Change 4038723 by Shaun.Kime

	Now renderers can say if they are compatible with the SimTarget mode.

	#tests now changing to GPU doesn't crash a light renderer

Change 4038731 by Shaun.Kime

	Missing file from prior checkin

	#tests n/a

Change 4038742 by Shaun.Kime

	Attempting to fix editor build, which is unfortunately fine on my machine

	#tests n/a

Change 4040069 by Wyeth.Johnson

	Refactor of Event Generator and Event Receiver, new coding standards for events

Change 4040377 by Wyeth.Johnson

	Refactor the solver to adhere to coding standards (and remove some reroute pins, sorry Shaun)

Change 4040639 by Wyeth.Johnson

	Vector Noise Force refactor and optimization

Change 4041031 by Shaun.Kime

	Making the modulo functions on the gpu return a value.

	#tests passes cook on PS4 and gets past this in compile on Mac

Change 4041254 by Wyeth.Johnson

	Refactor Point Attraction, change some behavior also

Change 4041999 by Yannick.Lange

	Parameters refactor:
	- Find parameters and references in graph
	- Renaming parameters, includes renaming all pins in the graph
	- Removing parameters
	- Find metadata when finding parameters, so we are not looping through all nodes/pins twice
	- Parameters list supports multiple emitters in systems

Change 4042058 by Simon.Tovey

	Refactored GPU parameters.

	- Shader now uses the DI default object to create the correct parameters struct.
	All parameter and buffer management now being handled inside this parameter struct.
	This allows far more encapsulated code for each DI.
	Allows us to reamove the GPU buffers from and the Scene texture refs that were in the base DataInterface class.
	Simplifies the API and process of implementing DI's on the GPU considerably.

	- Removed all existing GPU buffer support code and usage. All DIs now use a parameters struct.

	- Have moved tons of curve code into the base class, simplifying the child implementation classes.

	- Implemented GPU curve interpolation.

	- Removed bAllowUnnormalizedLUT. Confusing and now unnessessary. All curves do this by default.

	- Modified FNiagaraShaderMapId to use the latest FNiagaraCustomVersion::LatestScriptCompileVersion and bumped it.

	- Created NiagaraCore module and moved a few classes into it. Anything needed by both the shaders and runtime should be here.
	- Refactored DI hierarchy to base from a new UNiagaraDataInterfaceBase which is inside NiagaraCore.

	- Removed constness from many UStruct/UEnum/UClass pointers. Technically we don't ever need these to be non const so initialy coded as const. Some existing engine code however requires these be non const so had to propagate that back through our code.

Change 4043427 by jonathan.lindquist

	Submitting a material function that will allow users to reproduce mesh surfaces.

Change 4043448 by Olaf.Piesche

	Async GPU buffer readbacks and updates

Change 4043679 by Shaun.Kime

	Fixing Mac compile issue. Not sure if correct, but unused code so good for now.

	#tests n/a

Change 4044000 by Simon.Tovey

	static analysis fix

Change 4044001 by Simon.Tovey

	Fix for gpu scripts with multiple curves.

Change 4044124 by Yannick.Lange

	Fix persistent guid for parameter map set pins.

Change 4044230 by Simon.Tovey

	I didn't forget to check these in. Nothing to see here.... *whistling*....

Change 4044584 by Bradut.Palas

	Module dependency properties are now available (to be used by technical artists before the functionality is done and submitted)
	#jira UE-58200

	#tests none

Change 4044663 by Wyeth.Johnson

	Jitter position needed begin defaults, got a refactor which I was in there

Change 4044894 by Yannick.Lange

	Rename parameter and all referenced pin when renaming a pin on a map set or get.
	Also fixes renaming a pin not deleting the old metadata.

Change 4045383 by Wyeth.Johnson

	Fix up and comment/tooltip on mesh rotation, look at, and rot rate

Change 4045488 by Wyeth.Johnson

	Update Age reorg just for readability

Change 4045799 by Shaun.Kime

	Reworking test art to get rid of known issues and put known issues into their own assets.

Change 4046328 by Wyeth.Johnson

	Some optimizations, options to polar/cartesian, starting in on Dynamic Inputs

Change 4046728 by Shaun.Kime

	Fixed error where we were writing to Loca.Module.EventVelocity instead of Local.Module.EventVelocity.

Change 4047423 by Frank.Fella

	Niagara - Fix post load code for the assignment node which was not conditionally post loading another object it was using which now has a custom post load.  This resulted in strange pin renaming which was breaking merging and automated tests.

Change 4047425 by Frank.Fella

	Niagara - Make the merge manager a little more resistant to malformed stacks.

Change 4047788 by Bradut.Palas

	#jira UE-57902 Module input sort priority

	#tests none

Change 4048063 by Yannick.Lange

	Fix don't show context menu on parameter view categories.
	#jira UE-57196

Change 4048068 by Yannick.Lange

	Fix create system from emitter
	#jira UE-57186

Change 4048132 by Yannick.Lange

	Add missing includes.

Change 4048269 by Shaun.Kime

	Removing ensure that we log later

	#tests n/a

Change 4048273 by Shaun.Kime

	Really doing it this time

	#tests n/a

Change 4048595 by Yannick.Lange

	Fix niagara if node input disconnect on output pin rename.
	#jira UE-58095

Change 4049640 by Simon.Tovey

	Daft mistake in curve hlsl gen.

Change 4050270 by jonathan.lindquist

	Submitting a module that lerps each of a particle system's intrinsic particle values. Each variable set utilizes an opt-in bool.

Change 4050282 by jonathan.lindquist

	Submitting newly formated Mesh Reproduction modules. They now contain documentation, be fully generalized and meet our updated coding standards.

Change 4050566 by Olaf.Piesche

	-More fixes and changes for async gpu buffer readback
	-removed more CPU intervention; spawning and death now happen largely without CPU direction, other than determining the number of particles to spawn
	-Added piping number of vert indices per instance from the renderer down to the GPU context and CS; as a result, GPU simulated mesh emitters are working again; this will need a bit of additional work to handle multiple renderers (will need multiple DrawIndirect parameter buffers reflecting the different renderers)
	-General cleanup and prettification

Change 4050907 by Frank.Fella

	Niagara - Add support for default dynamic inputs on modules and dynamic inputs.

Change 4051436 by Simon.Tovey

	Forcing a refresh of curve LUTs on assets with old versions.

Change 4051463 by Simon.Tovey

	Compile fix

Change 4051900 by Frank.Fella

	Niagara - Fix linux warning.

Change 4052253 by Olaf.Piesche

	GPU sim interpolated spawn fixes - Look Ma, no gaps!

Change 4052321 by Frank.Fella

	Niagara - Enable the level sequence test.

Change 4052353 by Shaun.Kime

	Renamed variable after Wyeth's change

	#tests MeshOrientationTests now pass

Change 4052627 by jonathan.lindquist

	Submitting a new spline function.

Change 4052648 by Shaun.Kime

	PS4 development builds don't seem to be able to remove generated data for structs like this even though it is in a non-editor build.

	#tests n/a

Change 4052661 by Olaf.Piesche

	-Avoid branching on every OutputData operation by allocating a scratch instance at the buffer end and setting the default index from AcquireIndex to that.
	-bit of shader code cleanup

Change 4052706 by jonathan.lindquist

	Adding a module that supports a single segment spline

Change 4052712 by jonathan.lindquist

	Adding a below threshold output to the direction and length safe function

Change 4052786 by jonathan.lindquist

	Submitting a new height lerp function

Change 4053126 by jonathan.lindquist

	Submiting a function that calculates a triangle's surface area.

Change 4053132 by jonathan.lindquist

	Changing the category to geometry

Change 4053141 by jonathan.lindquist

	Moving the asset back to a generic math category

Change 4053166 by jonathan.lindquist

	Submitting a new threshold function that removes threshold downtime.

Change 4053564 by Shaun.Kime

	Added staging to ini as requested by cook

	#tests n/a

Change 4053619 by Shaun.Kime

	Fixing defaults

	#tests used by Orion art

Change 4054171 by Yannick.Lange

	Remove bold font for parameters.

Change 4054183 by Yannick.Lange

	Syncing system exposed parameters and parameters list. Includes adding, removing and renaming parameters.

Change 4054313 by Wyeth.Johnson

	Refactor spawnrate to (mostly, other than a bug) conform to coding standards, and set begin defaults on a few things.

Change 4054840 by Shaun.Kime

	Fixing redundant branch for CI

	#tests n/a

Change 4055492 by Shaun.Kime

	Updating compile version since I changed the usf

	#tests n/a

Change 4055550 by Shaun.Kime

	Disabling rendering of middle module as it differs between machines.

	#tests LevelSequenceTestsNiagara now passes

Change 4056256 by Shaun.Kime

	Disabling the ensure and turning into log statements for curve copying

	#tests n/a

Change 4056287 by Shaun.Kime

	Now using GLobalCompileShader. There are still issues with cooking as there is sometimes a runtime streaming error that we didn't read in the correct amount of data. I think the logic for when/if we stream out the compiled shader might still need TLC.

	#tests n/a

Change 4056381 by jonathan.lindquist

	A new quat to angle axis and angle axis to quat conversion mat function

Change 4056513 by Frank.Fella

	Niagara - Fix crashes for default data interfaces where the pin default was empty or the data interface wasn't initialized.

	#jira UE-58789

Change 4056734 by Frank.Fella

	Niagara - Drag and drop for modules.

Change 4056880 by Simon.Tovey

	Replacing engine tests shots for RibbonID test.
	Some slight changes introduced, likely curve or recent module changes.

Change 4056894 by Bradut.Palas

	UNiagaraStackEntry Error refactoring + Module dependency warning feature.
	#jira UE-58199, UE-58200

	#tests none

Change 4056916 by Bradut.Palas

	Add missing files from shelved changelist.

	#tests none

Change 4056937 by Bradut.Palas

	#jira UE-54678 The skeletal mesh customisation did not update when the mesh was changed through the data interface or mesh editor

	#tests none

Change 4057014 by Frank.Fella

	Niagara - Fix cis initializer order warning.

Change 4057542 by Bradut.Palas

	#jira UE-58554 Remove Refresh UI button from Niagara script editor
	#jira UE-58555 Remove Numeric Output Type Selection Mode from Niagara script UI

	#tests none

Change 4057702 by Bradut.Palas

	The stack editor priority in the variable metadata now properly has zero as default value.
	#jira UE-58740

Change 4057758 by Frank.Fella

	Niagara - Fix text wrapping for error items.

Change 4057990 by Bradut.Palas

	Stack error tweaks (added error count to the stack errors button and also updating icon according to highest severity issue in the subtree)

	#tests none

Change 4057996 by Shaun.Kime

	Trying to fix the static analysis header tool error in CIS

	#tests n/a

Change 4058027 by Shaun.Kime

	Fixing compilation on other platforms

	#tests compiles on playstation

Change 4058356 by Frank.Fella

	Niagara - Fix an assert that happens when adding a module or dynamic input with a boolean or enum input.

Change 4058428 by Frank.Fella

	Niagara - Fix a crash when removing an input from a set variables node in the stack which was caused by the function losing an input without the stack being refreshed.  This also fixes an issue where add and remove actions on a set variables module wouldn't take affect until the graph was compiled.

Change 4059924 by Wyeth.Johnson

	Rollback //UE4/Dev-Niagara/Engine/Plugins/FX/Niagara/Content/Modules/Spawn/Velocity/AddVelocity.uasset to revision 5

Change 4060256 by Wyeth.Johnson

	Forces are now dependent on a solver

Change 4060430 by Wyeth.Johnson

	Velocity modules depend on a solver

Change 4060949 by Shaun.Kime

	Fixing pragma once definition as well as a possible null deref

	#tests n/a

Change 4060955 by Shaun.Kime

	Fixing due to changes in defaults

	#tests all now pass PC

Change 4061000 by jonathan.lindquist

	Debug particle material improvements which includes comments in the shader, rearranged layout with a vector 2 input for particle id, new texture, a new instance that includes "focus masking"

Change 4061804 by Wyeth.Johnson

	Optimized out a couple unnecessary bits of math from some axis alignment stuff, solver dependencies

Change 4061974 by Simon.Tovey

	Fixed GPU cooking.

	- Removing check for emitter SimTarget in CanBeRunOnGpu() and relying only on the script usage having been loaded already.
	We can't rely on properties in the emitter being loaded before the call to UNiagaraScript::PostLoad() so this is unsafe.

	- Adding some dummy gpu buffers to bypass validation ensures in rhi when we need to set params for SRVs that have not been allocated yet.

	- Fixed bug in RHI that was returning FGPUFenceRHIParamRef and so the created fence was immediately freed and boom.

Change 4062269 by Shaun.Kime

	Re-enabling most of the tests.

	#test n/a

Change 4062414 by tim.gautier

	QAGame: Updated QA-Effects for mobile compatibility
	- Removed Atmospheric Fog (not supported on Mobile)
	- Added SkySphere (resolved lighting issues)

Change 4062651 by Shaun.Kime

	Saving with versions

Change 4062673 by Shaun.Kime

	Making emitter names without spaces so that they can be blacklisted if need be

Change 4062686 by Shaun.Kime

	Getting ready for CI for 4.20

Change 4062687 by Shaun.Kime

	Updating mac images

Change 4063298 by Shaun.Kime

	Disabling collision test gpu for now. Need to investigate what broke it tomorrow.

	#tests  CollisionBounceGPU

Change 4063373 by Shaun.Kime

	Blacklisting mac tests that still need work

Change 4063434 by Shaun.Kime

	Cleaning out previous debug code

	#tests n/a

Change 4063618 by Yannick.Lange

	Fix dragging an input pin to the add pin of an if node

	#jira UE-58600

Change 4063847 by Frank.Fella

	Niagara - Rename RibbonSortKey to RibbonLinkOrder, change it from an int32 to a float, and disable uv age offset when using link order instead of normalized age to order particles in the ribbon.  This should fix the issues preventing beams from being implemented nicely.

	#tests Auto-tests

Change 4064150 by tim.gautier

	QAGame: Removing floating NewWidgetBP from /Content

Change 4064237 by Shaun.Kime

	Disabling the level sequence test for now

Change 4064902 by Shaun.Kime

	Fixing compile errors on linux editor build
	#jira UE-58620

	#tests n/a

Change 4065167 by tim.gautier

	QAGame: Submitting temporary update to TM-ShaderModels, adding Niagara station

Change 4065400 by tim.gautier

	QAGame: Submitting updated (temp) TM-ShaderModels. Set NewNiagaraEmitter to Local Space by default

Change 4065540 by Frank.Fella

	Niagara - Temporarily disable the module dependencies until they can be fixed.

Change 4065570 by Shaun.Kime

	Fixing linux build

	#tests n/a
	#jira UE-58979

Change 4066753 by Shaun.Kime

	Updating custom version after previous change to shader includes

	#tests autotests pass

Change 4067981 by Frank.Fella

	Niagara - Fix potential null dereference found by CIS

	#jira UE-59013

Change 4067998 by Shaun.Kime

	Nullpointer checks on shutdown

	#jira UE-59000

Change 4068104 by Frank.Fella

	Niagara - Change the prefix for the previous parameter values from PREV__ to PREV_ since the cross compiler reserves all symbols with double underscores for opengl.

Change 4068118 by Frank.Fella

	Niagara - Fix an open GL crash where we weren't passing the correct buffer index when setting parameters for compute shaders.

Change 4069299 by Olaf.Piesche

	Async GPU readback/update mobile platform fixes

	CPU particles should work on Android

	#jira UE-58986

Change 4069603 by Shaun.Kime

	Making it possible to see the debug output if the console variables are set for shaders.

	#tests auto-tests pass

Change 4069628 by Shaun.Kime

	OpenGL is very picky about shutting down its texture buffers. We were improperly holding onto static resources and leaking OpenGLShaderResourceViews until module shutdown. Unfortunately, this is *after* the renderer has been shut down and the corresponding OpenGL managers have been deleted, causing us to call into deleted memory. By making several classes FRendererResources, we now register at the appropriate times. In several cases, since the buffers are special purpose fallbacks I moved them into helper locations that are build on demand.

	Removed FNiagaraVertexFactoryBase::DummyBuffer
	Created FNiagaraDummyRWBufferInt and FNiagaraDummyRWBufferFloat so that I could wrap several dummy RW buffers in RendererResources and TGlobalResource.
	Removed NiagaraEmitterInstanceBatcher::DummyWriteIndexBuffer

	#tests all auto-tests pass on PC and OpenGL and we can open and close OpenGL after using Niagara assets

	#jira UE-59000

Change 4069646 by Shaun.Kime

	Disabling Niagara component activation on Switch. This is an attempt to bypass a crash after the assets have been loaded on Switch.

	#tests auto-tests on PC still pass

	#jira UE-59048

Change 4069660 by Shaun.Kime

	Updated Niagara version

	#tests Auto tests pass

Change 4069714 by Shaun.Kime

	Fixing Olaf's checkin prior adding offset to the base readback call

	#tests autotests pc pass

Change 4070785 by Olaf.Piesche

	Make RWBuffer available on Metal, Vulkan, and ES3.1 with SRVs

Change 4070888 by Olaf.Piesche

	#jira UE-57657

	Reenable ribbon custom facing mode

Change 4071570 by Shaun.Kime

	Removing thread pool size log item as it comes up thousands of times in a cook and is purely for debugging.

	#tests n/a

Change 4071926 by Shaun.Kime

	Disabling Olaf's change from earlier in the day as it doesn't work on PS4.

	#tests Ribbon test now works again


Change 4073700 by Shaun.Kime

	Fixing compiler warning about float4 being used as a float.

	#tests pc auto tests pass

	#jira UE-59157

[CL 4075457 by Shaun Kime in Main branch]
2018-05-16 12:53:39 -04:00
Max Chen
33737e9b00 Copying //UE4/Dev-Sequencer to //UE4/Dev-Main (Source: //UE4/Dev-Sequencer @ 4044339)
#lockdown Nick.Penwarden
#rb none

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

Change 3947021 by Max.Chen

	Sequencer: Don't preserve root component when copying object properties.

	A spawnable empty actor, has a root component that is generated by the empty actor factory. If the object template's root component is preserved when copying from the spawnable empty actor, the root component will not be copied
over. Therefore, we need to NOT preserve the root component when copying object properties.

	#jira UE-55825

Change 3947366 by Max.Preussner

	WmfMedia: Better log output

Change 3947367 by Max.Preussner

	MfMedia: Better detection of compressed format properties on Windows

Change 3949102 by Max.Chen

	Sequencer: Remove SequenceActorTag when converting to possessable.

	#jira UE-56206

Change 3949207 by andrew.porter

	EngineTest: Set the screenshot nodes resolution to 1280x720

Change 3949404 by Max.Chen

	Sequencer: More informative tooltip for "Rerun Construction Scripts" option. It now says "Rerun construction scripts every frame on actors that have 'Rerun Construction Script in Sequencer'  enabled in their class settings".

Change 3950067 by Matt.Hoffman

	Renamed UAutomatedLevelSequenceCapture's StartFrame and EndFrame to CustomStartFrame/CustomEndFrame to reflect that it is user-overriden. This will also resolve upgrade issues due to the variable datatype changing.

	#jira UE-56189

Change 3950193 by JohnHenry.Carawon

	Updating my latest MovieRendering test content.

Change 3950757 by JohnHenry.Carawon

	More updates to MovieRendering test content

Change 3952059 by Max.Chen

	Resave LevelVisibility_SubLevels to fix data loss conversion warning of OpacityMaskConstant

	#jira UE-56086

Change 3952283 by Max.Chen

	Sequencer: Disable dropping level sequence assets as spawnables.

	#jira UE-56120

Change 3952422 by Max.Chen

	Sequence Recorder: Add button to record from the current player.

	#jira UE-55942

Change 3952987 by JohnHenry.Carawon

	MovieRendering Test Content - Fixing camera bindings and changing the override binding actor

Change 3953823 by Mike.Zyracki

	Fix for Bad FBX Import
	Tangents not scaled by frame rate.

	After looking at this again it seems that a set of MovieScene:: overiddes for the channel traits wasn't set correctly, so use the ADL idiom to use MovieScene, which can then call Optimize in the correct namespace.

	With this we can now correctly use the passed in tolerance.
	There was also a redundant set of Optimize calls so that it could happen twice so removed them, and needed an extra check in the float channel Optimize.
	Also since we need to set auto tangents no matter if we optimize we don't set that parameter(though leave it since it's used by context menu key reduction).

	Finally fixed speed issue with trajectories caused by calculating way too many substeps. Reverted back to a time based step size for consistency.
	#jira UE-56193

Change 3954317 by Matt.Hoffman

	Adding a key to the last frame of a section no longer causes a crash. Keys can already be moved to be on the last frame of a section so now you can just add a key there directly.

	#jira UE-56255

Change 3954326 by Matt.Hoffman

	Dilating a section that is only infinite on one side no longer causes a crash.

	#jira UE-56260

Change 3954486 by Max.Chen

	PR #4580: Exposes IsReversed() from UMovieSceneSequencePlayer (Contributed by alanedwardes)


Change 3955238 by Max.Preussner

	Messaging: Enabled delayed message routing

	https://github.com/EpicGames/UnrealEngine/pull/4574

	#jira UE-56247

Change 3955901 by Max.Preussner

	MediaFrameworkTest: Added developer test for overriding desired media player plug-in at runtime.

Change 3955922 by Andrew.Porter

	QAGame: Updating movie rendering content in dev folder

Change 3956004 by andrew.porter

	QAGame: Adding MPC track to movie rendering test content

Change 3956510 by Max.Chen

	Sequencer: Fix fbx camera import of static properties so that they are imported before default tracks are created. Otherwise, the default tracks inherit the default properties of the camera, rather than the values from the fbx.

	#jira UE-56311

Change 3957613 by Max.Preussner

	MediaUtils: Added code documentation to media player facade

Change 3958005 by Max.Preussner

	MediaUtils: Added method to get number of sinks

Change 3958934 by Max.Chen

	Sequencer: Fix keys getting added and sequence getting erroneously re-evaluated when auto key is off.

	Only apply defaults if there are no keys.
	Only modify the movie scene section before creating keys or setting defaults.

	#jira UE-55903

Change 3959687 by Andrew.Rodham

	Sequencer: Fixed visibility track external values being inverted

	#jira UE-56324

Change 3960507 by Max.Preussner

	Core: Fixed incorrect rounding in FMath::DivideAndRoundNearest

Change 3962047 by JohnHenry.Carawon

	MovieRendering Test Content Changes:
	- Add Lightmass Importance Volumes to sublevel to fix warnings
	- Rebuilt Lighting
	- Add a third sequence for Gamut testing
	- Resaved the sound master.uasset to fix warning

Change 3962211 by Mike.Zyracki

	Add Frame Numbers to selected animation sections.

	Added MapTimeToAnimation to MovieSceneSkeletalAnimation so that we could get it from the Skeleton Animation track Editor.

	Since the thickness of the frame line can change based upon frame rate and zoom we need to calculate it similarly to how the time slider controller does it.  Those calculations were private so we had to expose FScrubRangeToScreen
and GetScubberPixelRange from the TimeSliderController.

	Also needed to know if the section itself was selected so added a bIsSelected flag to the section Painter.

	Also fixed a bug where you couldn't add a section if other sections existed at different times in MovieScenePropertyTrack and could crash due to the check().

	#jira UESEQ-395

Change 3962497 by Max.Preussner

	Core: Added new string formatting argument to FTimespan

Change 3963662 by Max.Chen

	CineCamera: Flip VistaVision width and height.

Change 3963731 by Max.Preussner

	MediaCompositing: Implemented sequence recording support for media track

Change 3964195 by Andrew.Rodham

	Sequencer: Set inverted property correctly for newly created visibility track sections

	  - Also clamp evaluation for key editors to the bounds of the section so we're not displaying values outside of the section bounds when the cursor is not on the bounds

	#jira UE-56324
	#coderevew Max.Chen

Change 3964196 by Andrew.Rodham

	Sequencer: Fixed crash when attempting to render sections that resulted in a negative intersection with the view range

Change 3964275 by Andrew.Rodham

	Sequencer: Fixed MovieScene::ClampToDiscreteRange for infinite range bounds

Change 3964364 by Andrew.Rodham

	Curve Editor: Reduce minimum vertical view range when zooming to fit

Change 3965091 by Max.Chen

	Sequencer Recorder: Refresh next sequence if empty when starting a recording, otherwise, use existing name.

	#jira UE-56469

Change 3965148 by Max.Chen

	Sequence Recorder: Move Record to Possessable to "Actor Recording" group

Change 3965162 by Max.Chen

	Sequence Recorder: Always break out of immersive mode when done recording, even when stopping recording during countdown.

	#jira UE-56407

Change 3965214 by Max.Preussner

	QAGame: Enabled ImagePlate plug-in

Change 3965574 by Max.Preussner

	SimpleComposure: Reorganized & upgraded content to work with new Media Track

	#jira UE-56488

Change 3965651 by Max.Preussner

	MediaCompositing: Ignoring seek-on-open if media not seekable

Change 3966075 by Christina.TempelaarL

	Sequencer: Added Final Cut Pro 7 XML Export functionality
	#jira UESEQ-358

Change 3966087 by Matt.Hoffman

	Adding a single key to the Particle Toggle track now makes an infinite range section that is displayed in the UI.

	#jira UE-56295

Change 3966547 by Andrew.Rodham

	Sequencer: Fixed rounding errors when drawing the section background on boolean sections
	  - Logic was using time in sectonds which caused rounding errors on evaluation and flickering red/green stripes when dragging keys around

	#jira UE-56324

Change 3966563 by Andrew.Rodham

	Curve Editor: Key editor interface improvements

	  - SKeyEditInterface has a few problems - it does not update in real time when editing properties, and does not support multi-edit which makes it unsuitable for use with the curve editor
	  - We now take a different approach for editing keys by gathering a set of proxy UObjects for each key that is currently selected. These objects are added as top level objects to the details panel which means they support multi
edit as you'd expect from any other details panel in the editor.
	  - Proxy objects are updated every tick for the curve editor if they implement the ICurveEditorKeyProxy interface, which allows them to refresh their current value.
	  - Ideally, the same mechanisms would be used in the main sequence interface, and we would be generating the proxy classes at runtime based on the key value type, but that work remains a separate task from this initial offering.

	#jira UE-56165

Change 3966564 by Andrew.Rodham

	Curve Editor: Expand to frame when adding or moving keys in the curve editor

Change 3967051 by andrew.porter

	MediaFrameworkTest: Set the CameraPlayer_Video texture to auto clear

Change 3967141 by Andrew.Rodham

	Sequencer: Keep track of spawned objects that have been modified and only re-save such object's default spawnable state on destruction

	  - Now that we're taking this approach, I've remove serveral redundant bits of functionality in the spawn register such as making some spawnables read-only, and the PreSave binding for Sequencer.
	  - We now hook into all object pre-saves to make sure we handle the case where the sequences are saved through the content browser or elsewhere.

	#jira UE-47686

Change 3967170 by Andrew.Rodham

	Sequencer: Added the ability to possess anim instances as object bindings

	  - This allows full and direct animation of properties on UAnimInstance, and animation blueprints
	  - Object Bindings are made by first possessing a skeletal mesh component, then choosing the + Add button where its anim instance will be listed
	  - Added a new function to UMovieSceneSequence to gather previously cached objects that should now be invalidated. Anim instances will be re-resolved if a new UAnimInstance is assigned to USkeletalMeshComponent::GetAnimInstance.
	  - ObjectBindingIDs for anim instances are just represented by an entry in a set of GUIDs. We only ever resolve such bindings through USkeletalMeshComponent::GetAnimInstance.
	  - Only currently supported on LevelSequences

	#jira UE-56132

Change 3967195 by Max.Preussner

	Core: Updated TRangeSet to use TCallTraits

Change 3967345 by JohnHenry.Carawon

	Test Content Changes - first iteration of spacing out the examples in the shots.

Change 3967572 by Max.Chen

	Sequencer: Fix setting PreviousPlayEvalPosition until after we've tested whether it's set.

	#jira UE-56518

Change 3967750 by Max.Chen

	Audio: Set duration based on number of input channels, rather than number of channels to serialize. This fixes an issue where audio split into 2 channels is set to a duration that's twice as long.

	#jira UE-56430

Change 3967836 by Max.Chen

	Sequencer: Allow for animating array elements within ustruct properties

	#jira UE-55887

Change 3968506 by Matt.Hoffman

	Fixed ambiguous conversions for seconds and frames being overriden by ambiguous conversion to Timecode (in frames).

Change 3968748 by Max.Chen

	Sequencer: Make the event properties submenu widget larger.

	#jira UE-55557

Change 3968862 by Max.Chen

	Sequencer: Recursive expansion when shift is down

	#jira UE-52139
	#pr 4194

Change 3968863 by Max.Chen

	Sequencer: Bind rename command to selected track so that F2 shortcut start renaming

	#jira UE-52139
	#pr 4194

Change 3968872 by Max.Chen

	Sequencer: Rekey the selected key at the current time.

	#jira UESEQ-396

Change 3968938 by Max.Chen

	Cine Camera: Add option to toggle the behavior of locking the rail mount to the orientation of the spline. By default, the option is off, no change in behavior.

	#jira UE-55815

Change 3968958 by Andrew.Rodham

	Sequencer: Consider vertical position when hittesting keys

	#jira UE-56256

Change 3969643 by Max.Preussner

	Core: Rounding timespans created from double values towards nearest ticks

Change 3969646 by Max.Preussner

	MediaUtils: Implemented timeout mechanism for block-on-fetch feature

Change 3969776 by Mike.Zyracki

	Added Skip Anim Notifiers Toggle per what was in Matinee.
	Investigated the Enable Root Motion toggle as also discussed but it's implementation is directly contained by the
	animation asset and unlike animation notifies there seems to be no exposure to interactively disable it during a playback tick.

	Note if we are generating thumbnails we still automtically disable notifies in the editor to avoid annoying noise playback.

	Note that if Enable Root Motion/Root locked is specified in the animation asset it does correctly effect the Sequencer.

	#jira UESEQ-399

Change 3969835 by Matt.Hoffman

	Playback Range and Selection Range use unified logic for adding themselves as potential snap locations which properly handles inclusive/exclusive bounds. This resolves an issue where having an unset selection range caused a
potential snap location to be added on frame 0 and 1 (internal resolution) which caused a misalignment when placing objects near frame 0.

	This also removes the one frame offset on setting Selection Range to bring behavior inline with other ranges.

	#jira UE-55420

Change 3969885 by Max.Preussner

	MediaAssets: Don't register media player CDO with media ticker

Change 3971129 by Andrew.Rodham

	Sequencer: Fixed UMovieSceneSequencePlayer::GotToEndAndStop() not taking into account for start time

	This is a remnant from when the times were always specified in 0-duration space, rather than actual sequence times.

Change 3972056 by JohnHenry.Carawon

	More updates to Test Content. I continued spacing out the examples in the sequence so that they have a consistent number of frames between each example and during the start/end of the example. Also removed the Marcie sublevel.

Change 3972066 by Andrew.Porter

	MediaFrameworkTest: Setting Marcie folder to be never cooked in package settings

Change 3972675 by Matt.Hoffman

	Splitting Subsequence Sections no longer sets an incorrect playback range on the subsequence when the subsequence has a different internal resolution than the owning sequence.

	#jira UE-55453

Change 3973376 by Max.Preussner

	ImgMedia: Zero is the only valid video track for image sequences

Change 3973489 by Max.Preussner

	Launch: Build rules cleanup pass

	- don't use Media, MediaUtils on server apps
	- don't link against Media (include-only dependency)
	- don't include from MediaAssets (dynamic load only)

Change 3973760 by Max.Preussner

	MediaUtils: Moved AppMediaTimeSource implementation into its own file; added logging

Change 3973765 by Max.Preussner

	ImgMedia: Disallowing seek beyond media length

Change 3973855 by Max.Preussner

	MediaFrameworkTest: Updated developer test content

Change 3973858 by Max.Preussner

	MediaCompositing: Blocking on media player time instead of media sample time (the former may not be hit in the current frame)

Change 3974988 by Max.Chen

	Sequencer: Fix trim left so that it also sets the start offset for audio and skeletal animation sections.

	#jira UE-57015

Change 3976101 by Matt.Hoffman

	Sequencer will now focus the scroll view on newly created items.

	#jira UE-56492

Change 3976203 by Max.Chen

	Property Editor: Add DetailsViewArgs for ColumnWidth. Defaults to 0.65f, no change in existing behavior.

Change 3976205 by Max.Chen

	Sequencer: Set better column widths for sequencer.

	#jira UE-55557

Change 3976206 by Max.Chen

	Sequencer: Added menu category for import/export

Change 3976265 by Matt.Hoffman

	Tracks within Object Binding Nodes will now sort using the old behavior so that components are added above other track types.

	#jira UE-56473

Change 3976901 by Max.Chen

	Sequencer: Add event names to event track section

	#jira UESEQ-353

Change 3977878 by Max.Preussner

	Media: Moved media framework ticking stats into Media module

Change 3977982 by Max.Chen

	Sequencer: Add Edit->Reset section length to duration of source (ie. audio, skeletal animation, shot length)

	Added MovieSceneSection::GetDefaultDuration and MovieScene::HasDefaultDuration

	#jira UESEQ-392

Change 3977994 by Max.Preussner

	Media: Fetching and rendering media samples before viewports are rendered (to ensure frame sync for in-level media playback)

	#jira UE-53975

Change 3978188 by Matt.Hoffman

	Easing Curves are now clipped by the sequence's PlayRange when testing against an infinite section. This causes blended sequences to finish their blend when the section starts/ends instead of always using 25% of the total section
length to determine default blend range.

	#jira UE-56362

Change 3978676 by Max.Preussner

	MediaCompositing: Fixed first frame of rendered out media track missing

	#jira UE-53975

Change 3978684 by Max.Preussner

	MediaCompositing: Enabled media track frame sync feature

	#jira UE-53975

Change 3980026 by Matt.Hoffman

	Keys can be selected on folded out sections (such as an audio track expanded to show volume and pitch) again.

	#jira UE-57169

Change 3981614 by Max.Preussner

	MediaUtils: Added missing subtitle sample queue flush

Change 3982311 by Max.Preussner

	MediaCompositing: Added safeguard for zero length media sources

Change 3982389 by andrew.porter

	QAGame: Adding media track test content into FrameAccuracySubscene

Change 3983661 by Max.Chen

	Sequencer: Add level name to spawn a spawnable into.
	Add sublevel menu option to set the level

	#jira UESEQ-390

Change 3983712 by Andrew.Rodham

	Sequencer: Purge legacy blueprint spawnables from LevelSequence packages

	#tests Ran a preflight for cooking fortnite, ocean and Orion. Only orion shows up this edge case, and will require a re-save of the EndCines level
	#jira UE-39173

Change 3983787 by Max.Preussner

	MediaCompositing: Moved compile time switch for block-on-fetch into media player facade

Change 3983812 by Andrew.Rodham

	Sequencer: Exposed default level sequence instance data to blueprints

Change 3984373 by Max.Preussner

	Media: Added API for quering whether player plug-in supports block on fetch

	Block on fetch allows Sequencer and other systems to block the game thread until a desired video frame has been decoded.

Change 3984670 by JohnHenry.Carawon

	Movie Rendering Test Content progress. Saving the state of the content.
	There is a bug where things got replaced with particle emitters and I think it was because I tried to copy paste an animation track into a separate skeletal mesh track.

Change 3985097 by Max.Chen

	Sequencer: Rename Reset to AutoSize

	Change GetAutoSizeDuration to return TOptional<FFrameTime>

	#jira UESEQ-392

Change 3986043 by Max.Chen

	Sequencer: Fix crash when attach/path duration is less than 0.

	#jira UE-57310

Change 3986373 by Max.Chen

	Sequencer: Add support for deleting tracks and channels which equates to setting the channel mask.

	#jira UE-52951

Change 3986375 by Max.Chen

	Sequencer: Add Create Pose Asset to skeletal animation section. This allows animators to blend animations in sequencer and create new pose assets from them.

	#jira UESEQ-408

Change 3986796 by Andrew.Rodham

	Sequencer: Fixed stale object references remaining in ULevelSequence::BindingReferences when using convert to spawnable/possessable

	  - We used to convert objects by creating a new binding, then re-assigning its GUID, which meant we didn't have to do any further object fixup, but the code to achieve this was confusing and led to a vulnerability where object
references would not be cleaned up correctly due to the newly created possessable essentially being a temporary object that's immediately thrown away.
	  - To address this, there is now a function for porting all the contents of one object binding to another, and handles the correct fixup required for parent/child object bindings for both spawnables and possessables.
	  - Also added codepath to remove any stale object references from the level sequence reference map on PostLoad (this piggy-backs off the PurgeLegacyBlueprints object version which is close close enough to this change to be
identical)

	#tests Verified that existing sequences with stale references get cleaned up on load. Verified that repreatedly converting from spawnable<->possessable cleans up references correctly.

Change 3987807 by JohnHenry.Carawon

	Updates to the MovieRendering Test Content.

	- Fixed the spawnable actors that were overwritten
	- Shortend the Lighting example and combined the Intensity and Color tracks
	- Organized the Sequence and WorldOutliner to group the examples.

Change 3988151 by Max.Chen

	Cine Camera: Enable keying the "Enable Look at Tracking" toggle.

Change 3988880 by Max.Chen

	Sequencer: Support enter to add asset for all sequencer track editors that have asset pickers.

	#jira UE-57367

Change 3988953 by Max.Chen

	Sequencer: Make the track color picker focusable so that it will close when you click away or lose focus.

	#jira UE-57210

Change 3988962 by Max.Chen

	MovieSceneCapture: Fix EDL export so that it takes into account movie scene frame resolution and desired frame rate.

	#jira UE-57365

Change 3988964 by Max.Chen

	Movie Scene Capture: Clarified tooltip for bRelativeFrameNumbers. If you specify custom start/end frames for the recording, they will be relative to the playback range.

	#jira UE-57308

Change 3989442 by Max.Chen

	Fix CIS

Change 3991548 by Matt.Hoffman

	Dragging the time slider no longer causes the time slider to ignore snap-to-interval with "Snap to Keys While Scrubbing" when no keys are in range.

	#jira UE-57417

Change 3991598 by Matt.Hoffman

	Snap to Key while scrubbing now mirrors the behavior of "jump to next key". When there are no tracks selected it snaps to all keys and when there are tracks selected it snaps to only keys from that track.
	This also resolves an issue where deleting an object did not remove it from the Sequencer's selection. Undoing a delete already doesn't seem to restore your selection, so removing it from your selection shouldn't change that
behavior.

	#jira UE-57417

Change 3991603 by Max.Chen

	Sequencer: Disable EditAnywhere for some section properties

	#jira UE-53530

Change 3992240 by Max.Preussner

	MediaAssets: Implemented dynamic audio sample rate adjustment based on audio/media clock drift

	#jira FORT-70638

Change 3992911 by Andrew.Rodham

	Sequencer: Fixed saving spawnable state using the wrong spawned object

	  - We now track the object binding ID so that we can apply the spawned object to the correct spawnable when the asset is saved

	#jira UE-57353

Change 3992914 by Max.Chen

	Movie Scene Capture: Fix compression quality not being set.

	The compression interface wasn't being found through query interface, so no compression was being set. Reworked finding it through the output pins.
	Tested running various compression values.

	#jira-UE-55488

Change 3992919 by Max.Chen

	Sequencer: Convert to possessable now uses object template instead of copying properties (ie. see LevelSequenceActorSpawner). This fixes MIDs getting lost when converting to spawnable and back to possessable.

	#jira UE-52400

Change 3993184 by Max.Chen

	Sequencer: Don't show +Transform/+Path/+Attach track if the actor has the "Mobility" property hidden.

	Set the Landscape, LandscapeProxy and InstancedFoliage "Mobility" property to be hidden since it is static is not supposed to be dynamically movable.

	#jira UE-56347

Change 3993238 by Max.Chen

	Sequencer: Test for hidden mobility in creating keys as well. Refactored to HasHiddenMobility()

	#jira UE-56347

Change 3993978 by Max.Chen

	Cine Camera: Enable keying the "Enable Look at Tracking" toggle.

	#jira UE-57489

Change 3994039 by Max.Chen

	Landscape: Add Mobility to hidecategories on landscape component

	#jira UE-56347

Change 3994626 by JohnHenry.Carawon

	Updated Movie Rendering Test Content.

	- Fixed the overridden spawnables to their proper object types.

Change 3994653 by Christina.TempelaarL

	Sequencer: Added Final Cut Pro 7 XML Import functionality, improved Export functionality
	#jira UESEQ-358

Change 3995609 by Max.Chen

	UMG: Add support for 2d transform mask (translation, rotation, scale, shear)

	#jira UE-52951

Change 3995778 by JohnHenry.Carawon

	Movie Rendering Test Content Updates

	- Adjusted Lights example
	- Adjusted Camera example
	- Added Marcie sublevel back in

Change 3995942 by JohnHenry.Carawon

	QAGame: Moving Movie Rendering test content from Developer folder to Sequencer folder

	Also adjusted level visibility, lights and camera example.

Change 3995993 by Christina.TempelaarL

	Sequencer: FCPXML Export updates - only export sections if in playback range and media exists, warn if media does not exist. Other updates - removed unused methods and variables, fixed message context naming to be more accurate
	#jira UESEQ-358

Change 3996595 by andrew.porter

	QAGame: Updating Marcie content in TrackEvaluation level to use Image Plate

Change 3996614 by andrew.porter

	QAGame: Adding color test sequence to the sublevel

Change 3996643 by Max.Chen

	Sequencer: Fix fbx animation export - rotation and scale channels were flipped.

	#jira UE-57509
	#jira UE-57512
	#jira UE-57514

Change 3996652 by Max.Preussner

	Messaging: Fixed delayed messaging using incorrect current time after message router sleep

	Based on https://github.com/EpicGames/UnrealEngine/pull/4601

Change 3996801 by Max.Chen

	Sequencer: Fix folder active state for non key area sections. Look at track node sections as well as key areas.

	#jira UE-57550

Change 3997098 by Matt.Hoffman

	Cleaned up some remaining ToDo's in STimeRange.

Change 3998339 by Max.Preussner

	Sockets: Added documentation for socket receive functions

Change 3998359 by Max.Preussner

	MediaUtils: Started to implement media recorder helper class

	Currently only supports BGRA frames in CPU memory. Supporting other formats and buffer types will require conversions on render-thread. I recommend refactoring out the existing conversion code in FMediaTextureResource into a
reusable helper class in the MediaUtils module. This should be a good starting point though.

Change 3998417 by Matt.Hoffman

	Keys and Sections can now be moved at the same time inside of Sequencer. Keys can now snap to Sections (and vice versa) instead of just to other Keys. Sections can now be duplicated like keys can.

	#jira UE-56995

Change 3998427 by JohnHenry.Carawon

	QAGame: Updating test content for the Movie Rendering feature.

	- Added an auto activate particle to the beginning of the sequence (it's not part of the sequence at all)
	- Added an event receiver blueprint to the Events example
	- Added a particle emitter to both sublevels
	- Added a camera cut to the end that switches to a separate camera
	- The camera zoom in, focus and Look At sections are all separate (not overlapping in the sequence)
	- Added a second actor for the camera Look At
	- Added a Visibility section for the Actor Hidden In Game track that has possessable and spawnable cube and light

Change 3998537 by Max.Chen

	Sequence Recorder: Restore immersive mode when stopping the sequence even if not in PIE.

	#jira UE-56407

Change 3999809 by Matt.Hoffman

	Removed the "Go To" box from Sequencer and instead placed the current time as an always visible control. The previous shortcut (Ctrl + G) now focuses the new widget directly.

	#jira UESEQ-376

Change 4000543 by Christina.TempelaarL

	Sequencer: Moving editor-only code from runtime module MovieSceneCapture to editor module MovieSceneTools.

	Moved EDL and FCP XML exporters as well as Automated Level Scene Capture.

	#jira UESEQ-358

Change 4000706 by Matt.Hoffman

	Entering multiple time strings without a number no longer crashes Sequencer.

	#jira UE-57672

Change 4001051 by andrew.porter

	MediaFrameworkTest: Fixing up some image sources pointing to the wrong location

Change 4001191 by andrew.porter

	QAGame: Adding some quick EDL/XML test content to dev folder

Change 4001243 by Max.Chen

	Sequencer: Fix import EDL out of range.

	#jira UE-57665

Change 4001856 by Matt.Hoffman

	Selecting keys and sections at the same time now also works with animation and audio sections.

	#jira UE-57716

Change 4002021 by Max.Chen

	Sequence Recorder: Fix sequence name incrementing.

	If external recording sets the sequence name, use it. Otherwise, use the recording name from the recording group or the recording settings.

	#jira UE-57712

Change 4002618 by Max.Chen

	Viewport: Update the look at location when updating to a locked actor. This fixes an issue so  that popping the view out of a locked actor and manipulating the view will not jump to the previous look at location.

	#jira UE-57725

Change 4002979 by Matt.Hoffman

	Fixes several edge cases with the end time range that was causing confusion about what the last frame of the sequence was. Dragging the End Frame slider will no longer be off by one tick and jumping to the end via the UI controls
now properly respects snapping and stays inside the play range instead of falling outside of it. Overall behavior does not change though and End Frame should be considered an exclusive frame so that frames 0-150 results in a 150 frame long
animation (which is frames 0-149).

	#jira UE-56367

Change 4003185 by Matt.Hoffman

	Fixed a regression that prevented a section from being dragged upwards past row 0 which normally resulted in all other rows moving down.

	#jira UE-57717

Change 4003193 by JohnHenry.Carawon

	QAGame: Updates to test content

	- Shortened frames between the examples from 95 to 30
	- Separated camera setting tracks
	- Lighting example now switches directly from constant red - green - blue

Change 4003369 by Max.Chen

	Sequence Recorder: Refresh next sequence regardless of internally stored sequence name.

	#jira UE-55757

Change 4003586 by JohnHenry.Carawon

	QAGame: Test Content Updates

	- Level Visibility track now ends to that the levels are not visible when we move to the next example
	- Shortened camera section, removed Z tranform so that we just move left to right and shortened the overall length

Change 4004414 by Max.Chen

	Movie Scene Capture: Fix regression where rendering with shot handles would only render the first shot. 3972166 addressed an issue where an extra frame would be rendered by finalizing right when the end frame was reached. This was
hit on the first shot end frame, so instead, do this only for when the last shot is being rendered.

	#jira UE-57314

Change 4004765 by Christina.TempelaarL

	Sequencer: Fixed bugs in FCP XML import/export.

	- Export: fixed sequence default resolution.
	- Export: fixed XML files with no shots.
	- Export: all sections clipped to playback range.
	- Export: fixed incorrect section start/end times due to precision issues.
	- Import: fixed incorrectly adding cinematic tracks.
	- Import: fixed bugs creating new sections.

	#jira UE-57660
	#jira UE-57662
	#jira UE-57655
	#jira UE-57761

Change 4005119 by Max.Chen

	Sequencer: Export/import at play rate

Change 4005195 by Max.Chen

	UMG: Finish UMG evaluation on stop. Added object version so that existing UMG assets do not change.

	#tests - Newly created UMG animation with sections set to restore state now return to their original state. Existing UMG animations with sections set to restore state do not return to their original state.

	#jira UE-52285

Change 4005377 by Michael.Karambelas

	QAGame: Moving TM-SequenceRecorder and related content out of my developer folder and into /Content/Sequencer/SequencerRecorder/*

Change 4005417 by Michael.Karambelas

	QAGame: Fixed a BP compiler in the Level Blueprint of TM-SequencerRecorder.

Change 4005634 by Michael.Karambelas

	QAGame: Fix up missing content and broken level sequence in TM-SequenceRecorder after move

Change 4006324 by Max.Chen

	Sequencer: Reset if the focused movie scene is null. This fixes a crash if the user is focused in on a shot and undo takes the user past the point of where the shot was created.

	#jira UE-57752
	#jira UE-47661

Change 4007006 by Max.Chen

	Sequencer: Fix FindAvailableRowIndex so that it returns the max row index (and not +1) since it doesn't find any conflicting rows.

	#jira UE-57717

Change 4007907 by Max.Chen

	Sequencer: Fix crash if there's no animation

Change 4007948 by andrew.porter

	QAGame: added  test content to dev folder for Record World Space

Change 4008636 by Max.Chen

	Sequencer: Fix import fbx not setting values properly and creating additional cameras unncessarily.

	#jira UE-57864

Change 4008759 by Max.Chen

	Sequencer: Follow up fix for import cameras

	#jira UE-57864

Change 4009994 by Matt.Hoffman

	Dragging the left or right handles of the Time Range slider in Sequencer will now zoom your view in on the current center of the screen. This prevents the view from being translating as you tried to zoom in which caused issues at
high zoom levels.

	#jira UESEQ-407

Change 4010169 by Christina.TempelaarL

	Sequencer: FCP XML fixes.

	- FCP XML export - no longer clips to playback range
	- FCP XML and EDL export - fixed missing last frame of some sections after exporting to Premiere.
	- Automated level capture, EDL export - use RoundToFrame instead of FloorToFrame for computing section start/end frames after frame rate conversion.

	#jira UE-57802 - partial fix, movie scene capture still needs to render full section rather than clip against playback.

Change 4010287 by Mike.Zyracki

	Add quaternion interpolation option to UMovieScene3DTransformSection.
	This mimics how Matinee used to work by bascially finding the keys between a time and interpolating the angles as quat's between them.
	As noted in the code the algorithm needs to handle the case when the x,y,z Rotation keys all aren't at the same time which was not handled by Matinee.

	Also like Matinee, when in quaternion interoplation mode, we need to not display the function cuves since the interpolated and key values are now all different. (Would like to show them but that's a bigger refactor for perhaps just
a one off needed by quaternions).
	I added a virtual function UMovieSceneSection::ShowCurveForChannel for this since it needs to be dynamic, not on construction of IKeyArea's, and could be useful for other sections. I could though move the method to just
UMovieScene3DTransformSection and do a cast instead.

	Looked into doing a unit test for this but after talking with Andrew P we will work on doign an automated test in EngineQA since that will provide more coverage.  Will also add a video the jira.

	#jira UESEQ-403

Change 4010713 by Mike.Zyracki

	Added option to key a group of transform channels instead of just the changed channel, or all of them.
	This is useful for quaternion interpolations where you want rotation keys to be aligned but also useful for other workflows like animating FK Pose to Pose.

Change 4010715 by Andrew.Porter

	MediaFrameworkTest: Setting LogMediaUtils logging from VeryVerbose to Verbose to cut back on the spam

Change 4013048 by Max.Chen

	Sequencer: Fix play/jump status.

	Update the player status  for all position methods (Scrub, Jump, Play). Jump means Stopped.
	Correctly use PlayTo or JumpTo based on position method.
	In PlayInternal, JumpTo with the Stopped state (rather than playing state).

	#jira UE-57844

Change 4013479 by andrew.porter

	QAGame: Added content in TM-SequenceRecorder to test recording a property on a Cine Camera Component; Press 3 to trigger manual focus distance to increment on a timer

Change 4014323 by Max.Chen

	Sequencer: Fix SetPlaybackPosition so that it jumps or plays based on playback status.

	#jira UE-57844

Change 4015888 by Max.Chen

	Sequencer: Fix crash on paste.

	UMovieSceneSections were gathered from the track node's track. For sub track mode, we want to gather only those sections on that track node row.

	#jira UE-57951

Change 4015943 by Max.Chen

	Sequencer: Fix moving shots up when the mouse pos goes outside of the virtual track area.

	#jira UE-57717

Change 4016293 by Max.Chen

	Sequencer: Fix relative frame playback end frame calculation so that custom start/end frames remain in the space of the sequence and are not relative.

	#jira UE-57308

Change 4017075 by Andrew.Rodham

	Sequencer: Corrected initial evaluation range used when calling UMovieSceneSequencPlayer::Play()

Change 4017270 by Christina.TempelaarL

	Sequencer: FCPXML importer and movie scene capture

	- Use CeilToFrame when converting section start/end frame times to frame numbers in FCPXML and movie scene capture.
	- Added support for clip metadata in FCPXML.
	- Got rid of redundant TokenizedError message class, no longer needed now that FCPXML is in editor directory.
	- Added log messages currently commented out due to exception, still testing.

	#UESEQ-358

Change 4018370 by Christina.TempelaarL

	Sequencer: fixed FCPXML log messages regarding sections with start/end not divisible by display rate.
	#UESEQ-358

Change 4018378 by Christina.TempelaarL

	Sequencer: fixed error in previous changelist.
	#UESEQ-358

Change 4019457 by Max.Chen

	Sequencer: Show event names only when the event track is selected

	#jira UE-57897

Change 4022806 by Max.Chen

	Sequencer: Fix crash on movie scene capture dialog shutdown if movie capture wasn't even started.

	#jira UE-58106

Change 4022894 by Max.Chen

	Sequence Recorder: Wrap OpenEditorForAssets after sequence recording within GIsEditor

	#jira UE-58084

Change 4024487 by Max.Chen

	Sequencer: Add tooltip for quat interpolation

	#jira UE-58113

Change 4024562 by Max.Chen

	Sequencer: Change path/attach track sequence binding id to currently focused sequence id so that bindings can be created in subsequences

Change 4027414 by JohnHenry.Carawon

	QAGame: Checking in content that shows a bug with using particles systems and Delay Before Shot Warm Up.

Change 4028990 by Max.Chen

	Sequencer: Fix evaluate sub sequences in isolation.

	This check was added with the compile on the fly logic. Not sure why it was necessary but it seems like the sub sequence data needs to be updated in order to evaluate sub sequences in isolation.

	#jira UE-58184

Change 4029004 by Max.Chen

	Sequencer: Ensure that old binding references are removed when re-assigning actors in sequencer

	#jira UE-57898

Change 4030997 by JohnHenry.Carawon

	QAGame: Fixing name of the master sequence

Change 4031785 by Michael.Karambelas

	QAGame: Added an instance of ThirdPerson Run to TM-SequenceRecorder for Record to Possessable test.

Change 4035548 by Andrew.Rodham

	Sequencer: Changed FMovieSceneEvaluationTemplate::TemplateSignature to be a serial number to address non-deterministic cooking issues

	  - This commit is related to the repro steps found in 3914599 and 3934307, both of which have been verified with this new change.
	  - Copy of 4031684 from //Fortnite/Main/...

	#jira FORT-84852

Change 4036312 by Max.Chen

	Sequencer: Fix zoom view range so that it uses the passed in InZoomDelta

Change 4036318 by Max.Chen

	Sequencer: Auto size now returns a range and defaults to the channel proxy range so that keyed regions can also be autosized.

Change 4036322 by Max.Chen

	Forgot missing change

Change 4036360 by Max.Chen

	Sequencer: Fix play rate calculation when skeletal animation section play rate changes.

Change 4037163 by Mike.Zyracki

	Weighted Tangent Implementation

	Tricky thing is that you need to solve a cubic in order to get the bezier weights for the time part of the curve.  See https://www.gamedev.net/forums/topic/474094-help-function-curves-for-animation-interpolation/

	Maya provides an implementation in it's dev kit but I didn't use it since it was horribly slow and uses an iterative solution to solve the cubic needed.
	Instead I use an old algorithm (Cardano's method), to solve the cubic which should be much faster. Though relative simple to code from principles I just went ahead and used
	a version from Graphics Gems 1.

	I put this cubic solver directly in MovieSceneFloatChannel.cpp, but will need to move it when we support Rich Curve, maybe to FMath:: (which would probalby require some other
	functions for solving quartics, etc.. for completeness.).  Also note we resolve this on every evaluation but dont' need to if the interval the time is evaluating hasn't had any
	change in values or tangents.  So again when we support FRichCurve we can create a Weighted Evaluating class that can hold the cache.

	Also with the tangent drags I got rid of the Cardinal position that was used to calculate non-weight tangents from the key point and just quickly getting a direction.
	With weighted tangents we need to use the delta instead (otherwise when moving multiple they would all get the same weight based upon distance to the cardinal point. )

	For mixed tangents types what I'm defaulting to non weighted if the interval doesn't match. May need to do weighted instead, not sure.

	What's left is just FBX import, for tomorrow.

	#jira UESEQ-76

Change 4037435 by Mike.Zyracki

	Fix fo build warnings from weighted tangent submission.
	#trivial

Change 4038091 by Michael.Karambelas

	QAGame: Updated a Sequence Recorder group in TM-SequenceRecorder that had an actor missing the animation.

Change 4038374 by Andrew.Rodham

	Sequencer: Refined scrubber styling for level sequences and actor sequences

	  - Scrubber now shows a block the width of a dsplay rate frame, plus a line for the actual evaluated time. UMG reverts back to the previous styling (no block)
	  - Keys that are outside of the playback range are now drawn with a subdued effect
	  - Tick labels are no longer drawn when directly underneath the scrubber

Change 4038490 by Max.Chen

	Sequencer: Expose tangent weight values in details panel.

Change 4038620 by Andrew.Rodham

	Sequencer: Advanced time panel polish

	#jira UESEQ-426

Change 4038677 by Max.Chen

	Movie Scene Capture: Redirector for MovieSceneTools.AutomatedLevelSequenceCapture

	#jira UE-58248

Change 4039739 by Max.Chen

	Sequencer: Media track should only be supported by Level Sequence

Change 4040024 by JohnHenry.Carawon

	QAGame: Fix EventReciever and OverrideBinding example
	The level sequence was set to none so the fix was to set it back to TrackEvaluation_Master.

Change 4040610 by Andrew.Rodham

	Curve Editor: Moved weighted tangent switchers to a single toggle command (CTRL+W) and added an icon

	#jira 58383

Change 4040882 by Mike.Zyracki

	Keep broken when turning on weighted

	#jira UE-58435

Change 4041089 by andrew.porter

	QAGame: Sequence for Long Tangents bug

Change 4041498 by Mike.Zyracki

	Turn off weighted when going auto to prevent large tangents.
	Do it both in UI and when doing AutoSetTangents()
	to really make sure it doesn't happen.

	#jira UE-58452

Change 4041752 by andrew.porter

	MediaFrameworkTest: Adding some better logging for setting rates when not supported. Also ignoring commiting URL when there is no text

Change 4041896 by Matt.Hoffman

	The transform dialog box now transforms selected keys and sections, instead of just keys.

	#jira UE-58265

[CL 4044405 by Max Chen in Main branch]
2018-05-02 10:10:00 -04:00
Max Chen
ba80165ab6 Copying //UE4/Dev-Sequencer to //UE4/Dev-Main (Source: //UE4/Dev-Sequencer @ 3946692)
#lockdown Nick.Penwarden
#rb none

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

Change 3801826 by Max.Chen

	PR #4304: Level Sequence crash fix - Guarded against dereferencing null componen. (Contributed by DSDambuster)


Change 3801828 by Max.Chen

	PR #4302: Movie Scene Visibility Template unitialised variable, causing random . (Contributed by DSDambuster)


Change 3801837 by Max.Chen

	Sequencer: Delay spawning/construction for convert to possessable. This fixes a bug where property values would be lost when
converting back and forth from possessable to spawnable.

	#jira UE-52400

Change 3801841 by Max.Chen

	Sequencer: Make spacer nodes not selectable.

	PR #4194: Improvements to Sequencer (Contributed by projectgheist)

	#jira UE-53117
	#jira UE-52139

Change 3804183 by Max.Preussner

	MediaAssets: Added missing lock in media sound component

Change 3805414 by Max.Preussner

	MediaAssets: Setting valid GUID when initializing media texture resource

Change 3819578 by Max.Chen

	PR #4370: When enabling the "MovieCapture", do not turn off the Stereo-3D display. (Contributed by yehaike)

	#jira UE-53647

Change 3823414 by Max.Chen

	Curve Editor: Lock down the first and last keys in the redundant keys removal range so that they're unaffected.

	#jira UE-53591

Change 3826406 by Max.Chen

	Sequencer: Move OnStartedPlaying() to within first update in UpdateTimeCursorPosition(). This fixes an issue where setting the
hud/player visibility was getting stomped on later.

	#jira UE-52772

Change 3827044 by Max.Preussner

	MediaAssets: Added sprite visualization to media sound component

	#jira UE-53594

Change 3827988 by Max.Preussner

	MediaPlayerAssets: Fixed Media Texture is not linked to Media Player when created together

	#jira UE-53532

Change 3828506 by Max.Preussner

	MediaPlayerEditor: Added attenuation visualizer for media sound components

	#jira  UE-53594

Change 3832590 by andrew.porter

	EngineTest: Added a keep state check in Property Animation sequencer test

Change 3833053 by andrew.porter

	EngineTest: Adding Hierarchical Bias test

Change 3835683 by andrew.porter

	EngineTest: Adding UMG Animation screenshot test

Change 3836076 by Max.Chen

	Sequencer: Fix audio volume and pitch multiplier deprecation.

Change 3836230 by andrew.porter

	EngineTest: Adding Sequence Bone Position automation test

Change 3836347 by Max.Chen

	Sequencer: Fixes to shot name parsing.

	When a shot doesn't contain a shot number, assume, [ShotName]_[TakeNumber].
	When duplicating a shot, put the new shot in the same path of the original shot, so that the take numbers will increment
properly.

	#jira UE-51868

Change 3836552 by Max.Chen

	Sequencer: Sub section now has a takes menu

Change 3838094 by Max.Chen

	UMG: Fix template finish not getting called on stop. This fixes a bug where sections aren't restored when finished.

	#jira UE-52285

Change 3838708 by Max.Chen

	Sequencer: Add notification when the blend type is changed.

	#jira UE-54046

Change 3840295 by Max.Chen

	Sequencer: Fix copy/paste crash for lights

	#jira UE-54084

Change 3840957 by Mike.Zyracki

	Added Show Only Keyable and Show Only Animated to the filter list in the property editor.

	Added IsPropertyAnimated to IDetailKeyframe Interface which already had support for showing properties which are keyable (which
is used for the key icon next to the properties.).  Could have created another interface but then would have had to mimic the sequencer
binding, releasing also, so this seemed best way.

	One issue still left is that custom built detail items currently don't store associated properties(usually) and so certain
properties, in particulalry transforms, won't show up as keyable or animated.  Note this also shows up with the keyable icon not showing
up next to transform tracks, and other filters like Show Only Modified not working with transforms/customs.  Not sure best way to tackle
this.

	#jira UESEQ-328

Change 3841756 by Max.Chen

	Sequencer: Fix unbound possessable components when pasting spawnables.

	#jira UE-54104

Change 3843950 by andrew.porter

	EngineTest: Renaming LevelStreaming tests/content to LevelVisibility

Change 3844082 by Mike.Zyracki

	Missing file for animated filter in property editor.
	When finding if a track is animated we need to find it but we can't easily induce the MovieTrack class for any particular
property. So we don't set a class for it and just search by it's ID and name.

	#jira UESEQ-328

Change 3846902 by Max.Preussner

	ImgMedia: Fixed image media player never finished initialization if loading failed

	#jira UE-54247

Change 3849820 by Mike.Zyracki

	Reassigning deleted widgets didn't work since the menu extender mechanism needs a valid UObject in order to perform an operation
on it. So to fix we replaced GetObjectBindingContextMenuExtender in WidgetBlueprint with new delegate mechanism
(OnBuildCustomContextMenuForGuid) that supports FGuid in addition to UObjects which is needed to handle re-binding deleted widgets. Note
that the default sequencer hacks this for replacing deleted actors in SequencerObjectBindingNode to check to see if a LevelSequence is
active. We could move to this mechanism there also.

	#jira UE-53163

Change 3852211 by Max.Chen

	UMG: Indicate name of the property that is not bound.

	#jira UE-54350

Change 3854120 by Max.Chen

	Sequencer: Fix sibling folders being allowed to have the same folder name.

	#jira UE-54363

Change 3854627 by Max.Chen

	Sequencer: Step to next/previous key should work for all tracks if there aren't any selected.

	#jira UESEQ-391

Change 3855825 by andrew.porter

	EngineTest: Adding animation blending automation test

Change 3855950 by andrew.porter

	EngineTest: Adding correct expected valuues to animation blending test

Change 3856237 by Matt.Hoffman

	UESEQ-336 - Sequencer Track Reordering
	Adds the ability to re-order Master Tracks, Folders and Object Bindings within sequencer hierarchies (including UMG). Adds the
ability to do a one-off sorting of the content under the old sorting behavior if the user wants to reset their layout to how it was
under legacy behavior.

	Modifies SequencerTrackNodes, SequencerFolderNodes and SequencerObjectBindingNodes to handle CanDrop/OnDrop for above, below and
ontop of.

	Fixes a Slate Issue that forcibly expanded a TreeviewRow if an item handled OnDrop. Slate will now only forcibly expand the row
if the item says the drop happened ontop of the item, and not above or below it like it previously did.

Change 3856503 by andrew.porter

	EngineTest: Adding automation test for using animation blueprint with blend multi node in sequencer

Change 3857875 by Max.Chen

	Sequencer: Assign the sequence id after the template is compiled.

	#jira UE-54462

Change 3858344 by Max.Chen

	Sequencer: Prevent Goto and Transform boxes from overlapping by allowing them to be visible at the same time in an autosized
horizontal box. Also, added close button to the goto box.

	PR #4425: Prevent Goto and Transform boxes from overlapping in Sequencer ... (Contributed by projectgheist)


	#jira UE-54210

Change 3860566 by andrew.porter

	MediaFrameworkTest: Set the option to index 0 for the audio and video track list by default

Change 3860654 by andrew.porter

	EngineTest: Enabling Camera Cut + FOV test

Change 3860981 by andrew.porter

	EngineTest: Updating skeletal mesh tests with a delay after set playback position

Change 3861256 by Max.Chen

	Sequencer: Add all bindings if none selected.

	#jira-54440

Change 3862154 by Andrew.Rodham

	Added TimeManagement module

Change 3862424 by andrew.porter

	EngineTest: Turned on the test Bone Positions with Blend Multi Node

Change 3862573 by andrew.porter

	EngineTest: Adding test to compare bone positions in a sequence that is blending an animation that is using an AnimBP

Change 3865117 by Max.Chen

	Sequencer: Stop auto scroll on mouse release of movement.

	#jira UE-31212

Change 3865303 by Max.Chen

	Sequencer: Add drag and drop transactions

	#jira UE-54662

Change 3865304 by Max.Chen

	Sequencer: Fix crash when an actor factory is not found.

Change 3865361 by Max.Chen

	Sequencer: Don't change the camera/shot lock button when popping out of a sequence.

	#jira UE-54665

Change 3865412 by Max.Chen

	Sequencer: Determine whether a transform track is for a camera by using the spawned object or template

	#jira UE-54666

Change 3865685 by Max.Chen

	Sequencer: Clear autoscrub offset when stopping autoscroll

	#jira UE-31212

Change 3865886 by Max.Chen

	Sequence Recorder: Log an error if the number of frames changes while recording. This can happen if the skeleton changes while
recording.

	#jira UE-48715

Change 3866925 by Andrew.Porter

	MediaFrameworkTest: Changing the current PNG test video image sequence to 1024 x 576

Change 3867705 by andrew.porter

	QAGame: Adding Audio Sort Sequence to dev folder

Change 3867890 by andrew.porter

	QAGame: Adding a sequence for testing a sorting crash to my dev folder

Change 3872628 by Max.Chen

	Movie Scene Capture: Split delay before warmup into split delay before shot warmup so that there's separate controls for when
the movie scene capture warmups up vs. shot boundaries.

Change 3873131 by Matt.Hoffman

	UE-54732 - Crash reordering a folder with a track.
	This was caused by folders being the only type of track to check if someone was putting a parent track into a child track.
Object Binding tracks and Tracks now check as well so that you can't use the above/below drop targets to add parents as children.
	This also fixed a typo in the localization keys.

	#jira UE-54732

Change 3873301 by Mike.Zyracki

	Added ability to support continous euler angle changes when changing rotations, in particularly with the rotation gizmo's. To do
this we effectively added a form an of 'euler filter'(https://en.wikipedia.org/wiki/Euler_filter) to find the closest euler angle to the
current euler angle.
	Three functions were added to FRotator to make this possible, one to get the euler angle that's has the same rotation as it, one
to get the difference between two euler angles via Manhattan distance and a third using the previous two to choose a Rotator value
that's closest to it. We then use these functions before calling UComponent::SetRelativeRotation to make sure we use the correct Euler
after the Quat conversion. We also no longer limit(bound) the euler angles to -180,180, which is obviously necessary to avoid flips.

	I also changed how we caluclate yaw and roll when pitch is -90 or 90 to make it the standard approach of zeroing out roll and
just setting yaw.  Main reasons are the previous implementation had precision issues so things like 180, 90, -180 would show up due to
numbers being nearly zero but negative,(this would break any smooth interpolations), and this facilitates having a 'gimbal' rotation
mode (like Maya, Blender etc..) if we ever want that also.  If needed we could keep the previous implementation but would  need to add
some FMath::IsNearlyZero checks, with less performance.

	Note we only do this special filtering when applying delta's to actors or components in the editors, which then call
UComponent::SetRelativeRotationExact, which is a new function to foces the RelativeRotation to be equal to the new rotation. This allows
us to store un-nomalized Rotators at the cost that the RotationCache may be broken. We didn't change any of the other UComponent
functions that set rotations (via Quats or Transforms) so they will still be bounded and unwound.

	In SetInternalWorldLocationAndRotation we only set the rotation if the rotation has changed, which fixes the rotation getting
changed and re-normalized if just translate happens.

	In TransformTrackEditor, we correclty use the bUndwing flag and in MovieScene3DTransformSection there was an un-needed winding
check there, it will be unwound earlier if needed, which happens if Sequence Recording is happening. Max we should talk about what to do
about this .

	Note the euler angle drag via the widget is still bound to 0-360. I think we should just unbound that now since the rotations
value are now unbound.

	This review now includes fixes suggested by Zak.

	#jira UE-UE-22228

Change 3873483 by Matt.Hoffman

	Sequencer Tracks can now be inserted above the spacer at the bottom of the tree.

	#jira UE-54706

Change 3873899 by Max.Chen

	Sequencer: Add section selection throbbing

Change 3873908 by Max.Chen

	Movie Scene Capture: Added logging per frame

Change 3873924 by Matt.Hoffman

	Adds the ability to store Sequence Recorder setups into profiles that stay with the map and can be re-loaded later. Profiles
store the Actor Recordings so the settings for each actor should carry with them.

	#jira UESEQ-339

Change 3874726 by Matt.Hoffman

	Disable drag-and-drop targets on spacers that come between rows in Sequencer. This prevents extra drag/drop targets showing up
between each row.

	#jira UE-54706

Change 3874862 by Matt.Hoffman

	Audio Track no longer gets reordered when adding sub-audio tracks, as sub-tracks are no longer counted towards the sorting order
index when normalizing indexes.

	#jira UE-54727

Change 3875905 by Matt.Hoffman

	Disable Fade Track UI if a fade track already exists in the sequence.

	#jira UESEQ-393

Change 3876163 by Max.Chen

	Sequencer: Swap the camera object to the camera component's owner if it's not the same.

	#jira UE-54874

Change 3876971 by Andrew.Porter

	EngineTest: Moved Media Player Seek test to new folder. Also enabled the test with new ground truth image.

Change 3877040 by Max.Chen

	Cine Camera: Split camera properties to two groups, "Camera Options" and "Camera Settings". The cine camera now hides properties
in the "Camera Settings" group so that properties like bConstrainAspectRatio (in the "Camera Options" group) can be visible.

	#jira UE-54192

Change 3877763 by Max.Chen

	Curve Editor: Fix curve changed on end drag so that only curves that had keys/tangents that were changed receive notification,
otherwise all loaded curves were getting notified that they were changed.

	#jira UE-54951

Change 3878234 by Matt.Hoffman

	Disable "Drop Below" targets for Sequencer Tree nodes to prevent a confusing UX issue where dropping underneath a Object Binding
Node puts it after the object binding node but the UI looks like it's inserting it inside the Object Binding node.

	#jira UE-54743

Change 3879359 by Mike.Zyracki

	If a track is inactive we dim it a bit which seems to be the UE4 way to show inactive or disabled state. We changed the active
logic so that all subtracks need to be inactive for the track to also be inactive(instead of all active for active). This conforms to
how the active state actually works, e.g if you have two sections and only one is active the track is still active above it.

	#jira UESEQ-388

Change 3879462 by Max.Chen

	Sequencer: Allow dragging onto a particular row which would move out any overlapping sections to make space for the newly
created section. Newly created sections are now selected and throbbed to draw attention to themselves.

	#jira UE-54664

Change 3879464 by Max.Chen

	Sequencer: Fixed overlapping ranges being inserted into the evaluation field during compilation

	  - The issue was that track segments that had been combined with adjacent segments (due to them being identical) would
potentially cause a subsequently compiled frame to overlap with a range that had already been inserted into the evaluation field.
	  - The insertion code previously asserted that only minor overlaps were catered for (due to fp rounding errors) and assumed
that a supplied range could not entirely contain any other range in the field.
	  - The solution is to supply the insertion time along with the range to know exactly where the data should live in the field,
and crop the range to the maximum allowable space between adjacent ranges.

	#jira UE-54922

Change 3879590 by Matt.Hoffman

	Items that are now added to the Sequencer via the "+Track" menu will be selected after being added.
	Items can now be added inside of folders instead of just to the root level.

	#jira UE-27397

Change 3879612 by Mike.Zyracki

	Display Nodes with no children are always active.
	#jira UESEQ-388

Change 3879730 by Matt.Hoffman

	Sequence Recorder's actor recording groups now remove items from the group when removed via the UI.

	#jira UESEQ-339

Change 3880256 by Mike.Zyracki

	Fix issue with inactive display with folders and other track nodes.
	#jira UESEQ-388

Change 3883491 by Max.Chen

	Fix issue where tick is skipped due to last ticked pose isn't cleared after AnimInstance changes.

	Copy from Release-4.19

	#jira UE-51323

Change 3883603 by Max.Chen

	Movie Scene Capture: Add option toggle disable screen percentage. By default this is on (no change in current behavior).

	#jira UE-51898

Change 3885074 by Max.Preussner

	MediaCompositing: Resetting media texture & freeing resource on section end; removed dead code

Change 3887220 by Max.Preussner

	MediaCompositing: Defaulted media section duration to 1 sec (since we do not know the actual duration in most cases)

Change 3887478 by Matt.Hoffman

	Sequences now show [Inactive] in their title bars when they're disabled. This helps communicate why a sequence isn't being
evaluated.

	#jira UE-51469

Change 3888985 by Max.Chen

	Movie Scene Capture: Clamp HDR Compression Quality between 0 and 1.

	#jira UE-55136

Change 3893519 by Max.Chen

	Sequence Recorder: Clarified tooltip for bRecordNearbySpawnedActors - spawned actors will still be recorded if they match the
ActorFilter.

	#jira UE-55238

Change 3893546 by Max.Chen

	Sequence Recorder: If a selected actor already has a recording, add a blank recording.

	#jira UE-55239

Change 3894044 by Max.Preussner

	MediaCompositing: Added support for seeking into a media section

Change 3894310 by andrew.porter

	MediaFrameworkTest: Adding Img media sources for 1080 and 2160 ravent test content

Change 3894426 by Max.Preussner

	MediaAssets: Letting media textures with AutoClear retain their clear color when player is reset

Change 3895717 by Max.Chen

	Sequencer: Null checks to prevent crash when saving the default state of a spawnable

	#jira UE-55304

Change 3897388 by Max.Chen

	Sequencer: Don't update current time to be within the view range when stepping into a sequence.

	#jira UE-55322

Change 3897452 by Max.Chen

	Audio: Fix crash when trying to record audio without any active capture devices. Log warning if the number of input channels is
not 1 or 2.

	#jira UE-55223

Change 3897619 by Max.Preussner

	MediaCompositing: Removed commented out code

Change 3898072 by Max.Chen

	Sequencer: Override the animation asset in the player state if it doesn't match the animation asset that's being evaluated.

	#jira UE-55328

Change 3898272 by Max.Preussner

	MediaPlayerEditor: Made slate brush constants static

Change 3898704 by Max.Chen

	Sequencer: Skip if the binding id's sequence can't be found.

	#jira UE-55337

Change 3899855 by Max.Preussner

	MediaCompositingEditor: Added cache state visualization to media track

Change 3900300 by Max.Preussner

	MediaCompositingEditor: Added loop indicators to media sections

Change 3900694 by Max.Preussner

	ImfMedia: Looping cache only when player is looping

Change 3900892 by Max.Preussner

	Stats: Added stats category for media framework

Change 3900954 by Max.Preussner

	MediaCompositing: Don't evaluate at the end of media section

Change 3901348 by Max.Preussner

	Core: Replaced TLruCache autos for better readability

Change 3901655 by Max.Preussner

	ImgMedia: Added more perf stats to EXR reader

Change 3901972 by Max.Preussner

	MediaAssets: Added getter for media player in media sound components

Change 3902233 by Max.Preussner

	MediaAssets: Enabling media textures to receive samples right after player is assigned

Change 3902238 by Max.Preussner

	MediaCompositing: Working around init/shutdown idiosyncracies in sequencer

Change 3904045 by Max.Chen

	Sequencer: Fix copy/paste crash. Only process UMovieSceneCopyableBinding and objects that can be spawned by the movie scene
spawn register.

	#jira UE-55314

Change 3905605 by Max.Chen

	Sequencer: Restrict spawnables from being created if they have a ClassWithin that UMovieScene is not a child of.

	#jira UE-55429

Change 3906550 by Max.Chen

	Sequencer: Add media track icon

	#jira UE-55480

Change 3907101 by Max.Chen

	Sequence Recorder: Fix bugs related to not recording a level sequence. There were certain assumptions that creating a level
sequence meant that sequence recording was in progress. This is not always the case - the recorders can record animation assets and not
create a level sequence.

	Changed the notion of IsRecording() to having at least one actor recording that is recording. Countdown timer, recording
displays, etc should function if IsRecording() and not based on whether a level sequence is created.

	#jira UE-55485

Change 3907247 by Max.Chen

	Sequence Recorder: Fix crash not removing PrepareToCleanseEditorObject delegate. Repros when opening sequence recorder, closing
it, and then opening or creating a level.

Change 3910343 by Max.Preussner

	Core: Added async helper for executing functions on a given thread pool

Change 3910346 by Max.Preussner

	ImgMedia: Added separate thread pools for loading/decoding and deleting image frames

Change 3910829 by Max.Preussner

	Profiler: Increased visible range of profiler graph

Change 3910841 by Max.Preussner

	MediaCompositing: Displaying asset name instead of full media source path in media section

Change 3910870 by Max.Preussner

	ImgMedia: Using deallocation thread pool only in debug builds

Change 3919642 by Max.Chen

	Sequence Recorder: Clarify active tooltip

	#jira UE-55661

Change 3919660 by Max.Chen

	Sequencer: Sequence template source signatures are now also compared to catch the case where a sub-sequence asset has been saved
but not modified

	  - The following sequence of events exposes this issue:
	    - Create a master sequence with a single shot that spawns a cube
	    - Add this sequence to a level and set it to auto-play
	    - Save everything and restart
	    - Resave just the inner shot asset without opening it
	    - PIE
	    - The inner shot never spawns its cube because its template was wiped on save, but its signature never changed. Since the
master sequence previously didn't check the template source signature, it ends up trying to evaluate an empty template.

	#jira UE-55626
	#jira UE-55490

Change 3921825 by Max.Chen

	Sequencer: "Run Construction Script in Sequencer" is off by default for blueprints but on for Sequencer. This allows the content
author to switch it on for specific blueprints and sequencer will be default, run those with construction scripts enabled.

Change 3922232 by Max.Chen

	Sequence Recorder: Reset countdelay on stop.

	#jira UE-55755

Change 3922306 by Max.Chen

	Sequence Recorder: Don't automatically mark transforms to be recorded by sequence recorder. Instead, log a warning if the user
toggled it off to warn that the resulting animation might not match gameplay.

	#jira UE-55758

Change 3922912 by Max.Chen

	Sequence Recorder: Fix refresh next sequence name

	#jira UE-55757

Change 3927654 by Max.Chen

	Movie Scene Capture: Added format mapping for the name of the current camera

	#jira UE-55769

	PR #4537

Change 3927658 by Max.Chen

	Sequencer: Added fbx property mapping for "FocusDistance" to "FocusSettings.ManualFocusDistance"

	#jira UE-55782

Change 3932022 by Max.Chen

	Sequencer: Add import animation track section to next available row index.

	#jira UE-55892

Change 3933919 by Max.Chen

	Sequencer: Jump to playback start frame and not 0 to start playback for recording.

	#jira UE-55933

Change 3934307 by Andrew.Rodham

	Sequencer: Add template signature that is re-generated every time the base template is regenerated, which invalidates evaluation
fields

	This fixes an issue where the same sequence is instantiated multiple times in a sequence.
	 If the source sequence was saved, its template would be wiped, which would invalidate the template ID
	When an instance tries to evaluate the master template, it would only invalidate a range in the evaluation field that was the
hull of any invalid sub sequences overlapping the current time, potentially leaving invalid data in the evaluation field at positions
later (or earlier) on in the sequence
	When the sub template was re-generated, it receives the same SequenceSignature as it had before (because the sequence hasn't
actually changed), which causes the stale evaluation field data to fail the IsDirty check (because the sequence is the same as it
thought, but the *template* has changed)

	This has been addressed be adding a signature to templates themselves, and checking both the template signature and sequence
signature as a part of the IsDirty check. This ensures that we regenerate if either the template, or the sequence have changed.

	#jira UE-55934

Change 3936327 by Andrew.Rodham

	Sequencer: Removed increment when trimming right

	UMovieSceneSection::TrimSection already explicity assigns an exclusive bound to the time passed in. The new behavior means we
can trim a section to the right, and insert another section without changing the time to create adjacent sections.

	#jira UE-42652

Change 3936328 by Andrew.Rodham

	Fixed KeyFrameManipulator assignment operators and copy/move constructors
	  - These types are potentially self-referential so cannot use default constructors/assignment

Change 3936330 by Andrew.Rodham

	Converted UMGSequencePlayer to use frames internally

	#jira UE-54878

Change 3936726 by Max.Chen

	Sequencer: Set track node as the parent of the key area node. The key area switcher needs the object binding id from the parent
object binding node. Without this, the binding to the external value fails.

	#jira UE-55931

Change 3936775 by Max.Chen

	Sequencer: Should stop or loop should compare DurationFrames with Current Time from StartTime.

	The bug is that if you set 30 warmup frames in movie rendering for a range of 0-100, the FrameRange will be starting at -30 and
have a duration of 130. Without this fix, the playback will continue until frame 130, rather than 100.

	#jira UE-55933

Change 3936935 by Matt.Hoffman

	Easing Curves are now represented in Play Rate resolution instead of internal resolution.

	#jira UE-55937

Change 3937069 by Matt.Hoffman

	Users can toggle if the is infinite on each side, limited by which tracks support infinite ranges.

	#jira UE-55891

Change 3937516 by Max.Preussner

	ImgMedia: Added support for single-threaded platforms

	#jira UE-55986

Change 3937826 by Max.Preussner

	MediaAssets: Disabling media sound components on HTML5 if AudioMixer is not enabled

Change 3937997 by Max.Chen

	Curve Editor: Add Zoom to Fit Curves so that selected curves from Sequencer can be focused on. Tested that undo doesn't re-zoom.

	#jira UE-55935

Change 3938000 by Max.Chen

	Sequencer: Stop all sounds before generating audio waveforms.

	#jira UE-55951

Change 3938376 by Max.Preussner

	XGEController: Disabled XGE Controller in single-threaded apps to prevent crash

Change 3938444 by Max.Preussner

	Core: Added async support for single-threaded applications

Change 3938445 by Max.Preussner

	Networking: Added support for single-threaded applications in UDP socket sender/receiver

Change 3938447 by Max.Preussner

	Messaging: Added support for single-threaded applications

Change 3939432 by Max.Chen

	Sequence Recorder: Append command list to global level editor actions so that shortcuts are accessible in level editor.

	#jira UE-55798

Change 3940229 by Andrew.Rodham

	Added prospective display rate upgrade to UMovieScene::PostLoad

	  - There was previously some very odd behaviour that would assign the fixed frame interval only when a sub sequence was focused
in SSequencer. This meant that many sequences could have a frame interval of 0 set in the data.
	  - Under the old method of snap interval display this would have fallen back to getting the display interval from the sequencer
settings, but we no longer look at these.
	  - The USequencerSettings properties have been removed and in their place, a prospective data upgrade for sequences that have a
fixed frame interval old 0fps that sets the play rate to the previous defaults based off the old USequencerSettings defaults.
	  - This could end up 'changing' the display rate for sequences where the user has changed the snap interval in the settings for
a particular sequence editor, but there's not much we can do about that given we don't have access to the USequencerSettings classes in
UMovieScene

	#jira UE-55919

Change 3940277 by Andrew.Rodham

	Sequencer: Added ability to default frame resolutions and play rates for newly created actor sequences

Change 3940378 by Andrew.Rodham

	Sequencer: Post move import dialog now defaults to the playback framerate of the sequence, and floors to frame numbers

Change 3940559 by Andrew.Rodham

	Reinstated primed or recording sequence color

Change 3940642 by Max.Preussner

	ImagePlate: Removed image plate media playback functionality

Change 3940843 by Max.Preussner

	Core: Made TCircularQueue actually thread-safe; improved code comments

Change 3940860 by Max.Chen

	Sequencer: Changed StructNameToKey to StructPathToKey

	Previously, keying a PropertyPath of [RenderTransform][Shear][X] would get trimmed to X, which doesn't map to a channel name as
considered by Sequencer2dTransformTrackEditor. Instead, trim the resulting property path to [Shear][X] so that track editors can
determine the desired struct path and channels to key.

	#jira UE-52966

Change 3941292 by Mike.Zyracki

	Fix for trajectories out of range not showing up.

	1) If we had no key data we would pop the time, so wouldn't get the section ranges.
	2) Calculating of upper bound was wrong, checking against -1 and not key == num of keys when doing algo::lower_bound.
	3) No need to do the Bck-- for the bakward iterators since we fixed #2. We start now from the upper bound correctly.
	4) If we had no keys (at section start,end) we would incorrectly say we were any key type, so since we draw constant keys as
dashed we would do so incorrectly around section end points.

	#jira UE-55929

Change 3941424 by Max.Chen

	Curve Editor: Change Zoom to Fit to use TArrayView

Change 3941498 by Max.Preussner

	Core: Added FMath::DivideAndRoundNearest function

Change 3942097 by Matt.Hoffman

	Drop Frame Timecode Support for NTSC rates.

Change 3942104 by Matt.Hoffman

	Sequence Recorder Group is no longer visible inside the World Outliner after using one.

	#jira 55266

Change 3942107 by Max.Chen

	Sequencer: Resurrect logic to find or extend an existing section when adding keys.

Change 3942330 by Max.Chen

	Sequence Recorder: Better tooltip for default animation settings.

	#jira UE-55636

Change 3942339 by Max.Chen

	Sequence Recorder: Better tooltip for default animation settings.

	#jira UE-55636

Change 3942507 by Andrew.Rodham

	Sequencer: We no longer pad the time overlap threshold with a small number that is not scaled by the current zoom level
	  - The presence of this pad was causing keys that were far apart to be grouped when zoomed in a long way

Change 3942509 by Andrew.Rodham

	Sequencer: Only pad total view range, rather than section range as well when retrieving keys to render
	  - This stops us from rendering keys that are within the view range, but outside the section range

Change 3942512 by Andrew.Rodham

	Added transactions to some sequencer details customizations

Change 3942513 by Andrew.Rodham

	Sequencer: Reinstated validation checks to UMovieSceneSection::SetStartFrame and SetEndFrame, changed erroneous uses to use
SetRange

Change 3942560 by Andrew.Rodham

	Pass by rvalue reference to appease error C2719 on Win32
	('InChannels': formal parameter with requested alignment of 8 won't be aligned)

Change 3942697 by Andrew.Rodham

	Newly Created Level Sequences and Actor Sequences now default to 24000 fps frame resolution (+/- ~24hrs range, supporting all
integer rates + 23.976)

Change 3942700 by Andrew.Rodham

	Sequencer: Added legacy out-of-bounds errors for times that are not supported by the current legacy upgrade frame resolution

Change 3942989 by Max.Preussner

	Core: Fixed circular queue count calculation

Change 3943538 by Max.Preussner

	MediaAssets: Reverted workaround for procedural audio log spam in HTML5

	(Actor component initialization cannot be skipped if the component is used in a level)

Change 3944071 by Max.Preussner

	QAGame: Fixed Media Texture keeps last frame of Media when PIE ends

	#jira UE-53360

Change 3944292 by Max.Chen

	Sequencer: Added extra flags to ensure that asset initialization does not occur on template actor sequences

	#jira UE-56113

Change 3944364 by Max.Chen

	Sequencer: Prevent circular shot/master tracks.

	Tested adding master -> child -> master as drag and drop cinematic shot tracks and sub tracks as well as through the + button.

	#jira UE-56091

Change 3944422 by Max.Chen

	Sequence Recorder: Disable transform recording if off.

	#jira UE-56061

Change 3944745 by Andrew.Rodham

	Sequencer: Key rendering fixes

	  - Fixed assert  that occured when keys happened to reside on some times due to KeyTime + TimeOverlapThreshold - KeyTime being
slightly larger TimeOverlapThreshold
	  - Fixed keys sometimes being clipped when zoomed right in due to lack of half-frame offset
	  - Added missing documentation to MovieSceneTimeHelpers.h

	#jira UE-56107

Change 3945231 by Andrew.Rodham

	Sequencer: Reconstruct channel proxy on Serialize to catch all cases of undo/redo, PostLoad and duplication

	#jira UE-56089

Change 3945301 by Andrew.Rodham

	Sequencer: Added safety checks during initial sequence recording to guard against applying negative or 0-sized sequence ranges

	#jira UE-56125

Change 3946627 by Max.Preussner

	Fortnite: Fixed game crashes closing editor while in PIE - Pure virtual function being called

	#jira UE-56144

[CL 3946896 by Max Chen in Main branch]
2018-03-14 22:09:33 -04:00
Marc Audy
7a0f229e8d Copying //UE4/Fortnite-Staging to //UE4/Dev-Main (Source: //Fortnite/Main/Engine @ 3876564)
#lockdown Nick.Penwarden
#rnx
#rb none

[CL 3903710 by Marc Audy in Main branch]
2018-02-22 11:25:06 -05:00
Ben Marsh
30f891786a Copying //UE4/Dev-Core to //UE4/Dev-Main (Source: //UE4/Dev-Core @ 3847469)
#lockdown Nick.Penwarden
#rb none

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

Change 3805828 by Gil.Gribb

	UE4 - Fixed a bug in the lock free stalling task queue and adjusted a comment. The code is not current used, so this is not actually change the way the code works.

Change 3806784 by Ben.Marsh

	UAT: Remove code to compile UBT when using UE4Build. It should already be compiled as a dependency of UAT.

Change 3807549 by Graeme.Thornton

	Add a cook timer around VerifyCanCookPackage. A licensee reports this taking a lot of time so it'll be good to account for it.

Change 3807727 by Graeme.Thornton

	Unhide the text asset format experimental editor option

Change 3807746 by Josh.Engebretson

	Remove WER from iOS platform

Change 3807928 by Robert.Manuszewski

	When async loading, GC Clusters will be created after packages have been processed to avoid situations where some of the objects that are being added to a cluster haven't been fully loaded yet

Change 3808221 by Steve.Robb

	GitHub #4307 - Made GetModulePtr() thread safe by not using GetModule()

	^ I'm not convinced by how much thread-safer this is really, but it's tidier anyway.

Change 3809233 by Graeme.Thornton

	TBA: Misc changes to text asset commandlet
	 - Rename mode to "loadsave"
	 - Add -outputFormat option which can be assigned "text" or "binary"
	 - When saving binary, use a differentiated filename so that source assets aren't overwritten

Change 3809518 by Ben.Marsh

	Remove the outdated UnrealSync automation script.

Change 3809643 by Steve.Robb

	GitHub #4277 : fix bug; FMath::FormatIntToHumanReadable 3rd comma and negative value

	#jira UE-53037

Change 3809862 by Steve.Robb

	GitHub #3342 : [FRotator.h] Fix to DecompressAxisFromByte to be more efficient and reflect its intent accurately

	#jira UE-42593

Change 3811190 by Graeme.Thornton

	Add support for writing specific log channels to their own files

Change 3811197 by Graeme.Thornton

	Minor updates to output formatting and timing for the text asset commandlet

Change 3811257 by Robert.Manuszewski

	Cluster creation will now be time-sliced

Change 3811565 by Steve.Robb

	Define out non-monolithic module functions.

Change 3812561 by Steve.Robb

	GitHub #3886 : Enable Brace-Initialization for Declaring Variables

	Incorrect semi-colon search removed after discussion with author.
	Test added.

	#jira UE-48242

Change 3812864 by Steve.Robb

	Removal of some unproven code which was supposed to fix hot reloading BP class functions in plugins.

	See: https://udn.unrealengine.com/questions/376978/aitask-blueprint-nodes-disappear-when-their-module.html

	#jira UE-53089

Change 3820358 by Ben.Marsh

	PR #4358: Incredibuild use ShowAgent by default (Contributed by projectgheist)


Change 3822594 by Ben.Marsh

	UAT: Improvements to log file handling.

	- Always create log files in the final location, rather than writing to a temp directory and copying in later.
	- Now supports -Verbose and -VeryVerbose for increasing log verbosity, rather than -Verbose=XXX.
	- Keep a backlog of log output before the log system is initialized, and flush it to the log file once it is.
	- Allow buildmachines to specify the uebp_FinalLogFolder environment variable, which is used to form paths for display. When build machines copy log files elsewhere after UAT finishes (eg. a network share), this allows error messages to display the right location.

Change 3823695 by Ben.Marsh

	UGS: Fix issue where precompiled binaries would not be shown as available for a change until scrolling the last submitted code change into the buffer (other symptoms, like de-focussing the main window would cause it to go back to an unavailable state, since the changes buffer was shrunk).

	Now always queries changes up to the last change for which zipped binaries are available.

Change 3823845 by Ben.Marsh

	UBT: Exclude C# projects for unsupported platforms when generating project files.

Change 3824180 by Ben.Marsh

	UGS: Add an option to show changes by build machines, and move the "only show reviewed" option in there too (Options > Show Changes).

	#jira

Change 3825777 by Steve.Robb

	Fix to return value of StringToBytes.

Change 3825810 by Ben.Marsh

	UBT: Reduce length of include paths for MSVC toolchain.

Change 3825822 by Robert.Manuszewski

	Optimized PIE lazy pointer fixup. Should be up to 8x faster now.

Change 3826734 by Ben.Marsh

	Remove code to disable TextureFormatAndroid on Linux. It seems to be an editor dependency.

Change 3827730 by Steve.Robb

	Try to avoid decltype(auto) if it's not supported.

	See: https://udn.unrealengine.com/questions/395644/build-417-with-c11-on-linux-ttuple-errors.html

Change 3827745 by Steve.Robb

	Initializer list support for TMap.

Change 3827770 by Steve.Robb

	GitHub #4399 : Added a CONSTEXPR qualifiers to FVariant::GetType()

	#jira UE-53813

Change 3829189 by Ben.Marsh

	UBT: Now always writes a minimal log file. By default, just contains the regular console output and any reasons why actions are outdated and needed to be executed. UAT directs child UBT instances to output logs into its own log folder, so that build machines can save them off.

Change 3830444 by Steve.Robb

	BuildVersion and ModuleManifest moved to Core, and parsing of these files reimplemented to avoid a JSON library.
	This should be revisited when Core has its own JSON library.

Change 3830718 by Ben.Marsh

	Fix incorrect group name being returned by FStatNameAndInfo::GetGroupName() for stat groups.

	The editor populates the viewport stats list by calling this for every registered stat and stat group (via FLevelViewportCommands::HandleNewStatGroup). The menu entry attempts to show the stat name with STAT_XXX stripped from the start as the menu item label, with the free-form text description as a tooltip.

	For stat groups, the it would previously just return the stat group name as "Groups" (due to the raw naming convention of "//Groups//STATGROUP_Foo//..."). Since this didn't match the expected naming convention in FLevelViewportCommands::HandleNewStat (ie. STAT_XXX or STATGROUP_XXX), it would fail to add it.

	When the first actual stat belonging to that group is added, it would add a menu entry for the group based on that, but the stat description no longer makes sense as a tooltip for the group. As a result, all the editor tooltips were junk.

	#jira UE-53845

Change 3831064 by Ben.Marsh

	Fix log file contention when spawning UBT recursively.

Change 3832654 by Ben.Marsh

	UGS: Fix error panel not being selected when opened, and weird alignment/color issues on it.

Change 3832680 by Ben.Marsh

	UGS: Fix failing to detect workspace if synced to a different stream. Seems to be a regression caused by recent P4D upgrade.

Change 3832695 by Ben.Marsh

	UGS: Invert the options in the 'Show Changes' submenu for simplicity.

Change 3833528 by Ben.Marsh

	UAT: Script to rewrite source files with public include paths relative to the 'Public' folder. Usage is: RebasePublicIncludePaths -UpdateDir=<Dir> [-Project=<Dir>] [-Write].

Change 3833543 by Ben.Marsh

	UBT: Allow targets to opt-out of having public include paths added for every dependent module. This reduces the command line length when building a target, which has recently become a problem with larger games (due to Microsoft's compiler embedding the command line into each object file, with a maximum length of 64kb). All engine modules are compiled with this enabled; games may opt into it by setting bLegacyPublicIncludePaths = false; from their .target.cs, as may individual modules.

Change 3834354 by Robert.Manuszewski

	Archetype pointer will now be cached to avoid locking the object tables when acquiring its info. It should also be faster this way regardless of any locks.

	#jira UE-52035

Change 3834400 by Robert.Manuszewski

	Fixing crash on exit caused by cached archetypes not being cleaned up before static exit cleanup.

	#jira UE-52035

Change 3834947 by Steve.Robb

	USE_FORMAT_STRING_TYPE_CHECKING removed from FMsg::Logf and FMsg::Logf_Internal.

Change 3835004 by Ben.Marsh

	Fix code that relies on dubious behavior of requiring referenced "include path only" modules having their _API macros set to be empty, even if the module is actually implemented in a separate DLL.

Change 3835340 by Ben.Marsh

	Fix errors making installed build from directories with spaces in the name.

Change 3835972 by Ben.Marsh

	UBT: Improved diagnostic message for targets which don't need a version file.

Change 3836019 by Ben.Marsh

	UBT: Fix warnings caused by defining linkage macros for third party libraries.

Change 3836269 by Ben.Marsh

	Fix message box larger than the screen height being created when a large number of modules are incompatible on startup.

Change 3836543 by Ben.Marsh

	Enable SoundMod plugin on Linux, since it's already supported through the editor.

Change 3836546 by Ben.Marsh

	PR #4412: fix type mismatch (Contributed by nakapon)


Change 3836805 by Ben.Marsh

	Fix commandlet to compile marketplace plugins.

Change 3836829 by Ben.Marsh

	UBT: Fix ability to precompile plugins from installed engine builds.

Change 3837036 by Ben.Marsh

	UBT: Write the previous and new contents of intermediate files to the log if they change. Makes it easier to debug unexpected rebuilds.

Change 3837037 by Ben.Marsh

	UBT: Fix engine modules having inconsistent definitions depending on whether modules are only referenced for their include paths vs being linked into a binary (due to different _API macro).

Change 3837040 by Ben.Marsh

	UBT: Remove code that initializes members in ModuleRules and TargetRules objects before the constructor is run. This is no longer necessary, now that the backwards-compatible default constructors have been removed.

Change 3837247 by Ben.Marsh

	UBT: Remove UELinkerFixups module, now that plugins and precompiled modules do not require hacks to force initialization (since they're linked in as object files).

	Encryption and signing keys are now set via macros expanded from the IMPLEMENT_PRIMARY_GAME_MODULE macro, via project-specific macros added in the TargetRules constructor.

Change 3837262 by Ben.Marsh

	UBT: Set whether a module is an engine module or not via a default value for the rules assembly. All non-program engine and enterprise modules are created with this flag set to true; program targets and modules are now created from a different assembly that sets it to false. This removes hacks from UEBuildModule needed to adjust behavior for different module types based on the directory containing the module.

	Also add a bUseBackwardsCompatibleDefaults flag to the TargetRules class, also initialized to a default value from a setting passed to the RulesAssembly constructor. This controls whether modules created for the target should be configured to allow breaking changes to default settings, and is set to false for all engine targets, and true for all project targets.

Change 3837343 by Ben.Marsh

	UBT: Remove the OverrideExecutableFileExtension target property. Change the only current use for this (the MayaLiveLinkPlugin target) to use a post build step to copy the file instead.

Change 3837356 by Ben.Marsh

	Fix invalid character encodings.

Change 3837727 by Graeme.Thornton

	UnrealPak: KeyGenerator: Only generate prime table when required, not all the time

Change 3837823 by Ben.Marsh

	UBT: Output warnings and errors when compiling module rules assembly in a way that allows them to be double-clicked in the Visual Studio output window.

Change 3837831 by Graeme.Thornton

	UBT: When parsing crypto settings, always load legacy data first, then allow the new system to override it. Provides the same key backwards compatibility that the editor settings class gives

Change 3837857 by Robert.Manuszewski

	PR #4404: Make FGCArrayPool singleton global instead of per-CU (Contributed by mhutch)


Change 3837943 by Robert.Manuszewski

	PR #4405: Fix FGarbageCollectionTracer (Contributed by mhutch)


Change 3838451 by Ben.Marsh

	UBT: Fix exceptions thrown on a background thread while caching C++ includes not being caught and logged correctly. Now captures exceptions and re-throws on the main thread.

	#jira UE-53996

Change 3839519 by Ben.Marsh

	UBT: Simplify configuring bPrecompile and bUsePrecompile settings for modules. Each rules assembly can now be configured as installed, which defaults the module rules it creates to use precompiled data.

Change 3843790 by Graeme.Thornton

	UnrealPak: Log the size of all encrypted data

Change 3844258 by Ben.Marsh

	Fix plugin compile failure when created via new plugin wizard. Passing -plugin on the command line is unnecessary, and is now reserved for packaging external plugins for the marketplace.

	Also extend the length of time that the error toast stays visible, and don't delete the plugin on failure.

	#jira UE-54157

Change 3845796 by Ben.Marsh

	Workaround for slow performance of String.EndsWith() on Mono.

Change 3845823 by Ben.Marsh

	Fix case sensitive matching of platform names in -TargetPlatform=X argument to BuildCookRun.

	#jira UE-54123

Change 3845901 by Arciel.Rekman

	Linux: fix crash due to lambda lifetime issues (UE-54040).

	- The lambda goes out of scope in FBufferVisualizationMenuCommands::CreateVisualizationCommands, crashing the editor if compiled with a recent clang (5.0+).

	(Edigrating 3819174 to Dev-Core)

Change 3846439 by Ben.Marsh

	Revert CL 3822742 to always call Process.WaitForExit(). The Android target platform module in the editor spawns ADB.EXE, which inherits the editor's stdout/stderr handles and forks itself. Process.WaitForExit() waits for EOF on those pipes, which never occurs because the forked process never terminates.

	Proper fix is probably to have the engine explicitly duplicate stdout/stderr handles for new pipes to output process, but too risky before copying up to Main.

Change 3816608 by Ben.Marsh

	UBT: Use DirectoryReference objects for all include paths.

Change 3816954 by Ben.Marsh

	UBT: Remove bIncludeDependentLibrariesInLibrary option. This is not widely supported by platform toolchains, and is not used anywhere.

Change 3816986 by Ben.Marsh

	UBT: Remove UEBuildBinaryConfig; UEBuildBinary objects are now just created directly.

Change 3816991 by Ben.Marsh

	UBT: Deprecate PlatformSpecificDynamicallyLoadedModules. We no longer have any special behavior for these modules.

Change 3823090 by Ben.Marsh

	UAT: Improve logging for child UAT instances.

	- Calling RunUAT now requires an identifier for prefixing into the parent log, which is also used to determine the name of the log folder.
	- Stdout is no longer written to its own output file, since it's written to the parent stdout, the parent log file, and the child log file anyway.
	- Log folders for child UAT instances are left intact, rather than being copied to the parent folder. The derived names for the copied names were confusing and hard to read.
	- Output from UAT is no longer returned as a string. It should not be parsed anyway (but may be huge!). ProcessResult now supports running without capturing output.

Change 3826082 by Ben.Marsh

	UBT: Add a check to make sure that all modules that are precompiled are correctly marked to enable it, even if they are part of the build target.

Change 3827025 by Ben.Marsh

	UBT: Move the compile output directory into a property on the module, and explicitly pass it to the toolchain when compiling.

Change 3829927 by James.Hopkin

	Made HTTP interface const correct

Change 3833533 by Ben.Marsh

	Rewrite engine source files to base include paths relative to the "Public" directory. This allows reducing the number of public include paths that have to be added for engine modules.

Change 3835826 by Ben.Marsh

	UBT: Precompiled targets now generate a separate manifest for each precompiled module, rather than adding object files to a library. This fixes issues where object files from static libraries would not be linked into a target if a symbol in them was not referenced.

Change 3835969 by Ben.Marsh

	UBT: Fix cases where text is being written directly to the console rather than via logging functions.

Change 3837777 by Steve.Robb

	Format string type checking added to FOutputDevice::Logf.
	Fixes for those.

Change 3838569 by Steve.Robb

	Algo moved up a folder.

[CL 3847482 by Ben Marsh in Main branch]
2018-01-20 11:19:29 -05: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
Matt Kuhlenschmidt
cd967bc733 Copying //UE4/Dev-Editor to //UE4/Dev-Main (Source: //UE4/Dev-Editor @ 3807299)
#lockdown Nick.Penwarden
#rb none

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

Change 3528776 by Yannick.Lange

	Allow thumbnails to be captured from a viewport always.

	#jira UE-45392

Change 3564359 by Yannick.Lange

	Back out part of changelist 3528776: Revert allowing thumbnails to be captured from a viewport to fix UE-47827 & UE-47785.

	#jira UE-47785,  UE-47827

Change 3740671 by Matt.Kuhlenschmidt

	Make the font editor canvas respect dpi scale

Change 3740810 by Josh.Engebretson

	PR #4138: Log GenerateProjectFiles to file when using UVS (Contributed by projectgheist)
	#jira UE-51358

Change 3740939 by Cody.Albert

	Fixing some #ifdefs that should be #ifs

Change 3741089 by Alexis.Matte

	Make sure bImportBoneTracks is set to true when importing into level
	#jira UE-51999

Change 3741101 by Alexis.Matte

	Fix the import material search
	#jira UE-51857

Change 3741690 by Jamie.Dale

	Guard against an invalid index in SLocalizationCommandletExecutor::Tick

	#jira UE-52067

Change 3741710 by Jamie.Dale

	Made a static variable also const

Change 3741724 by Michael.Dupuis

	Added missing shader cache

Change 3742037 by Lauren.Ridge

	Details panels can now "own" a color picker so a different details panel refreshing doesn't close it. Also fixed refreshing state of the graph after changing texture or color parameter values

Change 3742250 by Matt.Kuhlenschmidt

	PR #4185: Output Log Filter tooltip shows %s instead of category. (Contributed by LordNed)


Change 3742308 by Lauren.Ridge

	Adding axis input to the material editor's viewport client

Change 3742380 by Matt.Kuhlenschmidt

	USD importer improvements

	- USD now stores source file information for reimports
	- Fixed bug where no geometry would be imported if an exporter had set a time code even without animated data
	- Prevent a crash if a mesh doesnt have enough valid data to be imported

Change 3742536 by Matt.Kuhlenschmidt

	Remove usd wrapper test project

Change 3743564 by Alexis.Matte

	Fix skeletal mesh screen size auto set value when importing a LOD

	#test none
	#jira UE-52100

Change 3743582 by Lauren.Ridge

	Fixing non-desktop compiles

Change 3743598 by Lauren.Ridge

	Fixing shadowed variable by renaming the global color picker weak ptr variable.

Change 3743636 by Lauren.Ridge

	Creating a new parameter immediately allows naming

Change 3743855 by Michael.Dupuis

	Added missing shader from cache

Change 3744277 by Lauren.Ridge

	Don't show empty Global group if it only contained the material layer param.

Change 3744330 by Lauren.Ridge

	Clarifying "no parameter" text

Change 3744529 by Lauren.Ridge

	Making Save to Child and Save To Sibling buttons work for material layer params, show on material layer param panel

Change 3744668 by Chris.Bunner

	Added shared layer input collection asset, a list of float/texture redirectors that allow setting globally in a material graph then retrieving within layer/blend graphs.
	Added output for number of unique shaders generated by a particular material instance.
	Show instruction counts when working on a material layer.
	Relaxed restrictions on material layers, base MA input is now optional.

	#jira UETOOL-1271, UETOOL-1278, UETOOL-1279

Change 3744669 by Chris.Bunner

	Added automated test for material layers, layer/blend instances and shared inputs.

Change 3744754 by Laz.Matech

	Adding localization data to QAGame for the Realtime Preview localization test.

	#jira none

Change 3744860 by Michael.Dupuis

	#jira UE-52049 : Do not update random stream in most case, only when adding new instances, or filling from built data

Change 3744965 by Chris.Bunner

	Rebuilt lighting in automated test map and updated reflection capture screenshot.

Change 3746015 by Michael.Dupuis

	#jira UE-52090: Added missing shader for forward rendering

Change 3746038 by Michael.Dupuis

	#jira UE-51494: Make sure index is valid for this instance as instances from template and instance could mismatch due to in level changes

Change 3746076 by Michael.Dupuis

	Removed unused code

Change 3746998 by Tim.Gautier

	QAGame: - Renamed UMG_RealtimePreview > UMG_InEditorPreview
	- Moved UMG_InEditorPreview into UMG > Localization, setting up for future Localization tests

Change 3747206 by Arciel.Rekman

	Linux: make UI scale more coarse to prevent unnecessary scaling (UE-52086).

	- Monitors whose physical dimensions fall in range of 80-110 DPI should still have scale=1.0.

	(Edigrating CL 3740942 from Release-4.18 to Dev-Editor)

Change 3747211 by Arciel.Rekman

	Make failure to launch SCW more apparent to the user (UE-47263).

	- Fixes frequent crash on Linux.

	(Merging 3747070 from Release-4.18 to Dev-Editor)

Change 3747726 by Tim.Gautier

	QAGame: Resubmitting updated Loc files

Change 3747872 by Tim.Gautier

	QAGame: Resubmitting compiled Loc assets

Change 3748118 by Lauren.Ridge

	Adding help text to the material layers preview tab

Change 3748398 by Lauren.Ridge

	Fixing tooltips for the material layer read-only preview

Change 3748565 by Arciel.Rekman

	Linux: fix RHIs settings being wrong when removed via project properties (UE-51203).

	- This was a deeper issue with config system than just Linux RHIs.
	- This is a better fix than one submitted to 4.18 branch in CL 3747086.

Change 3749441 by Matt.Kuhlenschmidt

	PR #4201: Fix a typo in a comment. (Contributed by dneelyep)


Change 3749442 by Matt.Kuhlenschmidt

	PR #4195: Incorrect specifier used for FText::Format (Contributed by projectgheist)


Change 3749496 by Matt.Kuhlenschmidt

	Fix static analysis

Change 3749805 by Lauren.Ridge

	Fixing reset to default on MaterialLayerParam in base material

Change 3749838 by Lauren.Ridge

	Also correctly resetting names and layer states

Change 3750442 by Mieszko.Zielinski

	Added a safety check which addresses the crash #UE4

	Note that this is a temp fix. A proper fix is making sure ConvexShapeIndices doesn't contain any duplicates and will be inplemented in Dev-Framework.

	#jira UE-52123

Change 3752266 by Arciel.Rekman

	OpenGL: remove PLATFORM_WINDOWS exceptions.

	- Discrepancy in behavior between Windows and Linux OpenGL is unhelpful for bug reproducibility.
	- VAB bug should have been fixed long ago (on both platforms).

Change 3752929 by Arciel.Rekman

	Linux: avoid crashing on unknown drivers.

	- See https://answers.unrealengine.com/questions/724100/crashes-on-startup-after-first-run.html
	- Checks in IsDeviceIntel() and such fail if the drivers were not detected.

Change 3753254 by Michael.Dupuis

	Added missing shader for shader cache

Change 3753426 by Michael.Dupuis

	#jira UE-5751: Added the possibility to change material instance exposed params at runtime using a MID for texture, vector and scalar for 1 component or all components

Change 3753440 by Alexis.Matte

	Fix fbx scene importer morph target import crash

	#jira UE-52255

Change 3753457 by Michael.Dupuis

	build fix

Change 3753700 by Chris.Bunner

	Make GetSharedInput preview fallback always available in editor as this should handle previews, thumbnails and other editor-only cases.
	Refactor to remove duplicate code in material translator.
	Material layer expressions are required for client load, fixes cooked builds using layer instances in the base material layer stack.

Change 3754760 by Chris.Bunner

	Tidying up EngineTest/ShaderModels map.

Change 3754765 by Arciel.Rekman

	Avoid placing tooltip windows under the cursor (UE-12288).

	- Fixes inability to use some corners of the screen on Linux (the tooltips there aren't click-through).

Change 3754788 by Matt.Kuhlenschmidt

	Fix details panel crash after compiling blueprints that have edit conditon properties

Change 3754933 by Christina.TempelaarL

	Fixed typo in heightLerp (transistion->transition).
	#jira UE-46736

Change 3754946 by Cody.Albert

	Update loading movie code to properly calculate delta time when throttled at 60fps

Change 3755059 by Jamie.Dale

	Fixed game preview language not updating in realtime while PIE was enabled

	#jira UE-52209

Change 3755130 by Jamie.Dale

	Fixed game preview language not updating from native when switching between preview languages

	#jira UE-52348

Change 3755664 by Michael.Dupuis

	Fixed compile warning

Change 3755714 by Yannick.Lange

	Always allow capturing thumbnails from viewport.
	This also hides the thumbnail editing UI when a thumbnail was captured from a viewport.

Change 3755944 by Alexis.Matte

	Fix crash when importing morph target with "built in" tangent option

	#jira UE-52319

Change 3756109 by Christina.TempelaarL

	fixed FBX importer Import Textures tooltip, UMaterial -> Material in tooltip text
	#jira UE-48389

Change 3756169 by Jamie.Dale

	Added plural form pattern to SContentBrowser::GetPathText

Change 3756493 by Laz.Matech

	Updating Localization content to further test InEditor Preview Language in UMG

	#jira none

Change 3758336 by Alexis.Matte

	Fix a crash when importing morph target there was a unsync between some buffer depending on the import options

	#jira UE-52319

Change 3758947 by Jamie.Dale

	Fixed cursor position regression in search boxes

	This was caused by a call to SetText that was added in CL# 3627864

	This caused the text to update as it was changed, which made the cursor jump to the end of the text and made it impossible to type in the middle of a search term.

	This was done as a bound FText value had been passed to the InitalText of SSearchBox, which made the text resolution behave strangely. InitalText should always be a value, and SSearchBox now resolves any bindings during its constructor.

	#jira UE-48874

Change 3759000 by Laz.Matech

	Submitting the .PO file for CL 3756493

	#jira none

Change 3759480 by Matt.Kuhlenschmidt

	Safe guard against brush details crash

	#jira UE-52278

Change 3759665 by Matt.Kuhlenschmidt

	PR #4214: UE-52249: Use valid PreviewShadowsIndicatorMaterialName (Contributed by projectgheist)


Change 3761211 by Matt.Kuhlenschmidt

	Remove the restriction that a level must be writable to be locked/unlocked.
	Fixed duplicate icons being used by the level browser

Change 3761304 by Chris.Bunner

	MaterialAttributeLayers graph node BaseMA input is no longer required.
	Note: Requires "Use Preview Value" set to true on inputs.

Change 3761307 by Chris.Bunner

	New material layers and blends will have "Use Preview Value" set to true by default to avoid the need for connected inputs - Missed file on previous commit.

Change 3761357 by Chris.Bunner

	Renamed material shared input enum.

Change 3761419 by Chris.Bunner

	Updating material layers automated test assets after recent changes.
	Reverted some naming changes so existing screenshot tests can be reused.

Change 3762058 by tim.gautier

	QAGame: Adding Material Layer assets for testing (Content/Materials/LayerFunction)

Change 3763328 by Matt.Kuhlenschmidt

	Fix Slate warning at editor startup

Change 3763354 by Alexis.Matte

	Fix skeletal mesh material assign when reducing a LOD that was import from a file using simplygon reduction

	#jira UE-52505

Change 3763501 by Matt.Kuhlenschmidt

	Prevent shared asset thumbnail pools from having their resources forcefully released when they are in use.  ReleaseResources is now private and only called on destruction of the pool

Change 3763574 by Matt.Kuhlenschmidt

	Fix slate material box brushes not being keyed off image size

	#jira UE-40219

Change 3763678 by Jamie.Dale

	Disable realtime level editor viewport if running under remote desktop

	This makes the main editor window much more responsive by default under remote desktop

Change 3763679 by Jamie.Dale

	Added asset caching metrics for the loc gather

Change 3763693 by Matt.Kuhlenschmidt

	Changed the code that activates the actor details tab  when selection changes to a flash. There are simply too many things that change the selection and steal focus away from a tab being used

	#jira UE-51754

Change 3763826 by Michael.Dupuis

	Fixed Fortnite cooking crash

Change 3763864 by Harrison.Moore

	Adding New Default 'LayerBlend' assets

Change 3764028 by Christina.TempelaarL

	#jira UE-47695 Auto LOD bug

	Moved the sections dropdown to the LOD Picker category and modified Custom cb behavior, based on suggestions from charlie.

Change 3764031 by Christina.TempelaarL

	#jira UE-47695 Auto LOD in StaticMeshViewer

	moved LOD combo widget to LOD picker category and hide custom checkboxes until custom checked.

Change 3764076 by tim.gautier

	QAGame: Submitting UMG_Multitouch_test for initial Multitouch testing

Change 3764263 by Matt.Kuhlenschmidt

	Fix the floor mesh thumbnail

Change 3764284 by Chris.Bunner

	Removing some asserts for cases that can validly fail and are already handled.

Change 3764372 by Matt.Kuhlenschmidt

	PR #4196: Show edit icons in editor (Contributed by projectgheist)


Change 3764388 by Chris.Bunner

	Fixing logic for material, function and instance updating active materials and instances and their editors.

Change 3764674 by Harrison.Moore

	test materials added, Blend updates

Change 3764681 by Harrison.Moore

	Adding HMtest map

Change 3766238 by Chris.Bunner

	Material layer callers need to let their internal material function calls update their inputs/outputs.

Change 3766556 by Jamie.Dale

	Fixed crashes that could happen if some of the data table panels were closed

	We now always create the underlying widgets, even if they're currently hidden from view

	#jira UE-52552

Change 3767753 by Chris.Bunner

	When rebuilding a material function instance editor we must re-create and re-apply the proxies as the expressions have likely changed. Take care to maintain local parameter changes as these have not been saved yet.

Change 3768719 by Michael.Dupuis

	#jira UE-52521: Prevent possible crash if a segment have no point or invalid point

Change 3769157 by Jamie.Dale

	Fixed incorrect text selection if selecting via double click beyond the bounds of the line

	It would previously select the second to last word, rather than the last word

	#jira UE-51609

Change 3769159 by Harrison.Moore

	Belica Test update, New layer blends updated with texture type fix.

Change 3769205 by Jamie.Dale

	Fixed Windows file save dialog not appending the correct extension when there were multiple options available

	#jira UE-52180

Change 3769220 by Harrison.Moore

	Layer blend tweaks

Change 3769292 by Jamie.Dale

	Removing redundant code

	Applying the correct package ID, only to then strip it off again is rather pointless

Change 3769479 by Arciel.Rekman

	UBT: Use response files for compiler when compiling for Linux.

	- Some command lines are too long when cross-compiling on Windows.

Change 3769920 by Arciel.Rekman

	Linux: convert yet another initialization crash to a user-friendly message (UE-52457).

	#jira UE-52457

Change 3771055 by Alexis.Matte

	Make sure we set the Used by morph target material flag to material use by the morphtarget instead of all skinned mesh component
	Use the morph vertex factory only for section that has active morph target

	#jira UE-51483

Change 3771135 by Michael.Dupuis

	Fixed fortnite cooking

Change 3773054 by Yannick.Lange

	Avoid loading viewport interaction assets when starting the editor.

Change 3774184 by Arciel.Rekman

	Linux: disabled some gdb visualizers until the issue is fixed.

	- CL 3773942 by CengizT.

Change 3774303 by Matt.Kuhlenschmidt

	Pull requests to fix various typos

Change 3774305 by Matt.Kuhlenschmidt

	PR #4237: Visual Studio Repeatedly Opens (UE-51608) (Contributed by LordNed)


	#jira UE-51608

Change 3774701 by Arciel.Rekman

	OpenGL: fix ARB callback errors when hitting Build Lighting.

	- Merged from 4.18 shelf.

Change 3775812 by Matt.Kuhlenschmidt

	Fix One-off crash undo-ing while working with Material Params / Material Functions

	#jira UE-52680

Change 3775849 by Matt.Kuhlenschmidt

	More info for UE-52610

Change 3775850 by Matt.Kuhlenschmidt

	Guard against mesh paint crashes

	#jira UE-52618

Change 3775904 by Matt.Kuhlenschmidt

	Added logging to track down window shutdown issues

Change 3775913 by Matt.Kuhlenschmidt

	Pull requests for typos

	#jira UE-52751, UE-52748

Change 3776676 by Jamie.Dale

	Fixed being able to insert tabs into spin boxes with units

	#jira UE-52776

Change 3777006 by Michael.Trepka

	Process Mac windowDidBecomeMain and windowDidResignMain notifications immediately instead of deferring them. This solves issues with Slate code that closes and immediately opens new menu windows. Previously closing a window would schedule menu parent's activation event that could be processed after another menu's creation, making it immediately disappear.

	#jira UE-52145

Change 3777170 by Arciel.Rekman

	Linux: use Xft.dpi (most desktop environments expose their scale through that) as a DPI value (UE-52086, UE-52766).

	- Change by Brandon.Schaefer.
	- Limitation: no per-monitor DPI.

	(Edigrating CL 3776509 //UE4/Release-4.18/... to //UE4/Dev-Editor/...)

Change 3777292 by Arciel.Rekman

	Linux: fix symbol collision causing problems with AMD drivers (UE-51843).

	- We cannot have elf_end() hidden, because libcuda.so calls elf_end from libnvidia-fatbinaryloader.so and this breaks linking monolithic binaries ("hidden symbol referenced in DSO").
	- We cannot have elf_end() visible, because of a name collision with a different libelf used by AMD drivers.
	- The only possible workaround is to have elf_end() renamed.

	(Edigrating CL 3777242 from //UE4/Release-4.18/... to //UE4/Dev-Editor/...)

Change 3777686 by Joe.Conley

	Blueprint editor variable type tooltips: fix case mismatch that was preventing type name to be displayed properly in soft object/class reference tooltips.

Change 3778180 by Jamie.Dale

	Avoid a crash if a regex pattern or matcher outlive ICU during shutdown

	#jira UE-52770

Change 3778182 by Jamie.Dale

	Avoid a crash if a break iterator outlives ICU during shutdown

Change 3778368 by Jamie.Dale

	Added missing pragma once

Change 3778560 by Matt.Kuhlenschmidt

	Prevent non-shared DDC notification from triggering for epic internal builds

Change 3778709 by Lauren.Ridge

	Copying 4.18.2 array reordering propagating to children fix (originally 3778547)

Change 3779205 by Lauren.Ridge

	Duplicating 3776649 to fix a crash on compile due to partial GC of a widget.

	#jira UE-52260

Change 3779217 by Brandon.Schaefer

	GitHub #3678 Fix Setup.sh handling of special characters in PNG path

	#jira UE-46103

Change 3779341 by Brandon.Schaefer

	GitHub #3012 Use elemtry OS versions to set the ubuntu versions for depencies

	#jira UE-39364

Change 3780274 by Joe.Conley

	DataTables: Add documentation tooltips showing type information to header columns

Change 3780840 by Alexis.Matte

	Do a re-import when user re-import LOD 0
	Prevent importing more then MAX_SKELETAL_MESH_LODS
	#jira UE-52373

Change 3781067 by Arciel.Rekman

	Linux: fix OSSSteam cross-compilation (and CIS).

	- Broken by previous change that put compile-time arguments into response file and bulk-replaced \ with /, which affected things like Definitions.Add("STEAM_SDK_VER_PATH=TEXT(\"Steam" + SteamVersion + "\")");

Change 3781110 by Christina.TempelaarL

	#jira UE-47695 moved Static Mesh Editor LOD menu from tools to viewport tool bar

Change 3781531 by Christina.TempelaarL

	#jira UE-47695 added LOD menu to Static Mesh Editor viewport

Change 3781663 by Alexis.Matte

	Fix for cancel export fbx when previewing animation sequence export
	#jira UE-49743

Change 3782007 by Jamie.Dale

	Improved the ability to lockdown available game languages

	In addition to the previous "DisabledCultures" array, you can now add an array of "EnabledCultures" (using the same per-build config filters) to explicitly list the cultures that are allowed to be used in your build (if the list is empty, then everything is allowed unless otherwise disabled).

	This also stops the game from attempting to fallback to the native language if the native language has been disabled (we will fallback to the first available language instead).

Change 3782122 by Jordan.Walker

	test assets for material layers

Change 3782131 by Joe.Graf

	Added support for IOS and TVOS targets when generating CMake files on Mac

Change 3782218 by Christina.TempelaarL

	fixing include paths and capitalization causing build errors.

Change 3783171 by Michael.Dupuis

	Added the possibility to override default LOD rules for visible primitive and whole scene shadow casting primitive
	Added the possibility to store Custom data per view for the frame duration

Change 3783172 by Michael.Dupuis

	#jira UE-35097	: Refactored landscape rendering logic to improve general performance while using new custom data and custom lod feature
	Exposed many new settings to control component using sub sections rendering, tessellated component, shadow should be include into tessellation, tessellation falloff based on camera location
	Changed how LOD distribution is done to be in screen size instead of distance.
	Give the possibility to have a different distribution for LOD0 vs the other one.

Change 3783174 by Michael.Dupuis

	missing file to landscape refactor

Change 3783315 by Lauren.Ridge

	Changing a parameter in the Material Parameter Panel now dirties the material correctly.
	Changing a layer parameter in the Material Instance Editor now refreshes the details panel as well.

Change 3783374 by Chris.Bunner

	Adding MaterialSharedInputCollection to hidden list when MaterialLayers disabled.

Change 3783617 by Chris.Bunner

	Added a Channel Mask material expression parameter. Wraps up a vector parameter and dot product with a single channel selection interface, internally a regular vector parameter.
	Fixed GetSharedInput failing to return the preview texture in the Function Instance editor.

Change 3783676 by Lauren.Ridge

	Adding access to a material function instance's parent in the Material Instance Editor

Change 3783751 by Michael.Trepka

	PR #4248: Fixed C++ std in generated Xcode project to match rest of engine (C++14) (Contributed by Bo98)


Change 3783971 by Brandon.Schaefer

	Rename/Move all deploy/Deploy folder/files into AlembicDeploy. Due to case sensitivity on linux, need to maintain the correct case.

	#jira UE-37631

Change 3783992 by Michael.Dupuis

	#jira UE-35097: Remove tessellation on editor tools
	Fixed a case where tessellation multiplier at 0 would cause the component to not be visible
	Fixed minor tessellation falloff calculation error

Change 3784502 by Chris.Bunner

	Restored missing bool setter.
	Coding standards fix.

Change 3784614 by Arciel.Rekman

	Linux: better error message when running out of inotify watches (UE-50459).

	#jira UE-50459

Change 3784620 by Chris.Bunner

	Updated LayerBlend_TextureMask to use new ChannelMask parameter.

Change 3784725 by Lauren.Ridge

	Fixing groups not sorting correctly

Change 3785645 by Chris.Bunner

	Non-editor compile fix.

Change 3785666 by Arciel.Rekman

	Linux: restore ability to use Wayland instead of X11.

	- SDL libs recompiled and Wayland version is set to lower one to be compatible with the compositor shipped on Ubuntu 16.04 LTS
	- Change by Anthony.Bills.

Change 3785708 by Arciel.Rekman

	Linux: implement voice capture using SDL (non-server only) (UE-51298).

	- Based on pull request #4131 by mkirzinger.

Change 3785878 by Arciel.Rekman

	UBT: add VSCode to default generators on Linux.

Change 3786058 by Arciel.Rekman

	Do not add dependencies on other RHIs for servers (UE-48894).

	- Pull request #3944 contributed by pfoote.


	#jira UE-48894

Change 3786845 by Arciel.Rekman

	Code changes to make gcc support easier (UE-51978).

	- Contributed by a licensee (pull request #4181 by tomwardio "Collection of fixes to allow UE4 to be compiled by GCC on Linux").

Change 3786871 by Matt.Kuhlenschmidt

	Fix static analysis

Change 3786883 by Matt.Kuhlenschmidt

	Fix HTML5

Change 3786923 by Matt.Kuhlenschmidt

	Fix engine layer blend asset referencing game content.  This is not allowed

	#jira UE-52888

Change 3786927 by Brandon.Schaefer

	Linux: Alembic support

	#jira: UE-37631

Change 3786994 by Arciel.Rekman

	Remove support for /-prefixed switches (UE-47429).

	- They collide with absolute file paths on Mac/Linux and a source of inconsistencies between platforms.

	#jira UE-47429

Change 3787032 by Michael.Trepka

	Initial support for building and running Niagara on Mac

Change 3787035 by Brandon.Schaefer

	GitHub #4166 Undef GL entrypoint macros after use

	#jira UE-51663

Change 3787144 by Lauren.Ridge

	Fixing material parameter group association resetting after undo

	#jira UE-52514

Change 3787839 by Jordan.Walker

	updated engine level layer blends to not include game content
	switched them to use Chris B's new mask selection node

Change 3787967 by Lauren.Ridge

	Fix for broken layer groups, related crash

Change 3787991 by Lauren.Ridge

	Fixing thumbnails for material function instances, resolving not being able to delete new function instances

	#jira UE-52967

Change 3788226 by Michael.Trepka

	Fixed a deadlock when closing Mac CrashReportClient which resulted from changes in CL 3777006

	#jira UE-53002

Change 3788557 by Brandon.Schaefer

	Fix shadow compiler warnings around our includes

Change 3789700 by Lauren.Ridge

	Experimental setting for turning on Material Layers - off by default.

Change 3789703 by Jamie.Dale

	Harden the LocMeta and LocRes loading to prevent loading files that are too new

Change 3789706 by Jamie.Dale

	Added localization ID to the package summary

	This will allow the localization gatherer to query it without having to load the entire package

Change 3789708 by Jamie.Dale

	Added a way to display and reset the package localization ID via the Content Browser

Change 3789709 by Jamie.Dale

	Added warning for duplicate package localization IDs when gathering asset localization

Change 3789713 by Jamie.Dale

	Special case zero-width space in the text shaper to avoid fonts rendering the fallback glyph

Change 3789736 by Christina.TempelaarL

	Fixed recently-introduced StaticMeshEditor bug - changing LOD dropdown menu selection was not changing LOD sections category.

Change 3789853 by Chris.Bunner

	Material instances should return overridden values when the caller is requesting the default, not leaving the request to fall through to the base material.

	#jira UE-52796

Change 3790185 by Brandon.Schaefer

	Add better error handling when using new SDK for linux on windows.

	#jira UE-50527

Change 3790195 by Jamie.Dale

	Fixed line-ending inconsistency when retrieving rich-text

	We were using LINE_TERMINATOR when getting the offsets, but \n when getting the text

Change 3790473 by Chris.Bunner

	When finding expression by GUID, only return FunctionCall result if expression was found. Fixes cases where searched-for expression is after a FunctionCall in the expressions list.

	#jira UE-52729

Change 3790650 by Arciel.Rekman

	UBT: Linux: print build details first before refusing to build.

	- Tweak to the previous feature that we forgot.

Change 3790681 by Arciel.Rekman

	UBT: Linux: tweaks to wording (SDK -> toolchain).

Change 3791459 by Brandon.Schaefer

	Linux: libcurl rebuild for version 7.57

	#jira OGS-870

Change 3791533 by Arciel.Rekman

	Better error messaging when UMB is unusable (UE-50658).

	- Should be replaced by a better fix, but merging this workaround in case the better fix will not be done in time for 4.19.

	(Edigrating CL 3789387, 3789787 from Release-4.18 to Dev-Editor)

Change 3791885 by Matt.Kuhlenschmidt

	Fix static analysis

	#jira UE-53097

Change 3791910 by Brandon.Schaefer

	Fix for not using proper libraries on x86_64 for libcurl

	#jira OGS-870

Change 3792017 by Jamie.Dale

	Fixed a conflict between the path settings and favorite settings

Change 3792022 by Jamie.Dale

	Fixed a crash that could happen when performing ARO on the property chains of a struct

	#jira UE-52999

Change 3792025 by Jamie.Dale

	Changed package summary localization ID to be versioned by the object version to avoid changing data in unversioned cooked assets

Change 3792066 by Michael.Dupuis

	#jira UE-5751: Fixed possible crash when using dynamic matrial instance
	Added missing shaders for landscape when using tessellation

Change 3792718 by Arciel.Rekman

	OpenGL: bringing back Windows workarounds to unblock copy-up (UE-52534).

	#jira UE-52534

Change 3793018 by Mike.Erwin

	new glTF importer plugin

	Import StaticMesh, Material, and Texture assets from the Khronos glTF 2.0 format. Text (.gltf) and binary (.glb) files are supported.

	Limitations:
	- There is no options UI. All assets from the file are imported.
	- The glTF format can describe animation and whole scenes, but the initial version of this plugin does not attempt either.
	- Data encoded as Base64 data URI is not supported. This is uncommon but is part of the glTF spec.

	#jira: UE-50695

Change 3793626 by Matt.Kuhlenschmidt

	Logging for HTML5 issue

Change 3794034 by Matt.Kuhlenschmidt

	Fix CIS

Change 3794271 by Michael.Dupuis

	#jira UE-53133: Fxed shadow calculation when using non whole scene shadow

Change 3794273 by Chris.Bunner

	Function call material nodes should be created with no outputs by default.

	#jira UE-53127, UE-53128, UE-52616

Change 3794334 by Lina.Halper

	- Fix animation reinitializing when just setting new animation with single node
	- Deprecated GetScalarParameterDefault and replace that with GetScalarParameterDefaultValue

	#jira: UE-52796

Change 3794338 by Michael.Dupuis

	Fixed lod visual popping when texture mip used for landscape is not ready

Change 3794350 by Mike.Erwin

	Fix glTF importer header includes.
	Build was failing on Linux.

Change 3794357 by Michael.Dupuis

	#jira UE-53166: buildfix: removed phase 2 landscape optim leftover...

Change 3794549 by Michael.Dupuis

	#jira UE-53166 : fixed compile error

Change 3794755 by Matt.Kuhlenschmidt

	Fix automation warning

Change 3794910 by Lina.Halper

	Change material default value to be red to keep the behavior same.

	- Previous code was getting default value of parent, which was wrong, but now since we're grabbing correct value, it's not doing what it meant to do. Changed content to keep same value as parent as default.

Change 3795296 by Mike.Erwin

	glTF: fix Linux build errors

	A variable was being shadowed.

	The other errors are due to an obscure corner of the C++ spec which clang enforces.
	https://stackoverflow.com/questions/21900237/do-i-really-need-to-implement-user-provided-constructor-for-const-objects

	#jira UE-53204

Change 3797313 by Chris.Bunner

	Re-built lighting in Rendering/ShaderModels automated test map and updated failing screenshots.

	#jira UE-53198

Change 3803962 by Jamie.Dale

	Fixed struct instances not comparing against the correct default values when gathering for localization

Change 3804771 by Michael.Dupuis

	Back out changelist 3783171

Change 3804772 by Michael.Dupuis

	Back out changelist 3783172

Change 3805258 by Michael.Dupuis

	Added missing shader cache for landscape

Change 3806105 by Matt.Kuhlenschmidt

	Disable harware benchmarking during automation tests, commandlets, and on the build machine

Change 3806438 by Michael.Dupuis

	#jira UE-53228: Fixed rendering path of new landscape optim when using GDoInitViewsLightingAfterPrepass(used in Orion)

Change 3806577 by Matt.Kuhlenschmidt

	Change plugin uploading to crash reporter to only do so in editor builds

Change 3806588 by Michael.Dupuis

	Remove temp test version in landscape version

Change 3806900 by Jamie.Dale

	Fixed 'inconsistent DLL linkage' error when using older versions of Python 2.7

	#jira UE-53353

Change 3807125 by Jamie.Dale

	Fixed UBT warning after Dev-Core merge

Change 3807299 by tim.gautier

	QAGame: Checking in test asset M_LandscapeMaterial_Foliage, quicker repro for UE-53442

[CL 3807911 by Matt Kuhlenschmidt in Main branch]
2017-12-14 10:07:13 -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
Matt Kuhlenschmidt
f9e0e6bded Copying //UE4/Dev-Editor to //UE4/Dev-Main (Source: //UE4/Dev-Editor @ 3566944)
#lockdown Nick.Penwarden
#rb none
============================
  MAJOR FEATURES & CHANGES
============================

Change 3363699 by Mike.Fricker

	VR Editor: Improved extensibility (for mesh editor)
	- This was merged from CL 3352612 and re-opened for edit before commit
	- All mesh editor changes were stripped before merging

Change 3499858 by Matt.Kuhlenschmidt

	PR #3673: Fixed UE-36416 (Contributed by DarkSlot)


Change 3499872 by Matt.Kuhlenschmidt

	PR #3682: Details view - matrix button visibility toggle and crash fix (Contributed by kamrann)


Change 3499873 by Matt.Kuhlenschmidt

	Hide property matrix button from settings editor.  For the combined settings objects view this produces nonsensical results and the property matrix is for bulk editing which settings are not designed for.

Change 3501154 by Arciel.Rekman

	Fix incorrect RPATH.

	- Fixed LinuxToolChain to use FileItem instead of strings.
	- Fixed string-based Utils.MakePathRelativeTo - workaround for an old Mono bug was causing invalid "correction" of the relative path, triggered by the fact that path "Foo/Bar/../Baz" was not considered equal to "Foo/Baz". Instead of removing the workaround altogether, added a better comparison.

Change 3501337 by Arciel.Rekman

	Better fix for RPATH.

	- Ben Marsh's suggestion.

Change 3502572 by Matt.Kuhlenschmidt

	PR #3693: Because "becuase" is spelled because (Contributed by getnamo)


Change 3502731 by Matt.Kuhlenschmidt

	Guard against empty warning toasts

	#jira UE-46285

Change 3502788 by Matt.Kuhlenschmidt

	Avoid shutting down the editor during loads and slow tasks if a windows close message comes in during this time

Change 3503027 by Michael.Dupuis

	Optimized UpdateLayerUsageInformation

Change 3503299 by Michael.Dupuis

	Fixed crash when having no layer info object

Change 3504529 by Yannick.Lange

	Use UWorld instead of FWorldContext for EditorWorldExtensions, since we don't use it.

Change 3504550 by Jamie.Dale

	Fixed/Improved DnD validation between Content Browsers

	Dragging assets between Content Browsers now goes through the same common DnD code (DragDropHandler) as dragging assets between the SPathView and SAssetView, and between items within an SAssetView. This also improves the validation of asset/file drops to prevent you dropping assets/files into class paths.

	#jira UE-45857

Change 3505369 by Alexis.Matte

	Make sure undo/redo transactions works for all fbx dialog options.
	#jira UE-43465
	#jira UE-43569

Change 3505500 by Matt.Kuhlenschmidt

	Fix child usd meshes not importing properly.

Change 3505645 by Arciel.Rekman

	Add USD support on Linux (UE-45383).

	#jira UE-45383

Change 3505658 by Arciel.Rekman

	USD: add CMake toolchain file I missed.

Change 3506796 by Yannick.Lange

	Fix EditorWorldExtensionCollection using TWeakObjectPtr for UWorlds instead of UPROPERTY

Change 3508082 by Alexis.Matte

	Make sure the fbx re-import editor preference "show option dialog at reimport" is working when re-importing an animation sequence.

Change 3508855 by Max.Chen

	Add CanFindInContentBrowser to AssetEditorToolkit.

	False for LevelSequenceEditorToolkit so that sequencer doesn't take over Find In Content Browser and show only the sequencer asset.

	#jira UE-46241

Change 3509282 by Bradut.Palas

	#jira UE-45337

	Removed check for Actor->GetWorld() against GWorld because the latter would switch between editor world and PIE world during a tick, causing the widget to not update properly.
	Since  the Actor would always point to the PIE world, the check was no longer needed.

Change 3509298 by Nick.Darnell

	Slate - Now has better support for analog navigation, the NavigationConfig is now created per user, and has the ability to deal with repeats and can handle navigation better by waiting until the user has moved enough to intend a direction to move.

Change 3509313 by Bradut.Palas

	#jira UE-44630

	As the bug description says, the Undo History was not refreshing correctly because an undo coupled with an action would result in the same number of transactions as the previous tick. Now we also check the variation of undo actions count in order to refresh the list.

Change 3509318 by Bradut.Palas

	#jira UE-1406

	To fix the issue we simply close the Consolidate window if ListViewItems is empty.


Change 3509402 by Nick.Darnell

	PR #3703: UE-46362: Fixing typo in EUMGSequencePlayMode.PingPong comment (Contributed by gsfreema)


Change 3510447 by Arciel.Rekman

	ReplayProxy: changed protected to private.

Change 3510467 by Max.Chen

	Property Editor: Disable color widget when editing is disabled.

	#jira UE-46331

Change 3511249 by Matt.Kuhlenschmidt

	PR #3715: Turn off the automatic expiration of the restore assets notification (Contributed by IHappyDayI)


Change 3511286 by Matt.Kuhlenschmidt

	Added ability to set properties from USD attributes when using scene import to import USD files.  See

	UsdPropTestScene.usda for an example file of how this works

Change 3511528 by Cody.Albert

	Updated FMoviePlayerWidgetRenderer to use Slate time instea of application time

Change 3512149 by Matt.Kuhlenschmidt

	Dont save non-dirty built data when playing PIE in a standalone process

	#jira UE-46422

Change 3512259 by Matt.Kuhlenschmidt

	Fix static analysis

Change 3512291 by Matt.Kuhlenschmidt

	PR #3719: Updating UEditorEngine::ReplaceActors to not copy array of actors (Contributed by gsfreema)


Change 3512911 by Matt.Kuhlenschmidt

	Fixed USD property setting crashing if the usd file contained an array with 0 elements.
	Fixed USD property setting creating invalid tmaps if the usd file contained a key that already existed

Change 3513725 by Matt.Kuhlenschmidt

	PR #3726: Copy/paste fix for SAdvancedDropdownRow::Construct() (Contributed by jovisgCL)


Change 3514453 by Jamie.Dale

	Added a way to set the UEnum used by a UEnumProperty after using the default constructor

	This will assert if called on an instance that has already been initialized

Change 3514858 by Alexis.Matte

	Fix crash when importing animation and choosing a different value for option "Import Meshes In Bone Hierarchy" then the value use to import the skeletal mesh. In some case there is no skinned mesh.

Change 3514875 by Matt.Kuhlenschmidt

	PR #3721: Fixed. Screen Message was showed always when screenshot is captured(F9) (Contributed by shuaiharry)


Change 3515859 by Bradut.Palas

	#jira UE-46516

	The RenameTextBox didn't handle the OnTextCommitted event (which can be triggered when pressing Enter in the box). Now it does.

Change 3515998 by Jamie.Dale

	Adding missing ) to some log messages

Change 3517681 by Matt.Kuhlenschmidt

	Fix automated import not applying any texure settings to imported textures

Change 3517703 by Nick.Darnell

	Slate - Marking SWidget's destructor as virtual (it always has been because of the parent), but this makes it more obvious.

Change 3517737 by Nick.Darnell

	Slate - The retainer widget now only knows how to store the images in gamma space, rather than rendering in linear and storing using sRGB writes.  If you do it that way - you end up in a state of having premultiplied linear space stored in sRGB, and getting that back into a state that looks correct when you finally render it with the rest of Slate becomes very difficult, so to make things simpler

Change 3517758 by Nick.Darnell

	UMG - Updating the retainer box categories and visibility.

Change 3517795 by Nick.Darnell

	Slate - We now don't do inherited volatility if we're also caching.

Change 3517861 by Matt.Kuhlenschmidt

	Update windows USD to .75

Change 3517867 by Matt.Kuhlenschmidt

	Delete OpenEXR from USD dependencies.  It is no longer used

Change 3517873 by Matt.Kuhlenschmidt

	Updated USD windows binaries

Change 3517896 by Max.Chen

	Sequencer: Call SkyLightComponent's SetLightColor() directly, similar to LightComponent

	#jira UE-46669

Change 3518240 by Max.Chen

	Sequencer: Set needs update when binding.

	#jira UE-46619

Change 3518492 by Max.Chen

	Sequencer: If already at the correct play position, don't jump to it. This fixes a bug where if you play to a position and pause, resuming play will playforward and not keep pausing.

	#jira UE-45996, UE-45997

Change 3518997 by Max.Chen

	Fbx: Fix aperture width, height, focal length and field of view calculations.

	#jira UE-46754

Change 3520190 by Jamie.Dale

	Cleaned up SCC log spam when finding out-of-date dependencies

Change 3520237 by Yannick.Lange

	VR Editor: cleanup auto entry. Removed TimeSinceHMDChecked and added extra check for if there is currently a vr mode active.

Change 3520923 by Max.Chen

	Sequencer: Refactor displaying sequencer settings in editor so that they're always available and not only when the sequencer type is instantiated.

	#jira UE-46301

Change 3521212 by Matt.Kuhlenschmidt

	PR #3757: MAX_NAME_LENGHT -> MAX_NAME_LENGTH (Contributed by Josef-CL)


	#jira UE-46821

Change 3521216 by Matt.Kuhlenschmidt

	PR #3751: Spelling fix for ESlateVisibility comment (Contributed by Triplelexx)


	#jira UE-46810

Change 3521221 by Matt.Kuhlenschmidt

	PR #3733: UE-46683: Don't increment MovieIndex when playing next movie (Contributed by projectgheist)


	#jira UE-46683,UE-46714

Change 3521344 by Yannick.Lange

	Fix selection tools in the Levels editor window. After selecting all levels SWorldHierarchyImpl::OnUpdateSelection used GetSelectedTreeItems(). At that point the tree items were not updated yet and it would return the 'previous' items. Making it look like nothing happened. Instead WorldModel->GetSelectedLevels() had to be used to get the new list of selected levels (this was used in 4.16) and then convert the list of FLevelModel to the new system that uses WorldHierarchy::FWorldTreeItemID.
	#jira UE-46741

Change 3521825 by Joe.Graf

	#Xb1

	Added missing VectorSetFloat1 by copying the one in UnrealMathSSE.h

	#CodeReview: ben.woodhouse

Change 3522114 by Joe.Graf

	#Xb1

	Changed the missing VectorSetFloat1 to use MakeRegisterVector to be more consistent with other Xbox defines per Ben's code review

	#CodeReview: ben.woodhouse

Change 3524202 by Matt.Kuhlenschmidt

	Prevent resizing when a context menu is open.  This prevents a number of rare crashes when a window is resized when a child menu is open causing the child to lose connection to the parent (happens when the parent widgets are clipped and no longer processed).  This is consistent with behavior on windows and mac.

	#jira UE-46653

Change 3524263 by Bradut.Palas

	#jira UE-46671

	The issue happened because a parent callback of OnAssetRenameCommitted would allow an implicit sync and it would reset the search. Solved by blocking the parent callback if the user is searching.

Change 3524265 by Bradut.Palas

	#jira UE-46261

	Console command was doing something illegal. Opening a map from editor when multiprocess and client mode were enabled is prohibited by code in Playlevel.cpp (( !CanRunUnderOneProcess && PlayNetMode == EPlayNetMode::PIE_Client ))
	Solved by banning that specific use of the command.

Change 3524266 by Bradut.Palas

	#jira UE-45592

	The bug was caused by an iteration in EndPlayMap() that re-selected all previous actors but without the notify flag (hence, not triggering the code that validated showing the transform widget). Fixed by notifying just once per group, for performance reasons.

Change 3524585 by Bradut.Palas

	Back out changelist 3524265 until I can figure out why the build system doesn't like it.

Change 3525921 by Bradut.Palas

	Resubmitting revision 3524265 with properly guarded editor code (#if WITH_EDITOR)

Change 3526124 by Matt.Kuhlenschmidt

	Remvoe debug canvas proxy

Change 3526139 by Matt.Kuhlenschmidt

	Force low quality fallback mode on ES2 devices for slate blur widgets. This feature does not work on es2

Change 3526663 by Cody.Albert

	Fixed sequencer bindings to correctly work on streamed level in standalone preview mode

Change 3527028 by Cody.Albert

	Back out changelist 3526663

Change 3527241 by Cody.Albert

	Fixed sequencer bindings to correctly work on streamed level in standalone preview mode

Change 3527829 by Max.Chen

	Fbx: Add static transform values to curve data import.

	#jira UE-46888

Change 3527830 by Max.Chen

	Sequencer: Import static/default transforms and camera focal lengths from fbx.

	#jira UE-46888

Change 3528768 by Matt.Kuhlenschmidt

	Refactor of GetDetailsView method on IDetalLayoutBuilder for some upcoming changes.  There is no longer a guarantee that a physical details panel is present wwhen customizing a property so GetDetailsView now returns a pointer and will be null if no details view exists.  This refactor is necessary for a change to allow us to make loose property widgets for use outside of a details view.

Change 3528776 by Yannick.Lange

	Allow thumbnails to be captured from a viewport always.

	#jira UE-45392

Change 3530675 by Michael.Dupuis

	#jira UE-46913	: Added extra validation to prevent possible crash

Change 3530991 by Matt.Kuhlenschmidt

	Added ability for users to specifiy usd plugins for the USD importer

Change 3531110 by Matt.Kuhlenschmidt

	Added automated import support for USD.
	Automated import now also supports loading a level per import group so that factories may spawn actors and manipulate the level

Change 3531119 by Matt.Kuhlenschmidt

	USD Scene import now uses actor factories to determine the correct actor type to spawn for an asset specified in USD

Change 3531220 by Jamie.Dale

	Fixed some places that were iterating over sets/maps using their element indices as if they were the sparse indices

Change 3531831 by Cody.Albert

	BP nodes can no longer be renamed on read-only graphs.

Change 3531938 by Yannick.Lange

	Enable setting justification at runtime for multi-line text boxes.
	#jira UE-44801

Change 3533011 by Matt.Kuhlenschmidt

	Exporting render targets now chooses PNG if the render target format is an LDR format

Change 3533370 by Arciel.Rekman

	Fix comparison of the RT format.

Change 3533717 by Nick.Darnell

	Slate - Adding justification to SEditableText and SpinBox, also adding the field for UMG.

Change 3534756 by Arciel.Rekman

	Linux: add path to bundled GL headers.

	- Seems like we have been implicitly relying on it being added someplace else or simply present in the system.
	- Change by Cengiz.Terzibas

Change 3535421 by Arciel.Rekman

	Reduce SCW logspam on Linux (UE-46634)

	#jira UE-46634

Change 3537520 by Matt.Kuhlenschmidt

	PR #3780: Fix typo steam to stream (Contributed by YuchenMei)


Change 3537539 by Nick.Darnell

	UMG - Fixing a bug with aspect ratio locking cameras when in HDPI mode, the spaces were slightly different.  Moving over the code that calculates the offsets to function in normalized space, so that it's trivial to combine with the existing normalized viewport dimensions and offset information, without space confusion.

Change 3537542 by Nick.Darnell

	UMG - Fixing some bugs with the retainer widget which was not properly resetting or registering the hit testing information when rendered every frame.  This should fix some issues that have been seen with clicks locking the viewport rendering, or not being clickable.

Change 3537596 by Alexis.Matte

	Fbx SDK 2018.1.1 Integration

	#jira UE-45070

Change 3537672 by Matt.Kuhlenschmidt

	Simple fix for seconds of time being spent refreshing the settings editor if commands are registered while it is open.  The request to refresh is deferred until next tick, meaning that each command list registered in a frame is not refreshing the details panel.

Change 3537796 by Alexis.Matte

	Make sure all general settings are persist when we re-import a staticmesh from fbx file.
	#jira UE-46829

Change 3537961 by Michael.Dupuis

	#jira UE-47222: Prevent possible crash in some bad drag & drop case

Change 3538149 by Alexis.Matte

	Make sure we export NTB information instead of just the normal when exporting to fbx
	#jira UE-46785

Change 3538237 by Alexis.Matte

	Fix import of large fbx scene (over 2 Gb) pr #3784
	#jira UE-47124

Change 3538270 by Lauren.Ridge

	Epic Friday: Preview scenes in material editors

Change 3539707 by Yannick.Lange

	Optimize viewport interactor hitresult for laser. Store the first hitresult and use that when calling UViewportInteractor::GetHitResultFromLaserPointer multiple times a frame.

Change 3539964 by Lauren.Ridge

	Fix for cubemap not persisting between loads

Change 3540321 by Arciel.Rekman

	Linux: CEF rebuilt with fewer dependencies (UE-46433).

	- Removed source-only binary to save size (we can link to the runtime one, this also allows RPATH to be generated automatically).
	- Change by Cengiz.Terzibas, polished by RCL.

Change 3540458 by Alexis.Matte

	Fix the HDR pixel inspector. The HDR value is now RGBA in editor viewport and RGB in Game mode.
	#jira UE-47199

Change 3540681 by Arciel.Rekman

	Linux: fix flickering (UE-46351) - redoing fix from 4.17

	- Slate rendering policy can set a scissor rect equal to a (smaller) window, which would get inherited by the scene renderer later.

	#jira UE-46351

	(Redoing the fix from CL 3538578 in 4.17).

Change 3540838 by Matt.Kuhlenschmidt

	Fix locked actors still being moved by piloting them

Change 3542212 by Nick.Darnell

	Slate - Fixing a crash with per character wrapping.  When used in rich text fields, it can cause a crash due to negative lengths for measurements, due to the way we calculate start and end indexes.  New code now ensures the End is always >= to the Start.

Change 3544033 by Arciel.Rekman

	Drop and deprecate /-prefixed commandline switches.

	- Dropped on all platforms except Windows, where it will produce a warning. Complete drop is expected in 4.19.

Change 3544213 by Nick.Darnell

	Slate - Fixing another potential crash with the slate loading thread.  The default movie player was listening for map load finishing using the AddSP callaback, which means the weakptr would be accessed, switching these over to AddRaws to be safer.

Change 3546113 by Nick.Darnell

	Slate - Resurecting the slate visualizer support in the slate renderer for batch visualization, and overdraw.

Change 3547129 by Michael.Trepka

	Few small changes that make UnrealBuildTool faster when running on Mono

Change 3547454 by Jamie.Dale

	Added search to editable texts

Change 3547460 by Jamie.Dale

	The output log now applies a search to its editable text when filtering

	This highlights the term matches on each line

Change 3548177 by Jamie.Dale

	Optimized PO entry look-up

Change 3548287 by Matt.Kuhlenschmidt

	Fix one off speedtree crash

	#jira UE-47538

Change 3548377 by Lauren.Ridge

	Checking that the Environment Map Path is set before trying to load it.

	#jira UE-47365

Change 3548628 by Matt.Kuhlenschmidt

	Fix focus graphic for tabs not pointing to the correct image

Change 3549289 by Max.Chen

	Movie Scene Capture: Move window to within the desktop bounds when resizing.

	#jira UE-37330

Change 3549290 by Arciel.Rekman

	Fix hlslcc not working properly with newer clangs.

	- Both the clang 3.8+ problem and UB reported by UBSan.

Change 3550573 by Max.Chen

	Sequencer: Track drag drop.

	Implement drag and drop onto a camera track, subscene track, and cinematic shot track.

	#jira UE-45773
	#jira UE-45387

Change 3550729 by Max.Chen

	Sequence Recorder: Add interpolation and tangent settings for animation recording keys

	#jira UE-46146

Change 3551558 by Nick.Darnell

	UMG - Tweaking some designer elements, playing around with a 'real-time' mode.  Also fixing a bug with decendant widgets in named slots not triggering design effects like updating the widget switcher.

	#jira UE-39404

Change 3551671 by Joe.Graf

	Merged over the change to expose more of dormancy to Blueprints (UE-46240)

Change 3551684 by Cody.Albert

	Removing some unused code from map check

Change 3552673 by Yannick.Lange

	Fix crash select all levels with folders in the treewidget.

Change 3552960 by Yannick.Lange

	Frontend filter for files referenced by any level in the project and a filter for not referenced by any level.
	#jira UE-22153

Change 3553727 by Max.Chen

	Sequencer: Capture thumbnail before pre save so that the thumbnail isn't captured with the evaluation in a reset state.

	#jira UE-47693

Change 3553778 by Arciel.Rekman

	Cache check for compiler availability (UE-47699).

	-  Fixes performance drop in the blueprint editor. Better than caching in a particular source accessors because affects all accessors (incl. Mac which isn't cached either) and reduces calls.

Change 3554128 by Matt.Kuhlenschmidt

	Null out GEditor after it has been destoyed.  Any modules that access GEditor can now properly check for a null geditor instead of blindly accessing it

Change 3554266 by Max.Chen

	Movie Scene Capture: Override cinematic mode in the movie scene capture.

	#jira UE-33473

Change 3555563 by Alexis.Matte

	Fix static mesh screensize lost when converting from an old version. The conversion require valid extended bounds which was converted after the LOD screensize.

	#jira UE-47697

Change 3555755 by Yannick.Lange

	VR Editor: Add exit button inside new menu called "system" on radial menu. Still needs correct icons.

Change 3556334 by Matt.Kuhlenschmidt

	Added a new type of property editor called a property row generator.  This is essentially a details panel that can generate each unique row but adds no visual styling around the property editors and does not generate a master tree widget for the properties.  This is useful for creating proper widgets for properties and displaying them in a UI that is not the details panel

Change 3558100 by Matt.Kuhlenschmidt

	PR #3823: Incorrect comment syntax in ini files (Contributed by projectgheist)


Change 3558240 by Lauren.Ridge

	Move floor in material editor preview scene based on preview mesh

Change 3558242 by Matt.Kuhlenschmidt

	Fix console variables help page showing only rendering cvars by default

Change 3558243 by Matt.Kuhlenschmidt

	Fix static analysis

Change 3558342 by Alexis.Matte

	Make the code to find the best sample rate to import fbx animation more simple and more robust. The code need to be able to support all the possible case.
	Add a lot of animation sample rate automation tests

	#jira UE-47342

Change 3558515 by Yannick.Lange

	VR Editor: Changed icon for system and exit button on radial menu.

Change 3558973 by Matt.Kuhlenschmidt

	Fix camera placement of the default map

Change 3559230 by Arciel.Rekman

	Do not link CEF3 for servers (UE-47721).

Change 3559572 by Arciel.Rekman

	Linux: make sure the engine is rebuilt during the updates.

Change 3560197 by Arciel.Rekman

	Linux: cosmetic cleanup of an old code.

Change 3560904 by Max.Chen

	Movie Scene Capture: Expose "Open Folder" hyperlink while capturing.

Change 3561213 by Matt.Kuhlenschmidt

	Enable USD by default in QA game for testing

Change 3561928 by Matt.Kuhlenschmidt

	Fix green glowing in the mateiral editor

	#jira UE-47826

Change 3562259 by Arciel.Rekman

	Made FPlatformMisc::DebugBreak() not inlined on Linux.

	- Saves a great deal of binary size without really impacting a performance.

Change 3562630 by Arciel.Rekman

	Make Linux editor compilable with clang 5.0-rc1.

Change 3563564 by Yannick.Lange

	Fix Cube Static Mesh Thumbnail renders black. Cleared out the thumbnail, causing it to create the correct new one.
	#jira UE-47777

Change 3564529 by Jamie.Dale

	Const-correct UScriptStruct::ExportText

Change 3564972 by Alexis.Matte

	Fix staticmesh merge applying build scale multiple time Git PR #3807
	#jira UE-47645

Change 3565253 by Arciel.Rekman

	Fix "Anim to Play" being inaccessible after import (UE-47885).

	- The variable was not initialized and could remain false on Linux.

	#jira UE-47885

Change 3565293 by Jamie.Dale

	Merged "Categories" into the main Output Log filter list

Change 3565939 by Alexis.Matte

	Back out revision 3 from //UE4/Dev-Editor/Engine/Source/Developer/MeshMergeUtilities/Private/MeshMergeHelpers.cpp

Change 3566081 by Alexis.Matte

	Fix staticmesh merge applying scale twice PR #3807
	#jira UE-47645

Change 3566232 by Matt.Kuhlenschmidt

	Fix edit inline properties not clipping properly

	#jira UE-47775

[CL 3567077 by Matt Kuhlenschmidt in Main branch]
2017-08-01 15:55:31 -04:00