Commit Graph

33 Commits

Author SHA1 Message Date
marc audy
cff01aa9fa Added support for native FProperty setters and getters.
Setters and getters are native functions called by FProperties when setting property values with *_InContainer functions.
Setters and getter function names can be manually specified with Setter = Func and Getter = Func keywords inside of UPROEPRTY macro but they will also be automatically parsed if the name is not explicitly specified if the setter or getter function name matches SetPropertyName and GetPropertyName pattern.
The latter behavior can be disabled in UHT's DefaultEngine.ini by setting AutomaticSettersAndGetters=False.
ImportText and ExportTextItem functions have been deprecated and should be replaced with *_InContainer or *_Direct variants.

#rb Steve.Robb
#preflight 6210a377a83e0bcefd03d9e1

#ROBOMERGE-OWNER: marc.audy
#ROBOMERGE-AUTHOR: robert.manuszewski
#ROBOMERGE-SOURCE: CL 19070318 via CL 19098059 via CL 19104650 via CL 19104661 via CL 19110012
#ROBOMERGE-BOT: UE5 (Release-Engine-Staging -> Main) (v921-19075845)

[CL 19147839 by marc audy in ue5-main branch]
2022-02-25 10:39:39 -05:00
marc audy
6553e6cd0a Remove as much C++ deprecation as possible up to 4.17 (along with a few scattered removals from beyond)
#preflight 61eefc77ba69a4fdb220bf23

#ROBOMERGE-AUTHOR: marc.audy
#ROBOMERGE-SOURCE: CL 18712765 in //UE5/Release-5.0/... via CL 18712784 via CL 18713147
#ROBOMERGE-BOT: UE5 (Release-Engine-Test -> Main) (v903-18687472)

[CL 18713191 by marc audy in ue5-main branch]
2022-01-24 15:07:48 -05:00
Marc Audy
a7f9391231 Merge UE5/Release-Engine-Staging @ 14811410 to UE5/Main
This represents UE4/Main @ 14768117

For ReleaseObjectVersion.h
#lockdown Marcus.Wassmer

[CL 14811440 by Marc Audy in ue5-main branch]
2020-11-24 18:42:39 -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
Robert Manuszewski
7b6f840f7f Copying //UE4/Dev-Core @ 10708550 to Dev-Main (//UE4/Dev-Main)
#rb none

[CL 10708666 by Robert Manuszewski in Main branch]
2019-12-13 11:07:03 -05:00
marc audy
dbcf07a558 Use new inline versions of substring functions
Fix up nearby cases where ESearchCase::CaseSensitive should have been used
#jira
#rnx
#rb

#ROBOMERGE-OWNER: marc.audy
#ROBOMERGE-AUTHOR: marc.audy
#ROBOMERGE-SOURCE: CL 10309793 via CL 10309818
#ROBOMERGE-BOT: (v593-10286020)

[CL 10309932 by marc audy in Main branch]
2019-11-19 13:27:07 -05:00
michael noland
3409bf65c6 Adding a missing include of TextProperty.h for non-unity builds
#rnx


#ROBOMERGE-SOURCE: CL 8393095 via CL 8395615
#ROBOMERGE-BOT: (v403-8382528)

[CL 8395717 by michael noland in Main branch]
2019-09-02 04:45:56 -04:00
michael noland
226093e8e2 Fix non-editor compile error in BlueprintNodeHelpers.cpp
#rnx


#ROBOMERGE-SOURCE: CL 8393088 via CL 8395611
#ROBOMERGE-BOT: (v403-8382528)

[CL 8395716 by michael noland in Main branch]
2019-09-02 04:45:54 -04:00
michael noland
ddfddee5e0 Behavior Tree node display: Add support for strings/text types, and improved support for gameplay tags to trim off required prefixes from Categories metadata
[CODEREVIEW] mieszko.zielinski
#rnx


#ROBOMERGE-SOURCE: CL 8393065 via CL 8395596
#ROBOMERGE-BOT: (v403-8382528)

[CL 8395686 by michael noland in Main branch]
2019-09-02 04:44:47 -04:00
michael noland
ad31930ccf Added a streamlined display of gameplay tags in behavior tree nodes ("TagValue" directly, instead of "(TagName=TagValue)")
#rb marc.audy
#rnx
[FYI] mieszko.zielinski


#ROBOMERGE-SOURCE: CL 8306072 via CL 8357011
#ROBOMERGE-BOT: (v401-8057353)

[CL 8357117 by michael noland in Main branch]
2019-08-27 19:32:19 -04:00
Ben Marsh
7598af0532 Update copyright notices to 2019.
#rb none
#lockdown Nick.Penwarden

[CL 4662404 by Ben Marsh in Main branch]
2018-12-14 13:41:00 -05:00
Marc Audy
16a368545a Use components set directly rather than incurring overhead of filtering and copying in to external storage and then using it.
#rb none
#rnx

[CL 4279612 by Marc Audy in Dev-Framework branch]
2018-08-13 11:44:41 -04:00
Ben Marsh
13d012685f Merging copyright update from 4.19 branch.
#rb none
#rnx
#jira

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

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

Change 3623004 by Ben.Marsh

	Fix RemoteExecutor not taking the remote machine specs into account.

Change 3623172 by Ben.Marsh

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

Change 3628820 by Ben.Marsh

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


Change 3630424 by Graeme.Thornton

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

Change 3632786 by Steve.Robb

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

Change 3639534 by Ben.Marsh

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

Change 3640536 by Steve.Robb

	GitHub #4007 : Delete unnecessary specialization of MakeArrayView

	#jira UE-49617

Change 3641155 by Gil.Gribb

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

Change 3643932 by Ben.Marsh

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

Change 3644825 by Ben.Marsh

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

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

Change 3647395 by Ben.Marsh

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

Change 3650300 by Ben.Marsh

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

Change 3650856 by Robert.Manuszewski

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

Change 3651022 by Gil.Gribb

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

Change 3658331 by Steve.Robb

	Fix for the parsing of large integer values.

Change 3661958 by Gil.Gribb

	UE4 - Fixed rare hang in task graph.

Change 3664021 by Robert.Manuszewski

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

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

Change 3664254 by Steve.Robb

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

Change 3664436 by Steve.Robb

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

Change 3666461 by Graeme.Thornton

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

Change 3666462 by Graeme.Thornton

	Cut ShooterGame AES key down to 32 characters

Change 3677560 by Ben.Marsh

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


Change 3683534 by Steve.Robb

	Refactoring of enum/struct lookup during hot reload.

Change 3683754 by Steve.Robb

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

Change 3686670 by Steve.Robb

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

Change 3687540 by Ben.Marsh

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

Change 3688931 by Gil.Gribb

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

Change 3690000 by Graeme.Thornton

	Manual copy of 4.18 CL 3687869

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

Change 3690030 by Graeme.Thornton

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

	#jira UE-50554

Change 3690885 by Steve.Robb

	Atomic reads in FReferenceControllerOps<ESPMode::ThreadSafe>.

Change 3691052 by Steve.Robb

	Free stats thread on shutdown.

Change 3695138 by Steve.Robb

	AsConst helper function added.

Change 3696627 by James.Hopkin

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

	(review-3606695)

Change 3697099 by Steve.Robb

	GitHub #4105 : Removed redundant class access modifier

Change 3697154 by Steve.Robb

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

Change 3697180 by Steve.Robb

	GitHub #4115 : Incorrect CPPMacroType used for USoftClassProperty

Change 3697239 by Steve.Robb

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

Change 3697269 by Steve.Robb

	RelocateConstructItems instead of MoveConstructItems.

Change 3697558 by Steve.Robb

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

Change 3699776 by Steve.Robb

	TSAN warning suppression around IAsyncReadRequest::bCompleteAndCallbackCalled.

Change 3702397 by Steve.Robb

	TIsTrivial type trait.

Change 3702569 by Steve.Robb

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

Change 3706644 by Robert.Manuszewski

	Different stack ingore count for development builds for FArchiveStackTrace

Change 3709272 by Steve.Robb

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

Change 3709452 by Robert.Manuszewski

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

Change 3709454 by Robert.Manuszewski

	Added command line option -NOEDL to disable EDL

Change 3709487 by Steve.Robb

	Remove use of PLATFORM_HAS_64BIT_ATOMICS, which is always 1.

Change 3709645 by Ben.Marsh

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

Change 3711193 by Ben.Marsh

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

	#jira UE-51487

Change 3713811 by Steve.Robb

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

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

	#jira UE-51472

Change 3715654 by Steve.Robb

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

Change 3718782 by Steve.Robb

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

Change 3720830 by Steve.Robb

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

Change 3720881 by Steve.Robb

	FCompression ThreadSanitizer data race fixes.

Change 3722640 by Graeme.Thornton

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

	#jira UE-51463

Change 3722655 by Steve.Robb

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

Change 3722754 by Steve.Robb

	Thread sanitizer fix.
	Small typo fix.

Change 3722849 by Graeme.Thornton

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

Change 3723081 by Steve.Robb

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

Change 3723270 by Ben.Marsh

	Include /d2cgsummary argument when running UBT with -Timing.

Change 3723683 by Ben.Marsh

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

Change 3725422 by Robert.Manuszewski

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

Change 3725735 by Robert.Manuszewski

	Making all CheckDefaultSubobjects related functions const

Change 3726167 by Steve.Robb

	FMinimalName::IsNone added.

Change 3726458 by Steve.Robb

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

Change 3726542 by Ben.Marsh

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

Change 3726595 by Ben.Marsh

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

Change 3726724 by Ben.Marsh

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

Change 3726959 by Ben.Marsh

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

Change 3728437 by Steve.Robb

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

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

Change 3732262 by Gil.Gribb

	UE4 - Fixed rare hangs in the task graph.

Change 3732755 by Steve.Robb

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

Change 3735000 by Robert.Manuszewski

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

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

Change 3735292 by Robert.Manuszewski

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

Change 3735332 by Steve.Robb

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

Change 3737960 by Graeme.Thornton

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

Change 3738398 by Graeme.Thornton

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

	#jira UE-51451

Change 3738405 by Graeme.Thornton

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

Change 3738928 by Steve.Robb

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

	#jira UE-51842

Change 3739135 by Ben.Marsh

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

	#jira UE-51855

Change 3739360 by Ben.Marsh

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

Change 3745959 by James.Hopkin

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

Change 3746125 by Steve.Robb

	FName ThreadSanitizer fixes.

Change 3747274 by Steve.Robb

	TSAN fix for FMediaTicker::Stopping.

Change 3747618 by Steve.Robb

	ThreadSanitizer data race fix for FShaderCompileThreadRunnableBase::bForceFinish.

Change 3747720 by Steve.Robb

	ThreadSanitizer fix for FMessageRouter::Stopping.

Change 3749207 by Graeme.Thornton

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

Change 3749323 by Graeme.Thornton

	Fix UAT crash when only -targetplatform is specifiied

Change 3749349 by Steve.Robb

	TSAN_SAFE guards around LockFreeList to silence ThreadSanitizer.

Change 3749617 by Steve.Robb

	Logf static_assert for formatting string enabled.

Change 3749897 by Steve.Robb

	FDebug::LogAssertFailedMessage static assert for formatting string enabled.

Change 3754011 by Steve.Robb

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

Change 3754227 by Ben.Marsh

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

	#jira UE-52226

Change 3754562 by Ben.Marsh

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


Change 3755616 by Graeme.Thornton

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

	#jira UE-46580

Change 3755666 by James.Hopkin

	Used ImplicitConv to remove Casts being used for up-casts

	#review-3745965

Change 3755671 by Graeme.Thornton

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

Change 3755672 by Graeme.Thornton

	Updating ShooterGame with new CryptoKeys based security setup

Change 3756778 by Ben.Marsh

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

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

Change 3758498 by Ben.Marsh

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

Change 3758921 by Steve.Robb

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

Change 3760599 by Graeme.Thornton

	Added missing epic header comment to some new source files

Change 3760642 by Steve.Robb

	ThreadSanitizer fix for concurrent access to GMainThreadBlockedOnRenderThread.

Change 3760669 by Graeme.Thornton

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

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

Change 3760711 by Steve.Robb

	ThreadSanitizer fixes to GIsRenderingThreadSuspended.

Change 3760739 by Steve.Robb

	ThreadSanitizer fix for FQueuedThread::TimeToDie.

Change 3760763 by Steve.Robb

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

Change 3760793 by Steve.Robb

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

Change 3760817 by Steve.Robb

	ThreadSanitizer fixes for FAsyncWriter::BufferStartPos and BufferEndPos.

Change 3761331 by Josh.Engebretson

	UnrealBuildTool enforcement of Development and Debug configurations in existing .csproj

	#jira UE-52416

Change 3761521 by Steve.Robb

	ThreadSanitizer fixes for FEvent::EventStartCycles and EventUniqueId.

Change 3763117 by Graeme.Thornton

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


Change 3763358 by Graeme.Thornton

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

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


Change 3764058 by Graeme.Thornton

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

	#jira UE-52359

Change 3764705 by Steve.Robb

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

Change 3764731 by Steve.Robb

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

Change 3765923 by Graeme.Thornton

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

Change 3766018 by Steve.Robb

	constexpr constructor for TAtomic.

Change 3766037 by Steve.Robb

	Misc tidyings in HotReload.cpp.

Change 3766046 by Steve.Robb

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

Change 3766288 by Steve.Robb

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

Change 3766374 by Josh.Engebretson

	Fix issue with ini quoted value comparison

	#jira UE-52066

Change 3766532 by Josh.Engebretson

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

Change 3766740 by Steve.Robb

	TMultiMap::Append added.

Change 3767523 by Steve.Robb

	ThreadSanitizer fix for UE4Delegates_Private::GNextID.

Change 3767601 by Steve.Robb

	ThreadSanitizer fix for FStats::GameThreadStatsFrame.

Change 3770567 by Ben.Marsh

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

Change 3770826 by Ben.Marsh

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

