#rnx
#rb none
#ROBOMERGE-SOURCE: CL 10869241 via CL 10869527 via CL 10869904
#ROBOMERGE-BOT: (v613-10869866)
[CL 10870586 by ryan durand in Main branch]
#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]
#lockdown Nick.Penwarden
============================
MAJOR FEATURES & CHANGES
============================
Change 3623720 by Phillip.Kavan
#jira UE-49239 - Temp fix for QAGame animations not updating in a nativized build.
Change summary:
- Temporarily excluded all AnimBP assets from nativization as a workaround.
Change 3626305 by Phillip.Kavan
#jira UE-49269 - Workaround fix for crash after packaging a nativized QAGame build with all AnimBP assets disabled for nativization by default.
Change 3629145 by Marc.Audy
Don't hide developer nativization tool behind ini
Change 3630849 by Marc.Audy
Fix nativization uncompilable code when using a non-referenceable term in a switch statement.
#jira UE-44085
Change 3631037 by Marc.Audy
(4.17.2) Fix crash when nativizing blueprint with MakeMap or MakeSet node in it
#jira UE-49440
Change 3631206 by Marc.Audy
Make NAME_None == TEXT("") behave the same as NAME_None == FName(TEXT(""))
Change 3631232 by Marc.Audy
Remove outdated diagnostic code throwing false positives
#jira UE-47986
Change 3631573 by Marc.Audy
Fix containers of vector, rotator, or transform placing a space between the type and the pluralization 's'
Change 3633168 by Lukasz.Furman
fixed behavior tree changing its state during latent abort,
modified order of operations during abort to: abort & wait -> change aux nodes -> execute
Change 3633609 by Marc.Audy
Don't get unneeded string
Change 3633691 by Marc.Audy
Fix copy-pasting of a collapsed graph containing a map input losing the value type
#jira UE-49517
Change 3633967 by Ben.Zeigler
Actor.h header cleanup, fix various comments and reorganize some members, saves 80 bytes per actor in a cooked Win64 build
bRunningUserConstructionScript is now private, exposed with IsRunningUserConstructionScript
Fixed a few other fields to be private that were accidentally made public in 4.17
Change 3633984 by Michael.Noland
Blueprints: Fixed a potential crash when collapsing nodes to a function when a potential entry pin had no links
Change 3634464 by Ben.Zeigler
Header cleanups for Pawn, Controller, Character, and PlayerController
Change 3636858 by Marc.Audy
In preview worlds don't display the light error sprite
#jira UE-49555
Change 3636903 by Marc.Audy
Fix numerous issues with copy/pasting editable pin bases
#jira UE-49532
Change 3638898 by Marc.Audy
Allow right-click creation of local variables in blueprint function libraries
#jira UE-49590
Change 3639086 by Marc.Audy
PR #4006: Mark UEdGraphSchema::BreakSinglePinLink as const (Contributed by leyyin)
#jira UE-49591
Change 3639445 by Marc.Audy
Fix mistaken override and virtual markup on niagara schema function.
Change 3641202 by Marc.Audy
(4.17.2) Fix crash undoing pin changes with split pins
#jira UE-49634
Change 3643825 by Marc.Audy
(4.17.2) Fix crash right clicking a struct pin when the struct it represented has been deleted
#jira UE-49756
Change 3645110 by mason.seay
Fixed up QA-ClickHUD map so it's usable and makes more sense
Change 3646428 by Dan.Oconnor
Fix for UbergraphFrame layout changing during bytecode recompile, which would cause actual ubergraph frame layout to mismatch reflection data
#jira None
Change 3647298 by Marc.Audy
PR #4016: Rename argument name for SetInputMode (Contributed by projectgheist)
#jira UE-49748
Change 3647815 by Marc.Audy
Minor performance improvements
Change 3648931 by Lina.Halper
#Compiler : fixed so that each type of BP can provide module info, and compiler info
- Moved out AnimBlueprint Compiler
- Refactored WidgetBlueprint
- DUPE - Merging using ControlRig_Dev-Framework
Change 3654310 by Marc.Audy
Shrink USkinnedMeshComponent 64 bytes
Shrink USkeletalMeshComponent 224 bytes (160 bytes internal)
Change 3654636 by Lina.Halper
Fix crashing on shutdown
#jira: UE-50004
Change 3654960 by Lina.Halper
- Fix with automation test of creation/duplication
- Fixed shut down crash with editor again due to uobject GCed
#jira: UE-50028
Change 3655023 by Ben.Zeigler
#jira UE-50101 Fix level streaming transform when PIE-duplicating a level that has been preloaded but not made visible in the editor. Instead of always saying actors have been moved we copy the source level's flag
Change 3655426 by Ben.Zeigler
#jira UE-50019 Fix issue where StreamableManager could return objects that are partially loaded if called from PostLoad. StreamableManager never wants half-loaded objects, so change it to explicitly skip them
Change 3657627 by Ben.Zeigler
#jira UE-50157 Fix EDL load dependency issue where the simple construction script/ICH are not guaranteed to be serialized in time for subobject construction
Change 3662086 by Mieszko.Zielinski
Fixed navmesh not loading properly in PIE when owning world has been duplicated-for-play #UE4
This can happen when navigation containing level is loaded via AsyncLoadPrimaryAssetList
#jira UE-50101
Change 3662294 by Ben.Zeigler
Fix enum redirects to handle non-class enums properly where a value redirect is not specified. It needs to convert from EOldEnum::Value to ENewEnum::Value before doing the name check
Change 3662825 by Mieszko.Zielinski
Fixed VisLog debug drawing crashing when using UI to change log lines to be displayed #UE4
there was a loop iterating over elements of a map and was modifying the map as it went, which is a big no-no
Change 3664424 by Marc.Audy
UE-50076 test assets #rb none #rnx
Change 3664441 by Mieszko.Zielinski
PR #3993: UE-25907: Added logging to Log Text, Log Location, and Log Box Shape (Contributed by projectgheist)
Piggybacking on this PR I've redone how visual log is using categories. Now it's using FName rather than FLogCategoryBase to indicated log category. All UE_VLOG macros have been updated.
Change 3664506 by Phillip.Kavan
#jira UE-47852 - Fix various issues with both UAT/UBT-driven and manually-configured code/data build workflows involving nativized Blueprint assets.
Change summary:
- UAT: Removed '-nativizedAssets' command-line option. It's no longer required to specify this flag when cooking/building in order to enable nativization.
- UAT: Removed AutomationTool.ProjectParams.BlueprintPluginPaths.
- UAT: Modified AutomationTool.ProjectParams.ProjectParams() to initialize the 'RunAssetNativization' field based on the current 'BlueprintNativizationMethod' config setting. This flag is now used just to direct UAT to defer invoking UBT for '-build' until after the '-cook' stage has finished.
- UAT: Modified BuildCookRun.DoBuildCookRun() to remove the 'bWarnIfPackagedWithoutNativizationFlag' case (since we removed the '-nativizedAssets' command-line option).
- UAT: Removed Project.AddBlueprintPluginPathArgument() and Project.GetBlueprintPluginPathArgument(). These utility functions are no longer needed.
- UAT: Modified Project.Cook() to remove the registration of each NativizedAssets plugin path for '-build' along with the addition of the '-nativizedAssets' argument with the platform-agnostic path to the NativizedAssets plugin when invoking UE4Editor.exe for '-cook'. This is now handled by the UE4Editor cook commandlet instead.
- UAT: Modified Project.Build() to remove the addition of the '-plugin' argument with the path to the NativizedAssets plugin when invoking UBT for '-build'. This is now handled by UBT instead.
- UBT: Modified UnrealBuildTool.ProjectFileGenerator.DiscoverExtraPlugins() to remove the previously-added search for intermediate plugin assets based on the 'AdditionalPluginDirectories' optionally found in the .uproject file. Instead, this search is now handled via a Plugins.EnumeratePlugins() LINQ query. It is also gated by a new Advanced project setting in DefaultGame.ini that defaults to off, but this way users can still add generated assets into the solution file.
- UBT: Added UnrealBuildTool.UEBuildTarget.ShouldIncludeNativizedAssets() as a utility method for checking the current 'BlueprintNativizationMethod' setting in the game's config file.
- UBT: Modified UnrealBuildTool.UEBuildTarget.CreateTarget() to confirm the existence of a NativizedAssets plugin (generated at cook time) when the project is configured for nativization. If the plugin is found, it is added to the RulesAssembly chain and the ProjectDescriptor.ForeignPlugins list. If the plugin is not found, then a BuildException is thrown informing the user that the plugin must exist in order to build (with a note to make sure to cook the target platform first).
- UE4: Added 'Lex' namespace utility functions for converting PlatformInfo::EPlatformType to/from an FString. Note: Lex::FromString() is simply a proxy to the already-existing PlatformInfo::EPlaformTypeFromString() API, but it was included for completeness.
- UE4: Removed the UProjectPackagingSettings::bWarnIfPackagedWithoutNativizationFlag. This is no longer needed since the '-nativizedAssets' command-line option has been removed.
- UE4: Added UProjectPackagingSettings::bIncludeNativizedAssetsInProjectGeneration (advanced setting). This defaults to 'false' (off). When true, running GenerateProjects.bat will also generate project files for any NativizedAssets plugins previously generated at cook time. This gives advanced users/engineers an option to include nativized Blueprint class sources in the set of generated C++ code projects for faster browsing, etc.
- UE4: Modified UProjectPackagingSettings::PostEditChangeProperty() to remove the case that handles the 'BlueprintNativizationMethod' property. When this value changes, we no longer make an attempt to modify the .uproject file.
- UE4: Removed BlueprintNativeCodeGenManifestImpl::PlatformPlaceholderPattern. This pattern string is no longer in use. Also modified the FBlueprintNativeCodeGenPaths ctor to remove the replacement logic for the pattern string.
- UE4: Modified FBlueprintNativeCodeGenPaths::GetDefaultCodeGenPaths() to construct and return a new directory pattern for the generated NativizedAssets plugin. This is now generated to: Intermediate/Plugins/NativizedAssets/<Platform>/<Type:Game|Client|Server>.
- UE4: Modified FBlueprintNativeCodeGenPaths::PluginRootDir() to no longer append "NativizedAssets" to the end of the path to the generated NativizedAssets plugin.
- UE4: Removed FCookByTheBookStartupOptions::bNativizeAssets and NativizedPluginPath (no longer in use since the '-nativizeAssets' command-line option has been removed).
- UE4: Modified UCookCommandlet::CookByTheBook() to remove initialization of the 'bNativizeAssets' field in the startup options (since the corresponding command-line argument has been removed).
- UE4: Removed FNativeCodeGenData::DestPluginPath and modified FBlueprintNativeCodeGenModule::Initialize() to remove the check for it.
- UE4: Added FBlueprintNativeCodeGenModule::ShutdownModule(). This now handles cleanup for the nativization module after the cook process has finished.
- UE4: Modified UCookCommandlet::CookByTheBook() to no longer look for the '-nativizedAssets' command-line option as well as to remove the initialization of the nativization-related startup option flags that were removed.
- UE4: Modified UCookOnTheFlyServer::StartCookByTheBook() to check the 'BlueprintNativizationMethod' config setting in order to determine whether or not to nativize assets. This replaces the '-nativizedAssets' command-line flag.
- UE4: Modified UCookOnTheFlyServer::StartCookByTheBook() to remove the case that previously handled the 'bWarnIfPackagedWithoutNativizationFlag' check. This is no longer needed since the '-nativizedAssets' flag was removed.
- UE4: Modified UCookOnTheFlyServer::CookByTheBookFinished() to unload the IBlueprintNativeCodeGenModule instance after cooking, in order to reset module state for another potential pass within the same process context.
- UE4: Modified UWidgetBlueprintGeneratedClass::InitializeTemplate() to append 'REN_ForceNoResetLoaders' to the Rename() flags so that when we shift the OldArchetype object into the transient package, it doesn't invalidate the outer package's linker. We need that to remain valid so that multiple nativized cooks within the same process don't fail.
- UE4: Modified FMainFrameActionCallbacks::PackageProject() to remove the addition of '-nativizedAssets' to the UAT command line based on project settings (this is no longer needed, as it is now handled internally by UAT).
- UE4: Modified SaveWorld() to append 'REN_ForceNoResetLoaders' to the Rename() flags so that when we rename the world instead of duplicating it, it no longer triggers a reset of *all* object loaders.
Notes:
- After this change, all nativization workflows (e.g. UAT, UBT and UE4Editor) now look to the 'BlueprintNativizationMethod' flag in the Project settings (UProjectPackagingSettings). This unifies everything on a single flag by default, and removes the feature added in 4.17 that touched the .uproject file when that setting changed (which itself introduced a couple of new regressions in that release).
- Advanced users and build engineers can override this value per task. Instructions to do that are as follows:
- For UAT/UBT/UE4Editor.exe tasks, adding '-ini:Game:[/Script/UnrealEd.ProjectPackagingSettings]:BlueprintNativizationMethod=<Disabled|Inclusive|Exclusive>' will allow the current setting to be overridden on the command line.
- When '-cook' is included on the RunUAT BuildCookRun command line, the above needs to also be embedded within the '-AdditionalCookerOptions' command-line argument. This means that if both '-cook' and '-build' are included, then both the '-ini' argument shown above as well as the same '-ini' argument embedded inside the '-AdditionalCookerOptions' argument will need to be included for the build pipeline to work properly.
- We should add a release note instructing users to check their .uproject file and remove any 'AdditionalPluginDirectories' entries that list the "Intermediate/Plugins" path. This will avoid issues when building the cooked target with UBT.
- We should also add a release note and/or documentation to explain the "advanced" build pipeline options (i.e. the '-ini' argument noted above).
Change 3665061 by Phillip.Kavan
Fix crash on load in a nativized build caused by a reference to a BP class containing a nativized enum.
Mirrored from //UE4/Release-4.18 (CL# 3664993).
#3969
#jira UE-49233
Change 3665108 by Marc.Audy
(4.18) Fix crash when diffing a blueprint whose older version's parent blueprint has been deleted
+ additional code cleanup
#jira UE-50076
Change 3665114 by Marc.Audy
Minor change that could potentially improve performance in some cases
Change 3665410 by Mieszko.Zielinski
Fixed naming of Vislog's BP API #UE4
Change 3665634 by Ben.Zeigler
#jira UE-50045 Mark PIE-duplicated packages as explicitly fully loaded to fix PIE networking crash. These used to be accidentally treated as fully loaded because it was checking the wrong package name on disk
Change 3666970 by Phillip.Kavan
Do not emit a BOM when generating nativized Blueprint asset source files encoded as UTF-8.
#jira UE-46814
Change 3667058 by Phillip.Kavan
Ensure that '-build' is always passed to BuildCookRun automation for projects configured with Blueprint nativization enabled so that it doesn't skip that stage.
Mirrored from //UE4/Release-4.18 (CL# 3667043).
#jira UE-50403
Change 3667150 by Mieszko.Zielinski
PR #4042: BT CompositeDecorator node clears RF_Transient flag for all owned Decorator nodes. (Contributed by BibbitM)
Minor tweak from the original PR - made UBehaviorTreeDecoratorGraphNode_Decorator::ResetNodeOwner protected and added UBehaviorTreeGraphNode_CompositeDecorator class a a friend.
#jira UE-50249
Change 3667152 by Mieszko.Zielinski
PR #4047: Clearing RF_Transient flag when reseting EQS node owner - single change. (Contributed by BibbitM)
#jira UE-50298
Change 3667166 by Mieszko.Zielinski
Fixed FRichCurve baking so that it doesn't loose its curvature #UE4
Also, added some baking sanity checking (like if the range is larger than a single point).
Change 3668025 by Dan.Oconnor
Added a step to the compilation manager to skip recompilation of classes that are dependent on a given classes function signatures when those signatures have not changed
#jira UE-50453
Change 3672063 by Ben.Zeigler
#jira UE-49049 Fix issue with StreamableHandle ParentHandles array being modified during iteration, I had already fixed the Cancel case but not the complete case
Change 3672306 by Ben.Zeigler
#jira UE-50571 Fix issue where PrimaryAsset blueprints would be incorrectly added to the dictionary if their base class had an active class redirect referencing it
Change 3672683 by Marc.Audy
Code cleanup
Change 3672749 by Ben.Zeigler
Fix issue where deleting a source package would not cause the generated cooked package to get deleted while doing an incremental build
Change 3672831 by Ben.Zeigler
#jira UE-50507 Add a cook/save warning when a registered PrimaryAssetId does not match the object's real exported PrimaryAssetId.
Make PrimaryDataAsset blueprintable so you can make primary assets in a blueprint-only project
Change 3673551 by Ben.Zeigler
#jira UE-50029 Fix it so data-only blueprints will never create a UCS function in the final class. If you manually compiled the blueprint or it got recompiled due to inheritance it would create a UCS function that just calls its parent, which could cause problems later on when it did not create a UCS function during normal load
Change 3675074 by mason.seay
Test map for VisLog Testing
Change 3675084 by Mieszko.Zielinski
Fixed BT editor constantly marking BT asset as dirty if it has a "RunBehavior" node #UE4
#jira UE-43430
Change 3676490 by Ben.Zeigler
#jira UE-50635 Fix it so directly blueprinting PrimaryDataAsset will give you a useful PrimaryAssetType. Unless overridden the Type of a PrimaryDataAsset will be the first native class found in the hierarchy, or the the blueprint class that directly blueprints PrimaryDataAsset
Change 3676579 by Lukasz.Furman
fixed crash in behavior tree's search rollback
Change 3676586 by Lukasz.Furman
added local scope mode to behavior tree's composite nodes
Change 3676587 by Ben.Zeigler
Swap PrimaryAssetId property customization to use the same ui as the Pin customization. This one better handles objects that aren't loaded into memory, the old Property one would show None in that case
Add browse, use selected, and clear buttons, and make ID selector font the normal property font
Change 3676715 by Lukasz.Furman
changed order of behavior tree's aux node ticking
Change 3676867 by Ben.Zeigler
#jira UE-50665 Fix issue where resolving Soft Object Ptrs that are stored inside static assets or Blueprint CDOs from PIE will return the editor actor, not the PIE actor. So when resolving a path/ptr during PIE add a failsafe to do a PIE fixup
Fix issue where Lazy pointer fixup could corrupt Soft Object Ptrs by applying the PIE fixup too early
Change 3677892 by Ben.Zeigler
Fix crash when additional level viewport sprites are added after level editor module is loaded. This is basically the same fix as CL #3491406, but for sprites
Change 3678247 by Marc.Audy
Fix static analysis warning
Change 3678357 by Ben.Zeigler
#jira UE-50696 Add some container variables to diff test to track down crashes
Change 3678385 by Ben.Zeigler
#jira UE-50696 Fix crash diffing blueprints where array properties were changed. It needs to not run the generic identical check until it's sure the container types match
Change 3678600 by Ben.Zeigler
#jira UE-50703 Fix crash when a soft actor reference is not actually pointing to an actor, treat it like a broken reference
Change 3679075 by Dan.Oconnor
Mirror 3679030 from Release-4.18
Fix crash when compiling a level blueprint that has delegates to a blueprint that it also has a direct dependency on
#jira UE-48692
Change 3679087 by Dan.Oconnor
Filter out unnecessary relink jobs from the compilation manager
#jira None
Change 3680221 by Ben.Zeigler
#jira UE-50764 Fix crash when converting a property from a soft object reference to hard, it needs to validate the class after the conversion and null if necessary
Change 3680561 by Lukasz.Furman
fixed unsafe StopTree calls in behavior tree
#jira nope
Change 3680788 by Ben.Zeigler
Fix issue where scrubbing sequencer in simulate would not modify actors. We need to temporarily set the PIE context global when doing this specific type of actor bind
Change 3683001 by mason.seay
Submitting various test maps and assets
Change 3686837 by Mieszko.Zielinski
Fixed NavMeshBoundsVolume not updating navmesh when its location gets changed via the Transform Details widget #Orion
#jira UE-50857
Change 3688451 by Marc.Audy
Fix up new material expression to work with String -> Name refactor
Change 3689097 by Mason.Seay
Test content for nativization and enum testing
Change 3689106 by Mieszko.Zielinski
Made NavMeshBoundsVolume react to undo in the editor #Orion
#jira UE-51013
Change 3689347 by Mieszko.Zielinski
Fixed a crash on FAIDynamicParam creation resulting from uninitialized member variables #UE4
Manual merge of CL#3689316 over from 4.18
#jira UE-51019
Change 3692524 by mason.seay
Moved some assets to folder for org, fixed up redirectors
Change 3692540 by mason.seay
Renaming test maps so they are clearly indicated for testing nativization
Change 3692577 by mason.seay
Deleted a bunch of old assets I created specifically for various bugs reported. All issues are closed so they're no longer needed
Change 3692724 by mason.seay
Deleting handful of assets found in developer folders of those no longer with the team. Moved assets that are still used by test maps
Change 3693184 by mason.seay
Assets for testing nativization with structs
Change 3693367 by mason.seay
Improvements to test content
Change 3695395 by Dan.Oconnor
Fix for rare linker issue, IsBlueprintFinalizationPending would return true when we were trying to force load subobjects that were now ready to be loaded. This would prevent some placeholder objects from being replaced
#jira None
Change 3695484 by Marc.Audy
Fix sound cue connection drawing policy not getting returned.
#jira UE-51032
Change 3695494 by mason.seay
More test content for nativization testing
Change 3697829 by Mieszko.Zielinski
PR #4104: Fixed a typo CaclulateMaxTilesCount to CalculateMaxTilesCount (Contributed by YuchenMei)
Change 3700541 by mason.seay
Test map for containers with function bug
Change 3703459 by Marc.Audy
Remove poorly named InverseLerp
Fix degenerate behavior returning bad value
#jira UE-50295
Change 3703803 by Marc.Audy
Clean up autos
Minor improvement to ShouldGenerateCluster
Change 3704496 by Mason.Seay
More test content for testing nativization
Change 3706314 by Marc.Audy
PR #4085: GetDefaultPawnClassForController -> BlueprintCallable (Contributed by Allar)
#jira UE-50874
Change 3707502 by Mason.Seay
Final changes to nativization test content (hopefully)
Change 3709478 by Marc.Audy
PR #4144: Exposed MassageAxisInput for inheritence (Contributed by jackknobel)
Same as CL# 3689702 implemented in Fortnite
#jira UE-51453
Change 3709967 by Marc.Audy
PR #4139: fixed a typo in a comment (Contributed by derekvanvliet)
#jira UE-51372
Change 3709970 by Marc.Audy
PR #4150: Fixed a typo in movement override comment (Contributed by ruffenman)
#jira UE-51495
Change 3709971 by Marc.Audy
PR #4149: Fixing typo on movement pawn component (Contributed by celsodantas)
#jira UE-51492
Change 3710041 by Marc.Audy
Minor code cleanup
Change 3711223 by Phillip.Kavan
Move some Blueprint nativization log spam into the verbose category.
#jira UE-49770
Change 3713398 by Marc.Audy
PR #4157: Renamed AActor::InternalTakePointDamage function's parameter. (Contributed by BibbitM)
#jira UE-51517
Change 3713601 by Marc.Audy
Fix merge error
Change 3713994 by Marc.Audy
(4.18) Just mark level script actor pending kill when the level script blueprint has been recompiled, instead of trying to send it through the destroy actor lifecycle event.
#jira UE-50738
Change 3714270 by Marc.Audy
Fix crashes with tickables as a result of virtuals not being usable in constructors/destructors
#jira UE-51534
Change 3714406 by Marc.Audy
Fix dumb inverted boolean check
Change 3716594 by Dan.Oconnor
Integrate 3681301 from 4.18
Only run OnLevelScriptBlueprintChanged when explicitly compiling a level blueprint, this matches the old behavior
#jira UE-50780, UE-51568
Change 3686450 by Marc.Audy
PinCategory, PinSubcategory, and PinName are now stored as FName instead of FString.
CreatePin has several simplified overrides so you can only specify Subcategory or SubcategoryObject or neither.
CreatePin also takes a parameter bundle for reference, const, container type, index, and value terminal type rather than a long list of default parameters.
Material Expressions now store input and output names as FName instead of FString
FNiagaraParameterHandle now stores the parameter handle, namespace, and name as FName instead of FString
Most existing pin related functions using string have been deprecated.
Change 3713796 by Marc.Audy
Added virtual GetTickableType function to FTickableBaseObject that can return Conditional (default), Always, or Never. Tickable Never objects will not get added to the tickable array or ever evaluated. Tickable Always objects do not call IsTickable and assume it will return true. Tickable Conditional objects work as in the past with IsTickable called each frame to make the determination whether to call Tick or not.
IsTickable no longer a pure virtual (defaults to true).
Applied fixes to avoid array corruption when a FTickableEditorObject is deleted during the tick phase consistent with previous fixes to FTickableGameObject.
Change 3638554 by Marc.Audy
Add enum expansion functional test to validate that the metadata ExpandEnumAsExecs works as expected.
Change 3676502 by Ben.Zeigler
Add Blueprint-only primary asset type to EngineTest, to cover testing UE-50635
[CL 3718205 by Marc Audy in Main branch]
#lockdown Nick.Penwarden
#rb none
==========================
MAJOR FEATURES + CHANGES
==========================
Change 3386262 on 2017/04/10 by Ben.Marsh
Add app-local deployment of DirectX components that are no longer included with newer versions of Windows by default (XAudio 2.7, XInput 1.3). Also add a one-click button to the packaging settings to include the default app-local dependencies, rather than having to specify the path.
Change 3386999 on 2017/04/10 by Ben.Marsh
Plugins: Add support for explicit dependencies from one plugin onto another. Required plugins can be configured in an identical manner to project files, by adding a "Plugins" key to the .uplugin file. Dependencies are automatically built and loaded, and the plugin browser will warn if you try to disable a plugin that something else has a dependency on.
Change 3387073 on 2017/04/10 by Ben.Marsh
Move FLightPropagationRuntimeSettings into the Renderer module, to remove engine dependency on a plugin.
Change 3387988 on 2017/04/11 by Steve.Robb
Comments added to clarify the role of DestructItem and DestructItems.
Change 3388085 on 2017/04/11 by Ben.Marsh
UBT: Fix bEnabled flag on plugin references being ignored. Now collect up all the plugin references in order of priority before creating plugin instances for them. Fixes CIS fail for UT.
Change 3390048 on 2017/04/12 by Richard.Hinckley
#jira UE-43876
Fixed description of Streaming settings (within Project Settings).
Change 3390697 on 2017/04/12 by Steve.Robb
CLASS_PointersDefaultToAutoWeak and CLASS_PointersDefaultToWeak removed.
Change 3390711 on 2017/04/12 by Steve.Robb
AGRESSIVE_ARRAY_FORCEINLINE removed.
Change 3392167 on 2017/04/13 by Robert.Manuszewski
UObject can be added to GC cluster only if all of its Outers can also be added to it.
Fixing asserts caused by components that are added to GC clusters even if their owner actors that can't be in GC clusters.
#jira UE-42948
Change 3392309 on 2017/04/13 by Robert.Manuszewski
When adding objects to clusters after these clusters have been created it's possible to come across objects that are already in the cluster we're adding the object to so instead of crashing, allow it.
Change 3392620 on 2017/04/13 by Ben.Marsh
UGS: Only check for updates every 5 minutes.
Change 3392623 on 2017/04/13 by Ben.Marsh
UGS: Only poll for new changes every 60 seconds.
Change 3392744 on 2017/04/13 by Ben.Marsh
UGS: Query changelist descriptions individually to determine whether changes affect code or content, to hopefully reduce Perforce server load.
Change 3392874 on 2017/04/13 by Ben.Marsh
UGS: Allow specifying regexes in the project config file which filters which changes to be displayed. Useful for changes submitted by build machines, updates to collections, etc...
Change 3392878 on 2017/04/13 by Ben.Marsh
Update UGS to version 1.96
Change 3395635 on 2017/04/17 by Ben.Marsh
UAT: Prefix log output from executing UAT commands through BuildGraph with the name of that command.
Change 3395655 on 2017/04/17 by Ben.Marsh
UAT: Add a command for syncing a DDC over the network (SyncDDC). Allows specifying a maximum size to copy, number of days worth of modified files to copy, and time limit not to be exceeded.
Change 3396989 on 2017/04/17 by Wes.Hunt
CrashReporter configurable tweaks.
* Added QueueWaitingTimeAlertThreshold (used to be hardcoded to 1 min).
- When the queue waiting time gets beyond this many seconds, trigger a slack alert message. Default is 10 min.
- Zero means never alert.
* Added DiskSpaceAvailableAlertInterval (used to be hardcoded to 1 day).
- Interval by which to report disk space availability.
- Default is never (Zero)
* Updated config file to match production config.
#codereview:jin.zhang
Change 3397656 on 2017/04/18 by Ben.Marsh
UBT: Allow modules to opt-out of getting the default include paths from being added, by setting bAddDefaultIncludePaths = false from their build.cs file.
Change 3397677 on 2017/04/18 by Robert.Manuszewski
PR #3167 : Adding more descriptive error text to DetatchLinker error check (by rooneym)
Change 3397722 on 2017/04/18 by Robert.Manuszewski
PR #2252: Increase linker reporting for failed imports (Contributed by FineRedMist)
Change 3397739 on 2017/04/18 by Richard.Hinckley
#jira UE-44100
Fixed SanitizePackageName() to remove double-slash, triple-slash, etc. from package names. Also updated CreatePackage() to call SanitizePackageName() before creating.
Change 3398023 on 2017/04/18 by Ben.Marsh
PR #3105: Cook/package with editor and debugger attached (Contributed by projectgheist)
Change 3398095 on 2017/04/18 by Ben.Marsh
PR #3051: Generate map file from UAT (Contributed by projectgheist)
Change 3398212 on 2017/04/18 by Ben.Marsh
PR #2915: UE-38232: Removed duplicate stats (Contributed by projectgheist)
Change 3399304 on 2017/04/19 by Ben.Marsh
UGS: Prevent editor target files being removed when running custom tools.
Change 3399306 on 2017/04/19 by Robert.Manuszewski
Moved InitPropertiesFromCustomList to UbLueprintGeneratedClass and made it thread safe
Change 3399729 on 2017/04/19 by Steve.Robb
Simple optimization to TBitArray::RemoveAt() when all removed bits are at the end of the array.
RemoveAtSwap() now simply decrements the count instead of calling RemoveAt().
Checks for a positive count added to RemoveAt() and RemoveAtSwap().
Change 3399750 on 2017/04/19 by Jin.Zhang
Order branch alphabetically #RB
Change 3400186 on 2017/04/19 by Steve.Robb
Per-header generated code.
Change 3401458 on 2017/04/20 by Steve.Robb
Static log categories moved out of headers to prevent duplicates when the header is included multiple times.
#jira UE-37507
Change 3401657 on 2017/04/20 by Gil.Gribb
UE4 - Simplified and reworked lock free lists and the task graph bringing all platforms under the same scheme.
Change 3401735 on 2017/04/20 by Gil.Gribb
UE4 - Updated apple platform atomics with a new clang version which is intended to be shared among all clang platforms.
Change 3403362 on 2017/04/21 by Steve.Robb
Algo::Sort() fixed to support C arrays.
Size+count versions of Also::IsSorted() deprecated.
Algo::IsSortedBy() added.
Algo::FindBy() added to allow an element to be found by projection.
Simplifications and generalizations.
Change 3404017 on 2017/04/21 by Ben.Marsh
Fix issue where referenced plugin descriptors were missing from console builds, and prevent monolithic builds from offering to disable missing plugins.
Change 3405299 on 2017/04/24 by Steve.Robb
Clarified the class of the incompatible function in the error message about incompatible BP event specifiers.
#jira UE-35106
Change 3405302 on 2017/04/24 by Ben.Marsh
UBT: Allow excluding documentation from generated project files, by setting <ProjectFileGenerator><bIncludeDocumentation>false</bIncludeDocumentation></ProjectFileGenerator> in the XML configuration file.
Change 3405629 on 2017/04/24 by Ben.Marsh
Rename CPPEnvironment to CppCompileEnvironment, to reflect the class name.
Change 3406431 on 2017/04/24 by Ben.Marsh
UAT: Fix incorrect handling of P4SubmitOptions when multiple values are present.
Change 3406670 on 2017/04/24 by Ben.Marsh
UBT: Enable warnings for classes with virtual functions and no virtual destructor (C4265 on Windows, -fdelete-non-virtual-dtor on Clang).
Change 3407080 on 2017/04/25 by Gil.Gribb
UE4 - Critical fix: Propoerly disambiguate imports with the same name and the same outer name. This fixes an assert: LocalExportIndex.IsNull.
Change 3407486 on 2017/04/25 by Gil.Gribb
UE4 - Made changes so that servers, programs and non-engine executables do not create background or high priority threads.
Change 3407495 on 2017/04/25 by Gil.Gribb
UE4 - Tweaked out XBox and Windows low level file IO.
Change 3407497 on 2017/04/25 by Gil.Gribb
UE4 - Fixed bug in the pak precacher that would result in blocks being discarded too soon, which, in turn, resulted in redudnant reads.
Change 3407705 on 2017/04/25 by Ben.Marsh
Removing most of the junk in DotNETUtilities.
Change 3409701 on 2017/04/26 by Ben.Marsh
Disable another static analyzer warning for third party libraries.
Change 3410074 on 2017/04/26 by Daniel.Lamb
Network platform file runs heart beats and responds to modified file changes.
Cook on the fly server in the editor (COTS) now detects changes to content and notifies client.
Fixed issue with network platform file not using correct sandbox.
#test cook on the side shootergame
Change 3411131 on 2017/04/27 by Steve.Robb
TIsTriviallyDestructible now supports forward-declared enums.
Change 3411186 on 2017/04/27 by Steve.Robb
Fix for #includes in generated code for Within classes which are in a different module from the generated class.
Change 3411917 on 2017/04/27 by Steve.Robb
Fixes to pushing/popping the CPP macro.
Change 3411966 on 2017/04/27 by Steve.Robb
Include spam reduced in generated code.
Change 3412155 on 2017/04/27 by Ben.Marsh
Fix for PVS Studio warning: VFOVInRadians used instead of HFOVInRadians.
Change 3412223 on 2017/04/27 by Ben.Marsh
Fix for PVS-Studio warning: Calling SetHelperA.Num() twice.
Change 3412273 on 2017/04/27 by Ben.Marsh
Fix for PVS-Studio warning: Duplicated variable name.
Change 3412511 on 2017/04/27 by Ben.Marsh
PR #3462: Fixed PVS-Studio issues (Part 1) (Contributed by PaulEremeeff)
Change 3412582 on 2017/04/27 by Ben.Marsh
Fix for PVS-Studio warning: Incorrect variable name in copy/pasted code
Change 3413136 on 2017/04/28 by Robert.Manuszewski
Helper functions for dissolving specific GC clusters
Change 3413310 on 2017/04/28 by Ben.Marsh
Fix for PVS-Studio warning: Incorrect variable name in copy/pasted code.
Change 3413341 on 2017/04/28 by Gil.Gribb
UE4 - Add prestream capability to allow us to preload always loaded sublevels. Only turned on for Shootergame.
Change 3413351 on 2017/04/28 by Ben.Marsh
Include code analysis macros directly from Platform.h, so that macros are available to everything.
Change 3413352 on 2017/04/28 by Ben.Marsh
Fixing a few more PVS studio warnings.
Change 3413437 on 2017/04/28 by Ben.Marsh
Fix for PVS-Studio warning: Comparison is always true.
Change 3413759 on 2017/04/28 by Ben.Marsh
Suppressing warnings for PVS-Studio.
Change 3413784 on 2017/04/28 by Ben.Marsh
Fix PVS-Studio warning.
Change 3413898 on 2017/04/28 by Ben.Marsh
Fix PVS-Studio warning: Same conditional is checked twice.
Change 3413915 on 2017/04/28 by Ben.Marsh
Fix PVS-Studio warning: LHS of expression is identical to RHS.
Change 3413989 on 2017/04/28 by Ben.Marsh
Fix for PVS-Studio warning: If CurrentGraph->SubGraphs.Num() == 1, it will always enter the first conditional block.
Change 3414053 on 2017/04/28 by Ben.Marsh
More PVS-Studio fixes.
Change 3414062 on 2017/04/28 by Ben.Marsh
Fix for PVS-Studio warning: Pointer to object goes out of scope without being freed.
Change 3414070 on 2017/04/28 by Ben.Marsh
Fix for PVS-Studio warning: Fix incorrect condition.
Change 3414071 on 2017/04/28 by Ben.Marsh
Fix for PVS-Studio warning: Array index is always zero.
Change 3414116 on 2017/04/28 by Ben.Marsh
BuildGraph: Allow marking compile tasks as unsuitable for use with the parallel executor, via an AllowParallelExecutor="false" attribute.
Change 3414160 on 2017/04/28 by Ben.Marsh
Add support for running PVS-Studio through UnrealBuildTool. To use, pass -StaticAnalyzer=PVSStudio to the build command line (similarly, the Visual C++ analyzer can now be invoked using -StaticAnalyzer=VisualCpp). A log file will be written to the Engine/Saved/PVS-Studio or <Project>/Saved/PVS-Studio directory containing diagnostics, which can be opened using the "unparsed output" filter in the PVS-Studio standalone application. High priority warnings are printed to stdout.
Change 3414237 on 2017/04/28 by Ben.Marsh
EC: Allow disabling and enabling the log preprocessor via special markers in the log.
To disable: <-- Suspend Log Parsing -->
To enable: <-- Resume Log Parsing -->
Change 3414343 on 2017/04/28 by Ben.Marsh
UBT: Exclude ThirdParty folders from PVS output.
Change 3414392 on 2017/04/28 by Ben.Marsh
Fix regular strings being casted to BSTRs; BSTRs have a hidden length prefix in the two bytes before the first character, so passing a regular TCHAR* is reading random memory.
Change 3414459 on 2017/04/28 by Ben.Marsh
Fix for PVS-Studio warning: Object goes out of scope without being freed.
Change 3414495 on 2017/04/28 by Ben.Marsh
Suppress some more PVS-Studio warnings.
Change 3414514 on 2017/04/28 by Ben.Marsh
Fix for PVS-Studio warning: Testing WorldType being equal to EditorPreview and not equal to Inactive is redundant; changing to match description in comment instead.
Change 3414526 on 2017/04/28 by Ben.Marsh
Fix for PVS-Studio warning: Variable assigned to itself has no effect.
Change 3415183 on 2017/04/29 by Ben.Marsh
Fix conflict in macro definitions for ENABLE_HTTP_FOR_NFS - rename the macro defined by NetworkFile to ENABLE_HTTP_FOR_NF. Hopefully fix CIS.
Change 3415765 on 2017/05/01 by Ben.Marsh
Suppressing PVS-Studio warning to get things building cleanly. Not sure if FContentHelper is being leaked or not.
Change 3415853 on 2017/05/01 by Ben.Marsh
EC: Fix jobs never completing if a "Sync & Build" step fails. Dependent jobs should evaluate their run conditions as soon as the parent step finishes, rather than waiting for child job steps to be created.
Change 3416138 on 2017/05/01 by Ben.Marsh
Fix Fortnite cook failures. Not sure what the exact problem is here, but my hunch is that discarded "const" causes blueprint compile failures due to not being able to connect output pins between nodes for overloaded functions, or something like that.
Change 3416309 on 2017/05/01 by Ben.Marsh
Build: Fix node names for static analysis.
Change 3416360 on 2017/05/01 by Ben.Marsh
UBT: Remove unused arguments to PrepForUATPackageOrDeploy for Windows.
Change 3416398 on 2017/05/01 by Daniel.Lamb
Cook on the fly NetworkFileServerConnection Remove FileModifiedCallback delegate when the connection is closed.
#test Cook on the side shootergame.
Change 3416826 on 2017/05/01 by Daniel.Lamb
Added callback to game when files are requested reload from networkfileserver.
Game will need to unload / reload effected objects.
Working on simple reload capability in shootergame.
#test Cook on the side shootergame with reloading
Change 3417983 on 2017/05/02 by Ben.Marsh
EC: Remove warning for lines not matching p4 tag syntax when running preflights; multi-line descriptions in shelved changelists break this pattern.
Change 3418747 on 2017/05/02 by Steve.Robb
Fix for const pointer properties.
Fix for UHT debugging manifest.
Test added for pointer properties.
Change 3420477 on 2017/05/03 by Gil.Gribb
UE4 - Removed check from windows async IO layer.
[CL 3421020 by Ben Marsh in Main branch]
#lockdown Nick.Penwarden
#rb none
==========================
MAJOR FEATURES + CHANGES
==========================
Change 3229011 on 2016/12/09 by Steve.Robb
Licensee version updated in FWorldTileInfo::Read().
https://udn.unrealengine.com/questions/325874/fworldtileinfo-not-passing-fileversionlicenseeue4.html
Change 3230493 on 2016/12/12 by Robert.Manuszewski
Adding a check against assembling the reference token stream while streaming without locking GC.
Change 3230515 on 2016/12/12 by Steve.Robb
GetStaticEnum and GetStaticStruct removed.
Various generated code tidy-ups.
Change 3230522 on 2016/12/12 by Steve.Robb
UHT no longer complains about bases with different prefixes.
References to obsolete DependsOn removed.
Change 3230528 on 2016/12/12 by Steve.Robb
ReferenceChainSearch tidyups.
Change 3234235 on 2016/12/14 by Robert.Manuszewski
PR #2695: fix comments (Contributed by wyhily2010)
Change 3234237 on 2016/12/14 by Robert.Manuszewski
PR #2614: [GenericPlatformFile] New Function, GetTimeStampLocal, returns file time stamp in local time instead of UTC Rama (Contributed by EverNewJoy)
Change 3236214 on 2016/12/15 by Robert.Manuszewski
PR# 1988 : Allow absolute path in -UserDir=<Path> argument (contributed by bozaro)
Change 3236582 on 2016/12/15 by Robert.Manuszewski
Allow commandline use in shipping builds
#jira UE-24613
Change 3236591 on 2016/12/15 by Robert.Manuszewski
Removed unnecessary console variable logspam
#jira UE-24614
Change 3236737 on 2016/12/15 by Steve.Robb
Fixes to non-contiguous enums in OSS.
Change 3239686 on 2016/12/19 by Chris.Wood
Fixed CompressionHelper method UE4CompressFileGZIP() that leaked a file handle when a compression error occurred (CRP v1.2.12)
[UE-39910] - CrashReportProcess leaks file handles and doesn't cleanup folders after compression fails during output to S3
Change 3240687 on 2016/12/20 by Chris.Wood
Improved CrashReportProcess retry logic to avoid stuck threads when CRW fails to add crashes (CRP 1.2.13)
[UE-39941] - Improve CrashReportProcess retry logic when CR website returns failed response to AddCrash Request
Change 3246347 on 2017/01/04 by Steve.Robb
Readability, debuggability and standards improvements.
Change 3249122 on 2017/01/06 by Steve.Robb
Generic FPaths::Combine, allowing a mix of string argument types and unlimited arity.
Change 3249580 on 2017/01/06 by Steve.Robb
Fix for TArray::HeapSort when array contains pointers.
See: https://answers.unrealengine.com/questions/545533/bug-heapsort-with-tarray-of-pointers-fails-to-comp.html
Change 3250593 on 2017/01/09 by Robert.Manuszewski
PR #3046: UE-39578: Added none to invalid filenames (Contributed by projectgheist)
Change 3250596 on 2017/01/09 by Robert.Manuszewski
PR #3094: Fixing typo in comments for LODColoration in BaseEngine.ini - UE-40196 (Contributed by sanjay-nambiar)
Change 3250599 on 2017/01/09 by Robert.Manuszewski
PR #3096: Fixed Log message in ExclusiveLoadPackageTimeTracker : UE-37583 (Contributed by sanjay-nambiar)
Change 3250863 on 2017/01/09 by Steve.Robb
Build configuration option to force the use of the Debug version of UnrealHeaderTool.
Change 3250994 on 2017/01/09 by Ben.Zeigler
Remove bad or redundant ini redirects. These did not work with the old system but were silently ignored, my new system throws warnings about them
Change 3251000 on 2017/01/09 by Ben.Zeigler
#jira UE-39599 Add FCoreRedirects which replaces and unifies the redirect systems in LinkerLoad, K2Node, Enum, and TaggedProperty. This fixes various bugs and makes things uniform.
It will parse the previous ini files, or load out of a [CoreRedirects] section in any loaded ini file
The old redirect system can be re-enabled by setting USE_CORE_REDIRECTS to 0 in CoreRedirects.h. This will be removed eventually
Some refactors to pass in information needed by the new system that the old system didn't need
Add LoadTimeVerbose stats for processing redirects and enable that group during -LoadTimeFile
Change 3253580 on 2017/01/11 by Graeme.Thornton
Added some validation of the class index in exportmap entries
#jira UE-37873
Change 3253777 on 2017/01/11 by Graeme.Thornton
Increase SerialSize and SerialOffset in FObjectExport to 64bits, to handle super large files
#jira UE-39946
Change 3257750 on 2017/01/13 by Ben.Zeigler
Fix issue where incorrectly set up animation node redirects (were ActiveClassRedirects, should have been ActiveStructRedirects) didn't work in the new redirect system because it validated more.
Added backward compatibilty code and fixed some conflicts in the ini.
Change 3261176 on 2017/01/17 by Ben.Zeigler
#jira UE-40746 Fix redundant ini redirect
#jira UE-40725 Fix section of Match3 defaultengine.ini that appears to have been accidentally duplicated from baseengine.ini several years ago
Change 3261915 on 2017/01/18 by Steve.Robb
Fixes to localized printf formats.
Change 3262142 on 2017/01/18 by Ben.Zeigler
Remove runtime code for old ActiveClassRedirects and related systems.
It was already disabled and the old ini format is still parsed and converted to FCoreRedirects at runtime so there should be no functionality change.
Merged the deprecated tagged property and enum redirect ini parsing into LinkerLoad, and remove the RemapImports step entirely as it's part of FixupImportMap.
Change 3263596 on 2017/01/19 by Gil.Gribb
UE4 - Fixed many bugs with the event driven loader and allowed it to work at boot time.
Change 3263597 on 2017/01/19 by Gil.Gribb
UE4 - Allowed UnrealPak to do a better job with EDL pak files when the order provided is old or from the cooker. Several minor tweaks to low level async IO stuff in support of switch experiments.
Change 3263922 on 2017/01/19 by Gil.Gribb
UE4 - Fixed a bug with nativized blueprints that was introduced with the boot time EDL changes.
Change 3264131 on 2017/01/19 by Robert.Manuszewski
Simple app to test hard to repro bugs
Change 3264849 on 2017/01/19 by Ben.Zeigler
Change FParse::Value to treat ) like , for parsing to handle config parsing struct format. This fixes cases where lines end with bool or FName variables that aren't written out quoted:
+ClassRedirects=(OldName="LandscapeProxy",NewName="LandscapeStreamingProxy",InstanceOnly=True)
Change 3265232 on 2017/01/19 by Ben.Zeigler
#jira UE-39599 Finish class redirect refactor by cleaning up BaseEngine.ini
Move plugin-specific redirects to new plugin ini files
Move all redirects from BaseEngine.ini prior to 4.11 to native registration in FCoreRedirects. Needed to split up functions to avoid long compile times
Move all redirects after 4.11 to new ini format
Some related blueprint fixup code changes, these weren't cooperating well with some ini redirects
Change 3265490 on 2017/01/20 by Steve.Robb
Prevent engine reinstancing on hot reload.
#jira UE-40765
Change 3265593 on 2017/01/20 by Gil.Gribb
UE4 - Stored a copy of the callback in async read request so that we don't need to worry about lifetime so we can capture variables as needed. Also fixed race in audio streaming.
Change 3266003 on 2017/01/20 by Gil.Gribb
UE4 - Fixed bug which would cause a fatal error when cooking subobjects that were pending kill.
Change 3267433 on 2017/01/22 by Gil.Gribb
UE4 - Fixed a bug with EDL at boot time which caused a fatal error with unfired imports.
Change 3267677 on 2017/01/23 by Steve.Robb
Fix for whitespace before UCLASS() causing compile errors.
#jira UE-24110
Change 3267685 on 2017/01/23 by Steve.Robb
First pass of fixes to printf-style calls to only use TCHAR[] specifiers.
Change 3267746 on 2017/01/23 by Steven.Hutton
Resolve offline work
Changes to repositories to support better handling of db connections.
Change 3267865 on 2017/01/23 by Steve.Robb
Clarification of TArray::FindLastByPredicate() and FString::FindLastCharByPredicate().
#fyi nick.darnell
Change 3268075 on 2017/01/23 by Gil.Gribb
UE4 - Fixed another bug with RF_PendingKill subobjects and the new loader.
Change 3268447 on 2017/01/23 by Gil.Gribb
Fortnite - Removed calls to ::StaticClass() before main starts; this is not allowed.
Change 3269491 on 2017/01/24 by Gil.Gribb
UE4 - Cancelling async loading with the EDL loader now prints a warning and does a flush instead.
Change 3269492 on 2017/01/24 by Gil.Gribb
UE4 - Suppressed a few EDL cook wanrings.
Change 3270085 on 2017/01/24 by Gil.Gribb
UE4 - Remove pak highwater spam.
Change 3270089 on 2017/01/24 by Gil.Gribb
UE4 - fix random bug with memory counting and some vertex buffer
Change 3271246 on 2017/01/25 by Chris.Wood
Fixed CrashReportProcess pipeline for Mac and Linux crashes lacking machine Ids (CRP v1.2.14)
[UE-40605] - Machine ID is not being shown on the crashreporter website
Change 3271827 on 2017/01/25 by Steve.Robb
C4946 warning disabled in third party headers (triggers in Clang/LLVM).
Change 3271874 on 2017/01/25 by Steve.Robb
Fix for missing error check after header preparsing.
Change 3271911 on 2017/01/25 by Steve.Robb
ObjectMacros.h now automatically included by generated headers.
#fyi jamie.dale
Change 3273125 on 2017/01/26 by Steve.Robb
Check to ensure that a .generated.h header is included by headers which have exported types, to avoid crazy compiler errors.
#fyi james.golding
Change 3273209 on 2017/01/26 by Steve.Robb
UnrealCodeAnalyzer compilation fixes.
Change 3274917 on 2017/01/27 by Steve.Robb
GC disabled when recompiling child BPs, as is already the case for the parent (CL# 2731120).
Now-unused field removed.
Change 3279091 on 2017/01/31 by Ben.Marsh
UBT: Remove code paths which assume relative paths based on a particular CWD. Use the absolute paths stored in UnrealBuildTool.RootDirectory/UnrealBuildTool.EngineDirectory instead.
Change 3279195 on 2017/01/31 by Gil.Gribb
Turned EDL on for orion
Change 3279493 on 2017/01/31 by Ben.Zeigler
#jira UE-41341 Redo redirector fixups that got undone in merge from Main
Change 3280284 on 2017/01/31 by Ben.Zeigler
#jira UE-41357 Fix typo in vehicle redirect. Also fix base crash when converting old content with nodes that don't exist.
Fix issues with loading plugin ini files. They weren't properly "diffing" against the base/default source file so my redirect typo fix didn't propagate.
Some general config system refactors on Josh's advice, and make base.ini optional if reading out of a non-standard engine directory
Engine plugin ini are now BasePlugin.ini, game plugins are still DefaultPlugin.ini.
Fix crash when loading old content pointing to nonexistent node type. It will still error/ensure but won't crash.
Change 3280299 on 2017/01/31 by Gil.Gribb
possibly fix edl at boot with orion server....though was no-repro
Change 3280386 on 2017/01/31 by Ben.Zeigler
Header include fixes for -nopch, fixes incremental build
Change 3280557 on 2017/01/31 by Ben.Zeigler
Fix Config crash. FConfigFile's copy constructor is apparently not safe and resulted in garbage memory in some cases
Change 3280817 on 2017/02/01 by Steve.Robb
Unused SmartCastProperty removed.
Change 3280897 on 2017/02/01 by Chris.Wood
Improved CRP shutdown code to abort AddCrash requests when cancel is requested (CRP v1.2.15)
[UE-41338] - Fix CRP shutdown when website isn't accepting new crashes
Also, improved shutdown code to try to avoid occassional exception when writing out the report index. Looks like it isn't shutting down worker threads cleanly sometimes. Added more logging to this too.
Change 3280989 on 2017/02/01 by Gil.Gribb
New unrealpak binaries
Change 3281416 on 2017/02/01 by Michael.Trepka
Updated UnrealPak binaries for Mac
Change 3282457 on 2017/02/01 by Ben.Zeigler
#jira UE-41425 Protect against issues with streamable manager requests recursively completing by caching the array locally.
This code is safer in general in my local version so just doing a quick fix for now
Change 3282619 on 2017/02/01 by Arciel.Rekman
Linux: update UnrealPak.
[CL 3283649 by Ben Marsh in Main branch]
#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]
#lockdown Nick.Penwarden
#rb None
==========================
MAJOR FEATURES + CHANGES
==========================
Change 3170086 on 2016/10/20 by Dan.Oconnor
PR #2760: UE-35454: Vector2D sets default value (Contributed by projectgheist)
#jira UE-35454, UE-35499
Change 3175577 on 2016/10/26 by Dan.Oconnor
Back out changelist 3170086 - this change is incompatible with existing default values on EdGraphNodes
Change 3178243 on 2016/10/28 by Ryan.Rauschkolb
BP Profiler: Fixed crash when profiling InputKeyEvents
#jira UE-37392
Change 3178702 on 2016/10/28 by Dan.Oconnor
Implement UStructProperty::GetValueTypeHashInternal
#jira UE-2114
Change 3178812 on 2016/10/28 by Dan.Oconnor
Improved map pin compatabiliity checks (can no longer connect maps to non-container wildcards, connect unrelated map types), properly setting HasGetValueTypeHash for blueprint generated properties, preventing compilation of Set and Map properties that have unhashable members
Change 3179999 on 2016/10/31 by Ryan.Rauschkolb
BP Profiler: Fixed issue where Tunnel boundaries weren't being created for each entry/exit pin
Change 3180700 on 2016/10/31 by Dan.Oconnor
Typo fix, referred to as Key, when property in question is a value type for a map
Change 3181014 on 2016/11/01 by Mike.Beach
Preventing the Blueprint compiler from erroring on missing delegate variables, when the expected member belongs to another Blueprint that hasn't been compiled-on-load yet (the Blueprint was possibly saved without compiling, so the expected delegate may be there).
#jira UE-37679
Change 3182378 on 2016/11/01 by Dan.Oconnor
Correctly handle non-native structs, which are currently always hashable
Change 3182440 on 2016/11/01 by Dan.Oconnor
SA fix - introduced by 3178812
Change 3183764 on 2016/11/02 by Ryan.Rauschkolb
Collapsing nodes to function now only links gateway pins to the result node if existing links weren't transferred over.
#jira UE-23381
Change 3184306 on 2016/11/02 by Dan.Oconnor
Fix for TSet pins being connectable to ArrayDependentParams (e.g. Item node on a Add to Array node)
Change 3184310 on 2016/11/02 by Dan.Oconnor
Add BlueprintMapLibrary. Rename RemoveAt_NeedsRehash functions, as they do properly unlink elements in a Map/Set. Implement FScriptSetHelper::Remove in terms of Find and RemoveAt. Correct iteration of Sets in BlueprintSetLibrary.
Change 3185317 on 2016/11/03 by Ryan.Rauschkolb
Fixed crash when collapsing nodes
Change 3185482 on 2016/11/03 by Dan.Oconnor
Remove superfluous branch
Change 3185493 on 2016/11/03 by Mike.Beach
Guarding against missing variable errors/warnings (when two Blueprints are cyclically dependent and the one with variables was saved without compiling variables in).
Change 3185501 on 2016/11/03 by Mike.Beach
Remove [EditoronlyBP] settings from the engine. These were old legacy settings which let you use/export editor-only UBlueprint objects in cooked projects (was deprecated in 4.14, now gone for 4.15).
#jira UE-37967
Change 3186924 on 2016/11/04 by Maciej.Mroz
BP nativization works with EDL. Part 1. Work n progress.
Change 3188920 on 2016/11/07 by Phillip.Kavan
[UE-30735] Hide 'EditInstanceOnly' properties when viewing/editing SCS component defaults in the Blueprint editor.
change summary:
- modified SKismetInspector::IsPropertyVisible() to leverage the IsTemplate() API which checks both CDO/archetype flags.
#jira UE-30735
Change 3190417 on 2016/11/08 by Dan.Oconnor
Unified compact node style, added icons for Set and Map library functions.
#jira UE-2114
Change 3190429 on 2016/11/08 by Dan.Oconnor
Shadowvariable fixes
Change 3190465 on 2016/11/08 by Dan.Oconnor
Test asset updates
Change 3190984 on 2016/11/08 by Mike.Beach
CIS fix for static analysis.
Change 3191035 on 2016/11/08 by Dan.Oconnor
Disabling changing replication behavior for Set and Map Properties - networking has no near term plan to support this
#jira UE-2114
Change 3191059 on 2016/11/08 by Dan.Oconnor
UE-27728 test assets
Change 3191671 on 2016/11/09 by Maciej.Mroz
EDL + Nativization. Fake export for CDO. Work in progress.
Change 3192327 on 2016/11/09 by Mike.Beach
Fixing up CIS compiler error.
Change 3192464 on 2016/11/09 by Mike.Beach
More CIS fixes for static analysis.
Change 3193467 on 2016/11/10 by Mike.Beach
Adding a Blueprint function to get the process's commandline.
Change 3193822 on 2016/11/10 by Ben.Marsh
Build: Replace Fortnite Win32 compile with UE4Game Win32. Fortnite aren't shipping Win32 any more.
Change 3194088 on 2016/11/10 by Dan.Oconnor
Disabling SA warning at this scope in order to hopefully improve messaging
Change 3194222 on 2016/11/10 by Dan.Oconnor
Better fix for SA error after taking a look at crash reporter and finding a rare crash in IsTypeCompatibleWithProperty
[CL 3194231 by Dan Oconnor in Main branch]
==========================
MAJOR FEATURES + CHANGES
==========================
Change 2955635 on 2016/04/26 by Max.Chen
Sequencer: Fix filtering so that folders that contain filtered nodes will also appear.
#jira UE-28213
Change 2955617 on 2016/04/25 by Dmitriy.Dyomin
Better fix for: Post processing rendering artifacts Nexus 6
this device on Android 5.0.1 does not support BGRA8888 texture as a color attachment
#jira: UE-24067
Change 2955522 on 2016/04/25 by Max.Chen
Sequencer: Fix crash when resolving object guid and context is null.
#jira UE-29916
Change 2955504 on 2016/04/25 by Alexis.Matte
#jira UE-29926
Fix build error for SplineComponent. I just move variable under #if !UE_BUILD_SHIPPING instead #if WITH_EDITORONLY_DATA to fix all build flavor, please feel free to adjust according to what the initial fix was suppose to do.
Change 2955500 on 2016/04/25 by Dan.Oconnor
Integration of 2955445 from Dev-BP
#jira UE-29012
Change 2955234 on 2016/04/25 by Lina.Halper
Fixed tool tip of twist node
#jira : UE-29907
Change 2955211 on 2016/04/25 by Ben.Marsh
Exclude all plugins which aren't required for a project (ie. don't have any content or modules for the current target) from its target receipt. Prevents dependencies on .uplugin files whose dependencies are otherwise compiled out. Re-enable PS4Media plugin by default.
#jira UE-29842
Change 2955155 on 2016/04/25 by Jamie.Dale
Fixed an issue where text committed via a focus loss might not display the correct text if it was changed during commit
#jira UE-28756
Change 2955144 on 2016/04/25 by Jamie.Dale
Fixed a case where editable text controls would fail to select their text when focused
There was an order of operations issue between the options to select all text and move the cursor to the end of the document, which caused the cursor move to happen after the select all, and undo the selection. The order of these operations has now been flipped.
#jira UE-29818
#jira UE-29772
Change 2955136 on 2016/04/25 by Chad.Taylor
Merging to 4.12:
Morpheus latency fix. Late update tracking frame was getting unnecessarily buffered an extra frame on the RHI thread. Removed buffering and the issue is fixed.
#jira UE-22581
Change 2955134 on 2016/04/25 by Lina.Halper
Removed code that blocks moving actor when they don't have physics asset
#jira : UE-29796
#code review: Benn.Gallagher
Change 2955130 on 2016/04/25 by Zak.Middleton
#ue4 - (4.12) Don't reject low distance MTD, it could cause us to not process some valid overlaps.
(copy of 2955001 in Main)
#jira UE-29531
#lockdown Nick.Penwarden
Change 2955098 on 2016/04/25 by Marc.Audy
Don't spawn a child actor on the client if the server is going to have created one and be replicating it to the client
#jira UE-7539
Change 2955049 on 2016/04/25 by Richard.TalbotWatkin
Changes to how SplineComponents debug render. Added a SetDrawDebug method to control whether a spline is rendered. Also extended the facility to non-editor builds.
#jira UE-29753 - Add ability to display a SplineComponent in-game
Change 2955040 on 2016/04/25 by Chris.Gagnon
Fixed Initializer Order Warning in hot reload ctor.
#jira UE-28811, UE-28960
Change 2954995 on 2016/04/25 by Marc.Audy
Make USceneComponent::Pre/PostNetReceive and PostRepNotifies protected instead of private so that subclasses can implement replication behaviors
#jira UE-29909
Change 2954970 on 2016/04/25 by Peter.Sauerbrei
fix for openwrite with O_APPEND flag
#jira UE-28417
Change 2954917 on 2016/04/25 by Chris.Gagnon
Moved a desired change from Main to 4.12
Added input settings to:
- control if the viewport locks the mouse on acquire capture.
- control if the viewport acquires capture on the application launch (first window activate).
#jira UE-28811, UE-28960
parity with 4.11 (UE-28811, UE-28960 would be reintroduced without this)
Change 2954908 on 2016/04/25 by Alexis.Matte
#jira UE-29478
Prevent modal dialog to use 100% of a core
Change 2954888 on 2016/04/25 by Marcus.Wassmer
Fix compile issue with chinese locale
#jira UE-29708
Change 2954813 on 2016/04/25 by Lina.Halper
Fix when not re-validating the correct asset
#jira : UE-29789
#code review: Martin.Wilson
Change 2954810 on 2016/04/25 by mason.seay
Updated map to improve coverage
#jira UE-29618
Change 2954785 on 2016/04/25 by Max.Chen
Sequencer: Always spawn sequencer spawnables. Disregard collision settings.
#jira UE-29825
Change 2954781 on 2016/04/25 by mason.seay
Test map for Audio Occlusion trace channels
#jira UE-29618
Change 2954684 on 2016/04/25 by Marc.Audy
Add GetIsReplicated accessor to AActor
Deprecate specific GameplayAbility class implementations that was exposing bReplicates
#jira UE-29897
Change 2954675 on 2016/04/25 by Alexis.Matte
#jira UE-25430
Light Intensity value in FBX is a ratio. So I just multiply the default intensity value by the ratio to have something closer to the look in the DCCs
Change 2954669 on 2016/04/25 by Alexis.Matte
#jira UE-29507
Import of rigid mesh animation is broken
Change 2954579 on 2016/04/25 by Ben.Marsh
Temporarily stop the PS4Media plugin being enabled by default, so the UE4Game built for the binary release doesn't depend on it. Will implement whitelist/blacklist for platforms later.
#jira UE-29842
Change 2954556 on 2016/04/25 by Taizyd.Korambayil
#jira UE-29877 Setup ThirdPersonCharacter based on correct Code Class
Change 2954552 on 2016/04/25 by Taizyd.Korambayil
#jira UE-29877 Deleting BP class
Change 2954498 on 2016/04/25 by Ryan.Gerleve
Fix for remote player controllers reporting that they're actually local player controllers after a seamless travel on the server.
Transition actors to the new level in a second pass after non-transitioning actors are handled.
#jira UE-29213
Change 2954446 on 2016/04/25 by Max.Chen
Sequencer: Fixed spawning actors with instance or multiple owned components
- Also fixed issue where recorded actors were sometimes set as transient, meaning they didn't get saved
#jira UE-29774, UE-29859
Change 2954430 on 2016/04/25 by Marc.Audy
Don't schedule a tick function with a tick interval that was disabled while it was pending rescheduling
#jira UE-29118
#jira UE-29747
Change 2954292 on 2016/04/25 by Richard.TalbotWatkin
Replicated from //UE4/Dev-Editor CL 2946363 (by Frank.Fella)
CurveEditorViewportClient - Bounds check when box selecting. Prevents crashing when the box is outside the viewport.
#jira UE-29265 - Crash when drag selecting curve keys in matinee
Change 2954262 on 2016/04/25 by Graeme.Thornton
Fixed a editor crash when destroying linkers half way through a package EndLoad
#jira UE-29437
Change 2954239 on 2016/04/25 by Marc.Audy
Fix error message
#jira UE-00000
Change 2954177 on 2016/04/25 by Dmitriy.Dyomin
Fixed: Hidden surface removal is not enabled on PowerVR Android devices
#jira UE-29871
Change 2954026 on 2016/04/24 by Josh.Adams
[Somehow most files got unchecked in my previous checkin, grr]
- ProtoStar content/config updates (enabled TAA in the levels, disabled es2 shaders, hides the Unbuilt lighting warning on Android)
#lockdown nick.penwarden
#jira UE-29863
Change 2954025 on 2016/04/24 by Josh.Adams
- ProtoStar content/config updates (enabled TAA in the levels, disabled es2 shaders, hides the Unbuilt lighting warning on Android)
#lockdown nick.penwarden
#jira UE-29863
Change 2953946 on 2016/04/24 by Max.Chen
Sequencer: Fix crash on undo of a sub section.
#jira UE-29856
Change 2953898 on 2016/04/23 by mitchell.wilson
#jira UE-29618 Adding subscene_001 sequence for nonlinear workflow testing
Change 2953859 on 2016/04/23 by Maciej.Mroz
Merged from Dev-Blueprints 2953858
#jira UE-29790 Editor crashes when opening KiteDemo
Change 2953764 on 2016/04/23 by Max.Chen
Sequencer: Remove "Experimental" tag on the Level Sequence Actor
#jira UETOOl-625
Change 2953763 on 2016/04/23 by Max.Chen
Cinematics: Change text to "Edit Existing Cinematics"
#jira UE-29102
Change 2953762 on 2016/04/23 by Max.Chen
Sequencer: Follow up time slider hit testing fix. Don't hit test the selection range if it's empty. This was causing false positives when hovering close to the ranges.
#jira UE-29658
Change 2953652 on 2016/04/22 by Rolando.Caloca
UE4.12 - vk - Workaround driver bugs wrt texture format caps
#jira UE-28140
Change 2953596 on 2016/04/22 by Marcus.Wassmer
#jira UE-20276
Merging dual normal clearcoat shading model.
2863683
2871229
2876362
2876573
2884007
2901595
Change 2953594 on 2016/04/22 by Chris.Babcock
Disable crash handler for VulkanRHI on Android to prevent sig11 on loading driver
#jira UE-29851
#ue4
#android
Change 2953520 on 2016/04/22 by Rolando.Caloca
UE4.12 - vk - Enable deferred resource deletion
- Added one resource heap per memory type
- Improved DumpMemory()
- Added ensures for missing format features
#jira UE-28140
Change 2953459 on 2016/04/22 by Taizyd.Korambayil
#jira UE-29748 Resaved Maps to Fix EC Build Warnings
#jira UE-29744
Change 2953448 on 2016/04/22 by Ryan.Gerleve
Fix Mac/Linux compile.
#jira UE-29545
Change 2953311 on 2016/04/22 by Ryan.Gerleve
Fix for infinite hang when loading a replay from within an actor tick while demo.AsyncLoadWorld is false. LoadMap for the replay is now deferred using the existing PendingNetGame mechanism.
Added virtual UPendingNetGame::LoadMapCompleted function so that the base PendingNetGame and DemoPendingNetGame can have different behavior.
To keep things simpler, also parse all replay metadata and streaming levels after the LoadMap call.
#jira UE-29545
Change 2953219 on 2016/04/22 by mason.seay
Test map for show collision features
#jira UE-29618
Change 2953199 on 2016/04/22 by Phillip.Kavan
[UE-29449] Fix InitProperties() optimization for Blueprint class instances when array property values differ in size.
change summary:
- improved UBlueprintGeneratedClass::BuildCustomArrayPropertyListForPostConstruction() by continuing to emit only delta entries for array values that exceed the default array value's size; previously we emitted a NULL in this case to signal a need to initialize all remaining array values in InitProperties(), even if they didn't differ from the default value of the inner property (which in most cases would already have been set at construction time, and thus potentially incurred a redundant copy iteration for each entry)
- modified FObjectInitializer::InitArrayPropertyFromCustomList() to no longer reset the array value on the instance prior to initialization
- added code to properly resize the array on the instance prior to initialization (if it differs in size from the default array value)
- removed code that handled a NULL property value in the custom property list stream (this is no longer necessary, see above)
- modified FObjectInitializer::InitProperties() to restore the post-construction optimization for Blueprint class instances (back to being enabled by default)
#jira UE-29449
Change 2953195 on 2016/04/22 by Max.Chen
Sequencer: Fix crash in actor reference track in the cached guid to actor map.
#jira UE-27523
Change 2953124 on 2016/04/22 by Rolando.Caloca
UE4.12 - vk - Increase temp frame buffer
#jira UE-28140
Change 2953121 on 2016/04/22 by Chris.Babcock
Rebuilt lighting for all levels
#jira UE-29809
Change 2953073 on 2016/04/22 by mason.seay
Test assets for notifies in animation composites and montages
#jira UE-29618
Change 2952960 on 2016/04/22 by Richard.TalbotWatkin
Changed eye dropper operation so that LMB click selects a color, and pressing Esc cancels the selection and restores the old color.
#jira UE-28410 - Eye dropper selects color without clicking
Change 2952934 on 2016/04/22 by Allan.Bentham
Ensure pool's refractive index >= 1
#jira UE-29777
Change 2952881 on 2016/04/22 by Jamie.Dale
Better fix for UE-28560 that doesn't regress thumbnail rendering
We now just silence the warning if dealing with an inactive world.
#jira UE-28560
Change 2952867 on 2016/04/22 by Thomas.Sarkanen
Fix issues with matinee-controlled anim instances
Regression caused by us no longer saving off the anim sequence between updates.
#jira UE-29812 - Protostar Neutrino spawns but does not Animate or move.
Change 2952826 on 2016/04/22 by Maciej.Mroz
Merged from Dev-Blueprints 2952820
#jira UE-28895 Nativizing a blueprint project causes the next non-nativizing package attempt to fail
Change 2952819 on 2016/04/22 by Josh.Adams
- Fixed crash in a Vulkan shader printout
#lockdown nick.penwarden
#jira UE-29820
Change 2952817 on 2016/04/22 by Rolando.Caloca
UE4.12 - vk - Revert back to simple layouts
#jira UE-28140
Change 2952792 on 2016/04/22 by Jamie.Dale
Removed some code that caused worlds loaded by the Content Browser to be initialized before they were ready
Supposedly this code existed for world thumbnail rendering, however only the active editor world generates a thumbnail, so initializing other worlds wasn't having any effect and thumbnails look identical to before.
#jira UE-28560
Change 2952783 on 2016/04/22 by Taizyd.Korambayil
#jira UE-28477 Resaved Flying Template Map
Change 2952767 on 2016/04/22 by Taizyd.Korambayil
#jira UE-29736 Resaved Map to Fix EC Warnings
Change 2952762 on 2016/04/22 by Allan.Bentham
Update reflection capture to contain only room5 content.
#jira UE-29777
Change 2952749 on 2016/04/22 by Taizyd.Korambayil
#jira UE-29740 Resaved Material and Map to Fix Empty Engine Version Error
Change 2952688 on 2016/04/22 by Martin.Wilson
Fix for BP notifies not displaying when they derive from an abstract base class
#jira UE-28556
Change 2952685 on 2016/04/22 by Thomas.Sarkanen
Fix CIS for non-editor builds
#jira UE-29308 - Fix crash from GC-ed animation asset
Change 2952664 on 2016/04/22 by Thomas.Sarkanen
Made up/down behaviour for console history consistent and reverted to old ordering by default
Pressing up or down now brings up history.
Sorting can now be optionally bottom-to-top or top-to-bottom. Default behaviour is preserved to what it was before the recent changes.
#jira UE-29595 - Console autocomplete behavior is non-intuitive / frustrating
Change 2952655 on 2016/04/22 by Jamie.Dale
Changed the class filter to use an expression evaluator
This makes it consistent with the other filters in the editor
#jira UE-29811
Change 2952647 on 2016/04/22 by Allan.Bentham
Back out changelist 2951539
#jira UE-29777
Change 2952618 on 2016/04/22 by Benn.Gallagher
Fixed naming error in rotation multiplier node
#jira UE-29583
Change 2952612 on 2016/04/22 by Thomas.Sarkanen
Fix garbage collection and undo/redo issues with anim instance proxy
UObject-based properties are now cached each update on the proxy and nulled-out outside of evaluate/update phases.
Moved some initialization code for CurrentAsset/CurrentVertexAnim from the proxy back to the instance (as its is encapsulated there now).
#jira UE-29308 - Fix crash from GC-ed animation asset
Change 2952608 on 2016/04/22 by Richard.TalbotWatkin
Changed 'Recently Used Levels' and 'Favorite Levels' to hold long package names instead of absolute paths. This means they are now project-relative and will remain valid even if the project location changes.
#jira UE-29731 - Editor map recent files are not project relative, leading to missing links when moving projects.
Change 2952599 on 2016/04/22 by Dmitriy.Dyomin
Disabled vulkan pipeline cache as it causes rendering artifacts right now
#jira UE-29807
Change 2952540 on 2016/04/22 by Maciej.Mroz
#jira UE-29787 Obsolete nativized files are never removed
merged from Dev-Blueprints 2952531
Change 2952372 on 2016/04/21 by Josh.Adams
- Fixed Vk memory allocations when reusing free pages
#lockdown nick.penwarden
#jira ue-29802
Change 2952350 on 2016/04/21 by Eric.Newman
Added support for UEReleaseTesting backends to Orion and Ocean
#jira op-3640
Change 2952140 on 2016/04/21 by Dan.Oconnor
Demoted back to warning to fix regressions in content examples, in main we've added the ability to elevate warnings to errors, but no reason to rush that feature into 4.12
#jira UE-28971
Change 2952135 on 2016/04/21 by Jeff.Farris
Fixed issue in PlayerCameraManager where the priority-based sorting of CameraModifiers wasn't sorting properly.
Manual re-implementation of CL 2948123 in 4.12 branch.
#jira UE-29634
Change 2952121 on 2016/04/21 by Lee.Clark
PS4 - 4.12 - Fix staging and deploying of system prxs
#jira UE-29801
Change 2952120 on 2016/04/21 by Rolando.Caloca
UE4.12 - vk - Move descriptor allocation to BSS
#jira UE-21840
Change 2952027 on 2016/04/21 by Rolando.Caloca
UE4.12 - vk - Fix descriptor sets lifetimes
- Fix crash with null texture
#jira UE-28140
Change 2951890 on 2016/04/21 by Eric.Newman
Updating locked common dependencies for OrionService
#jira OP-3640
Change 2951863 on 2016/04/21 by Eric.Newman
Updating locked dependencies for UE 4.12 OrionService
#jira OP-3640
Change 2951852 on 2016/04/21 by Owen.Stupka
Fixed meteors destruct location
#jira UE-29714
Change 2951739 on 2016/04/21 by Max.Chen
Sequencer: Follow up for integral keys.
#jira UE-29791
Change 2951717 on 2016/04/21 by Rolando.Caloca
UE4.12 - Fix shader platform names
#jira UE-28140
Change 2951714 on 2016/04/21 by Max.Chen
Sequencer: Fix setting a key if it already exists at the current time.
#jira UE-29791
Change 2951708 on 2016/04/21 by Rolando.Caloca
UE4.12 - vk - Separate upload cmd buffer
#jira UE-28140
Change 2951653 on 2016/04/21 by Marc.Audy
If a child actor component is destroyed during garbage collection, do not rename, instead clear the caching mechanisms so that a new name is chosen if a new child is created in the future
Remove now unused bRenameRequired parameter
#jira UE-29612
Change 2951619 on 2016/04/21 by Chris.Babcock
Move bCreateRenderStateForHiddenComponents out of WITH_EDITOR
#jira UE-29786
#ue4
Change 2951603 on 2016/04/21 by Cody.Albert
#jira UE-29785
Revert Github readme page back to original
Change 2951599 on 2016/04/21 by Ryan.Gerleve
Fix assert when attempting to record a replay when the map has a placed actor that writes replay external data (such as ACharacter)
#jira UE-29778
Change 2951558 on 2016/04/21 by Chris.Babcock
Always rename destroyed child actor
#jira UE-29709
#ue4
Change 2951552 on 2016/04/21 by James.Golding
Remove old code for handling 'show collision' in game, uses same method as editor now, fixes hidden meshes showing up in game when doing 'show collision'
#jira UE-29303
Change 2951539 on 2016/04/21 by Allan.Bentham
Use screenuv for distortion with ES2/31.
#jira UE-29777
Change 2951535 on 2016/04/21 by Max.Chen
We need to test if the hmd is enabled if it exists. Otherwise, this will return true even if we aren't rendering in stereo if there's an hmd plugin loaded.
#jira UE-29711
Change 2951521 on 2016/04/21 by Taizyd.Korambayil
#jira UE-29746 Replaced Deprecated Time Handler node in GameLevel_GM
Change 2951492 on 2016/04/21 by Jeremiah.Waldron
Fix for Android IAP information reporting back incorrectly.
#jira UE-29776
Change 2951486 on 2016/04/21 by Taizyd.Korambayil
#jira UE-29741 Updated Infiltrator Demo Project to open with the correct Map
Change 2951450 on 2016/04/21 by Gareth.Martin
Fix non-editor build
#jira UE-16525
Change 2951380 on 2016/04/21 by Gareth.Martin
Fix Landscape layer blend nodes not updating connections correctly when an input is changed from weight/alpha (one input) to height blend (two inputs) or vice-versa
#jira UE-16525
Change 2951357 on 2016/04/21 by Richard.TalbotWatkin
Fixed a crash when pushing a new menu leads to a window activation change which would result in the old root menu being dismissed.
#jira UE-27981 - [CrashReport] Crash When Attempting to Select Variable Type After Clearing the Name Field
Change 2951352 on 2016/04/21 by Richard.TalbotWatkin
Added slider bar thickness as a new property in FSliderStyle.
#jira UE-19173 - SSlider is not fully stylable
Change 2951344 on 2016/04/21 by Gareth.Martin
Fix bounds calculation for landscape splines that was causing the first landscape spline point to be invisible and later points to flicker.
- Also fixes landscape spline lines not showing up on a flat landscape
#jira UE-25114
Change 2951326 on 2016/04/21 by Taizyd.Korambayil
#jira UE-28477 Resaving Maps
Change 2951271 on 2016/04/21 by Jamie.Dale
Fixed a crash when pasting a path containing a class into the asset view of the Content Browser
#jira UE-29616
Change 2951237 on 2016/04/21 by Jack.Porter
Fix black screen on PC due to planar reflections
#jira UE-29664
Change 2951184 on 2016/04/21 by Jamie.Dale
Fixed crash in FCurveStructCustomization when no objects were selected for editing
#jira UE-29638
Change 2951177 on 2016/04/21 by Ben.Marsh
Fix hot reload from IDE failing when project is up to date. UBT returns an exit code of 2, and any non-zero exit code is treated as an error by Visual Studio. Build.bat was not correctly forwarding on the exit code at all prior to CL 2790858.
#jira UE-29757
Change 2951171 on 2016/04/21 by Matthew.Griffin
Fixed issue with Rebuild not working when installed in Program Files (x86)
The brackets seem to cause lots of problems in combination with the if/else ones
#jira UE-29648
Change 2951163 on 2016/04/21 by Jamie.Dale
Changed the text customization to use the property handle functions to get/set the text value
That ensures that it both transacts and notifies correctly.
Added new functions to deal with multiple objects selection efficiently with the existing IEditableTextProperty API:
- FPropertyHandleBase::SetPerObjectValue
- FPropertyHandleBase::GetPerObjectValue
- FPropertyHandleBase::GetNumPerObjectValues
These replace the need to cache the raw pointers.
#jira UE-20223
Change 2951103 on 2016/04/21 by Thomas.Sarkanen
Un-deprecated blueprint functions for attachment/detachment
Renamed functions to <FuncName> (Deprecated).
Hid functions in the BP context menu so new ones cant be added.
#jira UE-23216 - "Snap to Target, Keep World Scale" when attaching doesn't work properly if parent is scaled.
Change 2951101 on 2016/04/21 by Allan.Bentham
Enable mobile HQ DoF
#jira UE-29765
Change 2951097 on 2016/04/21 by Thomas.Sarkanen
Standalone games now benefit from parallel anim update if possible
We now simply use the fact we want root motion to determine if we need to run immediately.
#jira UE-29431 - Parallel anim update does not work in non-multiplayer games
Change 2951036 on 2016/04/21 by Lee.Clark
PS4 - Fix WinDualShock working with VS2015
#jira UE-29088
Change 2951034 on 2016/04/21 by Jack.Porter
ProtoStar: Removed content not needed by remaining maps, resaved all content to fix version 0 issues
#jira UE-29666
Change 2950995 on 2016/04/21 by Jack.Porter
ProtoStar - delete unneeded maps
#jira UE-29665
Change 2950787 on 2016/04/20 by Nick.Darnell
SuperSearch - Moving the settings object into a seperate plugin to avoid there needing to be a circular dependency between SuperSearch and UnrealEd.
#jira UE-29749
#codeview Ben.Marsh
Change 2950786 on 2016/04/20 by Nick.Darnell
Back out changelist 2950769 - Going to re-enable super search - about to move the settings into a plugin to prevent the circular reference.
#jira UE-29749
Change 2950769 on 2016/04/20 by Ben.Marsh
Comment out editor integration for super search to fix problems with the circular dependencies breaking hot reload and compiling QAGame in binary release.
Change 2950724 on 2016/04/20 by Lina.Halper
Support for negative scaling for mirroring
- Merging CL 2950718 using //UE4/Dev-Framework_to_//UE4/Release-4.12
#jira: UE-27453
Change 2950293 on 2016/04/20 by andrew.porter
Correcting sequencer test content
#jira UE-29618
Change 2950283 on 2016/04/20 by Marc.Audy
Don't route FlushPressedKeys on PIE shut down
#jira UE-28734
Change 2950071 on 2016/04/20 by mason.seay
Adjusted translation retargeting on head bone of UE4_Mannequin
-Needed for anim bp test. Tested animations and did not see any fallout from change. If there is, it can be reverted.
#jira UE-29618
Change 2950049 on 2016/04/20 by Mark.Satterthwaite
Undo CL #2949690 and instead on Mac where we want to be able to capture videos of gameplay we just insert an intermediate texture as the back-buffer and use a manual blit to the drawable prior to present. This also changes the code to enforce that the back-buffer render-target should never be nil as the code & Metal API itself assumes that this situation cannot occur but it would appear from continued crashes inside PrepareToDraw that it actually can in the field. This will address another potential cause of UE-29006.
#jira UE-29006
#jira UE-29140
Change 2949977 on 2016/04/20 by Max.Chen
Sequencer: Add FieldOfView to default tracks for CameraActor. Add FieldOfView to exclusion list for CineCameraActor.
#jira UE-29660
Change 2949836 on 2016/04/20 by Gareth.Martin
Fix landscape components flickering when perfectly flat (bounds size is 0)
- This often happens for newly created landscapes
#jira UE-29262
Change 2949768 on 2016/04/20 by Thomas.Sarkanen
Moving parent & grouped child actors now does not result in deltas being applied twice
Grouping and attachment now interact correctly.
Also fixed up according to coding standard.
Discovered and proposed by David.Bliss2 (Rocksteady).
#jira UE-29233 - Delta applied twice when moving parent and grouped child actors
From UDN: https://udn.unrealengine.com/questions/286537/moving-parent-grouped-child-actors-results-in-delt.html
Change 2949759 on 2016/04/20 by Thomas.Sarkanen
Fix split pins not working as anim graph node inputs
Limit surface area of this change by only modifying the anim BP compiler. A better version might be to move the call in the general blueprint compiler but it is riskier.
#jira UE-12326 - Splitting a struct in an Anim Blueprint does not work
Change 2949739 on 2016/04/20 by Thomas.Sarkanen
Fix layered bone per blend accessed from a struct in the fast-path
Made sure that the fallback event is always built (logic was still split so if PatchFunctionNamesAndCopyRecordsInto aborted because of some unhandled case if might not have an event to call).
Covered struct source->array dest case.
Indicator icon is now built from the copy record itself, ensuring it is accurate to actual runtime data.
#jira UE-29389 - Fast-Path: Layered Blend per Bone node failing to grab updated values from struct.
Change 2949715 on 2016/04/20 by Max.Chen
Sequencer: Fix mouse wheel zoom so it defaults to zooming in on the current time/frame. This is a toggleable option in the Editor Preferences (Zoom Position = Current Time or Mouse Position)
#jira UE-29661
Change 2949712 on 2016/04/20 by Taizyd.Korambayil
#jira UE-28544 adjusted Player crosshair to be centered
Change 2949710 on 2016/04/20 by Alexis.Matte
#jira UE-29477
Pixel Inspector, UI get polish and adding "scene color" inspect property
Change 2949706 on 2016/04/20 by Alexis.Matte
#jira UE-29475
#jira UE-29476
Favorite allow all UProperty to be favorite (the FStruct is now supported)
Favorite scrollig is auto adjust to avoid scrolling when adding/removing a favorite
Change 2949691 on 2016/04/20 by Mark.Satterthwaite
Fix typo from previous commit - retain not release...
#jira UE-29140
Change 2949690 on 2016/04/20 by Mark.Satterthwaite
Double-buffer the Metal viewport's back-buffer so that we can access the contents of the back-buffer after EndDrawingViewport is called until BeginDrawingViewport is called again on this viewport, this makes it possible to capture movies on Metal.
#jira UE-29140
Change 2949616 on 2016/04/20 by Marc.Audy
'Merge' latest version of Vulkan from Dev-Rendering to Release-4.12
#jira UE-00000
Change 2949572 on 2016/04/20 by Jamie.Dale
Fixed crash undoing a text property changed caused by a null entry in the array
#jira UE-20223
Change 2949562 on 2016/04/20 by Alexis.Matte
#jira UE-29447
Fix the batch fbx import "not show options" dialog where some option can be different.
Change 2949560 on 2016/04/20 by Alexis.Matte
#jira UE-28898
Avoid importing multiple static mesh in the same package
Change 2949547 on 2016/04/20 by Mark.Satterthwaite
You must use STENCIL_COMPONENT_SWIZZLE to access the stencil component of a texture - not all APIs can swizzle it into .g automatically.
#jira UE-29672
Change 2949443 on 2016/04/20 by Allan.Bentham
Disable sRGB textures when ES31 feature level is set.
Only use vk's sRGB formats when feature level > ES3_1
#jira UE-29623
Change 2949428 on 2016/04/20 by Allan.Bentham
Back out changelist 2949405
#jira UE-29623
Change 2949405 on 2016/04/20 by Allan.Bentham
Disable sRGB textures when ES31 feature level is set.
Only use vk's sRGB formats when feature level > ES3_1
#jira UE-29623
Merging using Dev-Mobile_->_Release-4.12
Change 2949391 on 2016/04/20 by Richard.TalbotWatkin
PIE with multiple windows now starts focused on Client 1, or the server if not a dedicated server. Added a new virtual call UEditorEngine::OnLoginPIEAllComplete, called when all clients have been successfully logged in when starting PIE. The default behavior is to set focus to the first client.
#jira UE-26037 - Cumbersome workflow when running PIE with 2 clients
#jira UE-26905 - First client window does not gain focus or mouse control when launching two clients
Change 2949389 on 2016/04/20 by Richard.TalbotWatkin
Fixed regression which was saving the viewport config settings incorrectly. Viewports are keyed by their layout on the same key as the config key, hence we do not need to prepend the SpecificLayoutString when saving out the config data when iterating through a layout's viewports.
#jira UE-29058 - Viewport settings are not saved after shutting down editor
Change 2949388 on 2016/04/20 by Richard.TalbotWatkin
Change auto-reimport settings so that "Detect Changes on Startup" defaults to true. Also removed the warning of potential unwanted behaviour when working in conjunction with source control; this is no longer necessary now that there is a prompt prior to auto-reimport.
#jira UE-29257 - Auto import does not import assets
Change 2949203 on 2016/04/19 by Max.Chen
Sequencer: Fix spawnables not getting default tracks.
#jira UE-29644
Change 2949202 on 2016/04/19 by Max.Chen
Sequencer: Fix particles not firing on loop.
#jira UE-27881
Change 2949201 on 2016/04/19 by Max.Chen
Sequencer: Fix multiple labels support
#jira UE-26812
Change 2949200 on 2016/04/19 by Max.Chen
Sequencer: Expose settings sequencer settings in the Editor Preferences page. Note, UMG and Niagara have separate sequencer settings pages.
#jira UE-29516
Change 2949197 on 2016/04/19 by Max.Chen
Sequencer: Fix unwind rotation when keying rotation so that rotations are always set to the nearest.
#jira UE-22228
Change 2949196 on 2016/04/19 by Max.Chen
Sequencer: Disable selection range drawing if it's empty so that playback range dragging can take precedence when they overlap. This fixes a bug where you can't drag the starting playback range when sequencer starts up.
#jira UE-29657
Change 2949195 on 2016/04/19 by Max.Chen
MovieSceneCapture: Default image compression quality to 100 (rather than 75).
#jira UE-29657
Change 2949194 on 2016/04/19 by Max.Chen
Sequencer: Matinee to Level Sequence fix for mapping properties correctly. This fixes focus distance not getting set properly on the conversion.
#jira UETOOL-467
Change 2949193 on 2016/04/19 by Max.Chen
Sequencer - Fix issues with level visibility.
+ Don't mark sub-levels as dirty when the track evaluates.
+ Fix an issue where sequencer gets into a refresh loop because drawing thumbnails causes levels to be added which was rebuilding the tree, which was redrawing thumbnails.
+ Null check for when an objects world is null but the track is still evaluating.
+ Remove UnrealEd references.
#jira UE-25668
Change 2948990 on 2016/04/19 by Aaron.McLeran
#jira UE-29654 FadeIn invalidates Audio Components in 4.11
Change 2948890 on 2016/04/19 by Jamie.Dale
Downgraded an assert in SPathView::LoadSettings to avoid a common crash when a saved path no longer exists
#jira UE-28858
Change 2948860 on 2016/04/19 by Mike.Beach
Mirroring CL 2940334 (from Dev-Blueprints):
Bettering CreateEvent node errors, so users are able to recover from API changes (not clearing the function name field, calling out the function by name in the error, etc.)
#jira UE-28911
Change 2948857 on 2016/04/19 by Jamie.Dale
Added an Asset Localization context menu to the Content Browser
This allows you to create, edit, and view localized assets from any source asset, as well as edit and view source assets from any localized asset.
#jira UE-29493
Change 2948854 on 2016/04/19 by Jamie.Dale
UAT now stages all project translation targets
#jira UE-20248
Change 2948831 on 2016/04/19 by Mike.Beach
Mirroring CL 2945994 (from Dev-Blueprints):
Pasting EdGraphNodes will no longer query sub-nodes for compatibility if the root cannot be pasted (for things like collapsed graphs, and anim state-machine nodes).
#jira UE-29035
Change 2948825 on 2016/04/19 by Jamie.Dale
Fixed shadow warning
#jira UE-29212
Change 2948812 on 2016/04/19 by Marc.Audy
Gracefully handle failure to load configurable engine classes
#jira UE-26527
Change 2948791 on 2016/04/19 by Jamie.Dale
Fixed regression in SEditableText bIsCaretMovedWhenGainFocus when using auto-complete
Fixed regression in FSlateEditableTextLayout::SetText that caused it to call OnTextChanged when nothing had changed
#jira UE-29494
#jira UE-28886
Change 2948761 on 2016/04/19 by Jamie.Dale
Sub-fonts are now only used when they contain the character to be rendered
#jira UE-29212
Change 2948718 on 2016/04/19 by Jamie.Dale
Fixed an issue where FEnginePackageLocalizationCache could be initialized before CoreUObject was ready
This is now done lazily, either when the first CDO tries to load an asset (which is after CoreUObject is ready), or after the first call to ProcessNewlyLoadedUObjects (if no CDO loads an asset).
#jira UE-29649
Change 2948717 on 2016/04/19 by Jamie.Dale
Removed the AssetRegistry's dependency on MessageLog
It was only there to add a category that was only ever used by the AssetTools module.
#jira UE-29649
Change 2948683 on 2016/04/19 by Phillip.Kavan
[UE-18419] Fix GetClassDefaults nodes to update properly in response to structural BP class changes.
change summary:
- modified UK2Node_GetClassDefaults::CreateOutputPins() to bind/unbind delegate handlers for the OnChanged() & OnCompile() events for BP class types.
#jira UE-18419
Change 2948681 on 2016/04/19 by Phillip.Kavan
[UE-17794] The "Delete Unused Variable" feature now considers the GetClassDefaults node as well.
change summary:
- added external linkage to UK2Node_GetClassDefaults::FindClassPin().
- added an include for the K2Node_GetClassDefaults header file to BlueprintGraphDefinitions.h.
- added UK2Node_GetClassDefaults::GetInputClass() as a public API w/ external linkage; moved default 'nullptr' param logic into this impl.
- modified FBlueprintEditorUtils::IsVariableUsed() to add an extra check for a GetClassDefaults node with a visible output pin for the variable that's also connected.
- modified UK2Node_GetClassDefaults::GetInputClass() to return the generated skeleton class for Blueprint class types.
#jira UE-17794
Change 2948638 on 2016/04/19 by Lee.Clark
PS4 - Fix SDK compile warnings
#jira UE-29647
Change 2948401 on 2016/04/19 by Taizyd.Korambayil
#jira UE-29250 Revuilt Lighting for Landscapes Map
Change 2948398 on 2016/04/19 by Mark.Satterthwaite
Add a Mac Metal ES2 shader platform to allow the various ES2 emulation modes to work in the Editor. Fix various issues with the shader code to ensure that Metal can run with ES2 shader code at least in my limited test cases in QAGame.
#jira UE-29170
Change 2948366 on 2016/04/19 by Taizyd.Korambayil
#jira UE-29109 Replaced Box Mesh with BSP Floor
Change 2948360 on 2016/04/19 by Maciej.Mroz
merged from Dev-Blueprints 2947488
#jira UE-29115 Nativized BulletTrain - cannot shoot targets in intro tutorial
#jira UE-28965 Packaging Project with Nativize Blueprint Assets Prevents Overlap Events from Firing
#jira UE-29559
- fixed private enum access
- fixed private bitfield access
- removed forced PostLoad
- add BodyInstance.FixupData call to fix ResponseChannels
- ignored RelativeLocation and RelativeRotation in converted root component
- fixed AttachToComponent (UE-29559)
Change 2948358 on 2016/04/19 by Maciej.Mroz
merged from Dev-Blueprints 2947953
#jira UE-29605 Wrong bullet trails in nativized ShowUp
Fixed USimpleConstructionScript::GetSceneRootComponentTemplate.
Change 2948357 on 2016/04/19 by Maciej.Mroz
merged from Dev-Blueprints 2947984
#jira UE-29374 Crash when hovering over Create Widget node in blueprints
Safe UK2Node_ConstructObjectFromClass::GetPinHoverText.
Change 2948353 on 2016/04/19 by Maciej.Mroz
merged from Dev-Blueprints 2948095
#jira UE-29246 ExpandEnumAsExecs + UMETA(Hidden) Crashes Blueprint Compile
"Hidden" and "Spacer" elementa from an enum does not generated exec pins for "ExpandEnumAsExecs"
Change 2948332 on 2016/04/19 by Benn.Gallagher
Fixed old pins being left as non-transactional
#jira UE-13801
Change 2948203 on 2016/04/19 by Lee.Clark
PS4 - Use SDK 3.508.031
#jira UEPLAT-1225
Change 2948168 on 2016/04/19 by mason.seay
Updating test content:
-Added Husk AI to level to test placed AI
-Updated Spawn Husk BP to destroy itself to prevent spawn spamming
#jira UE-29618
Change 2948153 on 2016/04/19 by Benn.Gallagher
Missed mesh update for Owen IK fix.
#jira UE-22540
Change 2948130 on 2016/04/19 by Benn.Gallagher
Fixed old Owen punch IK setup so it no longer jitters when placing the hands on the surface.
#jira UE-22540
Change 2948117 on 2016/04/19 by Taizyd.Korambayil
#jira UE-28477 Resaved Template Map's to fix Warning Toast on Templates
Change 2948063 on 2016/04/19 by Lina.Halper
- Anim composite notify change for better
- Fixed all nested anim notify
- Merging CL 2944396 using //UE4/Dev-Framework_to_//UE4/Release-4.12
#jira : UE-29101
Change 2948060 on 2016/04/19 by Lina.Halper
Fix for composite section metadata saving for montage
Merging CL 2944397 using //UE4/Dev-Framework_to_//UE4/Release-4.12
#jira : UE-29228
Change 2948029 on 2016/04/19 by Ben.Marsh
EC: Prevent automatically pushing CIS builds to the launcher; the changelist might be run more than once.
Change 2947986 on 2016/04/19 by Benn.Gallagher
Fixed BP callable functions that affect skeletal mesh component transforms not working when simulating physics.
#jira UE-27783
Change 2947976 on 2016/04/19 by Mark.Satterthwaite
Duplicate CL #2943702 from 4.11.2: Change the way Metal validates the render-target state so that in FMetalContext::PrepareToDraw it can issue a last-ditch attempt to restore the render-targets. This won't fix the cause of the Mac Metal crashes but it might mitigate some of them and provide more information about why they are occurring.
#jira UE-29006
Change 2947975 on 2016/04/19 by Mark.Satterthwaite
Duplicate CL #2945061 from UE4-UT: Address UT issue UE-29150 directly in the UT branch: users without a sufficiently up-to-date Xcode won't have the 'metal' offline shader compiler so will have to use the slower online compiled text shader format.
#jira UE-29150
Change 2947679 on 2016/04/19 by Jack.Porter
Fixed 4.12 branch not compiling with the 1.0.8 Vulkan SDK
#jira UE-29601
Change 2947657 on 2016/04/18 by Jack.Porter
Update protostar reflection capture contents
#jira UE-29600
Change 2947301 on 2016/04/18 by Ben.Marsh
EC: Fix trigger ready emails failing to send due to recipient list being a space-separated list of addresses rather than an array reference.
Change 2947263 on 2016/04/18 by Marc.Audy
Merging CL# 2945921 //UE4/Release-4.11 to //UE4/Release-4.12
Ensure that all OwnedComponents in an Actor are duplicated for PIE even if not referenced by a property, unless that component is explicitly transient
#jira UE-29209
Change 2946984 on 2016/04/18 by Ben.Marsh
GUBP: Allow Ocean cooks in the release branch (fixes build startup failures)
Change 2946870 on 2016/04/18 by Ben.Marsh
Remaking CL 2946810 to fix compile error in ShooterGame editor.
Change 2946859 on 2016/04/18 by Ben.Marsh
GUBP: Don't exclude Ocean from builds in the release branch.
Change 2946847 on 2016/04/18 by Ben.Marsh
GUBP: Fix warning on every build step due to OrionGame_Win32_Mono no longer existing.
Change 2946771 on 2016/04/18 by Ben.Marsh
EC: Correct initial agent type for release branches. Causing full branch syncs on all agents.
Change 2946641 on 2016/04/18 by Ben.Marsh
EC: Remove rogue comma causing branch definition parsing to fail.
Change 2946592 on 2016/04/18 by Ben.Marsh
EC: Adding branch definition for 4.12 release
#lockdown Nick.Penwarden
[CL 2962354 by Ben Marsh in Main branch]
This is to support references being set for the skeleton class (in the new BP menu system).
#codereview Nick.Whiting
[CL 2308582 by Mike Beach in Main branch]