Commit Graph

30 Commits

Author SHA1 Message Date
aurel cordonnier
8eebe8841f Merge UE5/RET @ 16305968 to UE5/Main
This represents UE4/Main @ 16261013 and Dev-PerfTest @ 16259937

[CL 16306996 by aurel cordonnier in ue5-main branch]
2021-05-12 18:10:03 -04:00
Johan Torp
0288593c81 Remove ~15% of allocations during game startup of an internal demo
#preflight 607d9fce29083200014b8d7e
#rb pj.kack

[CL 16059702 by Johan Torp in ue5-main branch]
2021-04-20 07:53:26 -04:00
Arne Schober
3bf935d1ce Explicitly tagging IsInRenderingThread, IsInGameThread etc. functions to be able to move them between theads in the future. The old behaviour is still in packe to verify the new system, but will be removed in the future.
#RB Andriy.Tylychko, Jonas.Meyer

[CL 13825935 by Arne Schober in ue5-main branch]
2020-07-02 13:21:15 -04:00
ryan durand
0f0464a30e Updating copyright for Engine Runtime.
#rnx
#rb none


#ROBOMERGE-OWNER: ryan.durand
#ROBOMERGE-AUTHOR: ryan.durand
#ROBOMERGE-SOURCE: CL 10869210 via CL 10869511 via CL 10869900
#ROBOMERGE-BOT: (v613-10869866)

[CL 10870549 by ryan durand in Main branch]
2019-12-26 14:45:42 -05:00
richard wallis
9b644cd0a4 FMac Startup movie stuttering:
1) Change FSlateLoadingSynchronizationMechanism busy wait to yeild on destory and reduce sleep on thread exit wait.
2) Optimization: Remove busy wait blocking call on load next movie - make it async again.
3) Optimization: Don't do double texture data copy - which it seems to always do if it has another frame ready - copy straight to target texture (reduces CPU time by about 30% total in its ::tick() function.

#jira UE-70178
#rb Michael.Trepka, matt.kuhlenschmidt

#ROBOMERGE-SOURCE: CL 5419610 in //UE4/Release-4.22/...
#ROBOMERGE-BOT: RELEASE (Release-4.22 -> Main)

[CL 5419611 by richard wallis in Main branch]
2019-03-15 13:55:35 -04:00
Chris Gagnon
8fc25ea18e Merging //UE4/Dev-Main to Dev-Editor (//UE4/Dev-Editor)
#rb none

[CL 4676797 by Chris Gagnon in Dev-Editor branch]
2019-01-02 14:54:39 -05:00
Matt Kuhlenschmidt
cde8160913 Merging //UE4/Dev-Main to Dev-Editor (//UE4/Dev-Editor)
#rb none

[CL 4572510 by Matt Kuhlenschmidt in Dev-Editor branch]
2018-11-16 11:15:08 -05:00
Cody Albert
7959eae3b9 Adjusted sleep time for message pumping in FSlateLoadingSynchronizationMechanism::DestroySlateThread
#rb matt.kuhlenschmidt
#rnx

[CL 4570345 by Cody Albert in Dev-Editor branch]
2018-11-15 14:39:44 -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
Marcus Wassmer
0341e5d5c1 Copying //UE4/Dev-Rendering to //UE4/Dev-Main (Source: //UE4/Dev-Rendering @ 3607928)
#lockdown Nick.Penwarden

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

Change 3441680 by Uriel.Doyon

	Added units to point light intensity, to allow the user to specify the value in candelas or lumens.
	New point light actors now configure the intensity in candelas by default.
	Replaced viewport exposure settings by an EV100 slider.
	Hidding the tone mapper in the show flag now still applies the exposure.
	Added a new AutoExposure method called EV100 which allows to specify :
	- MinEV100, MaxEV100
	- Calibration Constnat
	- Exposure Compensation
	#jira UE-42783

Change 3454934 by Chris.Bunner

	Backing out changelists 3441680, 3454636 and 3454844 for the sake of integration stability.

Change 3512118 by Marc.Olano

	Fix rare Sobol shader data problem. Mismatch with CPU code after a large number of points

	Resubmit of portion of //UE4/Dev-Rendering@3509854 that was rolled back to avoid massive shader recompiles during integration testing

Change 3512129 by Benjamin.Hyder

	Fixing up content in TM-SobolNoise

Change 3512151 by Rolando.Caloca

	DR - Fixed some layouts that were general
	- Added some extra dump information

Change 3512160 by Benjamin.Hyder

	Still Fixing TM-Sobol

Change 3512180 by Marc.Olano

	PCSS for spotlights. Like directional PCSS this is experimental, activated by r.Shadow.FilterMethod.

Change 3512261 by Michael.Lentine

	Move Subsurface to shared properties.

	Previously the same code could be executed multiple times without being optimized out if multiple inputs used the same subsurface output.

	#jira UE-44405

Change 3512288 by Rolando.Caloca

	DR - Fix issue when recycling image handles

Change 3512338 by Michael.Lentine

	Fix precision if user enters a multiple of 90 degree rotation for transforms.

	This will only work for exact values. Generally comparing float point numbers using == is unsafe but it should be ok in this case as they are exact values entered from the UI. We may want to later expand this to include thresholding using a value ~1e-7.

	#jira UE-46137

Change 3512424 by Michael.Lentine

	Regenerate BaseColor.uasset and Specular.uasset to not have the notforclient flags set.

	#jira UE-44315

Change 3512686 by Brian.Karis

	Fix for quadric assert in infiltrator. Due to bad tangents in source mesh.

Change 3512696 by Brian.Karis

	Unrevert TAA. Fixed DOF NaN artifacts

Change 3512717 by Marcus.Wassmer

	PR #3714: Fix typo in EOcclusionCombineMode (Contributed by Mumbles4)


Change 3513112 by Richard.Wallis

	Crash when packaging for iOS with Shared Material Native Libraries and Share Material Shader Code from windows platform.  Offline shader compile for archiving not done - shader header has missing offline compile flag for native Metal library archiving.

	Fix includes:
	- Handle offline compile failure when not running on Mac and no remote is configured (or remote fails). (I think it's this point at which the crash in the bug report is at).
	- Make sure remote can build for native Metal libraries and archive correctly - this should now support Linux platforms or Mac to Mac (if enabled in MetalShaderCompiler.cpp) for testing if required.
	- Updated to include remote calling into the xcode 9 Metal pch fix already submitted by Mark Satt.

	#jira UE-45657

Change 3513357 by Richard.Wallis

	Windows compile fix.

Change 3513375 by Guillaume.Abadie

	Exposes the possibility to manually destroy the GPU ressource of UTextureRenderTarget2D.

Change 3513685 by Richard.Hinckley

	#jira UEDOC-3822
	Fixing a comment that refers to a non-existent function, for documentation purposes.

Change 3513705 by Marc.Olano

	Updates to Sobol test levels in RenderTest project

Change 3513730 by Rolando.Caloca

	DR - Fix mip size copying resolve targets
	- Fix compute fence
	- Fix descriptor set texture layout
	- More dump info

Change 3513742 by Marc.Olano

	Texture-free numeric print for shader debugging

Change 3513777 by Daniel.Wright

	Handled edge case where no furthest samples are found in precomputed visibility

Change 3514852 by Rolando.Caloca

	DR - Fix -directcompile on SCW

Change 3515049 by Rolando.Caloca

	DR - hlslcc dump crash fix

Change 3515167 by Rolando.Caloca

	DR - hlslcc - Fix bogus string pointer
	- Allow reading from non-scalar UAVs

Change 3515745 by Rolando.Caloca

	DR - Linux compile fix

Change 3515862 by Rolando.Caloca

	DR - Remove old reference to CCT
	- Link with hlslcc debug libs on SCW debug config for easier debugging

Change 3516292 by Rolando.Caloca

	DR - glslang exe fixes

Change 3516568 by Rolando.Caloca

	DR - hlslcc - Copy fix for *Buffer as functionparameters

Change 3516659 by Marcus.Wassmer

	Fix some d3derrors with distance fields

Change 3516801 by Daniel.Wright

	Fixed crash when doing editor 'Force Delete' on a static mesh whose distance field is still being built.  Any UObject reference that is to an asset can be NULL'ed by the editor.

Change 3516825 by Rolando.Caloca

	DR - Some initial fixes for structured buffers

Change 3516843 by Rolando.Caloca

	DR - Fix for Vulkan dist fields

Change 3516869 by Marcus.Wassmer

	Add format to the createrendertarget blueprint node

Change 3516957 by Daniel.Wright

	Fixed bUsesDistortion being editable

Change 3516965 by Daniel.Wright

	Still mark the distance field task completed, even if the static mesh has been deleted

Change 3517039 by Yujiang.Wang

	GitHub #2655: Optimization for shadow map resolution selection for spot lights

	* Use the radius of the inscribed sphere at the cone end as the spot light's screen radius

	Note: slight drop of shadow quality of spot lights may occur when they are far away from the camera. This is intended, since before this optimization they tend to be always rendered with the maximum shadow map resolution (2048), which is very costly

	#jira UE-33982

Change 3517069 by Yujiang.Wang

	Fix for ScissorRect settings in d3d11 being lost under certain scenarios

	* Scissor rectangle is always enabled in the low-level d3d11 pipeline, and it is expected that at least one ScissorRect is present no matter whether RHISetScissorRect is called with bEnable=false (when it is false we just use a big rect to make it effectively disabled)
	* However FD3D11StateCacheBase::ClearState() clears all the states, which removes scissor rectangles and causes problems for certain routines (FScene::UpdateSkyCaptureContents)
	* Now SetScissorRectIfRequiredWhenSettingViewport will always set a effectively disabled ScissorRect on each FD3D11DynamicRHI::RHISetViewport call, just like d3d12 does

	#jira UE-45465 UE-44760

Change 3517134 by Yujiang.Wang

	CIS fix

Change 3517662 by Rolando.Caloca

	DR - Execute upload Vulkan cmds on the RHI thread
	- Fix crash with structured buffer

Change 3517677 by Rolando.Caloca

	DR - Update/copy textures on RHI thread

Change 3517680 by Rolando.Caloca

	DR - Copy texture bulk data on rhi thread

Change 3517748 by Marcus.Wassmer

	temporary workaround for one class of GPU crashes

Change 3518832 by Rolando.Caloca

	DR - Copy & extend 3518077
	- Fix for movable skylight shader missing on simple forward (low lighting quality mode)

Change 3519973 by Richard.Wallis

	Jittering in Engine Menu Dropdown Options.  Jitter fix: Fix some areas that hadn't been changed from RoundToInt (from previous CL's) to CeilToInt.

	#jira UE-46505

Change 3520849 by Uriel.Doyon

	Fixed issue with investigate texture command and dynamic component entries.

Change 3521064 by Guillaume.Abadie

	Returns absolute path of shader files on error to avoid work loss in visual studio that can't figure out that a sln relative and absolute path might leading to same file on disk.

Change 3521834 by Rolando.Caloca

	DR - Fix decals on Vulkan

Change 3521892 by Rolando.Caloca

	DR - Fix Vulkan texture streaming

Change 3523181 by Rolando.Caloca

	DR - Copy from 3523176
	UE4.17 - Fix Vulkan scissor causing text to not clip

Change 3523534 by Yujiang.Wang

	UE-46631: Implement a scalable LongGPUTask to fix ProfileGPU

	* A new, scalable, platform-independent IssueLongGPUTask is now implemented in UtilityShaders
	* Removed IssueLongGPUTask and G*Vector4VertexDeclaration from RHI implementations
	* The measurement of the execution time of a basic LongGPUTask unit is kicked off on the very first frame

	#jira UE-46631

Change 3524552 by Yujiang.Wang

	Fix iteration number calculation of LongGPUTask

Change 3524975 by Joe.Graf

	Moved the Hamming-weight function from StaticMeshDrawList.inl to FGenericPlatformMath
	Added SSE versions using _mm_popcnt_u64 for platforms that support it
	Added a SSE check to gracefully exit when missing the instruction and it was expected to be there

	#CodeReview: arciel.rekman, brian.karis

Change 3525306 by Daniel.Wright

	Fixed ensure from LPV

Change 3525346 by Rolando.Caloca

	DR - Fix linking issue

Change 3525459 by Daniel.Wright

	Volumetric Lightmaps - higher quality precomputed GI on dynamic objects and GI on Volumetric Fog
	* Enabled by default on all maps, effective after a lighting build.  This replaces the existing Precomputed Light Volume and Indirect Lighting Cache features.
	* New Lightmass World Settings: VolumeLightingMethod, VolumetricLightmapDetailCellSize and VolumetricLightmapMaximumBrickMemoryMb.
	* Lightmass computes lighting samples in an adaptive grid, with higher density around geometry inside the importance volume.  Positions outside the importance volume get lit with the border texels.
	* Improved Lightmass volume solver to use importance photons and full adaptive final gather, so volume samples have similar quality to 2d lightmaps.
	* A static indirection texture is built covering the importance volume and flattening the brick tree by storing the offset to the highest density brick at each indirection cell.
	* Seamless and efficient GPU interpolation across density levels is achieved by adding a single row of padding to bricks, copied from neighbors, and stitching up bricks with lower density neighbors
	* The Volumetric lightmap stores Irradiance as a 3 band SH, which is 27 floats, quantized into 28 bytes, 7 texture lookups.
	* A full screen barebones material using Volumetric Lightmaps costs .42ms on 970 GTX, while Indirect Lighting Cache Point costs .32ms
	* Sky bent normal is also stored for stationary skylights and Directional Light Shadowing for Single Sample Shadow receiving.
	* Volumetric fog, Movable components, unbuilt Static Components, SingleSampleShadow receiving and Capsule Shadows use Volumetric Lightmaps if available
	* New Visualization show flag for Volumetric Lightmap sample points
	* Level streaming of volume light data is not currently supported with this method

Change 3525461 by Daniel.Wright

	Lowered default r.Shadow.RadiusThreshold for Epic shadow settings as it was causing a lot of visible artifacts from small objects popping out.  This will increase shadowmap cost slightly (13.5ms RT -> 14.3ms RT in Fortnite on PS4, no measurable GPU difference).

Change 3526459 by Rolando.Caloca

	DR - Fix validation error

Change 3526474 by Rolando.Caloca

	DR - Integrate from GV

Change 3526487 by Daniel.Wright

	Disabled Volumetric Lightmap filtering with neighbors due to artifacts
	Fix linux compile errors

Change 3526833 by Rolando.Caloca

	DR - Workaround for hlslcc

Change 3526991 by Uriel.Doyon

	Integrated 3526859 : Texture mip bias is now reset whenever the streaming budget increases. This fixes an issue where textures persistently become low res after a memory spike.

Change 3527574 by Rolando.Caloca

	DR - Added some missing resource entries for SCW direct mode

Change 3527625 by Rolando.Caloca

	DR - Copy from 3527113
	UE4.17 - Fix Vulkan not calling Present

Change 3528461 by Brian.Karis

	Support larger hash sizes. Added uint list hashing function.

Change 3528780 by Rolando.Caloca

	DR - Default Vulkan resources

Change 3528818 by Rolando.Caloca

	DR - glslang - Added missing accessor

Change 3528839 by Rolando.Caloca

	DR - Fix virtual path issue when using non-engine relative absolute paths

Change 3528900 by Daniel.Wright

	Fixed variable shadowing

Change 3529039 by Rolando.Caloca

	DR - Read Spirv reflection data (not used yet)

Change 3529040 by Joe.Graf

	Fixed the 32bit compile failures for the popcnt optimization

	#CodeReview: arciel.rekman

Change 3529060 by Rolando.Caloca

	DR - hlslcc - New flag for keeping resource names

Change 3529344 by Rolando.Caloca

	DR - Delete unused file

Change 3529723 by Brian.Karis

	Fixed static analysis cleaner.

Change 3531357 by Michael.Trepka

	Updated Mac glslang libraries with latest changes. Also, updated the Xcode project (generated with CMake) and moved it to a different location so that it no longer uses hardcoded absolute paths. It should be easy to rebuild these libraries in the future.

Change 3531517 by Joe.Graf

	Added support for ddx_fine, ddy_fine, ddx_coarse, ddy_coarse to hlslcc

	#CodeReview: arciel.rekman, mark.satterthwaite, rolando.caloca

Change 3531626 by Joe.Graf

	Mac version of the popcount optimization
	Changed Linux version to use the same builtin

	#CodeReview: mark.satterthwaite, arciel.rekman

Change 3531837 by Chris.Bunner

	SetScissorRectIfRequiredWhenSettingViewport sets the viewport size by default rather than disabling the scissor rect.

	#jra UE-46753

Change 3533415 by Joe.Graf

	Renamed the SSSE3 checks per feedback

	#CodeReview: arciel.rekman

Change 3533480 by Michael.Lentine

	Use more accurate descriptions for shader recompile options

Change 3533511 by Joe.Graf

	Updated the GenericPlatformMisc to match the SSSE3 name change

	#CodeReview: arciel.rekman

Change 3533521 by Marcus.Wassmer

	Fix scenerenderer leak when updating out of view planar reflections

Change 3533528 by Joe.Graf

	Updated comments

	#CodeReview: n/a

Change 3533608 by Mark.Satterthwaite

	New manual Xcode project for glslang so that we include all the necessary code and can link again.

Change 3534260 by Mark.Satterthwaite

	Fix the Xcode 9 Beta 3 compile errors in MetalRHI without breaking Xcode 8.3.3.

Change 3535789 by Yujiang.Wang

	Fix for wrong hair shading in forward shading

	* IBL reflections should be turned off for hairs

Change 3537059 by Ben.Marsh

	Fixing case of iOS directories, pt1

Change 3537060 by Ben.Marsh

	Fixing case of iOS directories, pt2

Change 3538297 by Michael.Lentine

	Add shader comparison test.

	Adding the basic test case.
	Adding logic to Common.ush to enable FP16 conditionally on a define (which is not set by default)
	Adding more exported functionality to automation for use in the shader test.

Change 3538309 by Michael.Lentine

	Add missing file from Shader Test CL.

Change 3538751 by Michael.Lentine

	Add missing pragma once.

Change 3539236 by Michael.Lentine

	Do not ignore return values.

Change 3539237 by Michael.Lentine

	Check in the correct file

Change 3540343 by Rolando.Caloca

	DR - Added t.DumpHitches.AllThreads

Change 3540661 by Yujiang.Wang

	Fix spot tube light direction

	* The tube direction for a spot light was pointing along the light direction, now it is along the local Z axis which is perpendicular to the light direction. Lightmass is also touched
	* A new LightTangent is added to FDeferredLightData
	* Packed all the values from LightSceneProxy->GetParameters into a single FLightParameters struct to avoid copy-pasting them everywhere

Change 3541129 by Rolando.Caloca

	DR - vk - Copy all Vulkan fixes from 4.17

Change 3541347 by Yujiang.Wang

	Fix wrong ViewFlags being set between objects when rendering shadow depth maps

	* Bug caused by trying to share DrawRenderState between objects, but SetViewFlagsForShadowPass was designed to start from a fresh render state
	* Now SetViewFlagsForShadowPass recalculates and sets the flags on each call

Change 3542603 by Rolando.Caloca

	DR - vk - Allow sharing samplers on Vulkan

Change 3542639 by Jian.Ru

	Changed warning text to better indicate that global clip plane needs to be enabled for planar reflection
	#RB Marcus.Wassmer

Change 3543167 by Michael.Lentine

	Fix naming for the shader comparison tests.

Change 3543210 by Uriel.Doyon

	Fixed an issue when computing material scales where the default material ends up being used instead of the required material.
	In that case, we used the default settings for texture streaming (assuming a scale of 1).

Change 3543221 by Brian.Karis

	Simplifier optimizations

Change 3543239 by Arciel.Rekman

	hlslcc: remove FCustomStd* workarounds.

	- This was previous attempt to work around problems arising from different STL used for building libhlslcc (in the cross-toolchain) and possibly different STL used for building engine (on the system).
	- The same problem has been resolved by bundling libc++.

Change 3543946 by Michael.Lentine

	Add comparison output.

Change 3544277 by Brian.Karis

	Fixed uninitialized var error

Change 3544404 by Rolando.Caloca

	DR - Fix broken textures

Change 3544503 by Jian.Ru

	Ensure lighting failure delegates are always called
	#RB Marcus.Wassmer,Daniel.Wright
	#3689

Change 3545241 by Daniel.Wright

	Fixed spotlight whole scene shadows using a radius 2x too long

Change 3545347 by Daniel.Wright

	Fixed shadow occlusion culling broken by shadowmap caching change.  FProjectedShadowKey is now computed correctly for whole scene shadows and SDCM_StaticPrimitivesOnly shadowmaps will fall back to the query for a SDCM_MovablePrimitivesOnly, since the static primitives shadowmap's query is not issued every frame.

Change 3546196 by Marcus.Wassmer

	Fix minor typo

Change 3546459 by Daniel.Wright

	ULevel::PostEditChangeProperty recreates rendering resources if MapBuildData is modified - fixes a crash when Force Deleting the MapBuildData package.

Change 3546469 by Jian.Ru

	Take into account CVarStaticMeshLODDistanceScale during static mesh LOD calculation

Change 3546804 by Daniel.Wright

	[Copy] Added SendAllEndOfFrameUpdates draw event to wrap skin cache events

Change 3546814 by Daniel.Wright

	[Copy] Only use skylight OcclusionMaxDistance for the global distance field if it casts shadows

Change 3546815 by Daniel.Wright

	[Copy] Snap volumetric fog light function target resolution to a factor of 32 to avoid constant texture reallocation

Change 3546817 by Daniel.Wright

	[Copy] Warmup time warning

Change 3546828 by Daniel.Wright

	[Copy] Fixed UWorld::DestroyActor in PIE calling InvalidateLightingCacheDetailed which can do a FlushRenderingCommands and cause a large hitch

Change 3546836 by Daniel.Wright

	[Copy] ULightComponent::InvalidateLightingCacheInner uses MarkRenderStateDirty instead of slow reregister + FlushRendingCommands, and only for lights which might have static lighting data

Change 3546849 by Rolando.Caloca

	DR - vk - Fix missing samplerstates
	- Fixes for structured buffers
	- Add missing Draw and Dispatch Indirect

Change 3547516 by Brian.Karis

	Linear time 5-coloring for planar graphs.

	Brought in the Planarity library written by John Boyer, heavily edited and trimmed down to only include code necesary for graph coloring. Put behind a simple wrapper.

Change 3547542 by Brian.Karis

	Linear time 5-coloring for planar graphs.

	Brought in the Planarity library written by John Boyer, heavily edited and trimmed down to only include code necesary for graph coloring. Put behind a simple wrapper.

Change 3547563 by Brian.Karis

	Fixed some compiler warnings and hopefully some errors.

Change 3547610 by Brian.Karis

	Replaced macros with inlined functions

Change 3547620 by Brian.Karis

	Clean up includes

Change 3547770 by Marcus.Wassmer

	GPU Crash for MTBF analytics

Change 3547773 by Marcus.Wassmer

	Updated doxygen comment for new analytic

Change 3548244 by Rolando.Caloca

	DR - Fix for translucency

Change 3548352 by Yujiang.Wang

	Added soft source radius for point and spot lights

	* Soft source radius controls how 'blurry' the shape of specular lighting looks
	* Implemented by LobeRoughness modification
	* Better approximation for spherical lights so that they don't look sharp when the radius is large using 'smoothed representative point' method
	* Suppoted LightTangent in forward shading

Change 3548530 by Brian.Karis

	Fix for mac build

Change 3548770 by Rolando.Caloca

	DR - vk - Prereq work for Vulkan parallel RHI contexts

Change 3548772 by Jian.Ru

	Fixed an issue that caused an ensure when switching levels in D3D10. #rb Marcus.Wassmer

Change 3548865 by Daniel.Wright

	With shadowmap caching of whole scene shadows, only one of the cache modes issues an occlusion query.  Fixes a crash where the static primitive shadowmap is culled but the movable primitive shadowmap is visible, which is normally not possible.

Change 3548952 by Rolando.Caloca

	DR - Allow separate samplers in the shaders on Vulkan

Change 3549197 by Marcus.Wassmer

	Fix DX12 PIx not working in cooked builds

Change 3549209 by Daniel.Wright

	Occlusion culling for CSM, from the main camera, controlled by 'r.Shadow.OcclusionCullCascadedShadowMaps'.  Disabled by default as rapid view changes don't work well with latent occlusion queries.

Change 3549943 by Ben.Marsh

	Include better diagnostic information when a modified build product is detected after running a build step.

Change 3550546 by Rolando.Caloca

	DR - Fix merge issue

Change 3550962 by Marcus.Wassmer

	EarlyZ Masking requires full depth prepass, so just force it to.

Change 3551062 by Daniel.Wright

	Handle NULL skylight

Change 3551104 by Rolando.Caloca

	DR - vk - Remove assert to match other platforms

Change 3551221 by Rolando.Caloca

	DR - vk - Add mirror clamp to edge extension
	- Fix framebuffer deletion

Change 3551224 by Daniel.Wright

	Volumetric lightmap increase density around static lights affecting a voxel brighter than LightBrightnessSubdivideThreshold.

Change 3551495 by Rolando.Caloca

	DR - vk - Intiial support for async queue

Change 3552101 by Rolando.Caloca

	DR - vk - Fix for async

Change 3552102 by Rolando.Caloca

	DR - SkinCache - Fix potential leak on staging buffers for recompute tangents
	- Integrate changes from 4.17 for memory optimizations

Change 3552104 by Rolando.Caloca

	DR - vk - Support for SRVs for index buffers

Change 3552838 by Rolando.Caloca

	DR - vk - Enable debug markers if found

Change 3553106 by Rolando.Caloca

	DR - vk - Fixes for index buffer SRVs

Change 3553107 by Rolando.Caloca

	DR - vk - Enable recompute tangents on Vulkan

Change 3553154 by Rolando.Caloca

	DR - vk - Fix crash with null uav

Change 3553342 by Yujiang.Wang

	Fix redundant skylights in AdvancedPreviewScene

	* PreviewScene was changed to using a skylight instead of ambient cubemap to support forward shading
	* AdvancedPreviewScene originally had a skylight, now it is changed to using the one inherited from PreviewScene

Change 3553481 by Rolando.Caloca

	DR - Integrate fix for D3D12 support of index buffers SRVs

	#jira UE-47674