Change 3770875 by Steve.Robb

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

Change 3772167 by Ben.Marsh

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

Change 3772248 by Steve.Robb

	ThreadSanitizer fixes to FMalloc call counters.

Change 3772383 by Ben.Marsh

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

Change 3772906 by Graeme.Thornton

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

Change 3772932 by Ben.Marsh

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

Change 3772942 by Graeme.Thornton

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

Change 3772955 by Ben.Marsh

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

Change 3772963 by Ben.Marsh

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

Change 3773010 by Graeme.Thornton

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

Change 3773057 by Ben.Marsh

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

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

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

Change 3773118 by Steve.Robb

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

Change 3773122 by Steve.Robb

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

Change 3773123 by Steve.Robb

	Unit tests for TAtomic.

Change 3773138 by Steve.Robb

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

Change 3773166 by Steve.Robb

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

Change 3774216 by Gil.Gribb

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

Change 3774426 by Ben.Marsh

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

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

Change 3774658 by Ben.Marsh

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

Change 3775141 by Ben.Marsh

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

Change 3775459 by Ben.Marsh

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

Change 3775522 by Ben.Marsh

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

Change 3775597 by Ben.Marsh

	Fix post-build steps for plugins not being executed.

	#jira UE-52754

Change 3777895 by Graeme.Thornton

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

Change 3777931 by Graeme.Thornton

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

Change 3777942 by Graeme.Thornton

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

Change 3778084 by Graeme.Thornton

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

Change 3778096 by Graeme.Thornton

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

Change 3778389 by Josh.Engebretson

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

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

	#jira UE-52192

Change 3778701 by Josh.Engebretson

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

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

	#jira UE-40317

Change 3778832 by Chad.Garyet

	Adding enterprise path support for PCB's for UGS

Change 3780258 by Graeme.Thornton

	TextAssetCommandlet - Accumulate timings for loading packages and saving packages

Change 3780463 by Graeme.Thornton

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

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

Change 3780557 by Ben.Marsh

	Fix LoginFlow module not being precompiled for the binary release.

Change 3780846 by Josh.Engebretson

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

Change 3780863 by Ben.Marsh

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

Change 3780911 by Ben.Marsh

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

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

Change 3780956 by Josh.Engebretson

	Add support for ! (RemoveKey) config command to UBT

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

	#jira UE-52033

Change 3782957 by Robert.Manuszewski

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

Change 3784503 by Ben.Marsh

	Optimizations for FStructuredArchive:

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

Change 3784700 by Ben.Marsh

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

Change 3784989 by Ben.Marsh

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

Change 3786860 by Gil.Gribb

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

Change 3787159 by Ben.Marsh

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

Change 3787493 by Josh.Engebretson

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

	#PR 3995
	#jira 52913
	#jira 49503

Change 3787773 by Steve.Robb

	Fix for missing final values from FOREACH_ENUM_ macros.

Change 3788287 by Ben.Marsh

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

Change 3788678 by Ben.Marsh

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

Change 3789353 by Graeme.Thornton

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

Change 3789396 by Ben.Marsh

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

Change 3789772 by Ben.Marsh

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

Change 3790003 by Ben.Marsh

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

Change 3790051 by Steve.Robb

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

	#jira UE-20357
	#jira UE-52137

Change 3790709 by Steve.Robb

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

Change 3791422 by Ben.Marsh

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

Change 3791489 by Graeme.Thornton

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

Change 3792344 by Ben.Marsh

	Improvements to base64 encoding library.

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

Change 3792949 by Ben.Marsh

	TBA: Rename FAnnotatedArchiveFormatter to FAnnotatedStructuredArchiveFormatter.

Change 3794078 by Robert.Manuszewski

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

	#jira UE-52392

Change 3794413 by Ben.Marsh

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

Change 3794731 by Ben.Marsh

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

Change 3795081 by Ben.Marsh

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

Change 3795137 by Ben.Marsh

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

Change 3795247 by Ben.Marsh

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

	#jira UE-53174

Change 3796025 by Graeme.Thornton

	Fixed some deprecated "Definitions" warnings in OpenCV build files

Change 3796103 by Graeme.Thornton

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

Change 3796157 by Graeme.Thornton

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

	#jira UE-53206

Change 3796315 by Ben.Marsh

	Move Formatter to the correct position for initializer.

	#jira UE-53208

Change 3797082 by Ben.Marsh

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

	#jira UE-53232

Change 3799050 by Ben.Marsh

	Make UnrealPak.version files writable for Mac and Linux.

Change 3801012 by Graeme.Thornton

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

Change 3801214 by Gil.Gribb

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

	#jira UE-49600

Change 3801219 by Steve.Robb

	WeakObjectPtrs now warn when casting away const.

Change 3801299 by Graeme.Thornton

	Fix quote issue with foreign project build tasks on PC

Change 3803292 by Graeme.Thornton

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

Change 3803559 by Steve.Robb

	TSAN fix for FMalloc::MaxSingleAlloc.

Change 3803735 by Graeme.Thornton

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

Change 3803929 by Ben.Marsh

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

Change 3624590 by Steve.Robb

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

Change 3629473 by Ben.Marsh

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

Change 3632894 by Steve.Robb

	VARARG* macros deprecated and usage replaced with variadic templates.

Change 3640704 by Steve.Robb

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

Change 3650813 by Graeme.Thornton

	Removed FStartupPackages and associated code

Change 3651000 by Ben.Marsh

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

	#jira UE-49980

Change 3690842 by Steve.Robb

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

Change 3699416 by Steve.Robb

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

Change 3720812 by Steve.Robb

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

Change 3722698 by Steve.Robb

	VS debugger visualizers for TAtomic.

Change 3732270 by Steve.Robb

	Relaxed stores and loads.

Change 3749315 by Graeme.Thornton

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

	#jira UE-52034

Change 3750657 by Josh.Engebretson

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

	#jira UE-52207

Change 3758514 by Steve.Robb

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

Change 3763356 by Steve.Robb

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

Change 3770549 by Steve.Robb

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

Change 3770553 by Ben.Marsh

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

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

Change 3771105 by Steve.Robb

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

Change 3771520 by Steve.Robb

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

Change 3771564 by Steve.Robb

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

Change 3771613 by Steve.Robb

	EMIT_CUSTOM_WARNING_AT_LINE moved to ClangPlatformCompilerPreSetup.h.

Change 3772881 by Ben.Marsh

	Add support for serializing FName and UObject through FStructuredArchive.

	In order to allow custom linker behavior when serializing objects:

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

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

Change 3772941 by Graeme.Thornton

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

Change 3772972 by Ben.Marsh

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

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

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

Change 3773006 by Ben.Marsh

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

Change 3773013 by Steve.Robb

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

Change 3774499 by Ben.Marsh

	Minor fixes for FStructuredArchive related classes:

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

Change 3774600 by Ben.Marsh

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

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

Change 3789721 by Ben.Marsh

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

Change 3789920 by Ben.Marsh

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

	#jira UECORE-364

Change 3789982 by Ben.Marsh

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

Change 3792466 by Ben.Marsh

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

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

Change 3792935 by Ben.Marsh

	TBA: Rename FArchiveFormatter to FStructuredArchiveFormatter for consistency with FStructuredArchive.

Change 3795100 by Ben.Marsh

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

Change 3795106 by Ben.Marsh

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

Change 3796275 by Ben.Marsh

	Fix paths to Version.h includes from resource files.

Change 3800683 by Josh.Engebretson

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

Change 3803545 by Steve.Robb

	TWeakObjPtr const-dropping assignment fix.
	Fixes to change.

[CL 3805231 by Ben Marsh in Main branch]
2017-12-12 18:32:45 -05:00
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
Marc Audy
ef9dbd59d7 Copying //UE4/Dev-Framework to //UE4/Dev-Main (Source: //UE4/Dev-Framework @ 3198622)
#rb None
#lockdown Nick.Penwarden

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

Change 3182087 on 2016/11/01 by Lina.Halper

	PR #2328: fix morph target weight application order. (Contributed by tmiv)

	- changed order of morphtarget application to be animation and THEN SetMorphTarget
	- made sure you could clear the weight also if SetMorphTarget to be 0.f

	#jira: UE-29999

Change 3182090 on 2016/11/01 by Lina.Halper

	Fix issue where import doesn't display any message when import type hasn't been detected

Change 3182123 on 2016/11/01 by Wes.Hunt

	ensure the EngineAnalytics singleton is not being held onto by someone else during engine shutdown.

Change 3182177 on 2016/11/01 by Lina.Halper

	Fix not being able to modify Joint Target Location in detail panel

	#jira: UE-30900

Change 3182181 on 2016/11/01 by Ben.Zeigler

	Add UGameplayTagsManager::AddNativeGameplayTag to allow registering tags directly from native code. This stops them from being deleteable in the editor, and will register them even if they don't exist elsewhere
	Change internal games to use this to register their native tags. The explicit call to be done adding native tags is not required, it happens on engine post init
	Some header cleanup

Change 3182876 on 2016/11/02 by Danny.Bouimad

	Moving files

Change 3182912 on 2016/11/02 by Thomas.Sarkanen

	Added access to the viewport client from IPersonaViewport

	Allows systems to hook into the state of the client.

	#jira UE-36549 - Need to access the current viewmode in FPersonaMeshDetails

Change 3182927 on 2016/11/02 by Thomas.Sarkanen

	Initially select current asset in the asset family shortcut bar dropdown

	#jira UE-35532 - Animation dropdown submenu doesn't highlight currently selected object, where as the asset browser does

Change 3182970 on 2016/11/02 by Lukasz.Furman

	CIS fix for gameplay debugger
	copy of CL# 3165005

Change 3183123 on 2016/11/02 by Mieszko.Zielinski

	Fixed changing AreaClass of NavLinkProxy point links not having any effect on navmesh generation #UE4

Change 3183310 on 2016/11/02 by Jurre.deBaare

	Blendspace changes:
	- Moved MarkerSync code from BlendSpaceBase.cpp to BlendSpaceUtilities.h/cpp
	- Re-ordered blendspace.h/cpp
	- const correctness where possible
	- Removed unused code paths
	- Wrapped non-runtime code paths in WITH_EDITOR

	Blendspace editor refactor:
	- Moved element generators into respective AnimationBlendSpaceHelpers.h/cpp
	- New Grid Widget class
	- Simplified Blendspace(1D) editors, most things are handled within SAnimationBlendSpaceBase
	- SBlendSpaceGridWidget handles visualization and UI interaction (modifying blendspace is done through parent SAnimationBlendSpaceBase)

Change 3183344 on 2016/11/02 by James.Golding

	UEFW-181 : Move PhysX vehicle support to a plugin
	- Added FPhysicsDelegates for several useful global physics delegates (OnUpdatePhysXMaterial, OnPhysicsAssetChanged, OnPhysSceneInit, OnPhysSceneTerm)
	- Added OnPhysScenePreTick and OnPhysSceneStep delegates to FPhysScene
	- TireType is now deprecated, just kept in Engine for backwards compat. TireConfig in PhysXVehicles plugin is new structure
	- Added 'ConvertTireTypes' editor console util which creates TireConfig's from TireTypes's (using asset registry) and PhysicalMaterials, and updates any VehicleWheel BPs

Change 3183351 on 2016/11/02 by Ben.Zeigler

	Add utility functions to convert from export text versions of tag and container, which is useful when reading tags out of the asset registry

Change 3183354 on 2016/11/02 by Ben.Zeigler

	Change fortnite to use new GameplayTag functions to parse tags in the asset registry to avoid bad stall while checking mission requirements. This only works once the mission infos have been resaved

Change 3183383 on 2016/11/02 by Thomas.Sarkanen

	Persona camera fixes

	Dont reset the camera all the time when setting skeletal meshes (we only do this the first time now).
	Add shortcuts to focus the camera using 'F' key from the skeleton tree (or anywhere else that wants to). Also add a menu option to the viewport to make this more discoverable.
	Shortcut is now handles by the viewport widget instead of the client (as this is how other viewports handle it).

	#jira UE-36458 - Stop camera from resetting when doing undo or redo in persona animation editor

Change 3183409 on 2016/11/02 by Jon.Nabozny

	#rn Allow MAX_ARRAY_SIZE and MAX_ARRAY_MEMORY from RepLayout to be user configurable.

	#jira UE-35660

Change 3183625 on 2016/11/02 by James.Golding

	Hopeful fix for Mac CIS issue in PhysXVehiclesEditor

Change 3183652 on 2016/11/02 by Ben.Zeigler

	Fix issue where commonly replicated tags didn't work if load from ini was turned off.
	Fix it so gameplay tag tree is always fully sorted alphabetically, instead of only the root tags being sorted.

Change 3183856 on 2016/11/02 by Richard.Hinckley

	#jira UEDOC-4006
	Editing GameMode and GameState documentation (in Framework branch).

Change 3183902 on 2016/11/02 by Mieszko.Zielinski

	Fixed EQS debug drawing not showing item labels #UE4

	Proper implementation of CL#3183899

	#jira UE-38122

Change 3183996 on 2016/11/02 by Jon.Nabozny

	Fix DefaultMaxRepArrayMemory value to be UINT16_MAX (65535). Was previously set to 64 * 1024 = 65536.

Change 3184129 on 2016/11/02 by Ben.Zeigler

	#jira UE-38022 Move GameplayAbilities to a plugin.
	Remove GameplayAbilitiesEditorEnabled ini setting, instead enable the "GameplayAbilities" plugin in your uproject if you want abilities, it's disabled by default
	#jira UE-6947 Remove GameplayAbilityBlueprintGeneratedClass as it's not needed and was only being used half the time
	#jira UE-19427 Fix incorrect usage of WorldContextObject in ability tasks to instead be OwningAbility, as it would crash if used on anything other than a gameplay ability object

Change 3184130 on 2016/11/02 by Ben.Zeigler

	Internal game fixups for moving gameplayabilities to a plugin

Change 3184469 on 2016/11/02 by Ben.Zeigler

	Change abilities plugin to be more obviously unsupported

Change 3184565 on 2016/11/02 by dan.reynolds

	AEOverview update with HRTF test map

Change 3184800 on 2016/11/03 by Thomas.Sarkanen

	Added "Show Selected and Parents" to bone display options

	Also fixed mis-named menu section.

	#jira UE-35375 - Add 'selected bone and parents' option to Persona viewport

Change 3184810 on 2016/11/03 by James.Golding

	Remove WoflPlat PhysX 3.3 and Apex 1.3 files

Change 3184817 on 2016/11/03 by Thomas.Sarkanen

	Added facial animation support

	Added curve table to sound wave (internal or external). Added UI support for manipulating these.

	Improved curve table editor.
	- Editor can now display curves as well as tables.
	- Sparse keys are now properly supported (where keys are not presnet at some times in some curves).

	Added curve source interface.
	Added external curve node. This allows any component or actor (BP or native) that implements ICurveSourceInterface to drive curves.
	Added new audio component that can also provide curves. This handles the preroll delay (approx 0.4 seconds, depending on audio) so the mouth can open before audio is played.

	Added bulk importer plugin.
	This imports audio & FBX files and builds cuirve data into SoundWave assets.
	- Adapted exisitng FBX curve import slightly to use FRichCurves rather than FFloatCurves.
	- Added new support for importing curves to a curve table.

	Added preview of audio to Persona.
	- Added display, filtering and playback of sound waves from the anim sequence browser.
	- Audio playback with curves routed to animation now works with anim blueprints and pose assets (as we need a pose asset to preview poses!)
	- Persona now uses an Actor rather than disparate components.
	- Added overrides for AddComponent and RemoveComponent to make sure actor is hooked up correctly.
	- Preview scene can now be manipulated by plugins etc. using a delegate when it is created.
	- Single anim instance has been slightly re-worked to do its update and evaluate logic inside of a local anim node. This allows derived classes to build functionality up component-wise by adding new nodes to the 'graph'.

	#jira UEFW-7 - Routing Sound Curves to AnimBP
	#jira UEFW-5 - Support importing curves
	#jira UE-37950 - Spawn preview actor in animation editor

Change 3184837 on 2016/11/03 by James.Golding

	PR #2896: Fix FVehicleAnimInstanceProxy::PreUpdate not calling FFAnimInstanceProxy's PreUpdate (Contributed by DenizPiri)
	#jira UE-37978

Change 3184847 on 2016/11/03 by Thomas.Sarkanen

	Fixed editor shutdown crash

	Dont try to save config when UObjects are all gone.

Change 3184853 on 2016/11/03 by James.Golding

	Stop Engine module linking against PhysX vehicle lib, link that into PhysXVehicles plugin instead.

Change 3184884 on 2016/11/03 by Thomas.Sarkanen

	Anim Blueprint thread safety is now checked in the compiler

	Added new metadata keys for classes and functions to describe their thread safety.
	Added extra warnings in the anim BP compiler based around these new keys to help people catch suspect thread usage.
	Expanded the compiler erorr reporting to allow for extra rich message tokens to be appended (for documentation etc.).
	Improved BP error reporting: Now we display the actual node name instead of CallFunction_0 etc.
	CVar forcing multithreaded update is now defaulted to off. Projects now by default enable it but can more easily opt-out.

	#doc Added link to new section of AnimGraph page, which may benefit from images etc.

	#jira UE-28283 - Look into expanding the system to determine what nodes we allow to run on worker threads.

Change 3184886 on 2016/11/03 by Thomas.Sarkanen

	Content fixes for anim BP thread safety warnings

	Ocean:
	Random Float node is unsafe (uses rand() unde rthe hood) so replaced with Random Stream.

	Odin:
	Flying Bot accessed the character blueprint inside some transitions. Cached the value in the event graph instead.

	Fortnite:
	Disable threaded update for a number of anim BPs as they were using unsafe calls when using CopyPoseFromMesh

Change 3184894 on 2016/11/03 by Thomas.Sarkanen

	Fix Mac CIS

Change 3184951 on 2016/11/03 by Thomas.Sarkanen

	Fix CIS warning on clang platforms

Change 3185176 on 2016/11/03 by James.Golding

	Hopeful fix for building PhysXVehicles plugin for mac

Change 3185289 on 2016/11/03 by Alex.Delesky

	#jira UE-37773 - Updating the Gameplay Tags UI to allow for the following:

	-Addition of a tag with comments and a specific INI location
	-An "Add Subtag" button that will allow the user to create a tag underneath a specified parent that autofills most of the information (parent name and location) for the new tag
	-A dropdown menu to allow for additional actions to be performed on a tag (rename, delete, search for references)
	-Comments for gameplay tags now show up in the tooltip forthe tag rather than the tag name if one had been specified
	-Shows a tree in the Project Settings window when viewing the gameplay tag list instead of an array

Change 3185331 on 2016/11/03 by Marc.Audy

	Remove duplicated condition from if

Change 3185426 on 2016/11/03 by James.Golding

	Another attempt at fixing mac builds of PhysXVehicles plugin

Change 3185487 on 2016/11/03 by James.Golding

	- Remove TireType assets from templates/sample, add TireConfigs instead
	- Make deprecated vehicle vars visible (but not editable), to help converting content
	- Change icon for PhysX vehicle plugin

Change 3185520 on 2016/11/03 by James.Golding

	Trying yet again to fix Mac CIS!

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

	#jira UE-34086
	Commit modified version of PR #2665 to allow overriding crouch behavior in subclasses of CharacterMovementComponent

	#jira UE-35652
	Fix crouch behavior to not change capsule until after uncroach check, to avoid causing unnecessary physics side effects
	Also had to set the TeleportPhysics flag in this case, so add code to remember if a teleport was attempted during a deferred movement, and then apply that flag during EndScopedMovementUpdate

Change 3185570 on 2016/11/03 by Marc.Audy

	Protect against theoretical crash introduced in CL# 2049861 if CreatePackage returns null.
	Remove some autos

Change 3185749 on 2016/11/03 by dan.reynolds

	AEOverview test map addition: testing Virtual Voice

Change 3185946 on 2016/11/03 by dan.reynolds

	AEOverview tweaks - clarified success conditions for Streaming Spam and Streaming Priority maps

Change 3185972 on 2016/11/03 by Lina.Halper

	Fix issue with offset of attachment getting messed up because parent doesn't tick the animation correctly when opening level from Content Browser

	#jira: UE-31890
	#code review: Thomas.Sarkanen

Change 3186043 on 2016/11/03 by Alex.Delesky

	#jira UE-37773 - Fixing some of the gameplay tags UI based on feedback

	-Right-aligned input fields for the AddNewGameplayTag and RenameGameplayTag widgets
	-Added a divider to the GameplayTag widget that will appear when the AddNewGameplayTag widget is visible
	-Tags with comments will now display both their name and their comment in tooltips

Change 3186207 on 2016/11/03 by Alex.Delesky

	#jira UE-37773 - The Gameplay Tags widget in the project browser will no longer display the disabled checkboxes and disabled text for the tag names

Change 3186321 on 2016/11/03 by Dan.Reynolds

	Removed deprecated test asset (BP_ProceduralSoundWaveTest)

Change 3186740 on 2016/11/04 by Thomas.Sarkanen

	Removed FPersona and supporting classes

	Also removed UMorphTarget's asset type actions (as it was nearly empty and we dont use them as assets any more).

	#jira UEFW-222 - Remove FPersona

Change 3186741 on 2016/11/04 by Thomas.Sarkanen

	Fix non-unity builds

Change 3186755 on 2016/11/04 by Thomas.Sarkanen

	Prevent adding keys to read-only curves in curve tables

	Lock off the shift-LMB shortcut to add keys

	#jira UE-38210 - Crash trying to add a key to a curve table in curve view

Change 3186798 on 2016/11/04 by James.Golding

	UE-37503 - Add FHitResult output to K2_LineTraceComponent

Change 3186800 on 2016/11/04 by James.Golding

	- Remove deprecated collision functions in KismetSystemLibrary
	- Remove _NEW from collision function names, add redirectors
	- Add debug draw options (TraceColor, TraceHitColor, DrawTime) to shape traces, to match line traces (UE-35941)

Change 3186989 on 2016/11/04 by James.Golding

	Fix CIS fail in Fortnte

Change 3187081 on 2016/11/04 by Wes.Hunt

	EngineAnalytics::Shutdown now checks to see if the Analytics pointer is null OR unique before ensuring. #jira UE-38125

Change 3187135 on 2016/11/04 by Jurre.deBaare

	Fix for incorrect framework version in blendspace serialization code.

Change 3187682 on 2016/11/04 by Ben.Zeigler

	#jira UE-38289 Fix crash when replicated tag array is empty

Change 3188113 on 2016/11/05 by Mieszko.Zielinski

	Removed a bunch of deprecated AI module functions #UE4

	Cut-off point at v4.10

Change 3188119 on 2016/11/05 by Mieszko.Zielinski

	Deprecated AI functionality removal fallout fixes #UE4

Change 3188121 on 2016/11/05 by Mieszko.Zielinski

	PR #2883: Added a Cone EQS Generator (Contributed by orfeasel)

	Did some massaging on change.

	#jira UE-37685

Change 3188122 on 2016/11/05 by Mieszko.Zielinski

	Bumped EnvQueryGenerator_Cone.AlignedPointsDistance's default value up to 100, which makes a bit more sense #UE4

Change 3188442 on 2016/11/07 by James.Golding

	Check in trace debug draw test map

Change 3188463 on 2016/11/07 by james.cobbett

	Submitting Pose Snapshot test map and asset

Change 3188618 on 2016/11/07 by Thomas.Sarkanen

	Expanded pose snapshot system

	Allows poses to be stored in variables.
	Split FPoseSnapshot from FAnimInstanceProxy and made it a BlueprintType USTRUCT.
	Added modes to FAnimNode_PoseSnapshot so that we can either use the named pose or a FPoseSnapshot variable pin.
	Moved pose snapshot code into USkeletalMeshComponent as it doesnt need to be on the proxy any more.

	#jira UEFW-242 - Caching poses to a Blueprint variable (and an anim node to use it with)

Change 3188619 on 2016/11/07 by Thomas.Sarkanen

	Moved "NoResetToDefaults" to the correct metadata section in ObjectMacros.h

Change 3188642 on 2016/11/07 by Thomas.Sarkanen

	Added new test for pose variables

Change 3188716 on 2016/11/07 by Ben.Zeigler

	#jira UE-38294 Fix bad error message when adding new DefaultGameplayTags.ini file

Change 3189020 on 2016/11/07 by dan.reynolds

	Added a test map for Audio Volume Ambient Zone test for Play Sound at Location

	AVOverviewAZPlaySoundAtLocation

Change 3189188 on 2016/11/07 by Jon.Nabozny

	Fix edge cases / alternate IPv6 formats in IPAddressBSDIPv6::SetIp.

	#jira UE-36607

Change 3189199 on 2016/11/07 by Jon.Nabozny

	Flag UActorComponent, USceneComponent, and UPrimitiveComponent UFUNCTIONS as UnsafeDuringActorConstruction="true" if they
	modify unreplicated properties, require use of the PhysScene, or otherwise indicate poor design.

	#jira UE-33038

Change 3189271 on 2016/11/07 by Aaron.McLeran

	UEFW-224 Refectoring UnrealEd code to move all audio related editing code to a new AudioEditor module

	- Fixups for removals
	- Several bug fixes for sound classes

Change 3189450 on 2016/11/07 by Aaron.McLeran

	Fixes for facial animation playback progress

	- Creating a per-source PlaybackTime which can be used to get a fairly accurate playback percentage function for all platforms.
	- Allowing platforms to override to get a "sample accurate" playback time for platforms that are able.

Change 3189507 on 2016/11/07 by Wes.Hunt

	* Deprecated GetUniqueDeviceId. Use GetDeviceId now instead. #jira AN-820
	  * Added warnings to each implementation of GetDeviceId as to what API it uses, and what cert requirements may be placed on it.
	* Deprecated all platform independent usages of GetMacAddress and related functions.  #jira AN-820  #jira AN-802
	* Deprecated GetMachineId. Use GetLoginId now instead. #jira AN-811
	* Update usages of MachineID throughout CrashReporter code. Left MachineId and LoginId as available attributes.
	* Removed LocalPlayer requirement for setting the Analytics UserId in internal products. Removed fallbacks for seting UserId for internal products. #jira AN-814 #jira AN-808
	* Removed GetUniqueDeviceId code from LauncherInstaller.
	* Removed redundant MachineID and AccountID from Editor.ProgramStarted analytics event.
	* Removed DeviceID from SessionStart analytics event.

	#FYI: justin.sargent, Chris.Wood, Wes.Fudala
	* Justin, reminder that FPortalRpcResponderFactory::Create will need to start using GetLoginID instead of MacAddress for IPC identifiers.
	* Chris, look over CRP code to ensure that I didn't destroy some vital bit of necessary connection with the MachineId->LoginId name change. Both values are used, and for now, they both return the same thing.
	* Wes, we didn't need GetUnqiueDeviceId attribute in BeginSession, as no one ever uses it, so I just removed it.

Change 3190032 on 2016/11/08 by Wes.Hunt

	Fix a few places I forgot to deprecate regarding GetMacAddress.

Change 3190107 on 2016/11/08 by Wes.Hunt

	Another attempt to remove deprecation warning in CIS. Apparently removing the warning for a const string initialized via a consrtuctor with a deprecated function is somewhat tricky. Still not sure why it works on my machine either way.

Change 3190326 on 2016/11/08 by Aaron.McLeran

	Fixing CIS build warning

Change 3190495 on 2016/11/08 by Jon.Nabozny

	Fix OSSNull server / session filtering to better match SessionSettings and online OSS. Make MCP, Steam, and Null LAN queries more consistent.

	#jira UE-37512