Change 3553715 by Rolando.Caloca

	DR - Fix crash when launching PC with -featureleveles31

Change 3553725 by Rolando.Caloca

	DR - Redo fix

Change 3553803 by Rolando.Caloca

	DR - Shader compile fixes for ES3.1

Change 3553963 by Rolando.Caloca

	DR - vk - Remove extra IRDump

Change 3554741 by Ben.Marsh

	CIS fix.

Change 3555222 by Rolando.Caloca

	DR - vk - static analysis fix

Change 3555362 by Rolando.Caloca

	DR - vk - Prep work for separate present queue

Change 3556800 by Daniel.Wright

	Fixed screenshot for simple volume material doc

Change 3556942 by Brian.Karis

	Fixed Bokeh DOF regression.

Change 3556959 by Rolando.Caloca

	DR - vk - Rework staging buffer peak usage

Change 3557497 by Daniel.Wright

	Better display name for Unbound property on post process volume

Change 3557499 by Daniel.Wright

	Disable r.GenerateLandscapeGIData by default, opt-in for kite demo.  Projects that want to use heightfield GI need to opt-in to r.GenerateLandscapeGIData.

Change 3557068 by Olaf.Piesche

	Configurable spawn rate scaling reference value; sets the zero-scale reference value (default: 2),  so additional quality levels can be added and scaling customized further.
	IMPORTANT: This sets the reference to 3 in PS4Scalability.ini; effects on PS4 are again going to have reduced spawn rates versus PC and Neo, as intended by the FX artists starting with this change.

	#tests QAGame test maps

Change 3558123 by Rolando.Caloca

	DR - vk - static analysis fix

Change 3558685 by Yujiang.Wang

	Github #3323: Two sided foliage lightmap directionality fix

	* Subsurface is not intended to work with lightmaps that don't have directionality, however we still want it to look similar to a directional one
	* Now it uses a constant directionality value

	#jira UE-42523

Change 3559052 by Brian.Karis

	Hopefully fix static analysis

Change 3559113 by Rolando.Caloca

	DR - Fix crash witrh planar reflections

Change 3559275 by Yujiang.Wang

	Fix race condition on several scalability CVars between rendering thread and game thread

Change 3559612 by Rolando.Caloca

	DR - vk - SM5 with uniform buffers backend support

Change 3559716 by Rolando.Caloca

	DR - hlslcc - Fix linker warning on SCW debug

Change 3559768 by Rolando.Caloca

	DR - vk - Keep ub names for bindings

Change 3560195 by Rolando.Caloca

	DR - accessor

Change 3560275 by Rolando.Caloca

	DR - vk - Support for uniform buffers

Change 3560913 by Rolando.Caloca

	DR - vk - Fix static analysis

Change 3561145 by Rolando.Caloca

	DR - Don't crash if out of resource table bits

Change 3561194 by Rolando.Caloca

	DR - vk - Integrate timestamp fixes

Change 3562009 by Rolando.Caloca

	DR - vk - Workaround for bad UTexture data

Change 3563884 by Chris.Bunner

	VK_NULL_HANDLE fix.

Change 3563885 by Jian.Ru

	Ignore a warning caused by enabling distance field generation so that test Cube_Blue and Cube_Section don't fail. #rb Chris.Bunner

Change 3565943 by Jian.Ru

	Add extra warning log triggered when attempt to create FRWBuffer greater than 256MB in ComputeLightGrid() #rb Chris.Bunner

Change 3569479 by Michael.Lentine

	Integrate rhino shader changes to dev-rendering

Change 3569511 by Michael.Lentine

	Fix formating and string out on windows.

Change 3569572 by Yujiang.Wang

	Fix MeasureLongGPUTaskExecutionTime crashing on AMD on Macs

Change 3569614 by Yujiang.Wang

	Flush rendering commands before measuring the long GPU task's excution time to get accurate results

Change 3570524 by Jian.Ru

	Add extra parentheses to avoid compilation warning #rb Chris.Bunner

Change 3570722 by Chris.Bunner

	Static analysis workaround - same code, just validating compile-time assumptions a little further.

Change 3570880 by Jian.Ru

	Add small depth offset to avoid depth test failing during velocity pass

	#jira UE-37556

Change 3572532 by Jian.Ru

	Disable a warning to let tests pass

	#jira UE-48021

Change 3573109 by Michael.Lentine

	Checkin Michael.Trepka's fix for external dynamic libraries on mac.
	This is needed to make the build go green on mac.

Change 3573995 by Jian.Ru

	Move an include out of define to let nightly build pass

Change 3574777 by Chris.Bunner

	Continued merge fixes.

Change 3574792 by Rolando.Caloca

	DR - Rename todo

Change 3574794 by Chris.Bunner

	Re-adding includes lost in a pre-merge merge.

Change 3574879 by Michael.Trepka

	Disabled a couple of Mac deprecation warnings

Change 3574932 by Chris.Bunner

	Merge fix.

Change 3575048 by Michael.Trepka

	Fixed iOS compile warnings

Change 3575530 by Chris.Bunner

	Duplicating static analysis fix CL 3539836.

Change 3575582 by Chris.Bunner

	Fixed GetDimensions return type in depth resolve shaders.
	Compile error fix.

Change 3576326 by Chris.Bunner

	Static analysis fixes.

Change 3576513 by Michael.Trepka

	Updated Mac MCPP lib to be compatible with OS X 10.9

Change 3576555 by Richard.Wallis

	Metal Validation Errors.  Dummy black volume texture is in the wrong format in the Metal shader for the VolumetricLightmapIndirectionTexture.  Create a new dummy texture with pixel format PF_R8G8B8A8_UINT.

	#jira UE-47549

Change 3576562 by Chris.Bunner

	OpenGL SetStreamSource stride updates.

Change 3576589 by Michael.Trepka

	Fixed Mac CIS warnings and errors in Dev-Rendering

Change 3576708 by Jian.Ru

	Fix cascade preview viewport background color not changing
	#jira UE-39687

Change 3576827 by Rolando.Caloca

	DR - Minor fix for licensee

Change 3576973 by Chris.Bunner

	Fixing up HLSLCC language spec mismatch (potential shader compile crashes in GL and Vulkan).

Change 3577729 by Rolando.Caloca

	DR - Fix for info on SCW crashes

Change 3578723 by Chris.Bunner

	Fixed issue where custom material attribute was using display name as hlsl function name.

Change 3578797 by Chris.Bunner

	Fixed pixel inspector crashing on high-precision normals gbuffer format.

	#jira UE-48094

Change 3578815 by Yujiang.Wang

	Fix for UE-48207 Orion cooked windows server crash on startup

	* Crash caused by rendering features not available in a dedicated server build
	* Skip over MeasureLongGPUTaskExecutionTime when !FApp::CanEvenRender()

	#jira UE-48207

Change 3578828 by Daniel.Wright

	Disable volumetric lightmap 3d texture creation on mobile

Change 3579473 by Daniel.Wright

	Added View.SharedBilinearClampSampler and View.SharedBilinearWrapSampler.  Used these to reduce base pass sampler counts with volumetric lightmaps.

Change 3580088 by Jian.Ru

	Fix QAGame TM-CharacterMovement crashing on PIE
	#jira UE-48031

Change 3580388 by Daniel.Wright

	Fixed shadowed light injection into volumetric fog fallout from Rhino merge

Change 3580407 by Michael.Trepka

	Updated Mac UnrealPak binaries

Change 3581094 by Michael.Trepka

	Fix for ScreenSpaceReflections not working properly on iOS 11

Change 3581242 by Michael.Trepka

	Fixed a crash on startup on Mac when launching TM-ShaderModels in QAGame

	#jira UE-48255

Change 3581489 by Olaf.Piesche

	Replicating CL 3578030 from Fortnite-Main to fix #jira UE-46475

	#jira FORT-47068, FORT-49705
	Don't inappropriaely touch game thread data on the render thread. Push SubUV cutout data into a RT side object owned by the sprite dynamic data.

	#tests FN LastPerfTest

Change 3581544 by Simon.Tovey

	Fix for ensure accessing cvar from task thread.

	#tests no more ensure

Change 3581934 by Chris.Bunner

	Fixed ConsoleVariables.ini break from merge.

Change 3581968 by Jian.Ru

	Fix QAGame TM-ShaderModels PIE crash when resizing game viewport
	#jira UE-48251

Change 3581989 by Richard.Wallis

	Fix for NULL PrecomputedLightingBuffer.  It is null for first frame request in forward rendering so should have the GEmptyPrecomputedLightingUniformBuffer set in these cases after it's been initially tried to be set not before.

	#jira UE-46955

Change 3582632 by Chris.Bunner

	Resolved merge error.

Change 3582722 by Rolando.Caloca

	DR - Workaround for PF_R8G8B8A8_UINT on GL

	#jira UE-48208

Change 3584096 by Rolando.Caloca

	DR - Fix for renderdoc crashing in shipping

	#jira UE-46867

Change 3584245 by Jian.Ru

	Fix System.Promotion.Editor.Particle Editor test crash
	#jira UE-48235

Change 3584359 by Yujiang.Wang

	Fix for UE-48315 Wall behind base in Monolith is flickering white in -game Orion

	* Caused by dot(N, V) being negative
	* Clamp to (0, 1)

	#jira UE-48315

Change 3587864 by Mark.Satterthwaite

	Fix the GPU hang on iOS caused by changes to the Depth-Stencil MSAA handling: you can't store the MSAA stencil results on iOS < 10 unless you use the slower MTLStoreActionStoreAndMultisampleResolve which we don't need for the mobile renderer.
	#jira UE-48342

Change 3587866 by Mark.Satterthwaite

	Correctly fix iOS compilation errors against Xcode 9 Beta 5 and Xcode 8.3.3 - duplicating function definitions is guaranteed to be wrong.

Change 3588168 by Mark.Satterthwaite

	Move the Xcode version into the Metal shader format header, not the DDC key, so that we can handle bad compiler/driver combinations in the runtime and don't force all users to recompile every time the Xcode version changes.

Change 3588192 by Rolando.Caloca

	DR - Fix d3d12 linker error when EXECUTE_DEBUG_COMMAND_LISTS is enabled

Change 3588291 by Rolando.Caloca

	DR - Fix for d3d12 command list crash: Commited resources can not have aliasing barriers

	#jira UE-48299

Change 3590134 by Michael.Trepka

	Copy of CL 3578963

	Reset automation tests timer after shader compilation when preparing for screenshots taking to make sure tests don't time out.

Change 3590405 by Rolando.Caloca

	DR - hlslcc - support for sqrt(uint)

Change 3590436 by Mark.Satterthwaite

	Rebuild Mac hlslcc for CL #3590405 - without the various compiler workarounds left over from before the recent code changes.

Change 3590674 by Rolando.Caloca

	DR - vk - Integration from working branch
	- Fixes distance field maps
	- Compute pipelines stored in saved file
	- Adds GRHIRequiresRenderTargetForPixelShaderUAVs for platforms that need dummy render targets

Change 3590699 by Rolando.Caloca

	DR - Fix distance fields mem leak

Change 3590815 by Rolando.Caloca

	DR - vk - Fixes for uniform buffers and empty resource tables

Change 3590818 by Mark.Satterthwaite

	Temporarily switch back to OpenVR v1.0.6 for Mac only until I can clarify what to do about a required but missing API hook for Metal. Re-enabled and fixed compile errors with Mac SteamVR plugin code.

Change 3590905 by Mark.Satterthwaite

	For Metal shader compilation where the bytecode compiler is unavailable force the debug compiler flag and disable the archiving flag because storing text requires this.

	#jira UE-48163

Change 3590961 by Mark.Satterthwaite

	Submitted on Richard Wallis's behalf as he's on holiday:

	Mac fixes for Compute Skin Cache rendering issues (resulting in incorrect positions and tangents) and for recomputing tangents.  Problem sampling from buffers/textures as floats with packed data.  Some of the data appears as denorms so get flushed to zero then reinterpreted as uints via asuint or in Metal as_type<uint>().  Fix here for Metal seems to be to use uint types for the skin cache SRV's and as_type<> to floats instead.

	There could be some other areas where we're unpacking via floats that could affect Metal and I'm not sure how this will impact on other platforms.

	#jira UE-46688, UE-39256, UE-47215

Change 3590965 by Mark.Satterthwaite

	Remove the Z-bias workaround from Metal MRT as it isn't required and actually causes more problems.

Change 3590969 by Mark.Satterthwaite

	Make all Metal shader platforms compile such that half may be used, unless the material specifies full precision.

Change 3591871 by Rolando.Caloca

	DR - Enable PCSS on Vulkan & Metal
	- Enable capsule shadows on Vulkan

Change 3592014 by Mark.Satterthwaite

	Remove support for Mac OS X El Capitan (10.11) including the stencil view workaround.
	Bump the minimum Metal shader standard for Metal SM4, SM5 & Metal MRT to v1.2 (macOS 10.12 Sierra & iOS 10) so we can use FMAs and other newer shader language features globally.
	Enable the new GRHIRequiresRenderTargetForPixelShaderUAVs flag as Metal is like Vulkan and needs a target for fragment rendering.
	Also fix the filename for direct-compile & remove the old batch file generation in the Metal shader compiler.

Change 3592171 by Rolando.Caloca

	DR - CIS fix

Change 3592753 by Jian.Ru

	repeat Daniel's fix on xb1 profilegpu crash (draw events cannot live beyond present)

Change 3594595 by Rolando.Caloca

	DR - Fix D3D shader compiling run time stack corruption failure on debug triggering falsely

Change 3594794 by Michael.Trepka

	Call FPlatformMisc::PumpMessages() before attempting to toggle fullscreen on Mac to fix an issue on some Macs running 10.13 beta that would ignore the toggle fullscreen call freezing the app

Change 3594999 by Mark.Satterthwaite

	Disable MallocBinned2 for iOS as on Rhino it worked but on iOS 10.0.2 there are bugs (munmap uses 64kb granularity, not the 4096 the code expects given the reported page-size).
	While we are here remove the spurious FORCE_MALLOC_ANSI from the iOS platform header.

	#jira UE-48342

Change 3595004 by Mark.Satterthwaite

	Disable Metal's Deferred Store Actions and combined Depth/Stencil formats on iOS < 10.3 as there are bugs on earlier versions of iOS 10.

	#jira UE-48342

Change 3595386 by Mark.Satterthwaite

	Silence the deprecation warning for kIOSurfaceIsGlobal until SteamVR switches to one of the newer IOSurface sharing mechanisms.

Change 3595394 by Rolando.Caloca

	DR - Added function for tracking down errors in the hlsl parser
	- Added support for simple #if 0...#endif

Change 3599352 by Rolando.Caloca

	DR - Fixes for HlslParser
	- Added missing attributes for functions
	- Fixed nested assignment

Change 3602440 by Michael.Trepka

	Fixed Metal shader compilation from Windows with remote compilation disabled

	#jira UE-48163

Change 3602898 by Chris.Bunner

	Resaving assets.

Change 3603731 by Jian.Ru

	fix a crash caused by a material destroyed before the decal component
	#jira UE-48587

Change 3604629 by Rolando.Caloca

	DR - Workaround for PF_R8G8B8A8_UINT on Android

	#jira UE-48208

Change 3604984 by Peter.Sauerbrei

	fix for orientation not being limited to that specified in the plist

	#jira UE-48360

Change 3605738 by Chris.Bunner

	Allow functional screenshot tests to request a camera cut (e.g. tests relying on temporal aa history).

	#jira UE-48748

Change 3606009 by Mark.Satterthwaite

	Correctly implement ClipDistance for Metal as an array of floats as required by the spec. and fix a few irritating issues from the merge that should not have.
	- When compiling a tessellation vertex shader in the SCW direct mode we can't evaluate non-existant defines and we don't actually need to.
	- The define names, values & shader file name are irrelevant to the Metal output key, but the shader format name & Metal standard really do matter - should speed up Metal shader compilation a bit.
	- Move the shader vertex layer clip-distance to index 2 to avoid conflicts.
	- Don't default initialise the debug code string for Metal shaders or it won't print out the actual code....

	#jira UE-47663

Change 3606108 by Mark.Satterthwaite

	Temporary hack to avoid a crash in AVPlayer.

	#jira UE-48758

Change 3606121 by Mark.Satterthwaite

	Fix Windows compilation.

Change 3606992 by Chris.Bunner

	Static analysis fix.

[CL 3608256 by Marcus Wassmer in Main branch]
2017-08-24 15:38:57 -04:00
Ben Marsh
f461ea68e9 Copying //UE4/Dev-Core to //UE4/Dev-Main (Source: //UE4/Dev-Core @ 3548365)
#lockdown Nick.Penwarden

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

Change 3494741 by Steve.Robb

	Generated code size savings.

	#jira UE-43048

Change 3495484 by Steve.Robb

	Fix for generated indices of static arrays when saving configs.

Change 3497926 by Robert.Manuszewski

	Removed FPackageFileSummary's CompressedChunks array as it was no longer being used by anything.

Change 3498077 by Robert.Manuszewski

	Only use the recursion guard in async loading code when the event driven loader is enabled.

Change 3498112 by Ben.Marsh

	UBT: Respect the option to not create debug info in the Android toolchain. This option is already being respected by the compiler, but the linker adds debug info of its own.

Change 3500239 by Robert.Manuszewski

	Made sure the Super Class token stream is also locked when assembling Class token stream with async loading thread enabled. This to to prevent race conditions when loading BP classes.

Change 3500395 by Steve.Robb

	Extra codegen savings when not in hot reload.

Change 3501004 by Steve.Robb

	EObjectFlags now have constexpr operators.

Change 3502079 by Ben.Marsh

	UBT: Pad multi-line error messages so that they align under the prefix for the first line, and include the timestamp if necessary.

Change 3502527 by Steve.Robb

	Fix for zero-sized array compile error in generated code when all functions are editor-only.

Change 3502542 by Ben.Marsh

	UAT: Remove the custom source parameter from log functions, and add support for a customizable indent instead.

Change 3502868 by Steve.Robb

	Workaround for inefficient generated code with stateless lambdas on Clang.

Change 3503550 by Steve.Robb

	Another generated code lambda optimization.

Change 3503582 by Ben.Marsh

	BuildGraph: Add support for nullable parameter types.

Change 3504424 by Steve.Robb

	New AllOf, AnyOf and NoneOf algorithms.

Change 3504712 by Ben.Marsh

	UAT: Less spammy log and error output from UAT.

	* Callstacks for AutomationExceptions are suppressed by default but still included in the log (the path to the log is noted in console output with the message from the exception).
	* Add a mechanism for any exceptions to be caught and rethrown with additional lines of context (CommandUtils.AddContext()) that will be appended to the error output by UAT. Avoids decaying the exception type or masking the inner exception message while still adding additional information.
	* AggregateExceptions resulting from exceptions on child threads are automatically unwrapped (full details are still appended to the log)
	* Name of the calling function is not included in console output by default, but still included in the log.

Change 3504808 by Ben.Marsh

	UAT: Suppress P4 output when running a recursive instance of UAT.

Change 3505044 by Steve.Robb

	Code generation improved for TCppClassType code.

Change 3505485 by Ben.Marsh

	Fix deterministic cooking issue; always use a pseudo-random number stream when compiling a module.

Change 3505699 by Ben.Marsh

	Plugins: Store the bEnabledByDefault flag exactly as it was read from disk rather than collapsing it to an absolute value based on the default for the location it was read from. This allows loading/saving plugin descriptors without any knowledge of whether they are game or engine plugins.

Change 3506055 by Ben.Marsh

	UAT: Add a class to apply a log indent for the lifetime of an object (ScopedLogIndent), and use it to apply an indent to MegaXGE/ParallelExecutor output.

Change 3507745 by Robert.Manuszewski

	Moved FSimpleObjectReferenceCollectorArchive and FSimpleObjectReferenceCollectorArchive to be internal archives used only by FReferenceCollector so that they are constructed only once per GC task instead of potentially multiple times per GC (as was the case with UDataTables and BlueprintGeneratedClasses).

Change 3507911 by Ben.Marsh

	Plugins: Minor changes to plugin descriptors.

	* Add a distinct setting for an unspecified EnabledByDefault setting in plugin descriptors.
	* Add a function to IPlugin to determine the effective EnabledByDefault setting, based on where the plugin was loaded from.

Change 3508669 by Ben.Marsh

	EC: Parse multi-line messages from UBT and UAT.

Change 3508691 by Ben.Marsh

	Fix double-spacing of cook stats.

Change 3509245 by Steve.Robb

	UHT makefiles removed.
	Flag audit removed.

Change 3509275 by Steve.Robb

	Fix for mismatched stat categories in AudioMixer.

	#jira UE-46129

Change 3509289 by Robert.Manuszewski

	Custom Version Container will no longer be always constructed in FArchive constructor. This reduces the number of the Custom Version Container allocations considerably.

Change 3509294 by Robert.Manuszewski

	UDataTable::AddReferencedObjects will no longer try to iterate over the RowMap if there's no UObject references in it.

Change 3509312 by Steve.Robb

	GitHub# 3679: Add TArray constructor that takes a raw pointer and a count

	Check improved for Append() to allow nullptr in empty ranges, and added to new constructor too.

	#jira UE-46136

Change 3509396 by Steve.Robb

	GitHub# 3676: Fix TUnion operator<< compile error

	#jira UE-46099

Change 3509633 by Steve.Robb

	Fix for line numbers on multiline macros.

Change 3509938 by Gil.Gribb

	UE4 - Fix rare assert involving cancelled precache requests and non-pak-file loading.

Change 3510593 by Daniel.Lamb

	Fixed up unsoilicited files getting populated with files which aren't finished being created yet.

	#test None

Change 3510594 by Daniel.Lamb

	Fixed up temp files directory for patching.

	Thanks David Yerkess @ Milestone
	#review@Ben.Marsh

Change 3511628 by Ben.Marsh

	PR #3707: Fixed UBT stack size (Contributed by gildor2)


Change 3511808 by Ben.Marsh

	Optimize checks for whether the game project contains source code. Now stops as soon as the first file is found and ignores directories beginning with a '.' character (eg. .git)

	#jira UE-46540

Change 3512017 by Ben.Marsh

	Plugins: Deprecate the QueryStatusForAllPlugins() function; the same functionality is available via the IPlugin interface.

Change 3513935 by Steve.Robb

	Reverted array iteration in FPropertyNode::PropagatePropertyChange as this is now covered in TProperty::InitializeValueInternal() as of CL# 3293477.

Change 3514142 by Steve.Robb

	MemoryProfiler2 added to generated solution.

Change 3516463 by Ben.Marsh

	Plugins: Create a manifest for each PAK file containing all the plugin descriptors in one place. Eliminates need to recurse through directories and read separate multiple files in serial at startup, and allows reading all plugin descriptors with one read. The "Mods" directory is excluded from the manifest, since these are intended to be installed separately by the user.

Change 3517860 by Ben.Marsh

	PR #3727: FString Dereference Fixes (Contributed by jovisgCL)


Change 3517967 by Ben.Marsh

	Suppress additional system error dialogs when loading DLLs if -unnattended is on the command line.

Change 3518070 by Steve.Robb

	Disable Binned2 stats in shipping non-editor builds.

Change 3520079 by Steve.Robb

	Fixed bad codegen TAssetPtrs being passed into BlueprintImplementableEvent functions.

	#jira UE-24034

Change 3520080 by Robert.Manuszewski

	Made max package summary size to be configurable with ini setting

Change 3520083 by Steve.Robb

	Force a GC after hot reload to clean up reinstanced objects which may still tick.

	#jira UE-40421

Change 3520480 by Robert.Manuszewski

	Improved assert message when the initial package read request was too small.

Change 3520590 by Graeme.Thornton

	SignedArchiveReader optimizations
	 - Loads more stats
	 - Stop chunk cache worker from waking up continuously to poll for work. Only wake up when triggered by the archive reader
	 - Signed archive reader just yields when waiting for buffers to finish loading, rather than sleeping for some arbitrary amount of time
	 - Track the number of pending read requests in an atomic counter, to save having to lock the request queue to check for new entries

Change 3521023 by Graeme.Thornton

	Remove spin from signed archive reader. Main thread waits on an event triggered by the chunk worker to indicate that new chunks are ready for processing

Change 3521787 by Ben.Marsh

	PR #3736: Small static code analysis fixes (Contributed by jovisgCL)


Change 3521789 by Ben.Marsh

	PR #3735: Fix case sensitivity issue in FWindowsPlatformProcess::IsApplicationRunning. (Contributed by samhocevar)


Change 3524721 by Ben.Marsh

	Move Linux SDL initialization into FLinuxPlatformApplicationMisc. Attempting to move functionality related to interactive applications (graphics, input, etc...) into a separate place, so it can ultimately be moved out of Core.

Change 3524741 by Ben.Marsh

	Move PumpMessages() into FPlatformApplicationMisc.

Change 3525399 by Ben.Marsh

	UGS: Use the default Perforce server port when opening P4V if there is not one set in the environment.

Change 3525743 by Ben.Marsh

	UAT: Add a parameter to allow updating version files without updating Version.h, to allow faster link times on incremental builds.

Change 3525746 by Ben.Marsh

	EC: Include the clobber option on new workspaces, to allow overriding version files when syncing.

Change 3526453 by Ben.Marsh

	UGS: Do not generate project files when syncing precompiled binaries.

Change 3527045 by Ben.Marsh

	Fix hot reload generating import libraries without DLLs. Now that they are produced by separate actions by default, it was removing DLLs from the action graph due to the bSkipLinkingWhenNothingToCompile setting.

Change 3527420 by Ben.Marsh

	UGS: Add additional search paths for UGS config files, and fix a few cosmetic issues (inability to display ampersands in tools menu, showing changelist -1 when running a tool without syncing).

	Config files are now read from:

	Engine/Programs/UnrealGameSync/UnrealGameSync.ini
	Engine/Programs/UnrealGameSync/NotForLicensees/UnrealGameSync.ini

	If a project is selected:

	<ProjectDir>/Build/UnrealGameSync.ini
	<ProjectDir>/Build/NotForLicensees/UnrealGameSync.ini

	If the .uprojectdirs file is selected:

	Engine/Programs/UnrealGameSync/DefaultProject.ini
	Engine/Programs/UnrealGameSync/NotForLicensees/DefaultProject.ini

Change 3528063 by Ben.Marsh

	Fix non-thread safe construction of FPluginManager singleton. Length of time spent in the constructor resulted in multiple instances being constructed at startup, making the time to enumerate plugins on slow media significantly worse.