Change 3190566 on 2016/11/08 by Martin.Wilson

	Remove warning on Least Destructive (was incorrectly applied to least destructive due to legacy reasons)

	#jira UE-27323

Change 3190631 on 2016/11/08 by Martin.Wilson

	Fix notify validation not triggering when using set time/set frame context menu options

	#jira UE-37857

Change 3190666 on 2016/11/08 by Martin.Wilson

	Add info about anim instance to additive warning

	#jira UE-35930

Change 3191290 on 2016/11/09 by Thomas.Sarkanen

	Fix skeleton tree selection disappearing when filtering changes

	Note: Copying //Tasks/UE4/Dev-UEFW132-PhATUpgrade to Dev-Framework (//UE4/Dev-Framework)

	Split SSkeletonTree into multiple files
	Items now derive from the common base class ISkeletonTreeItem.
	New skeleton tree item RTTI added modlled on the drag/drop RTTI.
	Filtering is now performed independently of tree building. Filtering and building are more extensible (more of this to come).
	Item selection is now preserved on filter change.
	Filtering now (optionally) keeps the hierarchy in place.

	#jira UE-31017 - Skeleton Selection is Lost When Changing Filters

Change 3191325 on 2016/11/09 by Thomas.Sarkanen

	Fix clang CIS

Change 3191344 on 2016/11/09 by Thomas.Sarkanen

	More clang CIS fixes

Change 3191345 on 2016/11/09 by Thomas.Sarkanen

	CIS fix: Missed another enum fwd declaration

Change 3191374 on 2016/11/09 by Thomas.Sarkanen

	Remove 4.11 deprecated functions from animation systems

	Also deprecate NativeUpdateAnimation_WorkerThread as users should no longer be calling this function (it is not run on worker threads anyways).

	#jira UE-35748 - Clean up 4.11 Deprecated functions

Change 3191375 on 2016/11/09 by Thomas.Sarkanen

	Fixup Orion hero instance after deprecation

Change 3191739 on 2016/11/09 by Marc.Audy

	PhysX Vehicle plugin needs to be loaded with -game as well, so it must be Developer, not Editor.

Change 3191827 on 2016/11/09 by Marc.Audy

	Raw Input plugin allowing support of steering wheels and flightsticks
	#jira UEFW-237

Change 3191828 on 2016/11/09 by Ben.Zeigler

	#jira UE-38384 Comment cleanup for gameplay tag library

Change 3191889 on 2016/11/09 by Ben.Zeigler

	#jira UE-38294 Fix issues with trying to set not-yet-written settings files as writable and add them to source control
	If a settings file does not yet exist on disk, also try adding to source control after writing it

Change 3191911 on 2016/11/09 by Marc.Audy

	Enable raw input plugin and configure for use with the Logitech G920 all vehicle templates and vehicle game.
	#jira UEFW-237

Change 3191915 on 2016/11/09 by Marc.Audy

	Provide useful tooltips for raw input setting properties
	#jira UEFW-237

Change 3192039 on 2016/11/09 by dan.reynolds

	AEOverview Update

	- Added a map for checking multi-channel file playback: AEOverviewMultichannel.umap

	- Incorporated AVOverviewAZPlaySoundAtLocation test into the AEOverviewMain submap list temporarily for testing purposes

Change 3192059 on 2016/11/09 by Martin.Wilson

	Fix montage thumbnail rendering with ref pose

	#jira UE-35578

Change 3192065 on 2016/11/09 by Martin.Wilson

	Widen bone reference widget to give a better view of the name and added full name to tooltip

	#jira UE-36264

Change 3192217 on 2016/11/09 by Martin.Wilson

	Auto selected current bone when opening bone reference tree

	#Jira UE-36264

Change 3192332 on 2016/11/09 by Marc.Audy

	Fix RawInput compiling when WITH_EDITOR is false
	#jira UE-38433

Change 3193061 on 2016/11/10 by Thomas.Sarkanen

	Marked facial animation plugin & component as experimental/beta

Change 3193072 on 2016/11/10 by Martin.Wilson

	Correct reference skeleton fix up order

Change 3193112 on 2016/11/10 by Danny.Bouimad

	Pesudo hair asset usintphat for testing

Change 3193243 on 2016/11/10 by Martin.Wilson

	Fix removal of USkeleton bone tree entries

	#Jira UE-37363

Change 3193249 on 2016/11/10 by Marc.Audy

	Raw input compile fixes:
	Fix additional not with_editor compile issues
	Fix static analysis warnings
	#jira UE-38433

Change 3193558 on 2016/11/10 by Martin.Wilson

	Move "Number of Curves" label creation to attribute so that it updates dynamically

	#jira UE-26767

Change 3193664 on 2016/11/10 by Marc.Audy

	PR #2919: Fixed Comment Typo in ActorComponent.cpp (Contributed by KumaKing)
	#jira UE-38436

Change 3193719 on 2016/11/10 by Lukasz.Furman

	fixed vertical jitter in replicated NavWalking movement
	#jira UE-33260

Change 3193802 on 2016/11/10 by Marc.Audy

	Remove some autos, fix NULL to nullptr, call GetWorld just once

Change 3193809 on 2016/11/10 by Marc.Audy

	Fix Mac CIS compile error
	#jira UE-38501

Change 3194053 on 2016/11/10 by Aaron.McLeran

	Fixed crash on shutdown when using audio mixer

	- Switching audio mixer to use a runnable thread rather than async tasks
	- Fixed issue where audio buffers weren't taking ownership of wave data

Change 3194057 on 2016/11/10 by Aaron.McLeran

	Adjusting channel mapping code to better support standard down-mixing for 2D multi-channel files.

	- Added support for 8 channel source files.

Change 3194070 on 2016/11/10 by Aaron.McLeran

	Fixing stupid compile error

Change 3194779 on 2016/11/11 by Jon.Nabozny

	Fixed UnsafeDuringActorConstruction tag on USceneComponent::GetPhysicsVolume.
	Missed the '=true' portion.

Change 3194967 on 2016/11/11 by Mieszko.Zielinski

	PR #2920: Bug Fix: fix pasting Behavior Tree nodes with decorators in wrong position (Contributed by BrettKercher)

	#jira UE-38443
	#jira UE-30906

Change 3195741 on 2016/11/11 by Ben.Zeigler

	#UE-38539 Stop Orion from reinitializing it's native tag dictionary when reloading menu, this was just slow before but now ensures

Change 3196655 on 2016/11/14 by Marc.Audy

	Remove pointless remove/adds from Odin DefaultEngine.ini.
	This also fixes the duplicate redirector of AnimNode_WheelHandler as the version in BaseEngine.ini has been changed where it points to
	#jira UE-38562

Change 3196678 on 2016/11/14 by Lukasz.Furman

	pass on gameplay debugger's EQS category
	copy of CL# 3195071, 3195152, 3196617 with local fixes

Change 3196700 on 2016/11/14 by Ben.Zeigler

	#jira UE-38539 Move where orion tags are initialized to earlier in the startup for all loading flows

Change 3196719 on 2016/11/14 by Thomas.Sarkanen

	Added extra output to anim BP compiler when a blueprint function call is used

	This allows us to give more info to users when unsafe things (like blueprint functions) are used.

Change 3196799 on 2016/11/14 by Jurre.deBaare

	Fix for blendspace tooltip crash
	#fix Check before dereferencing animation ptr on samples :)

Change 3196971 on 2016/11/14 by Lukasz.Furman

	replaced hardcoded value for pathfollowing's focal point distance with a parameter
	#ue4

Change 3196994 on 2016/11/14 by Marc.Audy

	Slightly improve performance of boolean check

Change 3197768 on 2016/11/14 by dan.reynolds

	AEOverview Stage 2 WIP

	- Added Command Line auto sub-level loading (-AELoadMap=MapName01,MapName02,etc.) or sub-level categories auto loading (-AELoadCat=AE,SC,STRM,AV,etc.)

	- Added Categorization menu to Main staging map to help sorting maps by category

	- Changed menu to be dynamically loaded from editable Data Structure Arrays, so all the menu information is loaded dynamically.

Change 3197782 on 2016/11/14 by dan.reynolds

	AEOverview Stage 2 WIP - fixed misnamed sub-level reference, cleaned up some of the BP

Change 3197801 on 2016/11/14 by dan.reynolds

	AEOverviewMain Stage 2 WIP:

	- Added Select All Buttom to select all loaded menu items

Change 3197988 on 2016/11/15 by Thomas.Sarkanen

	Add the ability to use incompatible meshes with snapshots

	We now use a name-based mapping to copy local poses to the correct bones in the hierarchy, similar to CopyPoseFromMesh.
	No access to UObjects (components or meshes) is performed on worker threads. Bone names are all cached on the game thread when needed and used on worker threads.

	#jira UE-38413 - Pose snapshot cannot be used across meshes with different hierarchies

Change 3198062 on 2016/11/15 by Thomas.Sarkanen

	Disabled threaded update on various anim blueprints to remove cook warnings

	#jira UE-38537 - Cooking FortniteGame results in warnings

Change 3198071 on 2016/11/15 by Thomas.Sarkanen

	Fix default values not being available to change post anim BP compilation

	Make sure we re-select with force refresh on so the details panel is rebuilt even if the objects are the same (as the customization relies upon it).

	#jira UE-38518 - Animation Blueprint: Default values cannot be changed after compiling if node is currently selected

Change 3198082 on 2016/11/15 by Jurre.deBaare

	CRASH If the Vertical Axis of a blendspace is set to 0 segments when an animation is on the blendspace the editor crashes
	#fix UI and ClampMin to 1
	#jira UE-38587

Change 3198138 on 2016/11/15 by Thomas.Sarkanen

	Expose montage functions to Blueprint

	Made sure to flag appropriate functions as not thread safe.
	Also const-corrected a few functions that should be.

	Github #2918: Blueprint Callable Montage Set/Get Position
	#jira UE-38391 - GitHub 2918 : Blueprint Callable Montage Set/Get Position

Change 3198141 on 2016/11/15 by Jurre.deBaare

	Crash from generated Merged Actor with no created lightmap UV
	#fix Always flag UV channel 0 to be occupied
	#jira UE-38520

Change 3198420 on 2016/11/15 by Thomas.Sarkanen

	Move thread-safety check flags to the UAnimBlueprint

	Then have the compiler propogate the flags to the CDO. Prevents issues where the old CDO wasnt propgated during compile-on-load.
	Also move blueprint usage warning flag into the UAnimBlueprint too, as these suffer from the same issues.

	#jira UE-38537 - Cooking FortniteGame results in warnings

Change 3198485 on 2016/11/15 by Thomas.Sarkanen

	Properly fix compile-on-load/cook warnings about anim blueprint thread safety

	Content only re-save.

	#jira UE-38537 - Cooking FortniteGame results in warnings

Change 3198622 on 2016/11/15 by Ben.Zeigler

	#jira UE-38632 Fix blueprint warning, was calling SetActive from construction script which is no longer allowed. This was being used for an editor-only debug feature

[CL 3198987 by Marc Audy in Main branch]
2016-11-15 15:29:41 -05:00
Ori Cohen
a0625fdf15 Copying //UE4/Dev-Framework to //UE4/Dev-Main (Source: //UE4/Dev-Framework @ 3058661)
#lockdown Nick.Penwarden
#rb none

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

Change 3038116 on 2016/07/05 by James.Golding

	Resave QA-Promotion with new heightfield GUID to fix crash on load (broken DDC in Guildford)

Change 3038271 on 2016/07/05 by Lukasz.Furman

	fixed bug with instanced behavior tree nodes writing over memory of other nodes
	#jira UE-32789

Change 3038295 on 2016/07/05 by Lukasz.Furman

	changed behavior tree node injection to modify shared template instead of switching nodes to instanced
	fixes GC reference chain between AI using the same behavior tree

Change 3038504 on 2016/07/05 by Zak.Middleton

	#ue4 - Fix typo in comment (debugging arrow).

	github #2352
	#jira 30255

Change 3039151 on 2016/07/06 by James.Golding

	UE-30046 Add bAllowCPUAccess flag to UStaticMesh

Change 3039281 on 2016/07/06 by Ori.Cohen

	Fix attached partially simulating ragdolls not moving with actor.

	#JIRA UE-32830

Change 3039286 on 2016/07/06 by Benn.Gallagher

	Fixed crash with large clothing simulation meshes. Extended max verts from ~16k to ~65k and made it so you can no longer force import clothing above the maximum threshold that the vertex buffer is allowed to hold.

Change 3039313 on 2016/07/06 by Benn.Gallagher

	Enabled override of angular joint bias on AnimDynamics

Change 3039335 on 2016/07/06 by Ori.Cohen

	Fixed skeletal mesh components with non simulated root bodies incorrectly detaching from component hierarchy.

	#JIRA UE-32833

Change 3039412 on 2016/07/06 by Ori.Cohen

	PR #2382: Bug when setting constraint orientation using axes parameters (Contributed by DaveC79)

	#JIRA UE-30725

Change 3039799 on 2016/07/06 by Tom.Looman

	- Renamed SuggestProjectileVelocity_MediumArc to _CustomArc and added support for high/low arcs using float param. (Migrated from Odin)
	- Fixed bug in override gravity for the suggest projectile velocity functions.

Change 3039903 on 2016/07/06 by Ori.Cohen

	Ensure that skeletal mesh components do NOT teleport unless explicitly asked to.

Change 3039932 on 2016/07/06 by Lina.Halper

	Merging using //Orion/Dev-General_to_//UE4/Dev-Framework

	serialize crash is always bad, so dupe checkin.

Change 3040059 on 2016/07/06 by Ori.Cohen

	Fix bug where FixedFramerate was only clamping delta times that were above (very slow delta time was not getting changed to the fixed framerate)

	#JIRA UE-32730

Change 3040203 on 2016/07/06 by Jon.Nabozny

	Fix scaling multiple selected Actors by changing scale-base translation calculations to local space.

	#jira UE-32357

Change 3040211 on 2016/07/06 by Ori.Cohen

	Fix constraints being unselectable in phat when a render mesh is on top

	#JIRA UE-32479

Change 3040273 on 2016/07/06 by Ori.Cohen

	Fix vehicle drag adding instead of removing energy when in reverse.

	#JIRA UE-28957

Change 3040293 on 2016/07/06 by Zak.Middleton

	#ue4 - Add FMath::ClosestPointOnInfiniteLine() to distinguish it from the (poorly named) ClosestPointOnLine() that actually works on segments.

Change 3040325 on 2016/07/06 by Zak.Middleton

	#ue4 - Avoid checking for "client only" builds when recording demos. It could be a demo recording in standalone. Minor impact to previous optimization.

	#udn https://udn.unrealengine.com/questions/301595/412-413-regression-in-actorgetnetmode.html

Change 3040950 on 2016/07/07 by Thomas.Sarkanen

	Removed GWorld from FTimerManager

	Switched LastAssignedHandle to a static member.

	#jira UE-31485 - Remove GWorld from FTimerManager

Change 3041054 on 2016/07/07 by Jon.Nabozny

	Fix warning about negation operator on FRotator introduced in CL 3040203.

Change 3041214 on 2016/07/07 by Ori.Cohen

	Fix hit events on skeletal mesh component not respecting the AND between skeletal mesh component and the ragdoll bodies

	#JIRA UE-29538

Change 3041319 on 2016/07/07 by James.Golding

	UE-29771
	- Rename LocalAtoms to BoneSpaceTransforms
	- Rename SpaceBases to ComponentSpaceTransforms

Change 3041432 on 2016/07/07 by James.Golding

	UE-30937 Add FindCollisionUV util to GameplayStatics, but only works if you set new bSupportUVFromHitResults flag in PhysicsSettings, as we need to store UV info in the BodySetup. This is kept with the cooked mesh data in the DDC.
	Also remove PhysicsSettings.h from PhysicalMaterial.h

Change 3041434 on 2016/07/07 by James.Golding

	Improve comment on UStaticMesh::bAllowCPUAccess

Change 3041701 on 2016/07/07 by Marc.Audy

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

Change 3041760 on 2016/07/07 by Ori.Cohen

	Fix bug where turning collision off and on for a welded root body would not re-weld child bodies.

	#JIRA UE-32438

Change 3041771 on 2016/07/07 by Marc.Audy

	Add GetParentActor convience accessor

Change 3041798 on 2016/07/07 by Marc.Audy

	Don't double call BeginPlay on ChildActors when loading sublevels (4.12)
	#jira UE-32772

Change 3041857 on 2016/07/07 by Jon.Nabozny

	Allow modifying and reading EnableGravity flags on individual bones within a SkeletalMeshComponent via BoneName.

	#jira UE-32272

Change 3041914 on 2016/07/07 by Marc.Audy

	Fix mismatch function prototype

Change 3042041 on 2016/07/07 by Jon.Nabozny

	Fix CIS issue introduced by CL 3041857

Change 3042402 on 2016/07/08 by James.Golding

	Fix CIS after no longer globally including PhysicsSettings.h

Change 3042517 on 2016/07/08 by Martin.Wilson

	Fix root motion when actor and component transforms do not match

	#jira UE-32944

Change 3043021 on 2016/07/08 by mason.seay

	Assets for testing poses

Change 3043246 on 2016/07/08 by Marc.Audy

	Eliminate USoundWave::CompressionName
	Add USoundWave::HasCompressedFormat
	#jira UE-32546

Change 3044376 on 2016/07/11 by James.Golding

	- UE-32907 : Change UStaticMesh::GetPhysicsTriMeshData to only return required verts (ie will not return verts of sections with collision disabled)
	- Add UVInfo mem usage to UBodySetup::GetResourceSize
	- Remove BodySetup.h from EnginePrivate.h
	- Remove outdated comment in PhysUtils.cpp

Change 3044464 on 2016/07/11 by Ori.Cohen

	Fix CIS

	#JIRA UE-33005

Change 3044519 on 2016/07/11 by Ori.Cohen

	PR #2379: Option to Generate Overlaps for Actor during Level Streaming (Contributed by error454)

	#JIRA UE-30712

Change 3044774 on 2016/07/11 by Zak.Middleton

	#ue4 - Fix typos in comments.

Change 3044854 on 2016/07/11 by Mieszko.Zielinski

	Made AI sight's default trace channel configurable and set it to ECC_Visibility #UE4

	#jira UE-32013

Change 3044855 on 2016/07/11 by Mieszko.Zielinski

	Fixed BB key selectors not being resolved properly in BP implemented nodes #UE4

	#jira UE-32458

Change 3044887 on 2016/07/11 by Zak.Middleton

	#ue4 - Added new Blueprint library math/vector functions: FindClosestPointOnSegment, FindClosestPointOnLine, GetPointDistanceToSegment, GetPointDistanceToLine.

	- Fixed comments on FindNearestPointsOnLineSegments.
	- Fixed comments on FMath::PointDistToLine, and renamed "Line" parameter to "Direction".

	Merge CL 3036162.

Change 3044910 on 2016/07/11 by Mieszko.Zielinski

	Fixed  AISense_Sight not reporting any hits on ECC_Visibility channel #UE4

Change 3045144 on 2016/07/11 by Lukasz.Furman

	exposed pathfollowing's reach test modifier: goal radius as parameter of move request

Change 3045174 on 2016/07/11 by Marc.Audy

	Remove incorrect SetMobility reference from comment
	#jira UE-30492

Change 3045233 on 2016/07/11 by Marc.Audy

	Correct function name in warning

Change 3045284 on 2016/07/11 by mason.seay

	Test Assets for pose blending

Change 3045342 on 2016/07/11 by Michael.Noland

	PR #2284: Added PAPER2D_API to FSpriteDrawCallRecord (Contributed by grisevg)
	#jira UE-29522

Change 3045343 on 2016/07/11 by Michael.Noland

	PR #2533: Fixed bug that caused the tabs in the Flipbook, Sprite, and CodeProject editors to show the editor name rather than the asset name (Contributed by DevVancouver)
	#jira UE-32403

Change 3045344 on 2016/07/11 by Michael.Noland

	Paper2D: Fixed BP-created tile map components being incapable of having collision generated for them (still requires calling SetLayerCollision with rebuild=true or RebuildCollision)
	Paper2D: Exposed the ability to directly rebuild collision on a UPaperTileMap
	#jira UE-31632

Change 3045382 on 2016/07/11 by Ori.Cohen

	Expose mobility filtering query params. Allows users to filter out static mobility for example from scene queries.

	#JIRA UE-29937

Change 3045529 on 2016/07/11 by Zak.Middleton

	#ue4 - Improve comment about FFindFloorResult.bBlockingHit, explaining it is a valid blocking hit that was not in penetration. Other conditions can be determined from the HitResult itself.

Change 3045601 on 2016/07/11 by Michael.Noland

	Paper2D: Expose UPaperTileMap and UPaperTileSet as BlueprintType
	#jira UE-20962

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

	Instanced HLOD materials to reduce permutations + compilation time

Change 3046147 on 2016/07/12 by Ori.Cohen

	PR #1615: Traceworldforposition should trace async scene too
	#JIRA UE-21728

Change 3046180 on 2016/07/12 by Ori.Cohen

	Introduce a shape complexity project setting

	#JIRA UE-31159

Change 3046280 on 2016/07/12 by Ori.Cohen

	Change physics blend weights to only affect rendering data. For effects that require updating physx we recommend using the new physical animation component.

	#JIRA UE-31525, UE-19252

Change 3046282 on 2016/07/12 by Benn.Gallagher

	Fix for crash or notify corruption when reverting the "Event" struct in montage notify editor.
	  - Made default slot 0, as a montage should always have at least one slot
	  - Made it impossible to revert the "Event" struct as it contains stuff that shouldn't be reverted. Can still revert its members though
	#jira UE-32626

Change 3046284 on 2016/07/12 by Benn.Gallagher

	Fix for crash or notify corruption when reverting the "Event" struct in montage notify editor.
	  - Made default slot 0, as a montage should always have at least one slot
	  - Made it impossible to revert the "Event" struct as it contains stuff that shouldn't be reverted. Can still revert its members though
	(2nd CL, missed file)
	#jira UE-32626

Change 3046416 on 2016/07/12 by Jon.Nabozny

	PR #2512: Change InstancedStaticMesh allow transform update to teleport (Contributed by joelmcginnis)

	#jira UE32123

Change 3046428 on 2016/07/12 by Michael.Noland

	Paper2D: Fixed inconsistent lighting on lit grouped sprites (caused by bad normals on any grouped sprites that were rotated away from (0,0,0))
	#jira UE-33055

Change 3046429 on 2016/07/12 by Michael.Noland

	Paper2D: Fixed inconsistent lighting on lit tilemaps in standalone or cooked builds (caused by trying to use the canonical Paper2D tangent basis before it has been initialized)
	#jira UE-25994

Change 3046475 on 2016/07/12 by Ori.Cohen

	Added strength multiplyer for physical animation

	#JIRA UE-33075

Change 3046518 on 2016/07/12 by Ori.Cohen

	Make sure to refresh contact points when turning simulation on for bodies.

	#JIRA UE-31286

Change 3046658 on 2016/07/12 by Ori.Cohen

	Fix the case where setting body blend weight doesn't turn off blend override.

Change 3046720 on 2016/07/12 by Ori.Cohen

	Added option to allow skeletal mesh simulation to NOT affect component transform.

	#JIRA UE-33089

Change 3046908 on 2016/07/12 by Ori.Cohen

	Fix welded body not properly unwelding when in a chain of welded bodies

	#JIRA UE-32531

Change 3047015 on 2016/07/12 by Lukasz.Furman

	fixed nested repath requests

Change 3047102 on 2016/07/12 by Ori.Cohen

	Added physics component to content example

Change 3047848 on 2016/07/13 by Ori.Cohen

	Expose transform update mode to phat

	#JIRA UE-33227

Change 3047853 on 2016/07/13 by Ori.Cohen

	Update physical animation level and content. Was missing some blueprints

Change 3047897 on 2016/07/13 by Ori.Cohen

	PR #2066: PhysX: Remove copy-paste code from LoadPhysXModules (Contributed by bozaro)

	#JIRA UE-27102

Change 3048026 on 2016/07/13 by Benn.Gallagher

	Altered reference gathering for retargetting to consider nodes in the Ubergraph. This catches refrerences as variables in the event graph and default values on event graph pins.
	#jira UE-23823

Change 3048592 on 2016/07/13 by Marc.Audy

	Change check when physics state exists but not registered to ensure and add additional logging information.
	#jira UE-32935

Change 3048790 on 2016/07/13 by Ori.Cohen

	Fix CIS for shipping physx builds.

	#JIRA UE-33246

Change 3048801 on 2016/07/13 by Ori.Cohen

	Update RootBodyTransform when ref skeleton has offset

Change 3048891 on 2016/07/13 by Marc.Audy

	Fix copy paste bug with AudioComponent::SetPitchMultiplier

Change 3049549 on 2016/07/14 by Thomas.Sarkanen

	Prevented stale anim asset references from persisting in wired pins

	Made sure to clear out the old asset in asset players when pins are made/destroyed. This requires a temporary string reference to the asset in UAnimGraphNode_AssetPlayerBase.
	Fixed up anim getters to properly use pin-default assets (previously they used the internal asset ptr that was not guaranteed to be in sync). Also fixe dup error messaging to be a bit more helpful when editing transition rules.
	Fixed up the various animation asset players to correctly display names when the asset is not set internally. Also correctly report compilation errors when pins are connected.
	Moved FA3NodeOptionalPinManager to new file ane renamed to FAnimBlueprintNodeOptionalPinManager to avoid circular includes.

	#jira UE-31015 - Asset Pins Keep Reference To Old 'Static' Asset

Change 3049576 on 2016/07/14 by Thomas.Sarkanen

	Fix CIS linker errors

Change 3049611 on 2016/07/14 by Benn.Gallagher

	Fixed "Isolate" checkbox in Persona mesh details not working on sections with clothing assigned (previously disabled drawing for all sections)
	Fixed "Highlight" checkbox in Persona mesh details not working after Section/Chunk refactor
	#jira UE-31016
	#jira UE-33061

Change 3049663 on 2016/07/14 by Benn.Gallagher

	CIS fix after Persona render fixes

Change 3049794 on 2016/07/14 by Marc.Audy

	Some cleanup and ensuring ActiveSound adds references to all of its used assets

Change 3049823 on 2016/07/14 by Tom.Looman

	Added Player Connect and Disconnect Multicast Events to GameMode

	PR #2398: Player Connect and Disconnect Multicast Events (for Plugins) (Contributed by dreckard)

Change 3049896 on 2016/07/14 by Ori.Cohen

	Fix cases where updating welded bodies is causing physx body to ignore the kinematic flag.

	#JIRA UE-31660

Change 3049921 on 2016/07/14 by Benn.Gallagher

	PR #2294: Reduce PhysX simulate() memory churn (Contributed by roberttroughton)
	    - Modifications: Per PxScene buffers, 16 byte alignment required for simulate call, skip clothing scenes (unused, we simulate per-actor)
	#jira UE-29573

Change 3049929 on 2016/07/14 by Zak.Middleton

	#ue4 - Make GetDefault<T>(UClass*) assert that the class is castable to T.

Change 3049956 on 2016/07/14 by Zak.Middleton

	#ue4 - Back out changelist 3049929 until I fix CastChecked<> compile issue.

Change 3049992 on 2016/07/14 by Jon.Nabozny

	Fix infite jumps when JumpMaxHoldTime is set. Also, allow multi-jumping out of the box.

	#JIRA: UE-31601