Change 3528415 by Ben.Marsh

	UAT: Remove \r characters from the end of multiline log messages.

Change 3528427 by Ben.Marsh

	EC: Fix spaces being converted to tabs at start of line in failure emails (by Gmail), and wrap following lines at the same indent.

Change 3528485 by Ben.Marsh

	EC: Remove zero-width word break characters from slashes in notification emails; can cause really hard to debug problems when copy pasted into other places.

Change 3528505 by Steve.Robb

	PR #3755: MallocProfiler - Remove subfolder from profiling save directory (Contributed by Josef-CL)


	#jira UE-46819

Change 3528772 by Robert.Manuszewski

	Enabling actor and blueprint clustering in ShooterGame

Change 3528786 by Robert.Manuszewski

	PR #3760: Fix typo (Contributed by jesseyeh)


Change 3528792 by Steve.Robb

	PR #3764: MallocProfiler - Refactoring Scopelock (Contributed by Josef-CL)


	#jira UE-46962

Change 3528941 by Robert.Manuszewski

	Fixed lazy object pointers not being updated for streaming sub-levels in PIE. Fixed lazy pointers returning object that is still being loaded which could lead to undefined behavior when client code started modifying the returned object.

	#jira UE-44996

Change 3530241 by Ben.Marsh

	UAT: Only pass -submit or -nosubmit to child instances of UAT if they were specified on the original command line. BuildCookRun uses this flag to determine whether to submit, rather than just whether to allow submitting, so we shouldn't pass an inferred value.

Change 3531377 by Ben.Marsh

	Plugins: Allow plugins to specify a list of supported target platforms, which is propagated to any .uproject file that enables it.

	This has several advantages over the per-module platform whitelist/blacklist:

	* Platform-specific .uplugin files can now be excluded when staging other platforms. Previously, it was only possible to determine which platforms a plugin supports by reading the plugin descriptor itself. Now that information is copied into the .uproject file, so the runtime knows which plugins to ignore.
	* References to dependent plugins from platform-specific plugins can now be eliminated.
	* Plugins containing content can now be unambiguously disabled on a per-platform basis (having no modules for a platform does not confer that a plugin doesn't support that platform; now it is possible to specify supported platforms explicitly).
	* The editor can load any plugins without having to whitelist supported editor host platforms.

	UE4 targets which support loading plugins for target platforms can set TargetRules.bIncludePluginsForTargetPlatforms (true for the editor by default, false for any other target types). This defines the LOAD_PLUGINS_FOR_TARGET_PLATFORMS macro at runtime, which allows the plugin system to filter which plugins to look for at runtime.

	Any .uproject file will be updated at startup to contain the list of supported platforms for each referenced plugin if necessary.

Change 3531502 by Jin.Zhang

	Add support for GPUCrash #rb

Change 3531664 by Ben.Marsh

	UBT: Change output format from C# JSON writer to match output by the engine.

Change 3531848 by Ben.Marsh

	UAT: Add script to resaving all project descriptors under a folder, embedding information for any supported platforms for the plugins they enable.

Change 3531869 by Ben.Marsh

	UAT: Add parameter to the ResaveProjectDescriptors command to update the engine association field.

Change 3532474 by Ben.Marsh

	UBT: Use the same mechanism as UAT for logging exceptions.

Change 3532734 by Graeme.Thornton

	Initial VSCode Support
	 - Tasks generated for building all game/engine/program targets
	 - Debugging support for targets on Win64

Change 3532789 by Steve.Robb

	FScriptSet::Add and TScriptMap::Add now replace the element, matching the behavior of TSet and TMap.
	Set_Add and Map_Add no longer have a return value.
	FScriptSet::Find and FScriptMap::Find functions are now FindIndex.
	FScriptSetHelper::FindElementFromHash is now FindElementIndexFromHash.

Change 3532845 by Steve.Robb

	Obsolete UHT settings deleted.

Change 3532875 by Graeme.Thornton

	VSCode
	 - Add debug targets for different target configurations
	 - Choose between VS debugger (windows) and GDB (mac/linux)

Change 3532906 by Graeme.Thornton

	VSCode
	 - Point all builds directly at UBT rather than the batch files
	 - Adjust mac build tasks to run through mono

Change 3532924 by Ben.Marsh

	UAT: Set the UAT working directory immediately on startup. This ensures that any command line arguments containing paths are resolved consistently to the branch root.

Change 3535234 by Graeme.Thornton

	VSCode - Pass intellisense system a list of paths to use for header resolution

Change 3535247 by Graeme.Thornton

	UBT - Add a ToString to ProjectFile.Source file to help with debugger watch presentation

Change 3535376 by Graeme.Thornton

	VSCode
	 - Added build jobs for C# projects
	 - Linked launch tasks to relevant build task

Change 3537083 by Ben.Marsh

	EC: Change P4 swarm links to start at the changelist for a build.

Change 3537368 by Graeme.Thornton

	Fix for crash in FSignedArchiveReader when multithreading is disabled

Change 3537550 by Graeme.Thornton

	Fixed a crash in the taskgraph when running single threaded

Change 3537922 by Steve.Robb

	Missing PF_ATC_RGBA_I added to FOREACH_ENUM_EPIXELFORMAT.

Change 3539691 by Graeme.Thornton

	VSCode - Various updates to get PC and Mac C++ projects building and debugging.
	 - Some other changes to C# setup to allow compilation. Debugging doesn't work.

Change 3539775 by Ben.Marsh

	Plugins: Various fixes to settings for enabling plugins.

	* Fix crash on startup when trying to disable a missing plugin (was keeping pointers to elements in the project's plugin reference array, which may be modified if a plugin is disabled).
	* Revert fix to set PluginDescriptor.bRequiresBuildPlatform = true by default. This was the originally intended behavior, but it was accidentally defaulted to false during serialization unless specified in the .uplugin file. Many plugins may rely on this behavior (they may not declare asset classes otherwise, for example, which could result in loss of data), so change the default value to false instead. Also fixes popups to disable platform-specific plugins if platform SDKs are not installed.
	* Fix plugins which are referenced but do not exist not showing the appropriate prompt to disable them.

Change 3540788 by Ben.Marsh

	UBT: Add support for declaring custom pre-build steps and post-build steps from .target.cs files. Similarly to the custom build steps configurable from .uproject and .uplugin files, these specify commands which will be executed by the host platform's shell before or after a build. The following variables are expanded within the list of commands before execution: $(EngineDir), $(ProjectDir), $(TargetName), $(TargetPlatform), $(TargetConfiguration), $(TargetType), $(ProjectFile).

	Example usage:

	public class UnrealPakTarget : TargetRules
	{
		public UnrealPakTarget(TargetInfo Target) : base(Target)
		{
			Type = TargetType.Program;
			LinkType = TargetLinkType.Monolithic;
			LaunchModuleName = "UnrealPak";

			if(HostPlatform == UnrealTargetPlatform.Win64)
			{
				PreBuildSteps.Add("echo Before building:");
				PreBuildSteps.Add("echo This is $(TargetName) $(TargetConfiguration) $(TargetPlatform)");

				PostBuildSteps.Add("echo After building!");
				PostBuildSteps.Add("echo This is $(TargetName) $(TargetConfiguration) $(TargetPlatform)");
			}
		}
	}

Change 3541664 by Graeme.Thornton

	VSCode - Add problemMatcher tag to cpp build targets

Change 3541732 by Graeme.Thornton

	VSCode - Change UBT command line switch to "-vscode" for simplicity

Change 3541967 by Graeme.Thornton

	VSCode - Fixes for Mac/Linux build steps

Change 3541968 by Ben.Marsh

	CRP: Pass through the EnabledPlugins element in crash context XML files.

	#jira UE-46912

Change 3542519 by Ben.Marsh

	UBT: Add chain of references to error messages when configuring plugins.

Change 3542523 by Ben.Marsh

	UBT: Add more useful error message when attempt to parse a JSON object fails.

Change 3542658 by Ben.Marsh

	UBT: Include a chain of references when reporting errors instantiating modules.

Change 3543432 by Ben.Marsh

	Plugins: Fix plugins which are enabled by default not being enabled unless a project file is set.

Change 3543436 by Ben.Marsh

	UBT: Prevent recursing through the same module more than once when building out the referenced modules. Produces much shorter reference chains when something fails.

Change 3543536 by Ben.Marsh

	UBT: Downgrade message about redundant plugin references to a warning.

Change 3543871 by Gil.Gribb

	UE4 - Fixed a critical crash bug with non-EDL loading from pak files.

Change 3543924 by Robert.Manuszewski

	Fixed a crash on UnrealFrontend startup caused by re-assembling GC token stream for one of the classes.
	+Small optimization to token stream generation code.

Change 3544469 by Jin.Zhang

	Crashes page displays the list of plugins from the crash context #rb

Change 3544608 by Steve.Robb

	Fix for nativized generated code.

	#jira UE-47452

Change 3544612 by Ben.Marsh

	Add callback into FMacPlatformMisc::PumpMessages() from FMacPlatformApplicationMisc::PumpMessages().

	#jira UE-47449

Change 3545954 by Gil.Gribb

	Fixed a critical crash bug relating to a race condition in async package summary reading.

Change 3545968 by Ben.Marsh

	UAT: Fix incorrect username in BuildGraph <Submit> task. Should use the username from the Perforce environment, not assume the logged in user name is the same.

	#jira UE-47419

Change 3545976 by Ben.Marsh

	EC: Delete the AutoSDK client if the directory doesn't exist. When we format build machines, we need to force everything to be resynced from scratch.

Change 3546185 by Ben.Marsh

	Hacky fix for deployment on IOS/TVOS. Since deployment directly references the NonUFS manifest files that are written out, merge all the SystemNonUFS files back into the NonUFS list after the regular NonUFS files have been remapped.

Change 3547084 by Gil.Gribb

	Fixed a critical race condition in the new async loader. This was only reproducible on IOS, but may affect other platforms.

Change 3547968 by Gil.Gribb

	Fixed critical race which potentially could cause a crash in the pak precacher.

Change 3504722 by Ben.Marsh

	BuildGraph: Improved tracing for error messages. All errors are now propagated as exceptions, and are tagged with additional context information about the task currently being run.

	For example, throwing new AutomationException("Unable to write foo.txt") from SetVersionTask.Execute is now displayed in the log as:

	ERROR: Unable to write to foo.txt
	         while executing <SetVersion Change="0" CompatibleChange="0" Branch="Unknown" Promoted="True" />
	         at Engine\Build\InstalledEngineBuild.xml(91)
	       (see D:\P4 UE4\Engine\Programs\AutomationTool\Saved\Logs\UAT_Log.txt for full exception trace)

Change 3512255 by Ben.Marsh

	Rename FPaths functions with a "Game" prefix (GameDir(), GameContentDir(), etc...) to have a "Project" prefix (ProjectDir(), ProjectContentDir(), etc...) for clarity with non-game uses of UE4. Old functions still exist but are deprecated.

Change 3512332 by Ben.Marsh

	Rename "Game" functions in FApp to be "Project" functions (FApp::GetGameName() -> FApp::GetProjectName(), etc...) for clarity with non-game uses of UE4.

Change 3512393 by Ben.Marsh

	Rename FPaths::GameLogDir() to FPaths::ProjectLogDir().

Change 3513452 by Ben.Marsh

	Plugins: Rename EPluginLoadedFrom::GameProject to EPluginLoadedFrom::Project.

Change 3516262 by Ben.Marsh

	Add support for a "Mods" folder distinct from the project's "Plugins" folder, instead of using the bIsMod flag on the plugin descriptor.

	* Mods are enumerated similarly to regular plugins, but IPlugin::GetType() will return EPluginType::Mod.
	* The DLCName parameter to BuildCookRun and the cooker now correctly finds any plugin in the Plugins or Mods directory (or any subfolders).

Change 3517565 by Ben.Marsh

	Remove fixed engine version numbers from OSS plugins.

Change 3518005 by Ben.Marsh

	UAT: Remove the bUFSFile parameter from DeployLowerCaseFilenames(). Every platform returns false if the argument is false.

Change 3518054 by Ben.Marsh

	UAT: Use an enum to direct whether all directories should be searched when finding files to stage, rather than a bool. Having so many optional boolean arguments makes code unreadable and refactoring hard.

Change 3524496 by Ben.Marsh

	Start moving GUI application code into a separate static platform class, hopefully ultimately removing it from Core.

Change 3524641 by Ben.Marsh

	Move more functionality related to windowed/graphical applications into FPlatformApplicationMisc.

Change 3528723 by Steve.Robb

	MoveTemp now static asserts if passed a const reference or rvalue.
	MoveTempIfPossible still follows the old (std::move) rule, which is useful for templates where the nature of the argument is not obvious.
	Fixes to violations of these new rules.

Change 3528876 by Ben.Marsh

	Move FPlatformMisc::ClipboardCopy and FPlatformMisc::ClipboardPaste to FPlatformApplicationMisc::ClipboardCopy and FPlatformApplicationMisc::ClipboardPaste.

Change 3529073 by Ben.Marsh

	Add script to package ShooterGame for any platforms.

Change 3531493 by Ben.Marsh

	Update platform-specific plugins to declare the target platforms they support.

Change 3531611 by Ben.Marsh

	UAT: Add a ResavePluginDescriptors command, which resaves all plugin descriptors under a given folder, removing any outdated fields and rewrites them in a consistent style. Many plugins in the wild contain redundant or no-longer used fields due to using our plugins as templates.

Change 3531868 by Ben.Marsh

	Resaving project descriptors to remove invalid fields.

Change 3531983 by Ben.Marsh

	UAT: Simplify logic for staging code, and add validation against shipping files in restricted folders.

	* Added a new SystemNonUFS type for staged files, which excludes files from being remapped or renamed by the platform layer.
	* Replaced the DeplyomentContext.StageFiles() function with simpler overloads for particular use cases (options for remapping are replaced with the SystemNonUFS file type)
	* Config entries in the [Staging] category in DefaultGame.ini file allow remapping one directory to another, so restricted content can be made public in packaged builds (Example syntax: +RemapDirectory=(From="Foo/NoRedist", To="Foo"))
	* An error is output if any restricted folder names other than the output platform are in the staged output.

Change 3540315 by Ben.Marsh

	UAT: Moving StreamCopyDescription command into a NotForLicensees folder, since it's only meant to be used by engine developers.

Change 3542410 by Ben.Marsh

	UBT: Deprecate accessing properties through BuildConfiguration.* or UEBuildConfiguration.* from .target.cs files. These have been aliases to the current TargetRules instance for several releases already.

Change 3543018 by Ben.Marsh

	UBT: Deprecate the BuildConfiguration and UEBuildConfiguration aliases from the ModuleRules class. These have been implemented as an alias ot the ReadOnlyTargetRules instance passed to the constructor for several engine versions.

Change 3544371 by Steve.Robb

	Fixes to TSet_Add and TMap_Add BPs.

	#jira UE-47441

[CL 3548391 by Ben Marsh in Main branch]
2017-07-21 12:42:36 -04:00
Matt Kuhlenschmidt
70d3bd4b72 Copying //UE4/Dev-Editor to //UE4/Dev-Main (Source: //UE4/Dev-Editor @ 3497164)
#lockdown Nick.Penwarden
#rb none

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

Change 3433074 by Matt.Kuhlenschmidt

	Fix crash when clicking on certian tutorial blueprints.

	#jira UE-44593

Change 3433075 by Matt.Kuhlenschmidt

	Remove hittest grid log spam.  The underlying problem causing this has been fixed

Change 3433077 by Matt.Kuhlenschmidt

	Fix lighting becoming unbuilt when mesh painting

	#jira UE-44837

Change 3433081 by Matt.Kuhlenschmidt

	PR #3553: Crashfix for static array properties (Contributed by Pierdek)


Change 3433104 by Alexis.Matte

	Make sure re-import skeletal mesh follow the import morph option
	#jira UE-42846

Change 3434825 by Matt.Kuhlenschmidt

	Fix crash when GC happens while the vr editor radial menu is open.

Change 3434831 by Matt.Kuhlenschmidt

	Added missing file

Change 3434868 by Shaun.Kime

	If you have a reroute node between a Material Function texture input and its usage, the parent material will fail to resolve the reroute node.

	#jira ue-44670

Change 3434998 by Alexis.Matte

	Meshes editors material/section panel are now fully transactional
	- Staticmesh editor: section material slot, section cast shadow, section collision, material slot instance, material slot name
	- Skeletal mesh editor: material slot instance, material slot name
	Also fix some transaction description

	#jira UE-44462

Change 3435195 by Jamie.Dale

	Fixed incorrect handling of some LTR scripts that require shaping

	These scripts need to go through HarfBuzz, and this also fixes a case where HarfBuzz wasn't applying font scale correctly.

	#jira UE-44767

Change 3435199 by Jamie.Dale

	Fixed some crashes/artifacts with bidirectional text

	It was possible for a line to compute an incorrect range, which could cause crashes or other highlighting issues. The highlighting logic has also been updated as the old code didn't handle all bidirectional cases correctly.

Change 3435200 by Jamie.Dale

	Fixed a grapheme cluster metrics issue in the font editor viewport

	The viewport also now respects the default shaping method CVar.

Change 3435771 by Alexis.Matte

	Fix degenerated bounds calculation for skeletalmesh when the skeleton is remove from a re-import
	(PhysicAsset API change, adding 1 function)
	#jira UE-44609

Change 3436856 by Jamie.Dale

	Added some missing Unicode block ranges

Change 3436914 by Jamie.Dale

	Adding some missing combining character ranges to the text shaper

Change 3436923 by Alexis.Matte

	PR #3463: Get bounds for all triangles, not just the first one. WedgeIndex was . (Contributed by DaveC79)
	#jira UE-43764


Change 3436948 by Jamie.Dale

	Updated the Portal to use the predefined Unicode block ranges

Change 3436961 by Max.Chen

	Sequencer: Show camera shake/anim track menus even if there aren't any assets.

Change 3437244 by Max.Chen

	Sequencer: Clear locked cameras when releasing Sequencer.

	#jira UE-44967

Change 3437515 by Arciel.Rekman

	UBT: improvements for LocalExecutor.

	- Larger number of parallel jobs on 16GB+ machines.
	- Use WaitForExit() instead of polling.
	- Tested on Linux and Mac.

Change 3437629 by Matt.Kuhlenschmidt

	Improve asset import data display in static and skeletal meshes

Change 3438047 by Arciel.Rekman

	Fix overlapping ranges being passed to memcpy().

Change 3438822 by Yannick.Lange

	ViewportInteraction: Move gizmo handle files to make them private.

Change 3438906 by Matt.Kuhlenschmidt

	PR #3556: Git Plugin: fix new option "init Git LFS" that make assets read-only (master/UE4.17) (Contributed by SRombauts)


Change 3438907 by Matt.Kuhlenschmidt

	PR #3565: add -quality option to buildlighing commandlet (Contributed by kayama-shift)


Change 3438908 by Matt.Kuhlenschmidt

	PR #3558: UE-44862: Always update SColorPicker color on OK button (Contributed by projectgheist)


Change 3439393 by Matt.Kuhlenschmidt

	Force highest LOD for highres screenshots

Change 3439819 by Matt.Kuhlenschmidt

	Turned FAssetData into a struct for some upcoming script exposure of FAssetData

Change 3439949 by Arciel.Rekman

	Fixed selection logic for the UE4_LINUX_USE_LIBCXX environment variable.

	- Allows disabling libc++ by setting the variable to 0.
	- Pull request #3576 contributed by jared-improbable.


Change 3441078 by Jamie.Dale

	The culture/language/locale console commands are now available in all build configs

Change 3441109 by Jamie.Dale

	Text containing surrogate pairs now runs through HarfBuzz when shaping in Auto mode

	This is needed as the kerning-only shaping code assumes that everything is within the BMP

Change 3441275 by Matt.Kuhlenschmidt

	Disable spinning on location and scale.  These dont work because we have no notion of infinite spinning

Change 3442748 by Yannick.Lange

	ViewportInteraction: Remove unused console variables.

Change 3442775 by James.Golding

	Add support for editing MaterialFunctions to MaterialEditingLibrary
	Pull Material recompile/update code into UMaterialEditingLibrary::RecompileMaterial
	Pull MaterialFunction update code into UMaterialEditingLibrary::UpdateMaterialFunction util
	Move RebuildMaterialInstanceEditors to UMaterialEditingLibrary
	Added test content for Material/MaterialFunction editing
	Add needed BlueprintReadWrite to expressions (constants, function input/output)
	Expose UMaterialExpressionMaterialFunctionCall::SetMaterialFunction to BP, rename old func (which takes old function) to SetMaterialFunctionEx, also expose GetInputNameWithType

Change 3442779 by James.Golding

	Fix header order

Change 3442817 by Yannick.Lange

	ViewportInteraction: Add can execute checks for level editor commands.

Change 3443038 by Michael.Dupuis

	#jira UE-43377: When you select a foliage actor we will move all instance contained in it to the new level as we can't move a foliage actor
	Only permit moving foliage instance if there is some selected

Change 3443855 by Michael.Dupuis

	#jira UE-44885:  Unregister from PerModuleDataObjects when the object is destroyed

Change 3446096 by Max.Chen

	Sequencer: Add OnFinished() event when a level sequence completes playback

	#jira UE-45173

Change 3446097 by Max.Chen

	Sequencer: Evaluate one last time before the sequence is torn down and reset

	#jira UE-45174

Change 3446242 by Jamie.Dale

	Fixed caret not appearing in empty text layouts

	Caret selections have no range, and therefore have no width

Change 3446361 by Matt.Kuhlenschmidt

	Fix WITH_EDITOR only functions causing generated code compile errors when the all functions on the class are WITH_EDITOR

Change 3446457 by Alexis.Matte

	Polish the speed tree import dialog

	#jira UE-44963

Change 3446946 by Michael.Trepka

	Modified FWindowsWindow::GetRestoredDimensions to return correct window position for normal windows for which GetWindowPlacement returns position in workspace coordinates

	#jira UE-37934

Change 3447543 by Arciel.Rekman

	Reduce VMAs on Linux.

	- Trades off increased address space (VIRT in terms of ps/htop) for smaller number of distinct mappings (VMAs, virtual memory areas).
	  This decreases possibility to run into vm.max_map_count limit on Linux.
	- Tested on Linux and Mac.

Change 3448468 by Arciel.Rekman

	Fix race condition during creation of GMalloc.

	- On Mac GMalloc can be created on two different thread that are racing with each other - app's main thread and a system thread.

Change 3449012 by Max.Chen

	Sequencer: Add time to transform, color and vector key structs so that key times are editable from the key editors.

	#jira UE-45089

Change 3449018 by Max.Chen

	Sequencer: Add OnCameraCut event that fires when there is a camera cut.

	#jira UE-45137

Change 3449195 by Max.Chen

	Sequencer: Add setting for limit scrubbing to playback range.

	#jira UE-43502

Change 3449198 by Max.Chen

	Sequencer: Reorder hierarchical bias so that group priority takes precedence.

Change 3449217 by Max.Chen

	Sequencer: Add setting to activate realtime viewports when in sequencer.

Change 3449219 by Max.Chen

	Sequencer: Focus on search boxes when opened.

Change 3449238 by Max.Chen

	Sequencer: Assign actor should replace the actor itself after it has updated all the components. Also, replace components be fullname rather than by class.

Change 3449239 by Max.Chen

	Sequencer: Fix offsets when moving multiple sections. Dragging should be clamped to the bounds that any of the selected sections hits against the unselected sections.

Change 3449241 by Max.Chen

	Sequencer: Restore section selection after full tree rebuild.

Change 3449279 by Max.Chen

	Sequencer: Set movie scene capture frames only when not using custom frames. This allows the user entered frame numbers to persist in config, rather than overwriting them when doing a "Render Shot"

Change 3449280 by Max.Chen

	Sequencer: Spawn in the persistent level. Otherwise, they get spawned into whatever sublevel is current.

	#jira UE-44552

Change 3449294 by Max.Chen

	Sequencer: Null check for sequencer ed mode crash.

Change 3449297 by Max.Chen

	Sequencer: Fix delay in sliding values. Mark changed when sliding values. Mark refresh immediately when committing values since OnValueChanged will be called and needs to have the correct value that was refreshed immediately.

	#jira UE-42866

Change 3449542 by Max.Chen

	Sequencer: Fix scrubber hit testing so that the time scrubber is really favored over the playback ranges.

	#jira UE-44569

Change 3451507 by Matt.Kuhlenschmidt

	Fix extra slate uv coords not functioning on ES2

Change 3451510 by Matt.Kuhlenschmidt

	PR #3595: Fixed wrong colour for level status (Contributed by ronve)


Change 3451529 by Alexis.Matte

	fbx scene importer: Make sure we set INVALID_UNIQUE_ID to node that has no attribute.
	#jira UE-34410

Change 3451611 by Yannick.Lange

	ViewportInteraction: Dragging gizmo without second pass for snapped calculations.

Change 3452134 by Jamie.Dale

	Fixed constant font cache flushing if a widget had no font set

Change 3452239 by Jamie.Dale

	Fixed constant font measure flushing if a widget had no font set

Change 3452243 by Jamie.Dale

	Removed deprecated code for creating fonts from bulk data

Change 3452277 by Jamie.Dale

	The concept of "stale" composite fonts is now editor-only

Change 3452358 by Alexis.Matte

	Fbx scene importer: Do not remove existing attribute reference from the blueprint if the reimport of the associate mesh attribute is not tick.
	#jira UE-45232

Change 3452678 by Max.Chen

	Sequencer: Fix crash on export if there's no shot data.

Change 3453057 by Matt.Kuhlenschmidt

	Exposed asset exporting to script

Change 3453782 by Andrew.Rodham

	Sequencer: Fixed deterministic cooking issues with movie scene data
	  - Movie scene signatures are now initialized in PostInitProperties
	  - A warning is now presented when attempting to cook old data that was never serialized with a signature.
	  - Removed redundant legacy data upgrade logic that could dirty level sequences on load.

	#jira UE-44912

Change 3453788 by Yannick.Lange

	ViewportInteraction: Custom scene proxy for gizmo handles.

Change 3453938 by Max.Chen

	Sequencer: Hotkeys (shift , and shift .)  to step to next/previous shot

	#jira UE-45119

Change 3454058 by Michael.Dupuis

	Fixed StaticAnalysis

Change 3454077 by Max.Chen

	Sequencer: Fix not saving the pre-animated track value when creating a track/key.

	On pre object change, broadcast property change so that a track or key can be created. That track/key needs to be evaluated immediately so that the pre-animated state can be saved properly. This is done now with RefreshAllImmediately and is only called when a track has been created. Also, added a return value for OnKeyProperty, so that it's known what changed in particular (ie. track created, track modified, etc)

	Also, fixed transform keying so that if a transform track already exists for the object or the scene component, the existing track is used.

	#jira UE-45130

Change 3454108 by Nick.Darnell

	UMG - Fixing the WIC to properly record cursor delta so that scrollbars work.

Change 3454109 by Jamie.Dale

	Cache the text layout source info in non-shipping builds so you can inspect it in the debugger

Change 3454202 by Matt.Kuhlenschmidt

	Fix bogus error message about the number of usable texture coordinates on ES2 when compiling a UI domain material

Change 3454390 by Yannick.Lange

	Fix creating a plugin in a C++ project opens a second instance of Visual Studio. Use SourceCodeAccessor to open solution when necessary.
	#jira UE-45035

Change 3454564 by Matt.Kuhlenschmidt

	#rnx Fix deprecation warnings

Change 3455471 by Yannick.Lange

	ViewportInteraction: Fix entering and exiting VR Mode disables gizmo in desktop editor viewport.
	#jira UE-44965

Change 3456183 by Max.Chen

	Sequencer: Auto key, auto track refactor.

	Auto key - create a key when the property changes and there's an existing track.
	Auto track - create a track when the property changes. This is only exposed in the level sequence editor.
	All - create a key and a track when the property changes. This is only exposed in VR Editor.
	None - do nothing.

	#jira UE-43469

Change 3456349 by Andrew.Rodham

	Sequencer: Only perform legacy signature checks on instances, and only where signatures match the CDO

Change 3456678 by Alexis.Matte

	Allow to add null level instance override material via the advance material array. But still limit the override material number to the mesh material number.
	#jira UE-45306

Change 3456945 by Max.Chen

	UMG: Add restore state to 2d transform section.

	#jira UE-45372

Change 3457196 by Arciel.Rekman

	Linux: serialize allocations from the memory pool.

Change 3458434 by Max.Chen

	Sequencer: Remove obsolete set tick prerequites functions.

Change 3458671 by James.Golding

	Added MIC editing support to MaterialEditingLibrary
	Fix static analysis warning

Change 3458888 by Matt.Kuhlenschmidt

	PR #3615: More detailed log messages for debugging warnings/errors (Contributed by projectgheist)


Change 3458893 by Matt.Kuhlenschmidt

	PR #3583: UE-44960: Delta value wasn't being used (Contributed by projectgheist)


Change 3458895 by Matt.Kuhlenschmidt

	Fix typo

Change 3458902 by Matt.Kuhlenschmidt

	PR #3607: Improved InputKeySelector functionality (Contributed by projectgheist)


Change 3458917 by Matt.Kuhlenschmidt

	Fix crash with invalid object properties in the class picker

	#jira UE-39000

Change 3458939 by Matt.Kuhlenschmidt

	Fix compile error

Change 3458984 by andrew.porter

	QAGame: Initial check in of sequencer smoke test map

Change 3459510 by Matt.Kuhlenschmidt

	Fixed ensure when deleting a map that contains build data which also happens to be the currently loaded map.

	#jira UE-45052

Change 3460985 by Max.Chen

	Sequencer: Snap play time to keys now allows scrubbing between keys and snaps to key times within a certain screenspace tolerance.

	#jira UE-45090

Change 3461698 by Arciel.Rekman

	Avoid using ARRAY_COUNT in Vulkan.

	- Sometimes those arrays can have no extensions whatsoever, and it is illegal to declare a 0 element C array.

Change 3462053 by Max.Chen

	Sequencer: Show sequencer spawnables in the world outliner and add the icon overlay for spawnables.

	#jira UE-43470

Change 3462139 by Max.Chen

	Property Editor: Add objects to FPropertyAndParent

Change 3462202 by Arciel.Rekman

	Fix FSocket::Recv() blocking with Peek when there's no data.

Change 3462253 by Nick.Darnell

	Slate - New Clipping System

	Clipping is now a stateful choice made during composition of the slate hierarchy.  Previously every widget got to respect or modify the clipping rect on an as needed basis.  The problem was that clipping was only allowed in the layout space of the widget, and it wasn't possible to properly clip elements with render transforms.  The new system permits all kinds of transforms on any widget, and they will all be clipped correctly.  It tries to use Scissor Rects as they are much cheaper, but will switch over to stenciling if need be to represent a complicated masking structure with several rotated clipping rects all needed to be combined together.

	Here are the new clipping states a widget can have, almost all widgets are set to No.  Only change it from No if your widget actually needs to clip, generally speaking most widgets don't need to clip.

	/**
	 * This widget does not clip children, it and all children inherit the clipping area of the last widget that clipped.
	 */
	Inherit,
	/**
	 * This widget clips content the bounds of this widget.  It intersects those bounds with any previous clipping area.
	 */
	ClipToBounds,
	/**
	 * This widget clips to its bounds.  It does NOT intersect with any existing clipping geometry, it pushes a new clipping
	 * state.  Effectively allowing it to render outside the bounds of hierarchy that does clip.
	 *
	 * NOTE: This will NOT allow you ignore the clipping zone that is set to [Yes - Always].
	 */
	ClipToBoundsWithoutIntersecting UMETA(DisplayName = "Yes - Without Intersecting (Advanced)"),
	/**
	* This widget clips to its bounds.  It intersects those bounds with any previous clipping area.
	*
	* NOTE: This clipping area can NOT be ignored, it will always clip children.  Useful for hard barriers
	* in the UI where you never want animations or other effects to break this region.
	*/
	ClipToBoundsAlways UMETA(DisplayName = "Yes - Always (Advanced)"),
	/**
	 * This widget clips to its bounds when it's Desired Size is larger than the allocated geometry
	 * the widget is given.  If that occurs, it behaves like [Yes].
	 *
	 * NOTE: This mode was primarily added for Text, which is often placed into containers that eventually
	 * are resized to not be able to support the length of the text.  So rather than needing to tag every
	 * container that could contain text with [Yes], which would result in almost no batching, this mode
	 * was added to dynamically adjust the clipping if needed.  The reason not every panel is set to OnDemand,
	 * is because not every panel returns a Desired Size that matches what it plans to render at.
	 */
	OnDemand UMETA(DisplayName = "On Demand (Advanced)")

	- Large API Change -

	All FSlateDrawElement::Make_____ calls have been deprecated that involved passing in a clipping rect.  You no longer should are passed a Clipping rect via OnPaint.  You are still passed a rect, but this rect represents a Culling Rect, which is valuable if you need to just out right not paint things the user can't possibly see.

	If you were previously trying to determine if you should cull widgets, by doing something like this,

	if ( FSlateRect::DoRectanglesIntersect(MyClippingRect, CurWidget.Geometry.GetRenderBoundingRect()) )

	That's no longer a good option since there are ways for widgets to ignore the culling bounds.  You should convert anything like above to the one below,

	if (!SWidget::IsWidgetCulled(MyCullingRect, CurWidget))

	To assist in debugging efforts, there are several new debugging console flags in Slate,

	Slate.ShowClipping 1 - Controls whether we should render a clipping zone outline.  Yellow = Axis Scissor Rect Clipping (cheap).  Red = Stencil Clipping (expensive).

	Slate.DebugCulling 1 - Disables pushing clipping or stencil rects to the GPU, but continues to intersect culling rects, so that you can tell if a widget is properly culling children it can't possibly draw.

	Slate.ShowTextDebugging 1 - Show debugging painting for text rendering.

	I've added a new Experimental Feathering Option, it adds AA geometry around the outside of Box and Image brushes.

	Slate.Feathering 1

	If you're using RenderDoc or something similar, you can now enable render events for slate, so that you can better grok how we're batching and changing states for each UI render pass.

	Slate.EnableDrawEvents 1

	#jira UE-4659

	#rn

Change 3462714 by Nick.Darnell

	Fixing a few more compiler issues with the clipping changes.

Change 3462726 by Max.Chen

	Switch OnEditStructChildContentsChanged to use FObjectWriter instead of FMemoryWriter which supports serializeing UObjects. This fixes a crash when adding actor array elements to a user defined event struct.

	#jira UE-45431

Change 3462801 by Nick.Darnell

	Adding a UMG dependency to EngineTestBuild.

Change 3462914 by Max.Chen

	Sequencer: Fix regression where spawnables aren't getting saved. Caused by 3407138

	#jira UE-30007
	#jira UE-39003

Change 3462946 by Nick.Darnell

	Automation - Tweaking the UI automation tests converting them over to use the new UI Screenshot automation test.
	Automation - Adding a blur widget test.

Change 3462987 by Matt.Kuhlenschmidt

	Back out changelist 3458893

Change 3464774 by Matt.Kuhlenschmidt

	PR #3629: Bugfix: Missing small icon in Project Launcher profile editor (Contributed by aarmbruster)


Change 3464785 by Nick.Darnell

	Fixing some clipping stuff in the editor.

Change 3464830 by andrew.porter

	QAGame: Second pass on sequencer smoke test map

Change 3464902 by Nick.Darnell

	Loading - Adding some additional checks to the the loading code to ensure we're on the main thread.  Additionally adding a fix from UDN that prevents deadlocks in the rare case a user hits Alt+Tab in a fullscreen game while in a hard loading screen.

Change 3464988 by Max.Chen

	Sequencer: Add attenuation settings for attached audio components.

	#jira UE-33080

Change 3465024 by Nick.Darnell

	MoviePlayer - Impoving the playback mode displaynames.

Change 3465074 by Arciel.Rekman

	Fix shadowing issues of GraphicsPSOInit.

Change 3465097 by Matt.Kuhlenschmidt

	Some refactoring of the details panel

	Exposed new methods of adding a struct on scope to a details panel and have it work properly with customizations. The scruct on scope has a "fake" ustructproperty that allows the details panel to show the whole struct not just an individual property.

	Refactored the API for adding rows to details panels to make it more consistent\
	AddChildCustomBuilder->AddCustomBuilder
	AddChildGroup->AddGroup
	AddChildContent->AddCustomRow
	AddChildPropert->AddProperty
	AddChildStructure->AddExternalStructureProperty
	AddStructure->AddAllExternalStructureProperties
	AddExternalProperty->AddExternalObjectProperty or AddExternalStructureProperty

Change 3465186 by Max.Chen

	Sequencer: Save the BindingID in the pre animated token producer so that it can be destroyed properly. This fixes a bug where the default state of a spawnable isn't saved.

	#jira UE-43780

Change 3465315 by Matt.Kuhlenschmidt

	Fix Fortnite and Orion details panel customization warnings

Change 3465424 by Nick.Darnell

	Automation - Moving the step for setting the link to the automation reports to be set before we start the engine.

Change 3465488 by Nick.Darnell

	Automation - Forcing textures to load before taking screenshot, so that the scene gets another opportunity to render before we render with Slate.  This should fix the Blur UI Test.

Change 3466277 by Arciel.Rekman

	Linux: fix window drift when dragging (UE-40380).

	- Change by Cengiz Terzibas.

Change 3466370 by Nick.Darnell

	UMG - Fixing the colors for the resize handle in the designer.

Change 3466372 by Nick.Darnell

	UMG - Fixing the ruler ticks sometimes not being drawn.

Change 3466374 by Nick.Darnell

	UMG - Fixing the designer showing multiple options for sequencer.

Change 3466377 by Nick.Darnell

	UMG - Cleaning up some clipping bits.

Change 3467025 by Andrew.Rodham

	Re-saving assets that contain legacy (<4.15) movie scene data to remove deterministic cook warning.
	If conflicts arise during merging of these assets, please ignore the changes made in dev-editor, and accept game-side changes.

	(CIS step 62283298, jobId 7773146)
	(CIS step 62283297, jobId 7773146)

Change 3467099 by Max.Chen

	Fix GetObjectPropertyClass ensure logic. This was returning UObject::StaticClass when valid.

Change 3467172 by Max.Chen

	Sequencer: Evaluation optimizations. Also, fixes subsequences not getting expired, leaving dangling spawnables.

	#jira UE-43690

Change 3467192 by Matt.Kuhlenschmidt

	Fix transactions getting stuck in the color grading controls.  This prevents PIE from working properly and causes shutdown crashes

	#jira UE-45527

Change 3467251 by Yannick.Lange

	ViewportInteraction: Fix scale and rotation snap while dragging with two lasers.

	#jira UE-43489

Change 3467331 by Matt.Kuhlenschmidt

	Fix D3D shader compiler hard coding shader path and not giving proper warnings when it cannot find the shaders

Change 3467335 by Matt.Kuhlenschmidt

	Remove DarkStyle attribute from SNumericEntryBox and allow a spin box style to be passed to it.

Change 3467558 by Max.Chen

	Scene Outliner: Generic support to add default columns to a scene outliner.

Change 3467565 by Jamie.Dale

	Removing old screenshot data for test

Change 3467589 by Nick.Darnell

	Editor - Random cleanup.

Change 3467596 by Nick.Darnell

	Progress Bar - Exposing Border Padding to UMG.

Change 3467600 by Nick.Darnell

	Slate - Adjusting the rendering of the splitter, previously it could be off by a pixel or two, which becomes more apparent now with the clipping changes.

Change 3467601 by Max.Chen

	Property Editor: Fix static analysis warning

Change 3467662 by Nick.Darnell

	Automation - Fixing a bug with the screenshot comparison tool not replacing (removing) the old screenshot data.

Change 3467674 by Max.Chen

	Property Editor: Fix static analysis warning

Change 3467737 by Max.Chen

	Sequencer: Added OnMovieSceneBindingsChanged delegate

Change 3468053 by tim.gautier

	QAGame: Updating Editor Smoke Map

	- Updated landscapes into Stations for testing

	- Added Foliage Sublevel

Change 3468194 by Arciel.Rekman

	Linux: fix problems communicating with various STL-using libs.

	- Stop hiding global new/delete signatures.
	- Disable CEF3 since this change uncovers the problem with libcef.so not built to use bundled libpng.

Change 3468678 by Max.Chen

	Sequencer: Set "Sequencer Actor" tag before setting the actor label so that the outliner refreshes after the actor has the tag.

Change 3469314 by tim.gautier

	QAGame: Added Painted Foliage / Spline section to EditorSmoke map

Change 3469377 by Nick.Darnell

	Slate - Fixing some warnings in a couple of sample games due to the clipping changes.

	#rnx

Change 3469767 by Max.Chen

	Sequencer: Outliner column and sequencer binding data

	#jira UE-43470

Change 3469974 by Arciel.Rekman

	Fix code projects not working in Linux installed build.

Change 3470082 by Nick.Darnell

	Slate - The GetRenderer() call on SlateApplication no longer returns a SharedPtr, rather than convert it to a thread safe ptr, going to just make accessing it a raw ptr return, so it can be safely referenced on the game thread while being used on the slate loading thread.

Change 3470174 by Nick.Darnell

	Slate - Get the last widget in a widget path utility.

Change 3470176 by Nick.Darnell

	UMG - User Widgets now have an easy way to know if they're part of or have been removed from the focused widget path, which is handy for doing effects.

Change 3470261 by Nick.Darnell

	Slate - The GetRenderer() call on SlateApplication no longer returns a SharedPtr, rather than convert it to a thread safe ptr, going to just make accessing it a raw ptr return, so it can be safely referenced on the game thread while being used on the slate loading thread.

Change 3470286 by Max.Chen

	Sequencer: Scene Component's HiddenInGame now goes through the VisibilityTrack and the visibility template.

Change 3470366 by Nick.Darnell

	Slate - We now version focus per user, that way during focus events, we can safely abort focus events and state transitions if someone interrrupts the active focus event with something new.

Change 3470649 by Matt.Kuhlenschmidt

	Fix deprecation warnings

Change 3470695 by Matt.Kuhlenschmidt

	Fixed typo

	#jira UE-45580

Change 3470721 by Matt.Kuhlenschmidt

	Fix static analysis

Change 3471254 by Michael.Dupuis

	#jira UE-42952: Keep occlusion result per view

Change 3471287 by Nick.Darnell

	UMG - Render Focus Rule now defaults to never.

Change 3471291 by Nick.Darnell

	Slate - Fixing FSlateRenderer* change fallout.

Change 3471299 by Nick.Darnell

	Slate - Fixing FSlateRenderer* change.

Change 3471323 by Nick.Darnell

	Automation - Fixing automation and Static Analysis warning.

Change 3471413 by andrew.porter

	QAGame: Added test content for anim blending and material parameteres to sequencer smoke level

Change 3471649 by Max.Chen

	Sequencer: Modify the track when adding animation

	#jira UE-45618

Change 3471659 by Matt.Kuhlenschmidt

	Added a way to check if a movie is playing from the engine.
	Prevented viewport redraws for canvas loading screens if a slate based loading movie is playing

Change 3471734 by Matt.Kuhlenschmidt

	Added basic material hookup to USD.  Similar to FBX it will find materials based on rules specified by the user in the import settings

Change 3472176 by Nick.Darnell

	UMG - Improving the display of the +Track menu in sequencer for UMG.  Renamed it from +Add, which is repetitve to +Track.  Additionally, the dropdown now shows the currently selected widgets, as well as a submenu containing all the 'important' widgets, so we no longer populate that list with a ton of irrelevant widgets that are just Buton_1 - N, which is pointless in showing people, they'll never guess which is the right button.

Change 3472740 by Max.Chen

	Sequencer: Add GetThisFrameMetaData accessor

Change 3472748 by Max.Chen

	Sequencer: Added OnBeginScrubbing and OnEndScrubbing event delegates

Change 3472753 by Max.Chen

	Sequencer: Add EMovieSceneDataChangeType parameter to OnMovieSceneDataChanged delegate

Change 3472870 by Nick.Darnell

	Clipping - Fixing the deprecated tip for scissor rect boxes to be correct.  Removing it's usage from UT.

Change 3473340 by Max.Chen

	Scene Outliner: Add ability to register additional filters

Change 3473348 by Max.Chen

	Details View: Make ForceRefresh virtual. Added accessors to delegates (ie. GetIsPropertyReadOnlyDelegate)

Change 3473441 by Max.Chen

	Sequencer: Autokey Refactor Part 2.

	Autokey is now a single toggleable state.

	Allow Edits Mode has 3 states:
	  Allow All Edits - Allow any edits to occur, some of which may produce tracks/keys or modify default properties.
	  Allow Sequencer Edits Only - All edits will produce either a track or a key.
	  Allow Level Edits Only - Properties in the details panel will be disabled if they have a track.

	#jira UE-45229

Change 3473670 by Nick.Darnell

	Modules - The module manager no longer returns sharedptrs to IModuleInterfaces, this was the source of rare hard to track down crashes due to a shared ptr reference leak when GetModule was called on non-main threads.  We now store a TUniquePtr internally, and only lease out raw pointers.

	#rn

Change 3473711 by Nick.Darnell

	Disabling the ensure in the module manager.

Change 3473747 by Max.Chen

	Sequencer: Fix tooltip

Change 3474091 by Jamie.Dale

	Added a warning when cooking a UFontFace that is outered to a UFont asset

	These cause issues with iterative COTF, and should be split off into their own assets (as the UI has been asking people to do for several versions)

Change 3475052 by Yannick.Lange

	VR Editor: Fix Crash when quitting the editor with VR Mode enabled. VR Editor was being enabled when saving the map on closing the editor.

	#jira UE-45415

Change 3475054 by Yannick.Lange

	Fix crash when adding a camera to the world in VR Mode the second time. The slate application did not reset when stop dragging in VR Mode, so the second time when starting to drag a camera out of the UI it would already by in a dragging state.

	#jira UE-45574

Change 3475263 by Nick.Darnell

	Fixing some additional cases of IModuleInteface SharedPtr usage.

Change 3475268 by Max.Chen

	Sequencer: Set jumped state when looping playback. This fixes an issue where audio doesn't stop and restart when looped.

	#jira UE-45654

Change 3475269 by Max.Chen

	Scene Outliner: Additional filters should only apply to actor browsing mode

Change 3475407 by Nick.Darnell

	Fixing some clipping / module shared ptr changes in the launcher code.

Change 3475542 by Max.Chen

	Sequencer: Update thumbnail and section highlighting to use new clipping behavior.

	#jira UE-45692
	#jira UE-45689

Change 3475743 by Michael.Dupuis

	#jira UE-45183: When updating phyx region take into account simple collision mip

Change 3475949 by Arciel.Rekman

	Remove PhysX deoptimization (no longer needed).

	- OR-24947 has been closed three months ago.

Change 3476022 by Michael.Dupuis

	#jira UE-45560: Make sure we're not going out of range

Change 3476063 by Michael.Dupuis

	#jira UE-45562: Do not try to unregister from static mesh if no static mesh is specified for the component

Change 3476168 by Michael.Trepka

	Added handling of directory symlinks to FApplePlatformFile::IterateDirectory

	#jira UE-43704

Change 3476172 by Nick.Darnell

	Fixing a Imoduleinterface change.

Change 3476183 by Jamie.Dale

	Exposing GoTo/ScrollTo to single-line editable text for API parity with multi-line editable text

Change 3476385 by Arciel.Rekman

	Linux: handle symlinks when iterating directories.

Change 3476522 by Michael.Trepka

	Solved a problem with Mac FMallocTBB::Malloc() returning nullptr for 0 bytes allocations, which is inconsistent with other platforms. On Mac we always scalable_aligned_malloc, which behaves differently than scalable_malloc, so for 0 bytes requests we allocate sizeof(size_t), which is exactly what scalable_malloc does internally in such case.

Change 3476806 by Nick.Darnell

	UMG - Focus the designer after dropping a widget onto the surface.

Change 3476809 by Nick.Darnell

	Curve Editor - Enable Clipping on the curve editor.

Change 3477475 by Nick.Darnell

	Fixing a module interface shared ptr usage in UT.

Change 3477553 by Yannick.Lange

	VR Editor: Removed AssetEditorPanelID and replaced it with TabManagerPanelID. A panel for AssetEditorPanelID was never created making it impossible to open an asset editor.

Change 3477734 by Yannick.Lange

	VR Editor: Fix Warning: SetRelativeScale3D : Invalid Scale entered (X=inf Y=inf Z=inf). Resetting to 1.f. warning when adding CineCameraActor to World from Modes Panel. Make sure to not divide by zero when there is no boundary scale.

	#jira UE-44933

Change 3477761 by Jamie.Dale

	Some improvements to avoid loading the native .locres files twice when we don't need to

Change 3477780 by Nick.Darnell

	PR #3250: Return correct VirtualUserIndex (Contributed by projectgheist)


Change 3477786 by Nick.Darnell

	PR #3650: Changed TestNull to accept const pointers. (Contributed by e-agaubatz)


Change 3477795 by Nick.Darnell

	PR #2844: UE-36936: Don't stretch container for Plugin Image (Contributed by projectgheist)


Change 3478092 by Nick.Darnell

	PR #2341: Optional Middle Mouse Button panning in Graph Editor (Contributed by flipswitchingmonkey)
	Engine Edit - Made some small changes to the enum type, and some naming.


Change 3478450 by Nick.Darnell

	Fixing some uninitialized variable errors.

Change 3479827 by Andrew.Rodham

	Sequencer: Addressed serialization issues with some struct types

Change 3479874 by Jamie.Dale

	Fixed "NativeGameLanguage" not being used correctly during localization initialization

Change 3480012 by Andrew.Rodham

	Sequencer: Fixed loading tagged properties as native for track identifiers

	#jira UE-45823

Change 3480337 by Alexis.Matte

	Fix morph target crash missing some valid index check

Change 3480804 by Alexis.Matte

	Fix crash with ColorGradingMode custom detail

	#jira UE-45638

Change 3480892 by Andrew.Rodham

	Sequencer: Ensure that movie scene sequences know about the editor object version

	#jira UE-45842

Change 3481073 by Nick.Darnell

	Fix the shader compiler error from main in Slate.

Change 3481303 by Nick.Darnell

	UMG - Fixing a bug with the drag handle not working correctly in HDPI mode.

Change 3481308 by Nick.Darnell

	Slate - Tweaking the IsWidgetCulled logic to consider both the layout and rendering bounds.  If we do this, we get a much more desireable outcome for people that want to animate widgets and such and plan to have temporary animations to move the widget offscreen, but want the layout bounds to anchor that widget in the visible frame so that it animates even when normally it would be culled b/c the render transform and therefore the renderbounds moved it completely outside the culling rect.

Change 3481629 by Max.Chen

	Sequencer: Add Level Sequence Actor as an output for CreateLevelSequencePlayer()

	#jira UE-45785

Change 3481899 by Yannick.Lange

	VR Editor: Added debug modetoggle command with an event that is broadcasted whenever this happens. Currently this is used to show all the floating UIs of the UI system to debug without HMD using VREd.ForceVRMode.

Change 3481984 by Michael.Dupuis

	#jira UE-45845: always validate if we have a static mesh before trying to access it as user can decide to not assign one and use the tools

Change 3482047 by Nick.Darnell

	Slate - Adding some comments to IsWidgetCulled.

Change 3482110 by Nick.Darnell

	Slate - IsWidgetCulled is no longer static and is now called IsChildWidgetCulled.

Change 3482136 by Jamie.Dale

	The CamelCase break iterator now treats digits around character tokens as part of the identifier

Change 3482138 by Michael.Dupuis

	#jira UE-45854: Properly unregister during undo operation

Change 3482150 by Michael.Dupuis

	#jira UE-45845 : Add missing nullcheck for GetStaticMesh

Change 3482153 by Nick.Darnell

	Slate - IsWidgetCulled is no longer static and is now called IsChildWidgetCulled.

Change 3482180 by Nick.Darnell

	UMG - Widget Components do not need to define a widget class to be rendererd, they can have native slate widgets only.  This was a regression from main.

Change 3482273 by Nick.Darnell

	UMG - Tweaking some more things about the widget component box outline.

Change 3482308 by Alexis.Matte

	Fixing morph target smooth group support. Do not call FillSkeletalMeshImportData more then once on FbxNode since this fonction is doing some conversion and change the FbxNode, applying those conversion twice do not return the same faces smooth group.
	#jira UE-45696

Change 3482327 by Nick.Darnell

	UMG - More tweaks to the WidgetComponent so both shows the box outline, but works in game and VR editor.

Change 3482705 by Andrew.Rodham

	Resaving assets that contain legacy data to suppress CIS warnings.
	  - If conflicts arise in these assets, please take game-side changes and ignore these.

Change 3484245 by Max.Chen

	Sequencer: Evaluate on end scrub. This fixes a bug where audio doesn't evaluate in a stopped position at the end of scrubbing, causing it to not stop all sounds. This fixes a bug introduced from 3365018 where evaluate on end scrub was removed.

	#jira UE-45905

Change 3484263 by Max.Chen

	Sequencer: Fix crash on forcing refresh of details panel on release.

	#jira UE-45911

Change 3484431 by Andrew.Rodham

	Resaving assets that contain legacy data to suppress CIS warnings.
	  - If conflicts arise in these assets, please take game-side changes and ignore these.

Change 3484474 by Alexis.Matte

	Fix the morph target animation curve name matching.

	#jira UE-20294

Change 3484475 by Alexis.Matte

	When removing a LOD, make sure we remove all morph target data associate to the LOD.

Change 3484489 by Nick.Darnell

	PR #3668: UE-45908: Cache debug line locations when performing a LineTraceMulti (Contributed by projectgheist)

	#jira UE-45908

Change 3484692 by Nick.Darnell

	Slate - Reverting a change from a game stream.  All Arranged Children don't need to allocated 42 to begin with.  Do need to initialize WidgetPaths better.

Change 3484703 by Nick.Darnell

	Player Input - Making the input event loop for players obey EKeys::NUM_TOUCH_KEYS, rather than being set to Touch10, as the maximum touch input amount, to make supporting greater than 10 touches easier.  Also making the seeding of keys use EKeys::NUM_TOUCH_KEYS.

	#jira UE-43213

Change 3484918 by Jamie.Dale

	Fixed font measuring regression with RTL text

	RTL applies the character count to the next glyph, so it shouldn't process the end of the loop (this was how the older code used to work).

Change 3485718 by Nick.Darnell

	Editor - Removing Super Search & User Feedback button.

Change 3485719 by Nick.Darnell

	Portal - Removing SuperSearch.

Change 3485751 by Matt.Kuhlenschmidt

	Fix crash accessing platformer game menu if the menu is open during a console based load

	#jira UE-45950

Change 3486047 by Arciel.Rekman

	Linux: add OpenEXR implementation (UE-40270).

	#jira UE-40270

Change 3486467 by Max.Chen

	Sequencer: Reset max tick rate when destroyed.

	#jira UE-45956

Change 3486477 by Max.Chen

	Sequencer: Refresh outliner when column is removed.

	#jira UE-45891

Change 3486667 by Andrew.Rodham

	Added missing include

Change 3486724 by Andrew.Rodham

	Sequencer: Fixed curves with no default value, and no keys being evaluated and applied to properties
	  - Also fixed an edge case where a zero (but non-animated) channel could be applied to a final transform

Change 3486730 by Alexis.Matte

	In the Auto-Reimport options, hide the mout point only for the default /Game/ folder
	#UE-45684

Change 3486749 by Alexis.Matte

	Make sure the parent window of the monitor directory browse folder is set properly
	#jira UE-45682

Change 3486805 by Matt.Kuhlenschmidt

	Additional safety against invalid objects being accessed by slate

Change 3486848 by Alexis.Matte

	Make sure Monitor folder feature support root mount point map folder
	During auto import, give priority to asset import factory over the scene import factory
	#jira UE-45691

Change 3486879 by Andrew.Rodham

	Removing obsolete QA assets

Change 3486950 by Nick.Darnell

	PR #2281: Scrollbar missing features and SScrollbar fixes (Contributed by SNikon)
	Review - made some adjustments from the original.


Change 3486954 by Nick.Darnell

	Slate - Moving the STableViewBase over to the FOverscroll class, rather than it's own clone.

Change 3486967 by Nick.Darnell

	Slate - Fixing some HDPI calculations for fitting new windows on screen, it was using the unscaled size of the widgets for fitting, when it needed to scale them up.

Change 3486970 by Andrew.Rodham

	Sequencer: Delay mouse capture until drag for sequencer time slider
	  - Fixes context menus not opening as a result of mouse capture being taken on mouse down

	#jira UE-45937

Change 3486984 by Andrew.Rodham

	Sequencer: Improved blending type iconography

Change 3486996 by Nick.Darnell

	UMG - Adding a way for games to opt-out of the slow widget path, to completely prevent them from being cooked.
	UMG - The movie data is no longer cloned for each new instance that inhabits.  It now keeps a reference to the now publically accessible movie scene data on the class instead.

Change 3487070 by Andrew.Rodham

	Sequencer: Added graphics for key areas that represent empty space

Change 3487195 by Andrew.Rodham

	Sequencer: Changed evaluation groups to always flush implicitly
	  - Due to the latent nature of blended token types, it's no longer safe to rely solely on execution token order between tracks
	  - This fixes an issue where events set in the PostEvaluation stage were executed before blended token actuation

Change 3487322 by Nick.Darnell

	PR #2457: Add .gitdeps.xml-files for plugins support (Contributed by bozaro)


Change 3487363 by Nick.Darnell

	PR #2481: Fix for packing of a project with users plugins (Contributed by yatagarasu25)


Change 3487439 by Nick.Darnell

	PR #2642: Changed private to protected in SVirtualJoystick.h (Contributed by Skylonxe)


Change 3487500 by Arciel.Rekman

	Removed LinuxNativeDialogs.

	- No longer used; has been superceded by SlateDialogs since UE 4.8 (2 years ago).

Change 3487630 by Lauren.Ridge

	Don't create Landscape Info Maps for Editor Preview Worlds or thumbnail worlds

	#jira UE-44885

Change 3487864 by Matt.Kuhlenschmidt

	Exposed the asset registry to blueprints and script.  Works in editor scripts and runtime scripts

	AssetRegistry is now a UInterface object.
	Blueprint users can access various asset registry methods using the asset registry interface (via GetAssetRegistry) and various static helpers in  the AssetRegistryHelpers object
	C++ users should still continue to use IAssetRegistry.

Change 3487879 by Matt.Kuhlenschmidt

	Renamed asset tools uobject helper to UAssetToolsHelpers

Change 3487926 by Lauren.Ridge

	Fixing reset to default not showing up for custom widgets

	#jira UE-44164

Change 3488184 by Matt.Kuhlenschmidt

	PR #3656: Make References/Referencers List copyable (Contributed by user37337)


	#jira UE-45763

Change 3488240 by Matt.Kuhlenschmidt

	Fix compiler issue

Change 3488350 by Lauren.Ridge

	Landscape info map transactional state is based on its world's transactional state

	#jira UE-44885
	#jira UE-46019

Change 3488412 by Matt.Kuhlenschmidt

	Fix reset to default showing up in two different places for some customizations

Change 3488413 by Matt.Kuhlenschmidt

	Fix slate font customization

Change 3488414 by Matt.Kuhlenschmidt

	Fix slate font customization

Change 3488415 by Matt.Kuhlenschmidt

	Missed file

Change 3488565 by Arciel.Rekman

	Add pretty printers for gdb (UETOOL-1171).

	- Committing shelf by Cengiz.Terzibas, with some modifications.

	#jira UETOOL-1171

Change 3489094 by Nick.Darnell

	Slate - The Slate RHI Renderer now caches the TextureLODGroups so that it can properly lookup the filtering of different texture groups that are set to Default, instead of a particular filter override on a texture.
	Engine/Rendering - Simplifying some of the setup logic in TextureLODSettings so that code is shared for setting them up properly after loading from a config file.

Change 3489095 by Nick.Darnell

	PR #2699: GameViewportClient - Added a method to allow setting the viewport cur. (Contributed by rfenner)
	Review - Fixed spacing.


Change 3489108 by Matt.Kuhlenschmidt

	Fix deprecation warning

Change 3489120 by Nick.Darnell

	PR #3478: Fix possible UComboBoxString crash (Contributed by nakosung)


Change 3489147 by Andrew.Rodham

	Sequencer: Adding return value to function to appease static analysis
	  - This function is never compiled, and if it is, it won't compile, but static analysis doesn't know that

Change 3489264 by Nick.Darnell

	Testing - Finishing the thought behind an enum comment.

Change 3489265 by Nick.Darnell

	PR #2750: UE-35164: Button padding (Contributed by projectgheist)


Change 3489267 by Nick.Darnell

	PR #3645: UE-45464: Handle SSlider mouse interaction more accurately (Contributed by projectgheist)


Change 3489632 by Arciel.Rekman

	Correctness changes to MallocPoisonProxy.

	- Missing forwarding functions added.  Incorrect comment removed.
	- Change by Steve.Robb, doing here so it is in 4.17.

Change 3489689 by Arciel.Rekman

	More MallocPoisonProxy changes I missed in previous CL.

Change 3489751 by Matt.Kuhlenschmidt

	Moved editor performance settings out of per-project settings so they can be shared across projects

Change 3489837 by Lauren.Ridge

	Keyboard shortcut for entering/leaving VR Mode is now Alt+V

Change 3491082 by Arciel.Rekman

	Linux: better fix for the crash due to name collision (UE-46040).

	- Put classes in Sequencer module into Sequencer namespace instead of SceneOutliner namespace.
	- Undid change in the SceneOutliner module.

	#jira UE-46040

Change 3491096 by Arciel.Rekman

	Fix UAT compilation on the newest mono.

Change 3491240 by Max.Chen

	Sequencer: Disable key button when allow level edits only is on.

	#jira UE-46060

Change 3491406 by Yannick.Lange

	Fix editor crashes when opening a project that includes a plugin with more than two custom Volume classes. This issue was caused because registering show volume commands is based on finding volume classes. Finding these classes at multiple times resulted in a mismatch of the returned array of volume classes because modules/plugins were still being loaded.

	#jira UE-45806

Change 3491559 by Alexis.Matte

	Make sure we use the good preview mesh when doing a preview
	#jira UE-45963

Change 3491563 by Alexis.Matte

	Fix crash with staticmesh editor LodLevel selection

Change 3491564 by Nick.Darnell

	UMG - Fixing an offset with the grab handles in HDPI mode.

Change 3491595 by Nick.Darnell

	Editor - Fixing a clipping artifact in the pin type dropdown in the blueprint editor.

Change 3491604 by Nick.Darnell

	Back out changelist 3489265

Change 3491615 by Arciel.Rekman

	Added malloc replay proxy (Linux only for now).

	- Allows to dump malloc callstream (without regard to threads) and replay later to study the behavior of different mallocs and/or repro problems.

Change 3491684 by Arciel.Rekman

	Added FMalloc functions I missed.

	- Also moved function bodies into the .cpp file, this does not make a difference in performance in this case.

Change 3491692 by Matt.Kuhlenschmidt

	Some minor fixes to the static mesh editor
	- Fix UV combo button looking non-standard on the toolbar
	- Fix a few combo buttons in the details panel looking too big.

Change 3491702 by Arciel.Rekman

	Do not compile replay proxy-specific code when not used.

Change 3491717 by Michael.Dupuis

	#jira UE-35083:
	The component is now the owner of the PerInstanceRenderData instead of the proxy
	Add an Update path to only update specified instances range
	Always call BuildTreeIfOutdated so we have a standard code path to make sure static mesh are fully loaded before trying to build the tree
	Moved the Instance Buffer aysnc to the base class, as it's not related to UHierarchicalInstancedStaticMeshComponent
	Expose a new property to decide if we require dynamic instance buffer

Change 3491758 by Matt.Kuhlenschmidt

	Fix crash on static mesh editor shutdown

Change 3491873 by Cody.Albert

	Fixed clipping issue in Sequencer curve editor

	#rnx

Change 3491956 by Matt.Kuhlenschmidt

	Fix crash opening the Previewing sub-menu in the level editor settings menu

	#jira UE-46095

Change 3492046 by Jamie.Dale

	Fixing some font cooking warnings by splitting out font faces from their font assets

	#jira UE-45843

Change 3492076 by Jamie.Dale

	Fixing some font cooking warnings by splitting out font faces from their font assets

	#jira UE-45843

Change 3492165 by Jamie.Dale

	Fixing some font cooking warnings by splitting out font faces from their font assets

	#jira UE-45843

Change 3492222 by Jamie.Dale

	Fixing some font cooking warnings by splitting out font faces from their font assets

	#jira UE-45843

Change 3492274 by Michael.Dupuis

	#jira UE-46105: Fixed Clang warning

Change 3492338 by andrew.porter

	QAGame: Testing ensure when submitting

Change 3492371 by Nick.Darnell

	UMG - Reverting the animation sharing, cossed GLEO regressions in cooking.  Will look for a better solution.

Change 3492462 by Matt.Kuhlenschmidt

	Fix ensure checking in files through perforce

Change 3492491 by Jamie.Dale

	Fixing some font cooking warnings by splitting out font faces from their font assets

	#jira UE-45843

Change 3492505 by Jamie.Dale

	Fixing some font cooking warnings by splitting out font faces from their font assets

	#jira UE-45843

Change 3492517 by Jamie.Dale

	The package localization ID is no longer used at all at runtime, and is now truly editor-only

	This should have always been the case, but it was leaked into manifest/archives/PO files in 4.14, and while 4.15 removed it from PO files it was still present in the manifest/archives. This change removes it entirely (unless gathering editor-only data, and even then the PO file will still collapse the entries together for translation), and the deprecated 4.14 export behavior will now produce an error if you attempt to use it.

	After taking this change you'll need to run a gather, import, and compile of your LocRes files to update your game localization to use the new localization IDs.

Change 3492630 by Nick.Darnell

	UMG - Removing some extra cleanup code that's probably overkill and is causing a crash for uses of  "Within" in class meta.

	#jira UE-46124

Change 3492692 by Matt.Kuhlenschmidt

	Fix drop shadows inheriting the outline color of the font.  The outline should still appear but not have a different outline color from fill color

Change 3492714 by Matt.Kuhlenschmidt

	Added outline with drop shadow to font automation test

Change 3492737 by Matt.Kuhlenschmidt

	Fix linux

Change 3492992 by tim.gautier

	Resaving Ocean Widget Blueprints / Sequences to resolve Legacy Sequence Data warnings

	#jira UE-46132

Change 3493089 by Jamie.Dale

	Ensure that the composite font of a font asset is flushed when the font object is GC'd

Change 3493322 by Jamie.Dale

	Fixing null crash

	#jira UE-45758

Change 3494467 by Andrew.Rodham

	Fix Xbox warning

Change 3494852 by tim.gautier

	QAGame: Changed streaming method of QA-EditorSmoke-Landscape to Always Loaded

Change 3494853 by Nick.Darnell

	Another attempt at fixing the automation blueprint SA warning.

Change 3494896 by Arciel.Rekman

	Fix possible null pointer access during Vulkan init.

	- May fix static analysis warnings in UE-46142, although warnings seem to be referring to something else.

	#jira UE-46142

Change 3494987 by Jamie.Dale

	Fixing some font cooking warnings by splitting out font faces from their font assets

	#jira UE-45843

Change 3495010 by Matt.Kuhlenschmidt

	Adding additional logging to track down html5 issue

Change 3495212 by Michael.Dupuis

	#jira UE-46143: Properly init the InstanceRenderData during the cooking phase (required by fortnite)

Change 3495536 by Jamie.Dale

	Updating UGameEngine to call its Super::PreExit after performing its own teardown

	This prevents UEngine cleaning up resources that UGameEngine still needs.

	#jira UE-46159

Change 3495551 by Arciel.Rekman

	Another attempt to fix analyzer problem (UE-46142).

Change 3495794 by Jamie.Dale

	Fixing some font cooking warnings by splitting out font faces from their font assets

	#jira UE-45843

Change 3495905 by Matt.Kuhlenschmidt

	Fix USD crash when importing a meshwith no material

[CL 3499771 by Matt Kuhlenschmidt in Main branch]
2017-06-19 20:27:30 -04:00
Matt Kuhlenschmidt
765a83175b Copying //UE4/Dev-Editor to //UE4/Dev-Main (Source: //UE4/Dev-Editor @ 3379190)
#lockdown Nick.Penwarden
#rb none

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

Change 3342222 on 2017/03/10 by Nick.Darnell

	UMG - Adding a GetContent to the UContentWidget.

Change 3342228 on 2017/03/10 by Nick.Darnell

	Project Launcher - Always consume mouse wheel vertically so it stops scrolling to the right.

Change 3342310 on 2017/03/10 by Nick.Darnell

	UMG - Cleaning up some extra class references.

Change 3343382 on 2017/03/13 by Jamie.Dale

	Applying optimization to FChunkManifestGenerator::ContainsMap

Change 3343523 on 2017/03/13 by Mike.Fricker

	New details view option:  "Show Hidden Properties while Playing"
	- Enabling this allows you to see every property on selected objects that belong to a simulating world, even non-visible and non-editable properties.  Very useful for inspection and debugging.
	- Remember to change World Outliner to show you actors in the "Play World" if you want to select and inspect those objects first!
	- This setting is saved for your entire project, similar to "Show All Advanced"

Change 3343573 on 2017/03/13 by Mike.Fricker

	New details view option:  "Show Hidden Properties while Playing" (part 2)
	- Fixed missing include / unity issue

Change 3343709 on 2017/03/13 by Jamie.Dale

	Some fixes for gathering cached dependency data

	- We no longer load dependency data that doesn't have the correct package name.
	- We no longer populate the dependency results when bGatherDependsData is false.

Change 3343900 on 2017/03/13 by Alexis.Matte

	fix crash when creating too much LOD at import
	#jira UE-42785

Change 3344104 on 2017/03/13 by Alexis.Matte

	Add a boolean to the static mesh socket so we know if the socket was imported or created in UE4. This allow us to not impact editor socket when we re-import a fbx
	#jira UE-42736

Change 3344802 on 2017/03/14 by Michael.Dupuis

	#jira UE-42244 : added missing nullptr so render thread wont try to access global var when we're no longer in landscape mode
	Changed the sync method between graphic resource from render thread and game thread to prevent desync

Change 3346061 on 2017/03/14 by Jamie.Dale

	Adding const& and && overloads of FText::Format

Change 3346192 on 2017/03/14 by Arciel.Rekman

	Linux: fix VHACD to retain bincompat with the baseline (UE-42895).

	- It is now compiled against libc++ instead of libstdc++ in the toolchain.

Change 3347083 on 2017/03/15 by Andrew.Rodham

	Fixed crash when changing anchors on a background blur widget

Change 3347359 on 2017/03/15 by Michael.Dupuis

	#jira UE-38193:
	Added Rename, Delete, New Folder, Size Map, Show In Explorer for folder and asset in the path view and asset view

Change 3347382 on 2017/03/15 by Michael.Dupuis

	missing include incremental

Change 3347500 on 2017/03/15 by Alex.Delesky

	#jira UE-41231 - Selecting multiple text widgets in UMG will now allow you to set their value correctly, and the "Multiple Values" text will no longer be set in the widgets instead.

Change 3347920 on 2017/03/15 by Jamie.Dale

	Fixing some places passing tooltips as FString rather than FText

	#jira UE-42603

Change 3347925 on 2017/03/15 by Jamie.Dale

	Re-saving some assets so their tooltips can be gathered

	#jira UE-42603

Change 3348788 on 2017/03/15 by Jamie.Dale

	Updated the Windows platform to use the newer Vista+ style browser dialogs, rather than the older XP style dialogs

Change 3349187 on 2017/03/16 by Andrew.Rodham

	Sequencer: Added the ability to specify additional event receivers for level sequence actors
	  - Such actors will receive events from event tracks

Change 3349194 on 2017/03/16 by Andrew.Rodham

	Sequencer: Reset compiled templates on load in the editor, and ensure correct serialization of generation ledger
	  - Resetting on load means that we guarantee up-to-date templates, even if underlying compilation logic changes.

	#jira UE-42198
	#jira UE-40969

Change 3349210 on 2017/03/16 by Andrew.Rodham

	Sequencer: Event tracks can now be defined to trigger events at the start of evaluation, after objects are spawned, or at the end of evaluation

Change 3349211 on 2017/03/16 by Andrew.Rodham

	Sequencer: Add ability to retrieve bound objects from blueprint

Change 3349398 on 2017/03/16 by Nick.Darnell

	UMG - Fixing a flashing hierarchy view.  Looks like assets continuing to stream in causing the object change notification to continue to fire, and the widget designer refreshed any time it happened.  Now limit to only if widgets are changing.

Change 3349420 on 2017/03/16 by Alex.Delesky

	#jira UE-40720 - Multiline editable text boxes can now be set to Read-Only.

Change 3349548 on 2017/03/16 by Alexis.Matte

	Fbx importer, when importing a staticmesh with combine mesh option check and the fbx file contain some "MultiSub Material" the materialinstance are now always hook properly.

Change 3349818 on 2017/03/16 by Cody.Albert

	Fixed constructor for FNavigationMetaData

Change 3350047 on 2017/03/16 by Cody.Albert

	Removed unneeded check so that children actors are never orphaned when their parent is moved into a newly created folder in the world outliner

Change 3350072 on 2017/03/16 by Arciel.Rekman

	ShaderCompiler: make sure strings are at least 4-byte aligned.

	- Can crash wcscpy() under Linux otherwise (reported by a licensee).

Change 3350146 on 2017/03/16 by Arciel.Rekman

	Fix CodeLite project generation (UE-42921).

	- Reportedly causes a crash in CodeLite 10.x

Change 3350235 on 2017/03/16 by Arciel.Rekman

	Fix memory leak in address symbolication on Linux.

	- Makes MallocProfiler work again.
	- Also add progress update in MallocProfiler since symbolication is still slow.

	Merging CL 3338764 from Fortnite to Dev-Editor.

Change 3350382 on 2017/03/16 by Arciel.Rekman

	Linux: fix incorrect cast of rlimit in i686.

Change 3350471 on 2017/03/16 by Jamie.Dale

	Enabling loc dashboard by default for new projects

Change 3350516 on 2017/03/16 by Jamie.Dale

	Enabling content hot-reloading by default

Change 3350582 on 2017/03/16 by Cody.Albert

	Corrected Widget Interaction Component to use current impact point instead of last impact point

Change 3350945 on 2017/03/16 by Jamie.Dale

	Gave FConfigFile::FindOrAddSection API linkage

Change 3351441 on 2017/03/17 by Michael.Dupuis

	#jira UE-42843: Fixed Transaction begin/end order issue happening with min slider passing max slider value
	Add support for multiple selection value display

Change 3351558 on 2017/03/17 by Michael.Dupuis

	#jira UE-42845: Always refresh the detail panel to properly update for selection change, delete, etc.

Change 3351657 on 2017/03/17 by Matt.Kuhlenschmidt

	Adding USD Third Party dependencies

Change 3351665 on 2017/03/17 by Matt.Kuhlenschmidt

	Added experimental USD Importer Plugin
	This plugin supports basic static mesh importing and scene creation of actors using static meshes

Change 3351682 on 2017/03/17 by Matt.Kuhlenschmidt

	Enabling USD importer in engine test project for automation tests

Change 3351749 on 2017/03/17 by Alexis.Matte

	Make sure the selection proxy is off for the skeletal mesh component. UE4 use the selection outline instead

	#jira UE-41677

Change 3351831 on 2017/03/17 by Michael.Dupuis

	#jira UETOOL-1102:
	Added HSV controls to Color Grading
	Some look improvement for RGV/HSV
	Color Grading refactor
	Group Reset bug fix (relevant only to color grading)

Change 3352041 on 2017/03/17 by Matt.Kuhlenschmidt

	Updated USD plugin whitelisting

Change 3352093 on 2017/03/17 by Michael.Dupuis

	when FREEZERENDERING is called, stop the foliage culling too

Change 3352211 on 2017/03/17 by Alexis.Matte

	Fix the physic asset missing skeleton warning
	#jira UE-43006

Change 3352336 on 2017/03/17 by Alexis.Matte

	We now allow a negative W value of the ScreenPoint vector in the ScreenToPixel function. In this case we simply reverse the W value to kept the manipulator direction on the good side.
	#jira UE-37458

Change 3352947 on 2017/03/17 by Phillip.Kavan

	#jira UE-42510 - Instanced static mesh transform edits are now reflected in the Blueprint editor's preview scene.

	Change summary:
	- Added IPropertyHandle::GetValueBaseAddress() (interface).
	- Modified IPropertyHandle::NotifyPostChange() to include EPropertyChangeType as an optional input.
	- Added FPropertyHandleBase::GetValueBaseAddress() (implementation).
	- Modified FPropertyHandleBase::NotifyPostChange() to include the optional input arg in the property change event.
	- Modified FPropertyHandleBase::CreatePropertyNameWidget() to clear the override text after temporarily replacing display name/tooltip text for the creation of the SPropertyNameWidget. This was done to allow for transactions to be named according to the property that's being modified.
	- Modified FMathStructProxyCustomization::OnValueCommitted() to only apply the input value while not interactively editing via spinbox as well as when not post-processing an undo/redo (which can trigger a focus loss).
	- Modified the FMathStructProxyCustomization::OnEndSliderMovement() delegate to include property handle and proxy value input parameters, as well as to call FlushValues() as part of the implementation.
	- Modified FlushValues() for each of FMatrixStructCustomization, FTransformStructCustomization and FQuatStructCustomization to explicitly handle both propagation and transaction processing.
	- Modified UInstancedStaticMeshComponent::UpdateInstanceTransform() to call Modify() prior to applying changes (so that the previous state is recorded when inside a transaction context).
	- Modified FInstanceStaticMeshSCSEditorCustomization::HandleViewportDrag() to propagate changes to all instances of the ISMC archetype.

	Known issues:
	- Using the spinbox to edit instanced mesh transform values in the Blueprint editor will not apply the change to instances in the level editor until after you release the mouse button (i.e. - it will not be shown as a "live" update).

Change 3353678 on 2017/03/20 by Michael.Dupuis

	properly unfreeze the culling of foliage when toggling the freezerendering command

Change 3353747 on 2017/03/20 by Matt.Kuhlenschmidt

	PR #3372: Git plugin: fix update status on directories hotfix (still) slightly broken in master (UE4.16) (Contributed by SRombauts)

Change 3353749 on 2017/03/20 by Matt.Kuhlenschmidt

	PR #3373: Git Plugin: hotfix for regression off Visual Diffs with older version of Git in master (UE4.16) (Contributed by SRombauts)

Change 3353754 on 2017/03/20 by Matt.Kuhlenschmidt

	PR #3390: Allow OBJ imports to change if materials and textures are also imported (Contributed by mmdanggg2)

Change 3353909 on 2017/03/20 by Matt.Kuhlenschmidt

	Fixed actors showing thumbnails in details panel and made a few other tweeks to thumbnail displays in details panels
	- The color of the accepted type is now  shown properly
	- All object based properties now have thumbnails on by default.

Change 3353948 on 2017/03/20 by Nick.Darnell

	UMG - Updating the background blur widget's upgrade code to use the custom version, and handling older cases that were continuing to generate blur slots, even when already upgraded.

Change 3354335 on 2017/03/20 by Nick.Darnell

	Paragon - Excluding Archetype objects from reporting references, which causes crashes in the fast template mode.

Change 3354495 on 2017/03/20 by Nick.Darnell

	Core - Making it so order that outers are discovered does not matter, initializing the chain of outers if hasn't been created when instancing subobjects.

Change 3354578 on 2017/03/20 by Nick.Darnell

	Slate - There's now a console variable option, Slate.VerifyHitTestVisibility (off by default) which enables additional visibility checks for widgets.  Normally this isn't nessesary, but if you're changing the visibility of widgets during a frame, and several hit tests need to be performed that frame there's a chance that a button could be clicked twice in one frame.  Enabling this mode will make all hit testing more expensive, so for now it's off by default, but available for licensees that need the extra testing.

Change 3354737 on 2017/03/20 by Nick.Darnell

	Core - Adding a fix to Dev-Editor from that enables objects in the same package being requested to also be loaded.  This came about during async streaming callbacks alerting that a requested class was done loading, but there were still other assets in the package 'not loaded' but were available, just needed post load called on them.

Change 3355923 on 2017/03/21 by Yannick.Lange

	VR Editor: - Remove unnecessary cleanup functions.
	- Initialize with VR Mode and remove SetOwner function, since it shouldn't be possible to reset the VR Mode afterwards.

Change 3355959 on 2017/03/21 by Yannick.Lange

	VR Editor: - Rename VREditorWorldInteraction to VREditorPlacement, to avoid confusion with ViewportWorldInteraction. VREditorPlacement will only handle placing objects from content browser in the VR Mode.
	- Removed SnapSelectedActorsToGround to VREditorMode.

Change 3355965 on 2017/03/21 by Yannick.Lange

	VR Editor:  Forgot to add files to previous submit 3355959.

Change 3355977 on 2017/03/21 by Yannick.Lange

	VR Editor: Remove function to add a new extension with  TSubclassOf<UEditorWorldExtension>.

Change 3356017 on 2017/03/21 by Yannick.Lange

	VR Editor: - UI system check owner VRMode.
	- UI system fix check on VRMode on shutdown.

Change 3356028 on 2017/03/21 by Nick.Darnell

	Slate - SButton now correctly releases mouse capture even if it becomes disabled while pressed, but before 'click' has been fired.

	#jira UE-42777

Change 3356071 on 2017/03/21 by Yannick.Lange

	VR Editor: Copy of change 3353663.
	- Fix having to press once on the landscape to see the visuals for landscape editing.
	- Fix when sculpting/painting the position wouldn't update.
	- Fix inverted action for brushes while holding down shift or modifier on motioncontroller.
	- Cleanup FLandscapeToolInteractorPosition.

	- Change from 3353663: Use TStrokeClass::UseContinuousApply and TimeSinceLastInteractorMove to decide when to apply ToolStroke on tick.

Change 3356180 on 2017/03/21 by Michael.Dupuis

	Added ShowFlag Foliage Occlusion Bounds
	Fixed non initialized variable
	Expose changing Min Occlusion Bounds instead of assuming 6

	#rn none

Change 3356347 on 2017/03/21 by Nick.Darnell

	UMG - Introducing a faster CreateWidget.  When cooking, the widget compiler now generates a widget template/archetype that is stored in the same package as the generated blueprint class.  During compiling we generate a nearly fully initialized widget tree including all sub userwidgets and their trees, hookup all member variables, initialize named slots, setup any animations...etc.  This nearly fully constructed widget can be instanced using it as an archetype in the NewObject call, and does not have to use the correspondingly slow StaticDuplicateObject path.  There are restrictions on this method, part of the compiling step for widgets now inspects if the instancing would be successful, or if there would be GLEO references after instancing because a user forgot to setup Instanced on a subobject property.  Luckily that should be few and far between, all UVisuals (Widgets & Slots) are now DefaultToInstanced, which takes care of the overwhelming cases that demand the instanced flag.  Especially given the bulk of cases using BindWidget in native code.

	UMG - Removing a lot of deprecated functions from 4.8 on UUserWidget.

Change 3356357 on 2017/03/21 by Nick.Darnell

	Build - Fixing some IWYU issues on the incremental build.

Change 3356461 on 2017/03/21 by Nick.Darnell

	Build - Fixing linux build errors.

Change 3356468 on 2017/03/21 by Jamie.Dale

	STextPropertyEditableTextBox now handles empty texts correctly

Change 3356916 on 2017/03/21 by Matt.Kuhlenschmidt

	Fixed a crash when a material render proxy on a preview node is deleted when it is in flight on the render thread

	#jira UE-40556

Change 3357033 on 2017/03/21 by Alexis.Matte

	Fix crash when importing file with import commandlet
	Make sure path are combine properly to avoid crash
	Add some missing pointer check
	Make sure the asset are save when there is no source control
	#jira UE-42334

Change 3357176 on 2017/03/21 by Alex.Delesky

	#jira UE-42445 - TMaps now support editing the values of structs that act as map keys. TMaps with struct keys will now show the types of their elements in the details panel as well, and structs will now also display numbers next to set elements.

Change 3357197 on 2017/03/21 by Alex.Delesky

	#jira none - Fixing build issue for TMap key struct change.

Change 3357205 on 2017/03/21 by Michael.Dupuis

	Forgot to reset min granularity to 6 from testing

Change 3357340 on 2017/03/21 by Arciel.Rekman

	Mark FMallocAnsi (standard libc malloc) thread-safe on Linux.

Change 3357413 on 2017/03/21 by matt.kuhlenschmidt

	Added '/Game/Effects/Fort_Effects/Materials/Smoke/M_Main_Smoke_Puff.M_Main_Smoke_Puff' to collection 'MattKTest'

	Upgraded collection 'MattKTest' (was version 1, now version 2)

Change 3357505 on 2017/03/21 by Alexis.Matte

	Fix to avoid changing the CDO of FbxAssetImportData. The UI was saving the Config which was saving the CDO. But already serialized data will be reload badly if the CDO change since we serialize only the diff.

	#jira UE-42947

Change 3357825 on 2017/03/21 by Arciel.Rekman

	Clean up the large thread pool on exit.

	- Seems like the destruction was missed in the original CL 2785131 (12/1/15).
	- Fixes problems when threads were allocated in memory that is being cleaned up in another place on exit.

Change 3358086 on 2017/03/22 by Yannick.Lange

	VR Editor: - Fix gizmo scaling down when dragging the world.
	- Fix gizmo scaling down when dragging rotation handle.

Change 3358175 on 2017/03/22 by Andrew.Rodham

	Sequencer: Made ALevelSequenceActor::AdditionalEventReceivers advanced display

Change 3358367 on 2017/03/22 by tim.gautier

	Submitting resaved QAGame assets - Materials, Material Instances, Material Functions and Parameters

Change 3358457 on 2017/03/22 by Yannick.Lange

	VR Editor: Deleting unused UI assets.

Change 3358801 on 2017/03/22 by Matt.Kuhlenschmidt

	Guard against crash if the level editor is shut down when the object system has already been shut down

	#jira UE-35605

Change 3358897 on 2017/03/22 by matt.barnes

	Checking in WIP test content for UEQATC-1635 (UMG Navigation)

Change 3358976 on 2017/03/22 by Alex.Delesky

	#jira none - Fixing an issue where ItemPropertyNode could potentially dereference a null property

Change 3358987 on 2017/03/22 by Yannick.Lange

	VR Editor: Fix warning: Can't find file for asset '/Engine/VREditor/UI/VRButtonBackground' while loading ../../../Engine/Content/VREditor/Devices/Vive/VivePreControllerMaterial.uasset.

Change 3359067 on 2017/03/22 by Yannick.Lange

	VR Editor: Fix Radial Menu remains on controller after exiting VR Preview
	#jira UE-42885

Change 3359179 on 2017/03/22 by Matt.Kuhlenschmidt

	Fixed "Multiple Values" in Body Setup when single bone has multiple bodies

	#jira UE-41546

Change 3359626 on 2017/03/22 by Arciel.Rekman

	Linux: pool OS allocations.

	- Add a TMemoryPool and TMemoryPoolArray classes that can be used with any type of OS allocator functions.
	- Add ability to bypass CachedOSPageAllocator for given sizes. Also, corrected the condition on AllocImpl to match one on FreeImpl.
	- Switch Linux to pool mmap()/munmap() by default (helps 32-bit Linux and also speeds up 64-bit one), except 64-bit servers.
	- Add a test to TestPAL to check performance and thread safety.
	- Misc. fixes.

Change 3359989 on 2017/03/23 by Andrew.Rodham

	Sequencer: Binding overrides improvements
	  - Added the ability to override spawnable bindings
	  - Added the ability to override bindings in sub sequences
	  - Deprecated "Get Sequence Bindings" node in favor of "Get Sequence Binding", which is more robust, and provides a better UI/UX for selecting single bindings

	#jira UE-42470

Change 3360369 on 2017/03/23 by Alexis.Matte

	Fix the staticmesh conversion from UE4 4.13 to earlier UE4 versions
	#jira UE-42731

Change 3360556 on 2017/03/23 by Andrew.Rodham

	Sequencer: Added drag/drop support for binding overrides
	  - You can now drag and drop sequencer object binding nodes into blueprint graphs (to create 'Get Sequence Binding' nodes), and onto binding overrides specified on level sequence actors.

Change 3360618 on 2017/03/23 by Arciel.Rekman

	Make Binned2 work on Mac.

	- Game/server will use Binned2 by default.

Change 3360838 on 2017/03/23 by Nick.Darnell

	CommonUI - Making the SingleMaterialStyleMID property transient.  It had been serialized mistakenly onto several widgets when it appears the intent is to dynamically allocate it upon demand.

Change 3360841 on 2017/03/23 by Nick.Darnell

	UMG - Updating the editor to use DuplicateAndInitializeFromWidgetTree, so that Initialize is properly called when duplicating sub widget trees.

Change 3362561 on 2017/03/24 by Matt.Kuhlenschmidt

	Fixed text outlines being cropped at large sizes

	#jira UE-42647

Change 3362565 on 2017/03/24 by Matt.Kuhlenschmidt

	Added automation test for font outlines

Change 3362567 on 2017/03/24 by Matt.Kuhlenschmidt

	Resaved this file to fix 0 engine version warnings

Change 3362582 on 2017/03/24 by Yannick.Lange

	VR Editor: - Fix log warnings when teleporting.
	- Fix undo/redo when using teleport scaling.
	- Improved teleport scaling and push/pull input.
	#jira UE-43214

Change 3362631 on 2017/03/24 by Jamie.Dale

	Split the monolithic culture concept in UE4

	UE4 has historically only supported the concept of a single monolithic "culture" that applied to both text localization and internationalization, as well as all asset localization. Typically the "culture" was set to the "locale" of the OS, however that could be undesirable or incorrect on platforms (such as newer versions of Windows) that have a distinct concept of "language" (for localization) and "locale" (for internationalization).

	This change splits the concept of "culture" into "language" and "locale", and also adds the concept of "asset groups". The language is now used to work out which localization we should use, and the locale is used to control how numbers/dates/times/etc are formatted within our internationalization library.

	Asset groups expand on the language used by asset localization and allow you to create a group of asset classes that can be assigned a different culture than the main game language. A typical use-case of this would be creating an "audio" group that could, for example, be set to Japanese while the rest of the game runs in English.

	If your game doesn't care about the distinction between language and locale, and doesn't need to use asset groups, then you're able to continue to use "culture" as you always have. If, however, you do care about those things, then you'll likely want to avoid using the "culture" directly (as it's now a very aggressive setting that overrides all others), and instead favor using language/locale (games will typically treat these as the same) and asset groups as separate concepts (both in settings, and in your in-game UI).

	The language or locale for a game can be controlled by settings within the "Internationalization" section of your configs (this would typically be set in your GameUserSettings config, in the same way that "culture" works), eg)

	  [Internationalization]
	  language=fr
	  locale=fr

	The asset groups for a game can be controlled by settings within the "Internationalization.AssetGroupClasses" and "Internationalization.AssetGroupCultures" sections of your configs (the asset group class definition would typically be set in your DefaultGame config, and the cultures the groups use would typically be set in your GameUserSettings config), eg)

	  [Internationalization.AssetGroupClasses]
	  +Audio=SoundWave
	  +Audio=DialogueWave

	  [Internationalization.AssetGroupCultures]
	  +Audio=ja

	#jira UE-38418
	#jira UE-43014

Change 3362798 on 2017/03/24 by Nick.Darnell

	UMG - Putting the finishing touches on the hardware cursor system.  Can now load them from blueprints, and there are options for setting them up in the project settings.

	UMG - Deprecating the old properties for software widget cursors.  They've been moved into a map that can handle any of the mouse cursors as the enum key, which was always the intent/desire but maps couldn't be used as UProperties then.

Change 3362805 on 2017/03/24 by Jamie.Dale

	PR #3397: Allow empty source to override display string (Contributed by jorgenpt)

Change 3363039 on 2017/03/24 by Jamie.Dale

	Use the pre-scaled font height where possible to avoid an extra multiply

Change 3363188 on 2017/03/24 by Joe.Graf

	Added support for -iterate for content plugins that require path remapping during cook/packaging

	#CodeReview: matt.kuhlenschmidt
	#rb: matt.kuhlenschmidt

Change 3363355 on 2017/03/24 by Nick.Darnell

	UMG - Removing the CookAdditionalFiles function in UserInterfaceSettings.

Change 3363672 on 2017/03/24 by Matt.Kuhlenschmidt

	Material thumbnails now respect used particle system sprites flag and show a quad insead of a sphere by default. For this change I added the ability to have per asset type override for the default thumbnail shape and I added a way to reset thumbnails to default.  All existinging particle system materials that have not had a custom thumbnail will have to be reloaded and resaved for this to work

	#jira UE-42410

Change 3363699 on 2017/03/24 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 3363784 on 2017/03/24 by Matt.Barnes

	Adding content for tests following UEQATC-3548

Change 3363872 on 2017/03/24 by Arciel.Rekman

	Linux: require user to setup clang/clang++ for building hlslcc.

	- Earlier we tried to handle most common scenarios since libhlslcc needed to be built during the setup. Now that we supply a prebuilt version we don't need to be as user friendly, especially given that the attempts to second guess the compiler started to look complicated.

Change 3364089 on 2017/03/24 by Matt.Kuhlenschmidt

	Fix CIS

Change 3364381 on 2017/03/24 by JeanMichel.Dignard

	UV Packing optim
	- Use horizontal segments instead of checking texel by texel to fit source chart in layout.
	- Skip a couple of rasterize by flipping either the X texels or the Y texels when possible.
	- Keep the best chart raster so that we don't need to reraster when adding the chart to the layout.
	- Added a lightmap UV version in StaticMesh so that we don't invalidate the lighting cache. Only use the new lightmap UV generation when going through UStaticMesh::Build which invalidates the lighting.

Change 3364587 on 2017/03/24 by Arciel.Rekman

	Fix ordered comparison warning from clang 4.0.

Change 3364596 on 2017/03/24 by Arciel.Rekman

	Linux: fix editor being stuck (hack).

	- Rebuilt hlslcc in Debug.

Change 3364863 on 2017/03/25 by Max.Chen

	Sequencer: Fixed crash when deactivating a section in sequencer

	#jira UE-39880

Change 3364864 on 2017/03/25 by Max.Chen

	Sequencer: Integrating fix from licensee to ensure FVirtualTrackArea::HitTestSection checks the row of the section

Change 3364865 on 2017/03/25 by Max.Chen

	Cine Camera: Default post process depth of field method to CircleDOF and use that setting in UpdateCameraLens.

	#jira UE-40621

Change 3364866 on 2017/03/25 by Max.Chen

	GitHub #3183: Conversion to base class is inaccessible.

Change 3364869 on 2017/03/25 by Max.Chen

	Sequencer: Changed the time snapping interval in the toolbar ui so that it no longer additionally updates the sequencer setting. The setting is only used to initialize the time snapping interval of the level sequence. Added translate keys with ctrl and left-right arrows.

	#jira UE-41009
	#jira UE-41210

Change 3364870 on 2017/03/25 by Max.Chen

	Sequencer: Added translate keys with ctrl and left-right arrows.

	#jira UE-41210

Change 3364871 on 2017/03/25 by Max.Chen

	Sequencer: Add level sequence actor customization to open sequencer from the details panel. For matinee parity.

	#jira UE-41459

Change 3364879 on 2017/03/25 by Max.Chen

	Sequencer: Duplicate shot should put the duplicate on the next available row, keeping the start/end times the same.

	#jira UE-41289

Change 3364880 on 2017/03/25 by Max.Chen

	Sequencer: Opening the API for MovieSceneAudio-related classes along with some minor functionality additions:
	- Adding _API specifiers to MovieSceneAudioTrack, MovieSceneAudioSection, and FAudioTrackEditor so they can be subclassed in other modules.
	- Made GetSoundDuration function in MovieSceneAudioTrack.cpp a member function so it's functionaliy could be reused by subclasses.
	- Adding ability to specify delegates for OnQueueSubtitles, OnAudioFinished, and OnAudioPlaybackPercent in a MovieSceneAudioSection, and have them automatically assigned to any AudioComponents that are played by the MovieSceneAudioTemplate

Change 3364884 on 2017/03/25 by Max.Chen

	Sequencer fbx import
	- Removed the PostRotation compensation as it was setuped for 3ds max.
	- On import, add a rotation to camera and light animation keys like we do on export.
	- Merge the component local transform with the ActorNode transform when exporting only one component that isn't the root component in fbx since we're not creating child nodes in that case.

	#jira UE-34692

Change 3364885 on 2017/03/25 by Max.Chen

	Sequence Recorder: Fix crash when clearing properties to record.

	#jira UE-41873

Change 3364886 on 2017/03/25 by Max.Chen

	Sequencer: Add error when attempting to add a circularly dependent level sequence

	#jira UE-22358

Change 3364890 on 2017/03/26 by Max.Chen

	Sequencer: Added ability to specify a 'notify' function to property instance bindings
	  - When specified, the (parameterless) function will be called after a property is set

Change 3364891 on 2017/03/26 by Max.Chen

	Sequencer: Various fixes to thumbnails
	  - Fixed alpha blending being used when presenting the full screen quad for thumbnails

Change 3364892 on 2017/03/26 by Max.Chen

	Sequencer: PreRoll and PostRoll is now exposed at the section level, for all sections
	  - For the majority of sections this will be unimplemented, but it will allow for some tracks to set up their data ahead of time

Change 3364896 on 2017/03/26 by Max.Chen

	Sequencer: Add segment flags to equality operator for movie scene evaluation segments
	  - This prevents them from being accumulated into adjacent segments of the same index and forced time, but differing flags

Change 3364897 on 2017/03/26 by Max.Chen

	Sequencer: Fixed "Evaluate in preroll" and "Evaluate in Postroll" options
	  - Pre and postroll flags now come through on compiled segments, so the previous manual logic for sub sections is obsolete; we can just use the compiled segment data directly.

Change 3364898 on 2017/03/26 by Max.Chen

	Sequencer: Moved track options to be accessible on all nodes, and operate on all selected tracks

Change 3364902 on 2017/03/26 by Max.Chen

	Sequencer: Ensure evaluation flags are considered when compiling segments from external sequences
	  - This ensures that preroll regions in sub sequences are correctly evaluated when their parent section has preroll
	  - Changed high pass blending to always allow preroll

Change 3364903 on 2017/03/26 by Max.Chen

	Engine: Moved proxy mesh transform update out of camera view computation code
	  - GetCameraView can happen as part of end of frame updates, which will assert if any changes of transform happen during its processing

Change 3364908 on 2017/03/26 by Max.Chen

	Sequencer: Added visualization of pre and postroll on sections

Change 3364909 on 2017/03/26 by Max.Chen

	Sequencer: Prevent MovieSceneCompiler from removing preroll segments

Change 3364910 on 2017/03/26 by Max.Chen

	Sequencer: MediaPlayer PreRoll/PostRoll fix
	- Handle PreRoll/PostRoll on sub scenes that have a start offset

Change 3364922 on 2017/03/26 by Max.Chen

	Sequencer: Add check for valid property before dereferencing.

	#jira UE-40951

Change 3364923 on 2017/03/26 by Max.Chen

	Sequencer: Fix MovieScene preroll so that it seeks to the start correct frame before the preroll.

Change 3364924 on 2017/03/26 by Max.Chen

	Sequencer - change default behavior for pre/post roll evaluation
	- MovieSceneTracks are NOT evaluated by default

Change 3364925 on 2017/03/26 by Max.Chen

	Sequencer: Shot track rows now consider pre and post roll when being compiled

Change 3364926 on 2017/03/26 by Max.Chen

	Sequencer: Added the ability to define shared execution tokens, identifyable with a unique identifier, and sortable based on a sort order (<=0: before standard tokens, >0: after other tokens)

Change 3364927 on 2017/03/26 by Max.Chen

	Sequencer: Added the ability to selectively restore state for specific anim type IDs for a given object
	  - This allows us to specifically restore one particular type of animation for a given object (ie, transform, skeletal animation control, or motion blur)

Change 3364928 on 2017/03/26 by Max.Chen

	Sequencer: Fixed sub-sub tracks not being present in master sequences
	  - In order to correctly handle preroll in inner-inner sequences, we need to have access to those tracks when compiling intermediate sub sections. By caching off all the inner templates, we can have access to these tracks to check whether they want to be evaluated in pre/post roll in the master sequence

Change 3364937 on 2017/03/26 by Max.Chen

	Sequencer: Update cine camera component debug focus plane on tick, rather than in GetCameraView

	#jira UE-41332

Change 3364938 on 2017/03/26 by Max.Chen

	Sequencer: Fix crash inserting a level sequence with an invalid shot.

	#jira UE-41481

Change 3364940 on 2017/03/26 by Max.Chen

	Sequencer: Made handling of pre and post roll more consistent between explicit section pre/post roll and pre/post roll inherited from an outer sub section

Change 3364942 on 2017/03/26 by Max.Chen

	Movie Scene Capture: Move EDL generation to setup instead of close to ensure it gets written out when capturing as a separate process.

	#jira UE-41703

Change 3364943 on 2017/03/26 by Max.Chen

	Sequencer: Prevent capturing movies in editor while a PIE session is running

	#jira UE-41399

Change 3364944 on 2017/03/26 by Max.Chen

	CIS fixes

Change 3364951 on 2017/03/26 by Max.Chen

	Sequencer: Fix autokey not setting a keyframe for slate color with specified color.

	#jira UE-41645

Change 3364952 on 2017/03/26 by Max.Chen

	Sequencer: Level sequence frame snapshots now take account of fixed-frame interval offsets, and overlapping shot sections on the same row

	#jira UE-41684

Change 3364953 on 2017/03/26 by Max.Chen

	Sequencer: Fix edl so that it doesn't write out when a shot is out of range. Also fixed not writing the EDL with the correct frame rate when exporting from the track. Reworked the cmx EDL so that its encoded in the same edit time space, including a blank slug at the beginning of the edit.

	#jira UE-41925

Change 3364954 on 2017/03/26 by Max.Chen

	Sequencer - Allow animating parameters on cascade effect components which aren't owned by an AEmitter.

Change 3364955 on 2017/03/26 by Max.Chen

	Sequencer: Fixed sequencer anim instance not being used in the case where one was requested, but a different anim instance was already set

	This fixes an issue when rendering in seaprate process, animations that were set up to use the sequencer instance would be controlled using montage animation instead.

Change 3364963 on 2017/03/26 by Max.Chen

	Sequencer: Fix filtering to include child nodes.

	#jira UE-42068

Change 3364964 on 2017/03/26 by Max.Chen

	Sequencer: Enable UseCustomStartFrame and UseCustomEndFrame when rendering a single shot from the menu.

	#jira UE-42021

Change 3364965 on 2017/03/26 by Max.Chen

	Sequencer: Set the fade color in the track display

Change 3364966 on 2017/03/26 by Max.Chen

	Sequencer: Show actor attached to label in attach section.

Change 3364967 on 2017/03/26 by Max.Chen

	Sequencer: Fix static analysis warnings

Change 3364968 on 2017/03/26 by Max.Chen

	Sequencer: Fix crash on converting to spawnable.

	The previous implementation purported to allow null objects to set up spawnable defaults but it actually needed to compare the spawned object to the supported type.  This new mechanism now allows the spawner to indicate that it accepts null objects and doesn't crash.

	#jira UE-42069

Change 3364969 on 2017/03/26 by Max.Chen

	Sequencer: Fixed crash caused by holding onto stale properties through a raw ptr

	#jira UE-42072

Change 3364977 on 2017/03/26 by Max.Chen

	Sequencer: Convert FLinearColor to FColor for fade.

	#jira UE-41990

Change 3364978 on 2017/03/26 by Max.Chen

	Sequencer: Limit GetAllSections to the sections that actually correspond to the track

	#jira UE-42167

Change 3364979 on 2017/03/26 by Max.Chen

	Sequencer: Filter root nodes too

	#jira UE-42068

Change 3364980 on 2017/03/26 by Max.Chen

	Sequencer: Filter relevant material parameters

	#jira UE-40712

Change 3364982 on 2017/03/26 by Max.Chen

	Sequencer: Remove audio range bounds which clamps to the section bounds (needed for evaluating in pre and post roll)

Change 3364983 on 2017/03/26 by Max.Chen

	Sequencer: Add socket name to attach track section.

Change 3364984 on 2017/03/26 by Max.Chen

	Sequencer: Fix sub track node deletion so that all the sub tracks aren't deleted, only the row being requested.

	#jira UE-40955

Change 3364988 on 2017/03/26 by Max.Chen

	Sequencer: Invalidate expired objects when blueprints are compiled. Fix actor references now handles sections that need to have their guids updated (ie. attach tracks).

Change 3364994 on 2017/03/26 by Max.Chen

	Sequencer: Audio waveforms now show peak samples with smoothed RMS in the center
	  - Audio row heights are now also resizable by dragging on the bottom end of the track lane in the track area view

Change 3364995 on 2017/03/26 by Max.Chen

	UMG: Fix crash on undo

	#jira UE-42210

Change 3365000 on 2017/03/26 by Max.Chen

	Sequencer: Fix crash from GetCurrentValue.

Change 3365001 on 2017/03/26 by Max.Chen

	Sequencer: Split "Snap to the Dragged Key" option into two options, pressed key and dragged key.

	#jira UE-42382

Change 3365002 on 2017/03/26 by Max.Chen

	Sequencer: Downgraded check to ensure for FMovieSceneEvalTemplateBase::GetScriptStructImpl()

Change 3365003 on 2017/03/26 by Max.Chen

	Sequencer: Fixed section template script struct
	  - Because the cpp is not parsed by UHT, the empty template had its parent struct, rather than its own
	  - We now just return null, and handle empty segments correctly in the segment remapper as part of the track compilation

Change 3365013 on 2017/03/26 by Max.Chen

	Sequencer: Added data validation on compiled template loads, and extra guards against misuse of movie scene types

Change 3365014 on 2017/03/26 by Max.Chen

	Sequencer: Sequencer now re-evaluates when starting PIE or Simulate
	  - This can be disabled by disabling "Bind Sequencer to PIE" and "Bind Sequencer to Simulate" in PIE advanced settings

Change 3365015 on 2017/03/26 by Max.Chen

	Sequencer: Fix edl files so that they don't write out empty range shots

Change 3365017 on 2017/03/26 by Max.Chen

	Sequencer: Set max tick rate when in game.

	#jira UE-41078

Change 3365018 on 2017/03/26 by Max.Chen

	Sequencer: When finishing a scrub, playback status is now correctly set to stopped rather than stepping
	  - This fixes a hack that was previously in place from the old PostTickRenderFixup that caused it to run that step after scrubbing bad finished. This is no longer necessary, and actually breaks clicking to set the scrub position, as it now means that we step across the entire range between the previous and current time.

Change 3365022 on 2017/03/26 by Max.Chen

	Sequencer: Insert shot now creates a shot at the current time and puts it on the next available row.

	#jira UE-41480, UE-27699

Change 3365023 on 2017/03/26 by Max.Chen

	Sequencer: Add loop selection range. If there is no selection range, loop mode is restricted to loop or no loop.

	#jira UE-42285

Change 3365029 on 2017/03/26 by Max.Chen

	Sequencer: Add hotkeys to set the selection range to the next and previous shot (page up, page down). Also, added hotkey to set the playback range to all the shots (end)

Change 3365030 on 2017/03/26 by Max.Chen

	Sequencer: Fix particle system restore state so that it gets the proper initial active state of the particle system.

	#jira UE-42861, UE-42859

Change 3365031 on 2017/03/26 by Max.Chen

	Sequencer: Snap time when changing time snapping intervals.

	#jira UE-42590

Change 3365032 on 2017/03/26 by Max.Chen

	Sequencer: Add When Finished state to sections. By default, sections now restore state.

	#jira UE-41991, UE-31569

Change 3365033 on 2017/03/26 by Max.Chen

	#jira UE-42028 "DialogueWave playback calls OnQueueSubtitles multiple times"

	Only queue subtitles once per wave instance playback

Change 3365041 on 2017/03/26 by Max.Chen

	Sequencer: Subscene hierarchical bias

	Tracks can now be prioritized based on their subscene hierarhical bias value. Higher bias values take precedence.

	#jira UE-42078

Change 3365042 on 2017/03/26 by Max.Chen

	Sequencer: Generic paste menu for master (root) tracks.

Change 3365043 on 2017/03/26 by Max.Chen

	Sequencer: Hierarchical bias for level visibility track

	#jira UE-43024

Change 3365044 on 2017/03/26 by Max.Chen

	Sequencer: Prevent throttling on editing keys/sections.

Change 3365045 on 2017/03/26 by Max.Chen

	Sequencer: Set sequencer audio components bIsUISound to false so that they don't continue playing when the game is paused.

	#jira UE-39391

Change 3365046 on 2017/03/26 by Max.Chen

	Sequencer: Add missing BindLevelEditorCommands()

Change 3365049 on 2017/03/26 by Max.Chen

	Sequencer: Set tick prerequites for spawnables when they are spawned.

	#jira UE-43009

Change 3365050 on 2017/03/26 by Max.Chen

	Sequencer: Jump to Start and End of playback shortcuts.

	Rewind renamed to Jump to Start. Shortcut - up arrow.
	Jump to End Shortcut - ctrl up arrow.

	#jira UE-43224

Change 3365051 on 2017/03/26 by Max.Chen

	Sequencer: Add last range to playback

Change 3365057 on 2017/03/26 by Max.Chen

	Sequencer: Fix master sequence subscene generation times.

Change 3365058 on 2017/03/26 by Max.Chen

	Sequencer: Fix paste so that it doesn't paste both onto object nodes and master tracks.

Change 3365059 on 2017/03/26 by Max.Chen

	Sequencer: Fix crash pasting audio track.

Change 3365060 on 2017/03/26 by Max.Chen

	Sequencer: Cache player fade state so that restore state will return the values to the pre animated state.

	#jira UE-43313

Change 3365061 on 2017/03/26 by Max.Chen

	Sequencer: Filter hidden functions. This fixes a bug where the field of view property for a cinematic camera appears to be animatable. It should be hidden just like it is in the property editor.

	#jira UE-41461

Change 3365065 on 2017/03/26 by Max.Chen

	Sequencer: Support component hierarchies when drawing animation paths

	#jira UE-39500

Change 3365066 on 2017/03/26 by Max.Chen

	Sequencer: Refine pause behaviour in sequencer to always evaluate the next frame
	  - This ensures that we get a full frame's worth of evaluation so that the paused frame is of a good quality (and avoids us evaluating a tiny range)

Change 3365075 on 2017/03/26 by Max.Chen

	Sequencer: Fix add shot not setting next row.

Change 3365076 on 2017/03/26 by Max.Chen

	Sequencer: Export MovieSceneTrackEditor

	#jira UE-41641

Change 3365472 on 2017/03/27 by Yannick.Lange

	VR Editor landscape. Back out changelist 3356071 with new proper fixes.
	CL 3356071 introduced another bug and it wasn't correct because of removing FLandscapeToolInteractorPosition. This changelist fixes the same and additional bugs for VREditor Landscape mode.
	- Fix when sculpting/painting the position wouldn't update.
	- Fix inverted action for brushes while holding down shift or modifier on motioncontroller.
	- Fix VREditor Landscape Texture Painting does not paint continuously
	- Fix having to press once on the landscape to see the visuals for landscape editing.
	- Removed Interactor parameter from BeginTool.
	#jira UE-42780, UE-42779

Change 3365497 on 2017/03/27 by Matt.Kuhlenschmidt

	Fix texture importing when an FBX file incorrectly reports absolute path as relative.  First we try absolute, then we try fbx reported relative, then we try relative to parent FBX file.

Change 3365498 on 2017/03/27 by Matt.Kuhlenschmidt

	Fix attempting to load a package in FBX scene import when the import path is empty. This greatly reduces FBX scene import time

Change 3365504 on 2017/03/27 by Yannick.Lange

	VR Editor landscape fix ensure in when starting to paint/sculpt. Mousemove on tool should only be called when the tool is actually active, not when hovering.

Change 3365551 on 2017/03/27 by Matt.Kuhlenschmidt

	PR #3425: Added Scrollbar customization to SComboBox (Contributed by Altrue)

	#jira UE-43338

Change 3365580 on 2017/03/27 by Matt.Kuhlenschmidt

	PR #3409: Add support for per-Category filtering in Output Log (Contributed by thagberg)

Change 3365672 on 2017/03/27 by Andrew.Rodham

	Sequencer: Preanimated state producers can now produce null tokens
	  - Doing so implies no preanimated state should be saved

Change 3365791 on 2017/03/27 by Andrew.Rodham

	Sequencer: Added Material Parameter Collection track

Change 3365806 on 2017/03/27 by Max.Chen

	Sequencer: Add option to instance sub sequences.

	#jira UE-43307

Change 3365822 on 2017/03/27 by Matt.Kuhlenschmidt

	Subdue the output log font color a bit

Change 3365846 on 2017/03/27 by Jamie.Dale

	Added package redirection on load/find

Change 3365852 on 2017/03/27 by Jamie.Dale

	Adding a way to mark a package as no longer missing

Change 3365896 on 2017/03/27 by Jamie.Dale

	Adding GlobalNotification to Slate

	This is the guts of the GlobalEditorNotification, so it can be used by code that doesn't link to UnrealEd.

Change 3365900 on 2017/03/27 by Jamie.Dale

	Prevent the default cooked sandbox from trying to read non-cooked assets

Change 3366550 on 2017/03/27 by Max.Chen

	Sequencer: Fix case

Change 3367301 on 2017/03/28 by Andrew.Rodham

	Tests: Added test actor with a variety of properties for testing purposes

Change 3367303 on 2017/03/28 by Andrew.Rodham

	Tests: Enabled ActorSequenceEditor plugin in EngineTest project

Change 3367304 on 2017/03/28 by Andrew.Rodham

	Tests: Added several functional testing maps for sequencer
	  - SequencerTest_Properties - tests animating various property types
	  - SequencerTest_Events - tests basic event triggering functionality (including additional event receivers and event ordering)
	  - SequencerTest_BindingOverrides - tests overriding possessable and spawnable bindings, along with bindings in sub sequences
	  - SequencerTest_ActorSequence - tests basic actor sequence functionality

Change 3367465 on 2017/03/28 by Max.Chen

	Sequencer: Set Bind Sequencer to PIE off by default, Bind Sequencer to Simulate remains on by default.

Change 3367515 on 2017/03/28 by Matt.Kuhlenschmidt

	Guard against visual studio accessor crash

	#jira UE-43368

Change 3368118 on 2017/03/28 by Alexis.Matte

	Fix the staticmesh conversion from 4.13. There was a error in the LOD loop we where not remapping the LOD 0.
	#jira UE-42731

Change 3368485 on 2017/03/28 by Alex.Delesky

	#jira UE-42207 - Updated SVN Binaries for MacOSX 64-bit:
	- Subversion 1.9.4 -> 1.9.5
	- OpenSSL 1.0.2h -> 1.0.2k
	- BerkeleyDB 5.3.15 -> 6.2.23
	- Java 8u101 -> 8u121
	- Sqlite 3.13.0 -> 3.17.0
	- Serf 1.3.8 -> 1.3.9
	- Swig 3.0.10 -> 3.0.12
	- ZLib 1.2.9 -> 1.2.11

Change 3368495 on 2017/03/28 by Alex.Delesky

	#jira UE-42207 - Updated SVN Binaries for Windows 64-bit:
	- Subversion 1.9.4 -> 1.9.5
	- OpenSSL 1.0.2h -> 1.0.2k
	- BerkeleyDB 5.3.15 -> 6.2.23
	- Java 8u101 -> 8u121
	- Sqlite 3.13.0 -> 3.17.0
	- Serf 1.3.8 -> 1.3.9
	- Swig 3.0.10 -> 3.0.12
	- ZLib 1.2.9 -> 1.2.11

Change 3368501 on 2017/03/28 by Alex.Delesky

	#jira UE-42207 - SVN Build instructions for Windows and Mac 64-bit libraries, and license files for Mac libraries

Change 3368782 on 2017/03/28 by Nick.Darnell

	UMG - Improving some logging for fast widget creation.

Change 3368826 on 2017/03/28 by Nick.Darnell

	Slate - Slate Application now maintains seperate tracking for each pointer being utilized for drag drop, so now multiple fingers on multiple widgets can now simultaneously be attempting a drag, however once one of them becomes successful, we clear all state of all other tracking since only one Drag Drop operation is possible at a time.

	Slate - bFoldTick is now removed from the codebase, we haven't supported the other (non-folded) code path for awhile, so there was no point in maintaining the switch.

	Slate - Users have noticed issues where the cursor does not appear when changing visibility (through toggling the way the cursor appears).  This was rooted in how the OS requested cursor changes, WM_SETCURSOR on Windows only asks for new cursors when the mouse moves, but often cursors change just because mouse capture changes.  So now the path has been centralized in Slate Tick to only handle the cursor changes in one place, and several places that need to refresh the cursor state, now set a flag to handle it on next tick.

	#jira UE-40486

Change 3368917 on 2017/03/28 by Arciel.Rekman

	Linux: allow building with clang 4.0.

Change 3369074 on 2017/03/28 by Nick.Darnell

	UMG - Fixing some spelling on the hardware cursor tip.

	UMG - Changed some checks to ensure now that users can input the wrong data from the editor.  Adding some clamping to the editor interface so that users are not tempted to enter incorrect hotspot ranges for their cursors.

	#jira UE-43419
	#jira UE-43425

Change 3369137 on 2017/03/28 by Max.Chen

	Sequencer: Add given master track sets the outer to the movie scene.

Change 3369360 on 2017/03/29 by Andrew.Rodham

	Sequencer: Reconciled 3349194 and 3365041 with animphys merge

Change 3369410 on 2017/03/29 by Alexis.Matte

	Fix the select filename in the FileDialog "Desktop window platform"
	#jira UE-43319

Change 3369475 on 2017/03/29 by Nick.Darnell

	PR #3413: UE-37710: Proper scaling of WebBrowserViewport (Contributed by projectgheist)

	Modified - you can't use the clip rect to decide on how large you should be.

	#jira UE-37710

Change 3369775 on 2017/03/29 by Max.Chen

	ControlRig: Fix crash on exit.

	#jira UE-43411

Change 3370466 on 2017/03/29 by Nick.Darnell

	AsyncLoading - Adding USoundBase to the set of CDOs that have a particular fixed boot order.

	StreamableManager - Only showing the duplicate load error in debug builds, it's not a real error.

	#jira UE-43409

Change 3370570 on 2017/03/29 by Nick.Darnell

	Slate - Fixing a bug with ZOrder being discarded on the SOverlay Slot.

	#jira UE-43431

Change 3370644 on 2017/03/29 by Andrew.Rodham

	Temporarily disabling sequencer functional test "Event Position"

Change 3370713 on 2017/03/29 by Nick.Darnell

	PR #3399: UE-42831: Anchor text ignores scale (Contributed by projectgheist)

	#jira UE-43156
	#jira UE-42831

Change 3371243 on 2017/03/30 by Arciel.Rekman

	Linux: scale OS allocation pool to match memory size.

	- Number of distinct VMAs (contiguous virtual memory areas, i.e. mappings done via mmap()) is rather low (~64k)
	  and we can run out of VMAs earlier than we will run into available memory. Larger pool makes this less likely.

Change 3371262 on 2017/03/30 by Arciel.Rekman

	Linux: fix custom present.

	- PR #3383 contributed by yaakuro.

Change 3371301 on 2017/03/30 by Arciel.Rekman

	Linux: fix copying to a non-existent directory during Setup.

Change 3371307 on 2017/03/30 by Andrew.Rodham

	Editor: Added "Resave All" functionality to content browser folders

Change 3371364 on 2017/03/30 by Andrew.Rodham

	Sequencer: Level streaming improvements
	  - Tick prerequisites are now set up when any object binding is resolved, not at the start of the sequence. This unifies code between spawnables and possessables, and allows tick prerequisites to still be set up when levels are streamed in
	  - Actor references are no longer resolved when a PIEInstance is specified on the package, and it cannot be fixed up to a different ptr than the original. This stops us resolving actors from one world into another.
	  - Fixed level visibility request getting cleared when the cumulative total was 0 (it should only do this if there are no requests left)

	#jira UE-43225

Change 3371365 on 2017/03/30 by Andrew.Rodham

	Tests: Sequencer level streaming tests

Change 3371493 on 2017/03/30 by Nick.Darnell

	PR #3408: UE-19980: Added FCanExecuteAction to prevent keyboard shortcut. (Contributed by projectgheist)

Change 3371524 on 2017/03/30 by Nick.Darnell

	PR #2938: Minor UMG code fixups (Contributed by projectgheist), accepted most of the changes.

Change 3371545 on 2017/03/30 by Nick.Darnell

	UMG - Fixing some minor issues with WidgetComponents not properly limiting input depending on what is supported with reguard to hardware input.

Change 3371576 on 2017/03/30 by Matt.Kuhlenschmidt

	PR #3433: Fix for the Standalone D3D Slate Shader using the wrong value for the. (Contributed by megasjay)

Change 3371590 on 2017/03/30 by Nick.Darnell

	UMG - Fixing widget alignment in the viewport when using the widget component with screen space, with an aspect ratio lock on the player's camera.  The widgets should now show up in the right locations.

Change 3371625 on 2017/03/30 by Alexis.Matte

	Fix the merge tool material id assignment
	#jira UE-43246

Change 3371666 on 2017/03/30 by Nick.Darnell

	UMG - Reducing logging, don't need to tell everyone all the time we're using the fast widget path.

Change 3371687 on 2017/03/30 by Arciel.Rekman

	Linux: switch to new managed filehandles.

Change 3371778 on 2017/03/30 by Matt.Kuhlenschmidt

	Fixed the animation to play property on skeletal meshes being too small to read anything

	#jira UE-43327

Change 3372709 on 2017/03/30 by Matt.Kuhlenschmidt

	Made slate loading widget / movie play back more thread safe by eliminating Slate applicaiton or the main window from being ticked directly on another thread.  We now have a separate virtual window for ticking and painting the loading screen widgets in isolation

Change 3372757 on 2017/03/30 by Nick.Darnell

	Paragon - Fixing cases where people were using PostLoad() where really it should have done when the widget was constructed or created.  This is a side effect of the FastWidget creation path 'PostLoad()' is not called on newly constructed widgets, though it did before because part of duplicating the WidgetTree, required serialization, which would have called it.

Change 3372777 on 2017/03/30 by Nick.Darnell

	Fixing fast widget template cooking so that it does the same logic as Initialize did, centralizing the code to find the first widgetblueprintclass.

Change 3372949 on 2017/03/30 by Nick.Darnell

	UMG - Fixing some cooking crashes for the super class.

Change 3373139 on 2017/03/30 by Jeff.Farris

	Added TimingPolicy option to WidgetComponent, so widgets can optionally tick in game time rather than real time.

	(Copy of CL 3279699 from Robo Recall to Dev-Editor)

Change 3373235 on 2017/03/30 by Nick.Darnell

	Fixing a cooking issue, accidentally removed code that was properly loading some needed assets.

Change 3373266 on 2017/03/30 by Matt.Kuhlenschmidt

	Made GetMoviePlayer thread safe.  Simply accessing GetMoviePlayer is safe now as is checking IsLoadingFinished.  However, most of the functions on movie player are only safe from the game thread!

Change 3374026 on 2017/03/31 by Andrew.Rodham

	Sequencer: Moved evaluation group registration to IMovieSceneModule

	#jira UE-43420

Change 3374060 on 2017/03/31 by Yannick.Lange

	VR Editor: Collision on motion controllers in simulate.

Change 3374185 on 2017/03/31 by Nick.Darnell

	Attempting to fix the build.

Change 3374232 on 2017/03/31 by Max.Chen

	Sequencer: Fix audio not playing in editor

	#jira UE-43514

Change 3374322 on 2017/03/31 by Nick.Darnell

	UMG - SafeZone widget now has comments, and useful tips.  Using the debugging console commands now trigger the broadcast that will cause controls like the SSafeZone widget to resample the display metrics to learn the new safezone ratio.

Change 3374424 on 2017/03/31 by Max.Chen

	Updated test content so that the door animation is now set to "Keep State" for the When Finished property.

	#jira UE-43519

Change 3374447 on 2017/03/31 by Max.Chen

	Sequencer: Notify streaming system prior to camera cuts

	By default, this does nothing. Users will need to enable the preroll section of camera cuts for the streaming system to activate prior to cutting to cameras.

	#jira UE-42406

Change 3374571 on 2017/03/31 by Andrew.Rodham

	Sequencer: Unified global and object-bound pre animated state, added InitializeObjectForAnimation method to state producers

Change 3374578 on 2017/03/31 by Andrew.Rodham

	Sequencer: Added unit tests for pre-animated state

Change 3374592 on 2017/03/31 by Max.Chen

	Color Customization: Set curve color names.

	#jira UE-43405

Change 3374596 on 2017/03/31 by Andrew.Rodham

	Corrected documentation comment

Change 3374671 on 2017/03/31 by Matt.Kuhlenschmidt

	Fix movie scene audio track not compiling outside of editor

Change 3374689 on 2017/03/31 by Matt.Kuhlenschmidt

	Remove the slate thread masquerading as the game thread in IsInGameThread

Change 3374730 on 2017/03/31 by Max.Chen

	Sequencer: Add check for null loaded level.

Change 3374732 on 2017/03/31 by Max.Chen

	Sequencer: Remove null tracks on postload.

Change 3374737 on 2017/03/31 by tim.gautier

	- Updated UMG_Optimization: Adjusted Variable names to resolve compile errors due to Widget Components and Variables sharing names (cannot be done with new compile improvements)

	- Set Level Blueprint for TM-UMG back to AllPalettes

Change 3374987 on 2017/03/31 by Nick.Darnell

	UMG - Introducing a way to inform the widgets more information about the designer.  There's now a DesignerChanged event sent to all design time widgets letting them know things like the current screen size and DPI scale.

	UMG - The SafeZone widget will now show the correct safe zone amount if you use the safezone command line options, which are now documented in the comment for the USafeZone class.

Change 3375599 on 2017/03/31 by Max.Chen

	Cine Camera: Update camera debug plane when property changes, rather rely soley on tick. This fixes a bug where sliding the value on the details panel doesn't update the debug plane in the viewport simultaneously.

	#jira UE-43543

Change 3375601 on 2017/03/31 by Arciel.Rekman

	Linux: switch to v9 cross-toolchain.

Change 3375856 on 2017/04/01 by Andrew.Rodham

	Sequencer: Fixed 'formal parameter with requested alignment of 16 won't be aligned'

Change 3375870 on 2017/04/01 by Andrew.Rodham

	Sequencer: Fixed explicit template instantiation ocurring before the complete definition of type's members
	  - This resulted such members not being instantiated (and hence exported) when compiled with clang

Change 3376114 on 2017/04/02 by Arciel.Rekman

	Linux: make source code accessor aware of clang 3.9 and 4.0.

Change 3376138 on 2017/04/02 by Arciel.Rekman

	Linux: add clang to fedora deps (UE-42123).

	- PR #3273 submitted by cpyarger.

Change 3376159 on 2017/04/02 by Arciel.Rekman

	Linux: some support for building on Debian Sid or Stretch (UE-35841).

	- Basd on PR #2790 by haimat.

Change 3376163 on 2017/04/02 by Arciel.Rekman

	Linux: install latest clang on Arch (UE-42341).

	- This undoes PR #1905.
	- PR #2897 by SiebenCorgie.
	- PR #3302 by awesomeness872.
	- PR #3341 by patrickelectric.

Change 3376167 on 2017/04/02 by Arciel.Rekman

	Add FreeBSD mem info (courtesy support for the out of tree build) (UE-42994).

	- PR #3378 by mdcasey.

Change 3376168 on 2017/04/02 by Arciel.Rekman

	Linux: fixed VHACD Makefile on a case sensitive fs (UE-42905).

	- PR #3381 by slonopotamus.

Change 3376177 on 2017/04/02 by Arciel.Rekman

	SlateDlg: case-insensitive comparison of filter extensions (UE-39477).

	- PR #3019 by aknarts.

Change 3376178 on 2017/04/02 by Arciel.Rekman

	WebRTC: only x86_64 version exists for Linux.

Change 3376245 on 2017/04/03 by Andrew.Rodham

	Sequencer: Re-enabled event order test

Change 3376339 on 2017/04/03 by Matt.Kuhlenschmidt

	Fix crash during loading movie playback on DX12 due to not ever cleaning up old resources

	#jira UE-27026

Change 3376481 on 2017/04/03 by Alex.Delesky

	#jira UE-43495 - TMaps will now support customized key properties correctly.

Change 3376741 on 2017/04/03 by Matt.Kuhlenschmidt

	Fix crash flushing font cache when loading a movie.  This is no longer save on the slate movie thread

	#jira UE-43567

Change 3376763 on 2017/04/03 by Shaun.Kime

	Material Reroute nodes do not work for Texture Object Parameters as they return a base output type. Modified logic to now support this node type.
	#jira UE-43521

Change 3376836 on 2017/04/03 by Jamie.Dale

	Fixed text format history being clobbered by reference collection

	#jira UE-37513

Change 3376852 on 2017/04/03 by Nick.Darnell

	Paragon - Found a case where a user had marked a BindWidget property as Transient which prevents serializing the property binding now for widget fast mode.

	#jira UE-43564

Change 3377207 on 2017/04/03 by Jamie.Dale

	Desktop platform directory pickers are expected to return absolute paths

	File pickers return relative paths though, and we should make this consistent at some point.

	#jira UE-43588

Change 3377214 on 2017/04/03 by Matt.Kuhlenschmidt

	Fix movie player shutdown crash in non-editor builds

	#jira UE-43577

Change 3377299 on 2017/04/03 by Michael.Dupuis

	#jira UE-43586 : properties should be non transactional
	#jira UE-43559

Change 3378333 on 2017/04/04 by Michael.Dupuis

	#jira UE-43585
	#jira UE-43586
	Revert back to purple color

Change 3378633 on 2017/04/04 by Matt.Kuhlenschmidt

	Resaved this asset to avoid zero engine version warnings

Change 3378958 on 2017/04/04 by Nick.Darnell

	Automation - Fixing the race condition to finish compiling shaders on screenshots for UI.

[CL 3379345 by Matt Kuhlenschmidt in Main branch]
2017-04-04 15:35:21 -04:00
Ben Marsh
111ec7adc5 Copying //UE4/Dev-Core to //UE4/Dev-Main (Source: //UE4/Dev-Core @ 3314870)
#lockdown Nick.Penwarden

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

Change 3284872 on 2017/02/03 by Graeme.Thornton

	Seperate pak cache granularity from pak signing chunk size

Change 3285765 on 2017/02/03 by Graeme.Thornton

	Fix stats warnings because each slate new loading screen thread has the same stat name, but is assigned to a different thread

	#jira UE-41478

Change 3286913 on 2017/02/04 by Ben.Marsh

	IncludeTool: Merging fixes.

	* Don't remove existing forward declarations unless explicitly instructed to do so. Files are optimized with these declarations in place, so removing them can cause output files to fail to build. It can be a useful separate step though, so expose it as a command-line option instead.
	* Add a specific option for which files should be output by the tool. Any files which are excluded from this list are treated specially when generating output files, so as to prevent them from causing files to be omitted from other files that include them. Also add an option to force this mode for all headers, for use when testing formatting/include path generation.

Change 3287100 on 2017/02/05 by Ben.Marsh

	UBT: Move platform settings into platform-specific TargetRules objects.

Change 3287106 on 2017/02/05 by Ben.Marsh

	Merge UEBuildPlatformContext into UEBuildPlatform. Now that targets can have platform-specific settings, there is no need to separate a platform class which contains target-specific information.

Change 3287398 on 2017/02/06 by Steve.Robb

	Fix for UHT failing when -WarningsAsErrors and -Verbose are specified together.

Change 3287399 on 2017/02/06 by Steve.Robb

	Log verbosities made more readable in the debugger.

Change 3287410 on 2017/02/06 by Steve.Robb

	Fix for TStructOpsTypeTraits where WithCopy gives a different result between specializing the traits and not providing WithCopy and not specializing the traits at all.

	#fyi marc.audy

Change 3288020 on 2017/02/06 by Ben.Marsh

	Prevent forward declaration of the ITextData class. We need to include the header for the debugger visualizers to work correctly.

Change 3291817 on 2017/02/08 by Steve.Robb

	New EBlueprintCompileReinstancerFlags used to construct FBlueprintCompileReinstancer, instead of lots of bools.

Change 3292090 on 2017/02/08 by Graeme.Thornton

	Crash fix - don't update font engine services if it was never created

	#jira UE-33953

Change 3292993 on 2017/02/08 by Ben.Marsh

	Add an option to disable force-including PCHs for files in the non-unity working set. (bAdaptiveUnityDisablesPCH)

Change 3293231 on 2017/02/08 by Ben.Marsh

	BuildGraph: Allow overriding the changelist that a badge should be displayed for (with the Change="" attribute on the Badge declaration in XML), so the code changelist can be used if necessary. Also link to the failed step if only one has failed.

Change 3294213 on 2017/02/09 by Ben.Marsh

	EC: Allow setting a property on frequent CI jobs that allows us to exclude it from job searches for generating the dashboard. Filtering on the client side is causing dashboard pages to be almost empty.

Change 3294753 on 2017/02/09 by Ben.Zeigler

	#jira UE-41151 Fix UObjectLibrary::RemoveObject to remove from the correct array, and add comment mentioning that the dynamic use of Object Library is semi-deprecated

Change 3296070 on 2017/02/09 by Ben.Zeigler

	Explicitly turn off Copy for a struct that has a linked list internally. I think turning Copy on by default for all non POD Types is pretty risky and is likely to crash for other games. In this case it was being copied for network replication, and it didn't have one defined so the default C++ one copied the linked list and crashed on destruction.

Change 3296420 on 2017/02/10 by Graeme.Thornton

	Remove remaining references to AES_KEY, instead using the encryption key delegates to access the key where needed
	Refactored encryption and signing key access in unrealpak to make it easier to use

Change 3296609 on 2017/02/10 by Ben.Marsh

	BuildGraph: Fix error running the <Copy> task with an empty "From" argument.

	* FileSystemReference.IsUnderDirectory() was not correctly handling cases where the directory was a root directory (and has to end in a path separator)
	* FilePattern.AsDirectoryReference() with an empty token would append a path separator to an empty string, resulting in it referencing the root directory rather than the given base directory.

Change 3297440 on 2017/02/10 by Ben.Marsh

	UBT: Move the FileFilter class into UnrealBuildTool.

Change 3297725 on 2017/02/10 by Ben.Zeigler

	#jira UE-39199 Fix issue with enum value redirects using the wrong short or long name, it now fully supports both.
	Clean up a lot of confusingly named and broken functions on UEnum:
	#jira UE-41348 Deprecate FindEnumIndex, GetEnum, GetEnumName, replace with GetIndexByName, GetNameByIndex, and GetNameStringByIndex and clean up warnings
	#jira UE-38187 Deprecate GetDisplayNameText and GetEnumText, replaced both with GetDisplayNameTextAtIndex which is now callable outside the editor and has a better comment
	Deprecate FindEnumRedirects and replace with GetIndexByNameString. Fix code to not check the redirects array 5 times per enum lookup
	Fix GetValueAsString to actually act on a value, not an index. This matches common usage and the function's name
	While fixing deprecation warnings on internal games, fixed dozens of cases where it was using Index functions when it should have been using Value functions
	Delete some now redundant enum editor code and pipe everything through UEnum

Change 3297979 on 2017/02/10 by Ben.Zeigler

	Fix issues parsing Enums that are literally the string "None", which is allowed but leads to some odd behavior

Change 3298299 on 2017/02/10 by Steve.Robb

	TTuple improvements:
	- equality comparable
	- serializable
	- in the correct folder

	2-tuples are specialized to be syntactically compatible with both TPair and TTuple.
	TPair is now an alias for a 2-tuple and is no longer bound to TPairInitializer.

	#fyi robert.manuszewski,ben.marsh

Change 3298460 on 2017/02/11 by Ben.Marsh

	UGS: Set the correct result from running custom tasks.

Change 3298462 on 2017/02/11 by Ben.Marsh

	UBT: Fix some deprecated messages that have the wrong release version, and add a better message for how ModuleRules constructors need to be updated.

Change 3299447 on 2017/02/13 by Graeme.Thornton

	Fix AES and pak signing key embedding for content only projects
	 - Force temp target when any keys are specified by project config

Change 3299649 on 2017/02/13 by Steve.Robb

	PLATFORM_HAS_DEFAULTED_OPERATORS fixed.
	Other obsolete compiler switches removed.

Change 3299787 on 2017/02/13 by Steve.Robb

	IsAbstract() for testing if a reflected native type contains pure virtual functions.  Needed for BP nativization.

	#fyi robert.manuszewski

Change 3300576 on 2017/02/13 by Ben.Marsh

	EC: Add support for starting builds on any agent type. Mapping from agent types to resource pools is stored in an EC property sheet (/Generated/<Stream>/AgentTypes), allowing EC procedures to map it to a resource pool from a parameter.

Change 3300600 on 2017/02/13 by Ben.Marsh

	EC: Add the -ClearHistory argument to UAT run to export BuildGraph settings, to allow running on incremental workspaces.

Change 3300624 on 2017/02/13 by Ben.Marsh

	Switch incremental builds for all streams to start up on the incremental agent.

Change 3302134 on 2017/02/14 by Steve.Robb

	UnrealCodeAnalyzer removed.

	#fyi ben.marsh,robert.manuszewski

Change 3302639 on 2017/02/14 by Ben.Zeigler

	Fix crash cooking odin with default command line
	#jira UE-41952 Delete StealthTeleport map that crashes on load, and update default cook list that gets used if nothing specified

Change 3303002 on 2017/02/14 by Ben.Zeigler

	#jira UE-41061 Fix it so editor only filtering on savepackage is uniformly applied regardless of if it's at package or object level
	#jira UE-41880 Rewrite editor/client/server only filtering logic in SavePackage to fix various bugs. It now does all of the filtering up front, and won't process any filtered objects for imports or exports
	Rename NotForEditorGame to NotAlwaysLoadedForEditorGame and improve comments, this flag says that the asset should be loaded EVEN IF it is editor only, it does not affect loading for normal objects
	Change the non-map cook flags to RF_Public instead of RF_Standalone. Blueprint classes aren't RF_Standalone so were only being cooked before due to an accident of the dependency checker
	Change it so anything with a Transient outer is marked transient at save time. These objects would not save out properly anyway
	Fix it so -cooksinglepackage works properly again and excludes localization and startup packages
	Tested with Fortnite and Odin, Odin works but with lots of warnings with nativization on which I need to investigate

Change 3303084 on 2017/02/14 by Ben.Zeigler

	Attempt to get Nativization and EDL working without warnings

	Change 3305153 on 2017/02/15 by Ben.Zeigler

	Fix Fortnite and Orion cook, I don't understand why this passed my local testing
	Fix the CDO subobject finder to actually return things instead of doing nothing, and fix a shadow variable warning

Change 3305959 on 2017/02/16 by Gil.Gribb

	UE4 - Tweaked out the EDL loader for the switch with benefits to all platforms.

Change 3306159 on 2017/02/16 by Ben.Marsh

	Fix path to target binaries when building non-monolithic in a unique build environment.

Change 3306584 on 2017/02/16 by Steve.Robb

	UEnum internal functions renamed from Index to Value.
	GetValueAsString_Internal() parameter now takes an int64, as is expected for enum values.

	#fyi ben.zeigler

Change 3307836 on 2017/02/16 by Ben.Zeigler

	#jira UE-42055 Load very old redirects in cooked builds. Matinee has no way of resaving redirects, so as long as matinee exists we need to keep them around forever, or fix matinee manually
	Fixes lighting in Infiltrator demo

Change 3307929 on 2017/02/16 by Ben.Zeigler

	#jira UE-42055 Second half of matinee redirector fix

Change 3308840 on 2017/02/17 by Matthew.Griffin

	Reimplementing CL#3305808 from 4.15

		Changed QA label build process so that it only allows version with 3 components (we always add the .0 for initial releases)

Change 3309115 on 2017/02/17 by Ben.Marsh

	Windows: Fix the GetModulesDirectory() function always returning the engine binaries directory. It's possible to build non-monolithic targets which output all engine binaries to the game binaries directory - a requirement to being able to set game-specific defines or build settings, because we don't want shared engine binaries to be tainted with them. The module manager needs to be able to operate early on,  before many of the game settings have been initialized, so just return the directory containing the Core module instead.

Change 3309120 on 2017/02/17 by Ben.Marsh

	Fix support for creating modular builds which don't use the shared build environment.

Change 3309125 on 2017/02/17 by Ben.Marsh

	Require that -CookDir arguments are specified separately on the command line. '+' is a valid path character (and common in build versions), so we shouldn't treat it as an argument separator.

Change 3309128 on 2017/02/17 by Ben.Marsh

	Fix UnrealPak failures when enumerating all files from a source directory, if that directory happens to contain spaces.

Change 3309131 on 2017/02/17 by Ben.Marsh

	Fix list of discovered assets being cleared by second call to FindFilesRecursive() when building DDC. Disable the -cookdir parameter again.

Change 3309140 on 2017/02/17 by Ben.Marsh

	UAT: Fix exception moving a file from one location to another if the target directory does not exist.

Change 3309212 on 2017/02/17 by Ben.Marsh

	Fixes/improvements for mod editor and code mods:

	* A separate top-level project is generated for each code mod in the Visual Studio solution.
	* Plugin descriptors now have a flag to identify themselves as mod as opposed to a regular game plugin, which prevents project plugins from getting their own VS project. New mods created with the mod editor will have this set by default, as do the three existing sample mods.
	* Cleaning and building code mods will never modify engine binaries. Presence of the Engine/Build/InstalledProjectBuild.txt file is used to indicate running in this environment. This flag also disables options to edit metadata for non-mod plugins in installed builds.
	* Plugin browser now includes a separate category for mods.
	* Mod editor now behaves as an "installed" program by default, and will use the user's home folder for storing settings.

Change 3309231 on 2017/02/17 by Steve.Robb

	Fix for Ar << bSomeBool where Ar is a derived class which overrides an operator<<.

	#jira UE-42052

Change 3309248 on 2017/02/17 by Ben.Marsh

	Add support for hot-reloading game plugin modules from Visual Studio, as long as their module returns IsGameModule() = true.

Change 3309257 on 2017/02/17 by Ben.Marsh

	Prevent game binaries from being renamed for hot reload when working with installed projects.

Change 3309355 on 2017/02/17 by Steven.Hutton

	Changes to make the website compatible with the new database changes.

Change 3309371 on 2017/02/17 by Ben.Marsh

	Fix exception on shutdown when running asset registry with threads disabled.

	#jira UE-41951

Change 3309389 on 2017/02/17 by Ben.Zeigler

	#jira UE-42051 Fix ensure and crash when loading a null asset ID via the LoadAsset BP node

Change 3309570 on 2017/02/17 by Gil.Gribb

	UE4 - Switch load time performace tweaks, plus abstracted the IO tracker and handle manager for other platforms and applied it to the PS4.

Change 3310039 on 2017/02/17 by Ben.Marsh

	BuildGraph: Prevent exception when trying to delete a file that does not exist.

Change 3311484 on 2017/02/20 by Chris.Wood

	CrashReportProcess crash add retry logic improvements (CRP v1.2.16)

Change 3311600 on 2017/02/20 by Matthew.Griffin

	Updated StripSymbols functions so that all platforms can deal with the source and target file being the same

Change 3311675 on 2017/02/20 by Steve.Robb

	FNativeClassHeaderGenerator::CurrentSourceFile stack replaced with C++ stack.

Change 3311893 on 2017/02/20 by Ben.Marsh

	UGS: Add support for notifying users if CIS steps fail for content changes. Badges which test content should be listed in the [Notifications] section of the project-specific INI file, through +ContentBadges= lines.

Change 3313966 on 2017/02/21 by Ben.Marsh

	Fix EC parsing of error messages output by the editor in the form "LogXYZ:Error:". Greedy optional subexpression in regex was matching everything until a space, so terminate a colon too.

Change 3314398 on 2017/02/21 by Ben.Zeigler

	#jira UE-42212 Fix shutdown of AnimGraph module to be safer

[CL 3315211 by Ben Marsh in Main branch]
2017-02-21 15:51:42 -05:00
Ben Marsh
20bf0eb6a1 Updating copyright notices to 2017 (copying from //Tasks/UE4/Dev-Copyright-2017).
#rb none
#lockdown Nick.Penwarden

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

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

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

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

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

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

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

[CL 3209342 by Ben Marsh in Main branch]
2016-11-23 15:48:37 -05:00
Ben Marsh
3e80336791 Copying //UE4/Dev-Build to //UE4/Dev-Main (Source: //UE4/Dev-Build @ 3092544)
#lockdown Nick.Penwarden
#rb none

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

Change 3079316 on 2016/08/05 by Ben.Marsh

	Better PCH selection in ShaderFormatOpenGL and MetalShaderFormat - make sure Core is the first included header.

Change 3080579 on 2016/08/08 by Ben.Marsh

	Slate: Move DEBUG_TAB_MANAGEMENT into SDockingTabStack.h to remove circular include dependency with DockingPrivate.h.

Change 3080587 on 2016/08/08 by Ben.Marsh

	StandaloneRenderer: Move platform includes into a separate header so we can make individual headers self-contained, without having a circular dependency on StandaloneRendererPrivate.h.

Change 3080789 on 2016/08/08 by Ben.Marsh

	Move BuildGraph tasks for chunking, posting builds, labeling builds, and merging manifests into the MCP project. While we do provide public interfaces for this functionality, we don't currently expect anyone outside Epic to be using them.

Change 3080815 on 2016/08/08 by Ben.Marsh

	BuildGraph: Add a -GenerateDocs option, which writes out an HTML file constructed from C# XML documentation containing all the task information.

Change 3081374 on 2016/08/08 by Ben.Marsh

	UBT: Invalidate the makefile if any UHT headers are deleted. Should fix issue where files are moved from one module to another, and the original module no longer contains any generated headers. Its include path needs to be removed from the compile environment.

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

	PR #2667: Add Intel C++ Compiler support to Windows build (Contributed by JeffRous)

Change 3084039 on 2016/08/10 by Ben.Marsh

	BuildGraph: Add additional markup for parameter attributes. Also improve some documation.

Change 3084240 on 2016/08/10 by Ben.Marsh

	Plugins: Allow plugins in the project folder to replace plugins in the engine folder with the same name. Prohibit multiple plugins with the same name at other times.

Change 3084337 on 2016/08/10 by Ben.Marsh

	UBT: Specify the -precompile option when generating project files for a target, so we include all valid modules for intellisense.

Change 3085594 on 2016/08/11 by Ben.Marsh

	Change modules which reference a public header for their PCH to use a private PCH instead, even if it just includes the public header for now.

Change 3085999 on 2016/08/11 by Ben.Marsh

	Add some missing #pragma once directives.

Change 3086146 on 2016/08/11 by Ben.Marsh

	Core: Move prototype and linkage specifier for ConsoleCommandLibrary_* functions into header matching cpp file.

Change 3086172 on 2016/08/11 by Ben.Marsh

	Fixup some C-style header guards to use #pragma once instead.

Change 3087289 on 2016/08/12 by Ben.Marsh

	Split out UPackage and UMetaData into their own headers (they're already implemented in separate CPP files)

Change 3087310 on 2016/08/12 by Ben.Marsh

	Move method stubs for FNullSlateSoundDevice into a CPP file, since they're exported from the SlateCore module.

Change 3087341 on 2016/08/12 by Ben.Marsh

	UdpMessaging: Move PCH before #if PLATFORM_DESKTOP; it will only be defined if the definition is included.

Change 3087457 on 2016/08/12 by Ben.Marsh

	Core: Reorganize the FTransform and FMatrix headers: Transform.h now includes TransformNonVectorized.h or TransformVectorized.h as appropriate, and UnrealMatrix.h is now Matrix.inl (and included from Matrix.h).

Change 3088407 on 2016/08/13 by Ben.Marsh

	Replace use of Windows SIZE_T define with the regular C++ size_t.

Change 3088416 on 2016/08/13 by Ben.Marsh

	Include a header from all .generated.cpp files (GeneratedCppIncludes.h) which includes all the basic types required to compile them, rather than assuming that the module PCH will include everything.

	Also include the real declarations of noexport classes in Object.h (now renamed to NoExportTypes.h for clarity) when the CPP macro is defined, so the .generated.deps.h file will automatically have the correct definitions for them at compile time rather than relying on them being in the private PCH.

	Finally, rename UObject.h to Object.h for consistency with the naming convention for all other UObject classes. UObject.h still exists for now, but outputs a deprecated message if included.

Change 3088544 on 2016/08/14 by Ben.Marsh

	Core: Move the definition of the TEXT() macro into Platform.h, to avoid having to include OS headers to get it.

Change 3088552 on 2016/08/14 by Ben.Marsh

	Fix compile errors for some modules that don't already include CoreUObject.h.

Change 3088925 on 2016/08/15 by Ben.Marsh

	Remove circular include dependencies from VulkanRHI.

Change 3088926 on 2016/08/15 by Ben.Marsh

	Remove duplicate definition for WITH_FIXED_AREA_ENTERING_COST from EngineDefines.h - always uses the definition from DetourNavMeshQuery.h instead.

Change 3088930 on 2016/08/15 by Ben.Marsh

	Remove circular include dependency from PhysX.

Change 3088935 on 2016/08/15 by Ben.Marsh

	OnlineSubsystemUtils: Move CPP files out of public header directory.

Change 3088965 on 2016/08/15 by Ben.Marsh

	Add private PCH to Landscape, MoviePlayer, TaskGraph, XAudio2 and RealtimeProfiler modules.

Change 3088966 on 2016/08/15 by Ben.Marsh

	Engine: Move CPP files out of public header directories.

Change 3089520 on 2016/08/15 by Ben.Marsh

	BuildGraph: Change documentation command to output markdown.

Change 3090299 on 2016/08/16 by Ben.Marsh

	D3D12RHI: Move around some implementations to fix circular header dependencies which are masked by delayed template instantiation.

Change 3090303 on 2016/08/16 by Ben.Marsh

	Engine: Add a template specialization for TPointerIsConvertibleFromTo<AActor, const volatile UObject> to fix dependency on complete AActor definition for static assert in TWeakPointer<AActor>, which only appears if including Level.h without Actor.h. Delayed template instantiation usually masks this issue.

Change 3091861 on 2016/08/17 by Ben.Marsh

	Remove circular header dependencies, and fix ambiguous include paths in OSVR.

Change 3092068 on 2016/08/17 by Ben.Marsh

	Moving VulkanDynamicRHI into its own header.

Change 3093133 on 2016/08/18 by Ben.Marsh

	EC: Include additional context lines for Clang errors.

Change 3093147 on 2016/08/18 by Ben.Marsh

	UBT: Add an error message when attempting to do a single-file compile with the wrong target selected.

Change 3093228 on 2016/08/18 by Ben.Marsh

	Remove redundant setting for remote server name from XML config, and set it to a valid machine in the engine config.

[CL 3093264 by Ben Marsh in Main branch]
2016-08-18 10:28:43 -04:00
Andrew Grant
f98f5761cc Copying //UE4/Orion-Staging to //UE4/Main (Origin: //Orion/Dev-General @ 2879808)
==========================
MAJOR FEATURES + CHANGES
==========================

#lockdown Nick.Penwarden

Change 2879705 on 2016/02/24 by Nick.Darnell

	Editor - Tweaking some comments.

	#tests n/a
	#rb n/a

Change 2879674 on 2016/02/24 by Nick.Darnell

	Editor - The editor now supports many new methods of opening new asset editors.  You can choose where tabs open with a great deal more options in Editor Preferences > Appearance > Asset Editor Open Location.  This will reset the 'always open asset editors in new windows' option, it completely replaces and enchances that option.

	#tests Ran the editor, tried each option and they all seem to do what I want.
	#rb matt.kuhlenschmidt

Change 2879661 on 2016/02/24 by Jamie.Dale

	More general fixes for dialogue waves

	- The localization key now uses a hash of the speaker and target voice GUIDs to help keep them short.
	- The localization key can now be user customized, and contains a placeholder format specifier for the context hash.
	- The "Variations" meta-data is now called "Context".

	#rb James.Hopkin
	#tests Built for Windows, Linux, and PS4. Tested a loc gather and export had the correct info in it. Tested the new UI worked as expected.

Change 2879436 on 2016/02/24 by Nicholas.Davies

	A few bug fixes for blocking PS4 > PC chat
	#jira OR-15467 Disable Paragon chat on PS4 for users outside of the game
	#RB Antony.Carter
	#codereview Sam.Zamani
	#TESTS PS4 whispers to and from none Paragon PC users is blocked.

Change 2878929 on 2016/02/23 by Jason.Bestimt

	#ORION_DEV - Merge Main to reconcile 0.20 branch creation

	#RB:none
	#Tests:none

Change 2878600 on 2016/02/23 by Dmitry.Rekman

	Linux: added code to identify CPU for FPSCharts (OR-14949).

	#rb none
	#tests Ran dedicated server on local VM and a few physical boxes.

Change 2878443 on 2016/02/23 by Marcus.Wassmer

	Fix game not ticking when PS button is pressed.
	#rb andrew.grant
	#test golden path ps4

Change 2878361 on 2016/02/23 by Josh.Markiewicz

	#UE4 - fixed bad comment
	#rb none
	#tests none

Change 2878205 on 2016/02/23 by Jason.Bestimt

	#ORION_DEV - Merge main (0.19) at CL# 2878162

	#Tests:none
	#RB:none

Change 2878095 on 2016/02/23 by Josh.Markiewicz

	#UE4 - added warnings to json mcp read/write failures
	- removed HostAddressOverride parameter (use -uselocalips and -multihome together instead)
	#rb none
	#tests matchmaking golden path

Change 2878002 on 2016/02/23 by Josh.Markiewicz

	#UE4 - made two party framework functions virtual
	#rb none
	#tests none

Change 2877998 on 2016/02/23 by Josh.Markiewicz

	#Ue4 - Party interface can optionally enable/disable creating a chat room alongside the party (defaults to enabled)
	#rb rob.cannaday
	#tests social/team parties golden path
	#codereview rob.cannaday

Change 2877822 on 2016/02/23 by Olaf.Piesche

	speculative fix for OR-15710

	#rb david.hill
	#tests PC game

Change 2877804 on 2016/02/23 by Uriel.Doyon

	Fixed ULevel::AddReferencedObjects clearing all references to static texture streaming data
	#codereview robert.manuszewski
	#rb marcus.wassmer
	#tests played several games on PC, also doing rejoin
	#jira OR-15658

Change 2877692 on 2016/02/23 by Jamie.Dale

	Added commandlet to replace sound wave players in sound cues with dialogue wave players where appropriate

	#rb Saul.Abreu
	#tests Built for Windows, Linux, and PS4. Tested the commandlet.

Change 2877691 on 2016/02/23 by Jamie.Dale

	Added commandlet to extract out the information from our character sheets and put it into the correct dialogue waves

	#rb Saul.Abreu
	#tests Built for Windows, Linux, and PS4. Tested the commandlet.

Change 2877690 on 2016/02/23 by Jamie.Dale

	General dialogue wave fixes

[CL 2881965 by Andrew Grant in Main branch]
2016-02-25 15:13:33 -05:00
Matthew Griffin
bb70b349ce Merging CL 2804086 from //UE4/Release-4.11 to Dev-Main (//UE4/Dev-Main) to isolate copyright update
#lockdown Nick.Penwarden

[CL 2819020 by Matthew Griffin in Main branch]
2016-01-07 08:17:16 -05:00
Gil Gribb
1466f07a0f UE4 - fix threading issue with movie playback and no rhi thread
[CL 2595622 by Gil Gribb in Main branch]
2015-06-22 12:26:55 -04:00
Gil Gribb
137c5a625a UE4 - flush the RHI thread and RHI resources in the movie loop
[CL 2585981 by Gil Gribb in Main branch]
2015-06-12 13:40:07 -04:00
Jaroslaw Surowiec
a7f0237003 Potential fix for a deadlock
[CL 2566342 by Jaroslaw Surowiec in Main branch]
2015-05-27 04:54:18 -04:00
Jaroslaw Surowiec
0fac64a030 Dont't force kill a thread
[CL 2485973 by Jaroslaw Surowiec in Main branch]
2015-03-20 07:34:15 -04:00
Ben Marsh
149375b14b Update copyright notices to 2015.
[CL 2379638 by Ben Marsh in Main branch]
2014-12-07 19:09:38 -05:00