Change 3050017 on 2016/07/14 by James.Golding

	PR #2412: Make CalcSceneView and GetProjectionData in ULocalPlayer virtual (Contributed by yehaike)

Change 3050061 on 2016/07/14 by Zak.Middleton

	#ue4 - Make GetDefault<T>(UClass*) assert that the class is castable to T.

Change 3050254 on 2016/07/14 by Marc.Audy

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

Change 3050416 on 2016/07/14 by mason.seay

	Test map and asset for slicing proc meshes

Change 3050881 on 2016/07/14 by Zak.Middleton

	#ue4 - Make FSavedMove_Character::CanCombineWith easier to debug. Consolidate duplicate code to one block.

	github #2047

Change 3051401 on 2016/07/15 by Thomas.Sarkanen

	Prevented animation from restarting each time a new section is selected/inspected in the montage editor

	Preserved playback state when changing section.
	Added SetWeight function to montage instance as when switching between sections the montage would blend from ref-pose while paused.

	#jira UE-31014 - Moving Montage Event Unpauses Playback
	#jira UE-25101 - Improve Montage Replay Usability issue

Change 3051717 on 2016/07/15 by Benn.Gallagher

	Removed call to set sleepVelocityFrameDecayConstant on destructible shapes after advice from Nvidia and investigation by some licensees. Feature was used in the past to better settle piles but now PhysX can handle it fine and by setting it we were causing a hit in island generation.
	#jira UE-18558

Change 3051729 on 2016/07/15 by Benn.Gallagher

	Changed enum combo boxes so that they use rich tooltips instead of text tooltips.
	  - They look the same when there isn't a documentation entry for them (Just the enum name)
	  - Enum docs stored in /Shared/Enums/{EnumType} and the excerpt names are just the enum name

Change 3051825 on 2016/07/15 by Marc.Audy

	Display HiddenInGame for SceneComponents except when part of flattened properties in an Actor such as StaticMeshActor
	#jira UE-29435

Change 3051850 on 2016/07/15 by Marc.Audy

	Reduce priority of audio thread
	Add a frame sync to avoid audio thread drifiting behind

Change 3051920 on 2016/07/15 by Tom.Looman

	Added ActorComponent Activate/Deactivate events

	#JIRA UE-31077

Change 3051923 on 2016/07/15 by Tom.Looman

	PR #2370: Exposing "OverrideWith" and "CopyProperties" in PlayerState to Blueprint Children (Contributed by eXifreXi)

Change 3052038 on 2016/07/15 by Martin.Wilson

	Possible fix for fortnite crash + ensure incase the situation occurs again

	#jira UE-33258

Change 3052042 on 2016/07/15 by Jurre.deBaare

	Copying //Tasks/Framework/DEV-UEFW-21-AlembicImporter to Dev-Framework (//UE4/Dev-Framework)

Change 3052171 on 2016/07/15 by Ori.Cohen

	Improve UI for constraint profiles. Polish UI for physical animation profile.

	#JIRA UEFW-101, UE-33290

Change 3052243 on 2016/07/15 by Martin.Wilson

	Pose watching: Ability to draw bones of pose at any point in the anim graph.

	#jira UE-12181 (originally Epic Friday project)

Change 3053202 on 2016/07/18 by Thomas.Sarkanen

	FAnimInstanceProxy::EvaulateAnimation is now split into two for easier extensibility

	#jira UE-30107 - Split out part of FAnimInstanceProxy::EvaulateAnimation to allow users to use node evaluate without code duplication

Change 3053203 on 2016/07/18 by Thomas.Sarkanen

	Fixed properties that are fed to skeletal mesh components via construction script not updating when edited

	Forced skeletal mesh components to re-init their anim instance on reregister when in an editor world (a previous optimization was preventing this).
	Switched order of RerunConstructionScripts and ReregisterAllComponentsto be in-line with the undo/redo case  to prevent edits being a frame out of date.

	#jira UE-31890 - Variables cast from the Construction Script do not update in AnimBP AnimGraph

Change 3053241 on 2016/07/18 by Martin.Wilson

	Add parent bone space to GetSocketTransform

	#jira UE-29814

Change 3053270 on 2016/07/18 by Jurre.deBaare

	PR #2105: Disable creation of array modifiers (Contributed by projectgheist)

Change 3053273 on 2016/07/18 by Jurre.deBaare

	Default ini for asset viewer and HDR images

	#jira UE-32903

Change 3053527 on 2016/07/18 by Ori.Cohen

	Fix CIS

	#JIRA UE-33375

Change 3053620 on 2016/07/18 by Thomas.Sarkanen

	Socket chooser now has a search box

	Uses new FTextFilterExpressionEvaluator to filter bones & sockets by name.
	Search box has focus when the menu appears.

	#jira UE-23698 - Need a way to search through the Choose Socket or Bone: UI when attaching to a skeletal mesh

Change 3053626 on 2016/07/18 by Martin.Wilson

	Fix crash caused by skeletalmeshcomponent being destroyed during a notify

	#jira UE-33258

Change 3053761 on 2016/07/18 by Martin.Wilson

	Mac build compile fix

Change 3053858 on 2016/07/18 by Lina.Halper

	Merging using //UE4/Dev-Framework/_to_//Fortnite/Main/

	Fix on crashing recursive asset

Change 3053864 on 2016/07/18 by Ori.Cohen

	Make sure phat UI changes when picking different constraint profiles

Change 3053866 on 2016/07/18 by Ori.Cohen

	Submit content example for constraint profiles

Change 3053915 on 2016/07/18 by Lina.Halper

	The cached animinstance won't refresh until animation is replaced if you open while anim bp is opened
	This is the fix for that.

	#jira: UE-32927

Change 3053969 on 2016/07/18 by James.Golding

	PR #2571: Added a SimEventCallbackFactory (Contributed by NaturalMotionTechnology)

Change 3054004 on 2016/07/18 by Ori.Cohen

	Fix crash in welding when children have no owner component and ensure query only does not get welded by mistake.

	#jira UE-33333

Change 3054410 on 2016/07/18 by Lina.Halper

	Fixed issue with moving translation not working with mirrored parent due to inverse position.

	Changed to Transform.

	#jira: UE-31521

Change 3054659 on 2016/07/18 by Lina.Halper

	Fix for retargeting of pose asset

	- Moved animsequence::retarget to be out to AnimationRuntime
	- PoseAsset is now using that function to retarget correctly

	#code review: Martin.Wilson, Ori.Cohen

Change 3054777 on 2016/07/18 by Jurre.deBaare

	Fixing integration blocker, had this fix locally already

	#jira UE-33427

Change 3056619 on 2016/07/19 by Ori.Cohen

	Temporarily turn off audio threading due to heap corruption.

	#JIRA UE-33320

Change 3057770 on 2016/07/20 by Aaron.McLeran

	Doing sync trace for occlusion if audio thread is enabled
	#jira UE-33494

Change 3057778 on 2016/07/20 by Aaron.McLeran

	#jira UE-33494 Fix async line traces from audio thread causing crash (re-enable threaded audio)

Change 3057788 on 2016/07/20 by Aaron.McLeran

	#jira UE-33494 Fix async line traces from audio thread causing crash (re-enable threaded audio)

	Enabling audio thread (with a capital T for True)

Change 3057850 on 2016/07/20 by Ori.Cohen

	Temporarily turn off audio threading as the feature is still experimental

Change 3057876 on 2016/07/20 by Martin.Wilson

	Fix Graph Linked External Object issue when saving recompressed animations

	#jira UE-33567

Change 3058371 on 2016/07/20 by Ori.Cohen

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

[CL 3058682 by Ori Cohen in Main branch]
2016-07-20 18:23:54 -04:00
Matthew Griffin
bb70b349ce Merging CL 2804086 from //UE4/Release-4.11 to Dev-Main (//UE4/Dev-Main) to isolate copyright update
#lockdown Nick.Penwarden

[CL 2819020 by Matthew Griffin in Main branch]
2016-01-07 08:17:16 -05:00
Marc Audy
3c0e962858 Copying //UE4/Dev-Frame to //UE4/Main
#lockdown Nick.Penwarden

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

Change 2775736 on 2015/11/20 by Richard.Hinckley

	Fix for Paper2D issue with repeated imports in one edutor session. Paper2D import process now creates a new importer at the end. This prevents the sprite sheet import process from leaving frame data around, causing subsequent imports (including imports of different sprite sheets) to include this data inappropriately.

	#codereview michael.noland

Change 2776352 on 2015/11/20 by Zak.Middleton

	#ue4 - Avoid useless DetachFromParent() for the same pending AttachParent during registration. Added missing UpdateOverlaps() when detaching from object simulating physics.

	#rb Marc.Audy, Ori.Cohen
	#codereview James.Golding

Change 2776401 on 2015/11/20 by Mieszko.Zielinski

	Implemented a way to do batched points projection to navmesh, where every point can declare a custom projection box #UE4

	The biggest advantage here is that projection box is independent from projected point - no more manual offsetting of projected point to achieve "100uu up and 500uu down"-like functionality

	#jira UE-23705
	#rb Lukasz.Furman

Change 2777450 on 2015/11/23 by Martin.Wilson

	Bake additive data into animations during cooking to avoid doing additive calculations and extra pose extraction and blending at runtime

	#rb Thomas.Sarkanen

Change 2777698 on 2015/11/23 by Mieszko.Zielinski

	Gameplay debugging tools fixes #UE4

	Fixes:
	- made newly added logs respect Log Visualizer's filters
	- added handling of invalid data when trying to draw EGameplayDebuggerShapeElement::Cylinder in AGameplayDebuggingHUDComponent::DrawPerception. This is a patch, root cause to be found.
	- fixed Log Visualizer resetting it's data while trying to serialize invalid objects. This is a patch, root cause to be addressed.

	In addition
	- while at it removed bunch of 'auto' and 'class' keywords from the files I've touched

	#rb Lukasz.Furman

Change 2777762 on 2015/11/23 by Mieszko.Zielinski

	Removed BlackboardComponent's functionality deprecated since 4.7 #UE4

	#rb Lukasz.Furman

Change 2777839 on 2015/11/23 by Zak.Middleton

	#ue4 - Wrap all vector library calls to math functions through our FMath versions, so they benefit from fixes or improvements therein. Added Exp2() function.

	#rb Laurent.Delayen

Change 2777840 on 2015/11/23 by Zak.Middleton

	#ue4 - Fix up uses of library math functions to go through our FMath namespace.

	#rb Laurent.Delayen

Change 2778287 on 2015/11/23 by Stan.Melax

	deprecation of  FCollisionQueryParams(bool)

	See 2774707 description for the whole story

	#OR-9936

	#codereview marc.audy

	Changes to kite will have to be in a separate check-in

	I couldn't submit to all files from the framework branch   addition fixes have their files are shelved in cl 2778299

Change 2778507 on 2015/11/23 by Marc.Audy

	Eliminate spurious cook warnings for known missing packages
	#rb Michael.Noland

Change 2778546 on 2015/11/23 by Aaron.McLeran

	Moving occlusion feature settings from audio component to sound attenuation settings struct.

	- Sound attenuation setting struct is used for all sounds that do 3d spatialization so it make sense for the occlusion feature settings to be there.
	- Kept old low-pass frequency filter setting values on audio component (where HighFrequencyAttenuation used to be)

	#rb Zak.Middleton

Change 2778664 on 2015/11/23 by Zak.Middleton

	#ue4 - Clarify some comparison functions (IsZero, IsNearlyZero, Equals) in FRotator to explain that they compare as orientations, not other interpretations such as rotational speed, winding, etc.

	#rb Aaron.Mcleran
	#codereview Frank.Gigliotti

Change 2779335 on 2015/11/24 by Mieszko.Zielinski

	Another VisualLog patch to avoid crashing due to a core bug that remains to be investigated #UE4

	Again, the core bug here is related visual log trying to serialize invalid objects on a regular basis.

	#rb Lukasz.Furman

Change 2779338 on 2015/11/24 by Benn.Gallagher

	Fixed crash in Persona when focus is taken from a different window
	#jira UE-22516
	#rb Ben.Cosh

Change 2779375 on 2015/11/24 by Benn.Gallagher

	Fix for deadlock in destructibles. Aquiring actor buffer without releasing causes an infinite wait on next aquire.
	#rb Ori.Cohen

Change 2779753 on 2015/11/24 by Zak.Middleton

	#ue4 - FMath::Atan2() no longer calls atan2f() because of some compiler or library bugs causing it to randomly return NaN for valid input. It now uses a high-precision minimax approximation instead, measured to be 2x faster than the stock C version.

	#rb Brian.Karis

Change 2779853 on 2015/11/24 by Marc.Audy
2015-12-02 16:42:06 -05:00
Marc Audy
0c5bc8be6d Copying //UE4/Dev-Framework to Dev-Main (//UE4/Dev-Main)
#lockdown Nick.Penwarden

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

Change 2720406 on 2015/10/07 by Aaron.McLeran

	Audio optimization

	Don't search for nearest listener if there's only 1 listener.

Change 2720411 on 2015/10/07 by Aaron.McLeran

	Fixing HRTF spatialization code with recent changes to stereo spatialization.

	HRTF emitter posiition doesn't need to be converted to XAudio2 coordinates.

Change 2723829 on 2015/10/09 by Mieszko.Zielinski

	Fixed NavigationSystem trying to set label of newly spawned navigation data #UE4

	UE-21880

Change 2723873 on 2015/10/09 by Mieszko.Zielinski

	Fixed a bug in FNavAgentProperties::IsEquivalent resulting in failing the test for FNavAgentProperties instances having default AgentStepHeight value (-1) #UE4

	UE-21977

Change 2724834 on 2015/10/12 by Ori.Cohen

	PR #1634: Add PxVehicleDriveNW support to PhysXVehicleManager.cpp (Contributed by zeduk)

Change 2724850 on 2015/10/12 by Marc.Audy

	Fix sound not restarting in matinee preview when jumping back along timeline after reaching end
	#codereview Nick.Darnell

Change 2726499 on 2015/10/13 by Ori.Cohen

	Fix edge case where sphyl length and radius are 0 and they are not properly clamped to 0.1

Change 2726689 on 2015/10/13 by Marc.Audy

	Make UPackage::PackageFlags private
	Add debugging for UE-21181 to try and track down when EditorWorld's PackageFlags are getting flagged as PlayInEditor
	#codereview Mike.Fricker

Change 2726862 on 2015/10/13 by Lukasz.Furman

	removed unused code from DetourNavMeshQuery
	#ue4 UE-21988

Change 2726888 on 2015/10/13 by Lukasz.Furman

	fixed observer abort: both mode in behavior tree's cone check decorator
	#ue4 UE-19375

Change 2726913 on 2015/10/13 by Lukasz.Furman

	navmesh raycast will use nearest poly containing ray origin instead of just closest one
	#ue4 UE-19334

Change 2726920 on 2015/10/13 by Marc.Audy

	Re-unify ULevelStreaming::GetWorldAssetPackageName and GetWorldAssetPackageFName
	#codereview Dmitriy.Dyomin, Bob.Tellez

Change 2726931 on 2015/10/13 by Lukasz.Furman

	fixed missing Tick event in aborting behavior tree tasks from abandoned subtree
	#ue4 UE-21777

Change 2728093 on 2015/10/14 by Ori.Cohen

	Fix edge case of sphyl scale take two. The previous approach did double scaling

Change 2728577 on 2015/10/14 by Mieszko.Zielinski

	Improved navmesh labeling condition #UE4

	Change suggested by github user

	#rb Lukasz.Furman

Change 2728587 on 2015/10/14 by Lukasz.Furman

	fixed crowd simulation for auto possessed pawns placed on level
	#ue4
	#rb Mieszko.Zielinski

Change 2728629 on 2015/10/14 by Lukasz.Furman

	fixed influence of navmesh edges on crowd simulation near end of path
	#ue4 UE-21380
	#rb Mieszko.Zielinski

Change 2728678 on 2015/10/14 by Lukasz.Furman

	added Z check to detour's crowd avoidance segment gathering
	#ue4 UE-20889
	#rb Mieszko.Zielinski

Change 2728745 on 2015/10/14 by Lukasz.Furman

	fixed copy&paste operation in behavior tree's composite decorators subgraphs
	#ue4 UE-18740

Change 2729276 on 2015/10/14 by Stan.Melax

	ensure all actors get recreated with new collision shape specification.

	this wasn't being done for a couple of editing methods.

	todo:  this should be merged into 4.10

	#UE-20961
	#rb ori.cohen

Change 2730709 on 2015/10/15 by Marc.Audy

	Prevent memory corruption when an invalid controller ID is passed in to the forcefeedback channel functions
	#rb Lina.Halper

Change 2733590 on 2015/10/19 by Benn.Gallagher

	Fixed various crashes when using undo and redo while manipulating state machines UE 22088

Change 2735143 on 2015/10/20 by Lukasz.Furman

	clearing behavior tree debugger's state when displayed subtree becomes inactive
	#ue4
	#rb Mieszko.Zielinski

Change 2735144 on 2015/10/20 by Lukasz.Furman

	rebuilding behavior tree graph node order when node is being moved
	#ue4
	#rb Mieszko.Zielinski

Change 2735403 on 2015/10/20 by sebastian.kowalczyk

	Integrated fix for issue UE-18594 "Gameplay Debugger is hijacking the Canvas" issue from 4.10 (2735391). Extended previous fix to care about OSX users - it's possible to configure shortcuts in engine config file now (little different ones for osx platform).

Change 2736406 on 2015/10/21 by sebastian.kowalczyk

	Added new GameplayDebugger as a plugin. Old gameplay debugger is still here to keep backward compatibility but it's deprecated now. Current projects should be moved to use new plugin soon.

Change 2736436 on 2015/10/21 by sebastian.kowalczyk

	Fixed crash in gameplay debugger with  player set as debug target.

Change 2736437 on 2015/10/21 by sebastian.kowalczyk

	Added visual indicator around selected pawn to fix FORT-10273 issue. (FN is not using new gd plugin yet).

Change 2736489 on 2015/10/21 by sebastian.kowalczyk

	Hide internal and debug hud classes from drop down lists.

Change 2736504 on 2015/10/21 by sebastian.kowalczyk

	Fix for UE-18548 "EnableGDT does not work correctly in PIE".

Change 2736529 on 2015/10/21 by sebastian.kowalczyk

	Fixed UE-18548 "EnableGDT does not work correctly in PIE"

Change 2736588 on 2015/10/21 by sebastian.kowalczyk

	Removed old log visualizer classes.

Change 2736700 on 2015/10/21 by sebastian.kowalczyk

	Fixed UE-19256 "Perception debug data doesn't get replicated by Gameplay Debuger" for old gameplay debugger module.

Change 2737180 on 2015/10/21 by Zak.Middleton

	#ue4 - Fix UPrimitiveComponent::GetCollisionShape not correctly enforcing bounds limits.

	#rb Aaron.Mcleran

	#jira UE-22436

Change 2738084 on 2015/10/22 by sebastian.kowalczyk

	Better indication of selected pawn for Gameplay Debugger.

Change 2738413 on 2015/10/22 by Marc.Audy

	Disable duplication of worlds/maps via the content browser
	#jira UE-22200
	#rb James.Golding

Change 2739743 on 2015/10/23 by bruce.nesbit

	UE-18707 - Issue with drawing material triangle on canvas #1387

	Added DrawTriangleUsingVertexColor

Change 2739751 on 2015/10/23 by bruce.nesbit

	Revised bShowDebugForReticleTarget should not be static #1539

Change 2739788 on 2015/10/23 by bruce.nesbit

	Revised the 2 functions that used FTriangleRenderer::DrawTriangle to use FTriangleRenderer::DrawTriangleUsingVertexColor
	Fixed compile error

Change 2739870 on 2015/10/23 by Marc.Audy

	Avoid issues while detaching child components if OnAttachmentChange were to remove a sibling component itself.
	#jira UE-22362
	#rb Zak.Middleton

Change 2739882 on 2015/10/23 by sebastian.kowalczyk

	Fix for UE-20901 "VisualLog redirections are broken after PIE finishes" issue.

Change 2740140 on 2015/10/23 by Marc.Audy

	Ensure that components reregister tick functions after seamless travel
	#jira UE-20892
	#rb Zak.Middleton

Change 2740614 on 2015/10/23 by Ori.Cohen

	Fix linker issues for people wanting to use physics lock lambdas

Change 2740674 on 2015/10/23 by Aaron.McLeran

	Sound Focus Feature

	Added new parameters to SoundAttenuation settings to allow audio to change behavior based on its angle to the listener

	- Define the min/max azimuth angle to establish in-focus and non-focus regions
	- Can scale the priority of a sound based on focus angle
	- Can attenuate the volume of a sound based on focus angle
	- Can scale the listener-emitter distance based on focus angle
	- Distance scale is applied when determining max audible distance for USoundBase
	- Can opt-out of focus effects for a sound at the USoundBase level

	#rb Ryan.Vance

Change 2741542 on 2015/10/26 by Lukasz.Furman

	lowered min value clamping in navigation filter properties
	#ue4
	#rb Mieszko.Zielinski

Change 2743227 on 2015/10/27 by Marc.Audy

	Make ASceneCaptureCube subclassable outside of Engine module
	#jira UE-22609
	Make USceneCaptureComponentCube::UpdateContent callable outside of Engine module
	#jira UE-22610

	#rb Jeff.Farris

Change 2743255 on 2015/10/27 by Marc.Audy

	Wrap FActorSpawnParameters class with deprecation warning disable pragma instead of hand implementing copy constructor
	#rb Jeff.Farris

Change 2743729 on 2015/10/27 by Ori.Cohen

	Fix case where we spawn and adjust location which gives us implicit velocity.

	#codereview Stan.Melax

Change 2746135 on 2015/10/29 by sebastian.kowalczyk

	Fixed UE-21668 "Saving log filters selected in LogVisualizer causes insane ini file sizes! And doesn't really work."

Change 2746437 on 2015/10/29 by Lukasz.Furman

	pass on verifying behavior tree stack before accessing its elements
	#ue4
	#rb Mieszko.Zielinski

Change 2748028 on 2015/10/30 by sebastian.kowalczyk

	Changed GameplayDebugger's console variable from gd.EQSOnHUD to ai.gd.EQSOnHUD" after suggestion with MieszkoZ.

Change 2748184 on 2015/10/30 by Aaron.McLeran

	UE-22693 Fix for streaming bug

	- 3rd decoded buffer in initial 3 buffers was not getting submitted to xaudio2 voice resulting in garbled/skipped audio.
	- Wasn't able to repro the 'cannot read chunk' part of the bug

	#rb ryan.vance

Change 2749255 on 2015/10/31 by sebastian.kowalczyk

	Fixed ai.gd.EQSOnHUD console variable after rename from gd.EQSOnHUD.

Change 2749276 on 2015/10/31 by sebastian.kowalczyk

	Added switch to toggle highlight of selected actor to GameplayDebugger.

Change 2749318 on 2015/10/31 by sebastian.kowalczyk

	New Gameplay Debugger plugin can be used with old module simultaneously. It's best to configure different keyboard binding for plugin when using old module (it can be set in project settings, for new gameplay debugger plugin - when activated for project).

Change 2749337 on 2015/10/31 by sebastian.kowalczyk

	Fixed GameplayDebugger compilation in shipping/test builds.

Change 2749376 on 2015/10/31 by sebastian.kowalczyk

	Small clean-up in gameplay debugger class for BT.

Change 2749931 on 2015/11/02 by James.Golding

	Add stats to ProcMeshComp

Change 2749932 on 2015/11/02 by James.Golding

	Remove PhysicsThrusterComponent.h from Engine.h

Change 2749960 on 2015/11/02 by James.Golding

	- Fix PS4 compile errors in ActiveSound.cpp
	  - Constructor order of FActiveSound
	  - Shadowed AudioComponent var in CheckOcclusion
	#RB thomas.sarkanen
	#codereview aaron.mcleran

Change 2749961 on 2015/11/02 by James.Golding

	Fix PS4 compile errors in GameplayDebuggerBaseObject.cpp
	- Shadowed DefaultContext function param, now just Context, which matches declaration
	#RB thomas.sarkanen
	#codereview sebastian.kowalczyk

Change 2750026 on 2015/11/02 by Thomas.Sarkanen

	Anim Multithreading: thread-safety refactor

	Segregated access to various parts of anim update data by spitting off a new proxy class (FAnimInstanceProxy) containing all data accessed in Update() and Evaluate() passes. Gated access to the proxy data on the game thread in a number of ways:

	- Explicit access via GetValueOnGameThread() - this blocks on any existing task, completes and then allows control to return to the accessing function. This allows stuff like Blueprints to continue to operate as normal.
	- Explicit access via GetValueOnAnyThread() - this ensures that in the limited set of circumstances we need this (Blueprint pure functions mostly) that conditions are met about concurrent access.
	- Deprecating many APIs on UAnimInstance that should not be used (and in fact are not used at present, happily).

	Derived classes of UAnimInstance can override the creation of the proxy class to create their own type. We do this for UAnimSingleNodeInstance etc.

	Any API deprecation should continue to function - no functions have been removed yet. The only things that are not backwards-compatible are direct access to some public member variables for which there is no way to support (e.g. via references, for example UngroupedActivePlayerArrays).

	Some APIs have been changed to more specifically represent the dependencies involved. For example TickAssetPlayerInstance() used to take a UAnimInstance*, only to use it to simply queue notifies. This has been deprecated and replaced with a new FNotifyQueue API. FNotifyQueue also uses a thread-safe FRandomStream instead of FMath::Rand.

	Many changes are due to substituting accessor functions for direct variable access.

	Removed 'service' tick group as we no longer need to segregate the running of our parallel update.

	Anim nodes that need to do some game thread-side update should register for a pre-update callback delegate in the proxy. See FAnimNode_AnimDynamics for an example of this.

	Moved UpdateActiveVertexAnims into FAnimRuntime so I can subsume some of the code that was in USkeletalMeshComponent::EvaluateAnimation into UAnimInstance (and hence keep the proxy access private).

	#rb Martin.Wilson,Lina.Halper
	#codereview Michael.Noland

Change 2750077 on 2015/11/02 by Marc.Audy

	Expose UInputComponent::BindAction that supports WithKey delegate signature

Change 2751767 on 2015/11/03 by Thomas.Sarkanen

	Added extra support to Anim Blueprint 'fast-path'

	Added support for negated bools (value gets negated during copy).
	Added support for copying from struct members (via break struct) and split struct pins.

	Removed potentially troublesome references to BP-constructed UProperties, replacing them with the property FName. This adds some extra Initialize() overhead, but prevents various crash-on load issues (one when generating the class CRC). Added guard to prevent multiple initialization to save this more expensive work being done more often.

	#rb Martin.Wilson

Change 2752158 on 2015/11/03 by Jeff.Farris

	Fixed UGameplayStatics::SpawnEmitterAttached() to register the ParticleSystemComponent after it spawns.

	#rb marc.audy

Change 2752159 on 2015/11/03 by Jeff.Farris

	Improvements to camera lens effects to (EmitterCameraLensEffectBase)
	- can now specify a transform to align the emitter with the camera
	- exposed several key parameters to Blueprints
	- ENGINE_API now applies to the entire class

	#rb marc.audy

Change 2753454 on 2015/11/04 by Thomas.Sarkanen

	Fixup deprecation warnings fallout from multithreaded update changes.

	Fixed up use of AnimInstance in Vicon plugin.
	Fixed up use of AnimInstance in slope warping node.

	Un-deprecated some APIs to become warning free (these APIs are safe to call but just a 'bad idea if you want to do it right').
	Also an extra API to allow for smoother transition: Allow custom allocation/deallocation (including using a proxy member struct) by providing an override point for proxy destruction.

	#rb Martin.Wilson

Change 2754099 on 2015/11/04 by Ori.Cohen

	Fix for task threads dropping stats (from Gil)

	#rb Gil.Gribb

Change 2754449 on 2015/11/04 by Marc.Audy

	Ensure that components created from an Actor's blueprint BeginPlay implementation get BeginPlay called on them and register their component ticks
	#jira UE-20853
	Reorganize some booleans to get better bit packing
	#rb Jeff.Farris
	#codereview Mieszko.Zielinski

Change 2754573 on 2015/11/04 by Aaron.McLeran

	Fixing audio component PostLoad code to not set all LowPassFilterFrequency values to 0.0f

Change 2755345 on 2015/11/05 by Thomas.Sarkanen

	Added deprecated constructors for various animation contexts

	Allows existing code to compile if it creates its own contexts from UAnimInstance.

	#rb James.Golding

Change 2755348 on 2015/11/05 by James.Golding

	Add BP-exposed SetBoundsScale function to PrimitiveComponent
	#RB thomas.sarkanen

Change 2755437 on 2015/11/05 by Marc.Audy

	Fix compile errors
	#codereview Thomas.Sarkanen, Mieszko.Zielinski, Aaron.McLeran

Change 2755982 on 2015/11/05 by Marc.Audy

	Move HeaderParse changes for deprecation macro from Core
	Fix world settings warning

Change 2756028 on 2015/11/05 by Marc.Audy

	Fix shadow variable issue

Change 2756090 on 2015/11/05 by Ori.Cohen

	Improve budget tool so that task threads are computed automatically.

	#rb Gil.Gribb

Change 2756120 on 2015/11/05 by Mieszko.Zielinski

	Fixed AIController::MoveTo not using DefaultQueryExtent of its navigation data #UE4

	#rb Lukasz.Furman

Change 2756243 on 2015/11/05 by Mieszko.Zielinski

	Fixed AI perception sight's "auto-visibility" mechanism totally skipping distance and vision cone checks #UE4

	The old way was resulting in false positives when for example observer teleported somewhere far

	#rb Lukasz.Furman
	#codereview John.Abercrombie

Change 2756280 on 2015/11/05 by Mieszko.Zielinski

	Minor VLog code cleanup and dumb-fixing visual logger accessing timer manager off of game thread #UE4

	#rb Lukasz.Furman

Change 2756500 on 2015/11/05 by Mieszko.Zielinski

	Added sanity-checking to BlueprintNodeHelpers::HasBlueprintFunction and cleaned up its usage #UE4

	Also, refactored its parameters into references over pointers.

	#rb Lukasz.Furman

Change 2757041 on 2015/11/06 by Thomas.Sarkanen

	Removed check() in UAnimInstance::GetProxyOnAnyThread()

	The check was no longer needed as if we are on the game thread we block until tasks are completed below, and if we are on any other thread we are 'safe' anyway.

	#rb James.Golding

Change 2757207 on 2015/11/06 by Ori.Cohen

	Fix incorrect root body cache which causes a single frame "freak out" when simulating physics from an animation

	#rb Lina.Halper

Change 2757238 on 2015/11/06 by Marc.Audy

	Force compiler generated functions to be generated for FHierarchicalSimplification in WorldSettings.h so that they are generated while the deprecation warnings are disabled.
	#rb Mike.Fricker

Change 2757284 on 2015/11/06 by Stan.Melax

	tapered capsule drawing

	cloth collision happens with spheres and for the hull or tapered capsule goemetry between any specified pair of spheres.

	(this was already code reviewed before, but missed the check-in window before streamtime)

	#rb ori.cohen

Change 2757743 on 2015/11/06 by Lukasz.Furman

	fixed node memory allocations for injected behavior tree decorators
	#ue4 UE-22783
	#rb Mieszko.Zielinski

Change 2757772 on 2015/11/06 by Lukasz.Furman

	added setters for crowd avoidance
	#ue4 UE-22785
	#rb Mieszko.Zielinski

Change 2758422 on 2015/11/07 by Lina.Halper

	Potential fix for invalid root bone index input

	#jira :/UE-23086
	#code review: Ori.Cohen

Change 2758429 on 2015/11/07 by Mieszko.Zielinski

	Reimplemented a fix for AI Sight's "auto seeing" mechanics in a more flexible way #UE4

	#jira UE-23089

Change 2758571 on 2015/11/08 by Mieszko.Zielinski

	Modified ensure condition in UAIPerceptionComponent::OnRegister so it doesn't go off when BP does it's magic when components are being added to a BP actor class  #UE4

	#jira UE-23080

Change 2758821 on 2015/11/09 by Thomas.Sarkanen

	Fixed animations no longer playing when using a dedicated server.

	Uses correct logic to determine whether we are running as a server or not.

	#rb Martin.Wilson

Change 2758920 on 2015/11/09 by Marc.Audy

	Don't dereference weak object pointers repeatedly in FBoneContainer::Initialize
	#rb Lina.Halper

Change 2758944 on 2015/11/09 by Ori.Cohen

	Fix crash when stats are only on one thread and budget mode is used

Change 2758967 on 2015/11/09 by Benn.Gallagher

	Fix for crash undoing notify socket changes in Persona, needed to recache the notify track data after the transaction had reserialized the sequence.

	#jira UE-22963

Change 2758973 on 2015/11/09 by Benn.Gallagher

	Added new 'Random Player' node for anim graphs allowing the user to play a selection of animations in a random order with certain randomised paramers. Also allows 'Shuffle Mode' to act more like a playlist in that it will play everything on the list before repeating.

	#rb Bruce.Nesbit

Change 2759219 on 2015/11/09 by Ori.Cohen

	Character perf test is now looking at stats directly and sending to analytics

	#RB Ben.Salem

Change 2759398 on 2015/11/09 by Lina.Halper

	Fix issue where placed montages are not playing.

	- the issue is that IsPlaying does not consider montage, but SetPlaying does. It is asymmetry, so I made it same. However, there are other functions that need to be re-looked at wr.t. montage

	#code review: Thomas.Sarkanen
	#RB: Marc.Audy

Change 2759491 on 2015/11/09 by Lina.Halper

	#Anim: Fix not getting input correctly for Copy Pose node

	#RB: Marc.Audy

Change 2759602 on 2015/11/09 by Marc.Audy

	Fix imporperly named struct

Change 2759795 on 2015/11/09 by Aaron.McLeran

	UE-23145 Adding a Priority value to USoundBase to use in concurrency evaluation and sorting wave instances for voice stealing.

	#rb zak.middleton

Change 2760081 on 2015/11/09 by Aaron.McLeran

	UE-23091 Adding more logging for NaN checks and fixing one source of NaNs for audio.

	OmniDirectional Math Explanation:

	For XAudio2, because we do our own distance-attenuation calculations, we use the X3dAudio2 API to simply compute a speaker-map for spatialization and force the listener to be at the origin and the emitter to be on the unit-circle. Thus, from XAudio2's perspective, all distances for every listener-emitter pair will be 1.0.

	So in order to use the InnerRadius blending feature, we need to trick it into doing a an inner radius blend relative to a distance of 1.0. For example, if OmniRadius and Distance are the same, then the "NormalizedOmniRadius" is 1.0 and XAudio2 will begin its "blend" of the sound to an omni-directional speaker map.

	If Emitter-listener distance is less than the OmniRadius, we'll want to do more blending to an omni-directional speaker map, but we need to set the InnerRadius to something greater than 1.0 (i.e. so that the normalized distance of 1.0 will be treated as less than the InnerRadius). To do "full" omni-directional blending, the emitter-listener distance will be 0 or close to zero, and the NormalizedOmniRadius will be very large (i.e. close to infiinity).

	The previous math just set the NormalizedOmniRadius to FLT_MAX which is fine but that number is eventually squared before making the API call. FLT_MAX squared is INF.

	Note: I do not think we need to square the OmniRadius in:
	Emitter.InnerRadius = OmniRadius*OmniRadius;
	But I am keeping it t here because of legacy content which depends on that behavior.

	#rb zak.middleton

hange 2760401 on 2015/11/10 by Thomas.Sarkanen@Thomas.Sarkanen-Dev-Framework

	Re-instated deleted protected functions in UAnimInstance.
	Fixed access of UAnimInstance in FAnimNode_StateMachine.

	#rb Martin.Wilson

Change 2760407 on 2015/11/10 by Jurre.deBaare

	Construct raw meshes for spline meshes now uses the render data instead of original model data (preserves tangents/normals)

Change 2760468 on 2015/11/10 by Benn.Gallagher

	Anim Dynamics optimizations, cached iteration independant data to reduce footprint of iteration on limits.
	#rb Graeme.Thornton

Change 2760613 on 2015/11/10 by Jeff.Farris

	Fixed async collision completion delegate potentially firing repeatedly. (UE-23149)

	#cr marc.audy
	#codereview lina.halper

Change 2760795 on 2015/11/10 by Marc.Audy

	Don't compile in pointless AddReferencedObjects when with editoronly data not defined
	Minor coding standard cleanup (NULL and auto)

Change 2760848 on 2015/11/10 by Benn.Gallagher

	Fix to anim instance proxy to not rely on state machine initialization to bind native delegates as nested state machines are not guaranteed to be initialized. This was fixed in UAnimInstance originally but broken again by the proxy instance code.
	#jira UE-23164
	#rb Martin.Wilson

Change 2760866 on 2015/11/10 by Marc.Audy

	Manage transient visualization components for camera component in the same way that sprite component for other actor components are
	#rb Mike.Beach

Change 2760963 on 2015/11/10 by Marc.Audy

	Since construction script can cause actors to be spawned don't use a ranged for to iterate
	#jira UE-22639
	#rb Jeff.Farris
	#codereview Dmitriy.Dyomin

Change 2762297 on 2015/11/11 by James.Golding

	UE-23086 Don't ensure in SetRootBodyIndex when Bodies array is empty (ie no physics state created)
	#rb martin.wilson
	#codereview ori.cohen, lina.halper

Change 2763566 on 2015/11/11 by Lina.Halper

	FAnimNode_CopyPoseFromMesh::Evaluate - was accessing skeleton joint, not mesh joint.

	#RB: Laurent.Delayen

Change 2763926 on 2015/11/12 by Thomas.Sarkanen

	Fix anim notifies not firing from single anim instances

	UE-23248 - Anim Notifies are not working for Animation Sequences
	UE-23249 - Anim Notifies using Sound Cues do not work

	#rb James.Golding

Change 2764039 on 2015/11/12 by Jurre.deBaare

	Fix for issue with incorrect material indices after reducing a skeletal mesh with non LOD0 mesh as BaseLOD (OR-9243) #rb Lina.Halper

Change 2764307 on 2015/11/12 by Jurre.deBaare

	VS2015 SSF library

Change 2764314 on 2015/11/12 by Stan.Melax

	crashfix  was putting bad bodies to sleep at start

	  Fatal error!
	  Unhandled Exception: EXCEPTION_ACCESS_VIOLATION reading address 0x00000000
	  UE4Editor-Engine.dll!USkeletalMeshComponent::InitArticulated() [...\\engine\\source\\runtime\\engine\\private\\skeletalmeshcomponentphysics.cpp:875]

	On some skeletalmeshcomponent, some bodies aren't getting created correctly.  Trying to force them to sleep was causing a crash - it expected instantiated physx bodies.  Seems that all the rest of the code is able to tolerate bad bodies.
	Added check to ensure physx body exists before trying to force it to sleep.

	not sure if bad bodies are the norm or if this fix is just more "kicking the can down the road".

	#codereview ori.cohen

Change 2764343 on 2015/11/12 by Jurre.deBaare

	- Fixed crash when building a LOD with SubActors.Num < 2
	- Force HLOD level slider is now always enabled, however won't show complete image if not all HLODs are build
	- LODActor tree view item now scrolls into view if selected in the world
	- Set bAllowCullDistanceVolume to false for LODActor's static mesh components by default
	- Added 7zip files
	- Fixed issue with WinINet complaining about http-request without 'http://' prefix
	- Changed % reduced or original triangles display string, now uses float instead of int (for < 1% reductions)
	- Override texture sizes and automatic texture bias
	- Fixed issue with incorrect material merging, not picking up it required mesh-data during baking. Added extra conditions for rendering with mesh-data.
	- Now incorporate static meshes with opague materials into HLOD merging
	- Fixed issue with incorrect normals after merging meshes who's owning components had been negatively scaled
	- Fixed issue with incorrect texture size being set from MergeActor window (was only changing .X component)
	- Fixed issue with material merging when meshes with multiple LODs are merged, right now only merges LOD0's together if we are also merging the materials (otherwise, merge each LOD)
	- Added ENUM for texture scaling/resizing type that has to be applied while merging the materials
	- Added detail customization class for FMaterialProxySettings

	#rb James.Golding

[CL 2765024 by Marc Audy in Main branch]
2015-11-12 18:11:48 -05:00
Michael Schoell
87e47ba9e1 Enum properties (PropertyByte) will export their enum as text for the PropertyWindow instead of the BlueprintWatch window. This allows more use cases to display the property using localized/display text.
Switched a case in BehaviorTrees to export the property using PPF_PropertyWindow to get the localized display string.

#codereview Mieszko.Zielinski

[CL 2568706 by Michael Schoell in Main branch]
2015-05-28 11:54:34 -04:00
Mieszko Zielinski
05e6c9dee9 Added a transition API to some AI subsystems to not break 4.6 users' projects #UE4
[CL 2404962 by Mieszko Zielinski in Main branch]
2015-01-13 14:03:04 -05:00
Zak Middleton
e95939ba24 #ue4 - Convert all engine uses of GetComponents() to use TInlineComponentArray.
[CL 2393060 by Zak Middleton in Main branch]
2014-12-18 17:02:31 -05: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