Files
UnrealEngineUWP/Engine/Source/Runtime/MovieScene/Private/MovieSceneSequenceInstanceData.cpp

31 lines
945 B
C++
Raw Normal View History

// Copyright Epic Games, Inc. All Rights Reserved.
Copying //UE4/Dev-Sequencer to //UE4/Dev-Main (Source: //UE4/Dev-Sequencer @ 3800792) #lockdown Nick.Penwarden #rb none ============================ MAJOR FEATURES & CHANGES ============================ Change 3631172 by Max.Chen Sequence Recorder: Record to the specified target animation for the target actor only. Newly tracked components will have newly created animations so that they don't record to the same target animation assets. #jira UE-49304 #jira UE-49216 #jira UE-49300 Change 3632895 by Max.Chen Sequencer: Fixed crash caused by erroneous persistent references to FSequencer. #jira UE-48647 #jira UE-48383 #jira UE-47661 Change 3634864 by Max.Chen Sequencer: Bake transforms #jira UE-49136 Change 3634879 by Max.Chen Sequence Recorder: Close the target animation asset editor if it exists before recording into it. #jira UE-49216 Change 3650553 by Max.Chen Sequencer: Switch shot display name to FString so that it's not localized. #jira UE-49824 Change 3650848 by Darren.Pegg Linear Timecode Plugin - first pass - still needs output interface Change 3653174 by Max.Chen Sequencer: Allow blending for vector tracks #jira UE-49809 Change 3653205 by Max.Chen Sequencer: Fix default burnin content. #jira UE-49824 Change 3653570 by Darren.Pegg Win32 Build fix: EmptyLinkFunctionForStaticInitializationLinearTimecode Change 3658673 by Darren.Pegg Timecode - Adding Accessors, renaming files Change 3663633 by Max.Chen Sequencer: Add option to export an object's transform to a camera anim asset. #jira UE-49599 Change 3665971 by Max.Chen Sequence Recorder: Add an active column for sequence recorder Change 3666066 by Max.Chen Sequencer: Suspend broadcast of selection delegates when performing multiple operations. #jira UE-40371 Change 3671057 by Max.Chen PR #4055: Fixed ACameraRig_Rail PreviewMeshes to match Spline Component (Contributed by Hemofektik) Change 3677104 by Max.Chen Sequencer: Add transaction for easing length. #jira UE-50588 Change 3677105 by Max.Chen Sequencer: Restore pre-animated state when changing active channels. #jira UE-50473 Change 3681069 by Max.Preussner LinearTimecode: Processing samples only if they have been dequeued successfully Change 3681783 by Andrew.Rodham Control Rig: Fixed crash attempting to zero out array with the wrong size Change 3681949 by Darren.Pegg OnTimecodeChange Delegate, Comments in DropTimecode, DropTimecode to string auto conversion Change 3682222 by Andrew.Porter EngineTest: Enabled MP4 Media Player test in the level ShaderModels. Set the texture ShaderModelPlayer_Video to use the correct media player. #jira UE-47213 Change 3683523 by Andrew.Rodham Sequencer: Display sub sequence name on binding ID pickers rather than the sub section name Change 3684318 by Max.Chen Sequencer: Fix crash in dragging a level sequence into the tree area. #jira UE-50902 Change 3687609 by Max.Chen Curve Editor: Add ModifyOwnerChange to CurveOwnerInterface. Call mark as changed when modifying keys or tangents. #jira UE-50882 Change 3687617 by Max.Chen Sequencer: Move some commands out of the generic sequencer command bindings so that they don't take over the viewport. ie. End for "Snap to Floor" should still function in the viewport. #jira UE-50997 Change 3687969 by Andrew.Rodham Sequencer: New compile on the fly logic - Sequencer is now able to compile partially or completely out-of-date evaluation templates from the source data as it needs. This affords much more efficient compilation when working within sequencer. - Added the concept of 'instance data' for sub sequences, available through the IMovieScenePlayer interface or persistent data stores. This replaces the compilation of specific templates for control rig templates. - Moved sub tracks and sections to MovieScene module - Removed the concept of shared tracks. Any previous uses should port over to shared execution tokens instead. #jira UE-46789 Change 3689884 by Max.Chen Sequencer: Remove null tracks on object bindings. Tracks can become null if they're from a plugin and the plugin is disabled. #jira UE-50839 Change 3690130 by Andrew.Rodham Sequencer: Fixed UMG animations not working with blueprint nativization Change 3690162 by Andrew.Rodham Sequencer: Fix assert when using filler shots #jira UE-51029 Change 3691904 by Max.Chen Sequencer: Fix overlap by looking at the key behind as well. This fixes a bug if there's 3 keyframes on consecutive frames, if you zoom out, you should see two bordered keys when the overlap threshold is passed. #jira UE-50993 Change 3692149 by Andrew.Rodham Sequencer: Change FSortByPrioritySegmentBlender::Blend to fall back to flag comparison if any sections are null for automation tests. - Combinations of null/non-null will never happen in the wild because we either run with sections or without, but the static analysis doesn't know that Change 3692212 by Andrew.Rodham Core: Changed TRange to pass-by-value for small types, inlined some functions Change 3693044 by Max.Chen Sequencer: Update pivot location for selection when closing sequencer. #jira UE-51132 Change 3693061 by Max.Chen Sequencer: Remove force evaluate on end scrubbing. Backout previous fix because 3657907 is the real fix. #jira UE-45905 Change 3694308 by Andrew.Rodham Sequencer: Sub tracks now blend correctly again #jira UE-51076 Change 3694365 by Andrew.Rodham Sequencer: Fixed exponential slow down when compiling large quantities of sub sequences on cook caused by not clamping sub-sequence compilation correctly Change 3698176 by Max.Chen Sequencer: Enable the camera cut track when popping back to the master only if there's a camera cut track in the master. This fixes an issue where if you don't have a camera cut track in the master, the camera gets locked to a camera cut in a subscene and you can't toggle out of it. #jira UE-51332 Change 3698979 by Max.Chen Sequencer: Fix delay before warmup causing sequences not to render. #jira UE-51307 Change 3700149 by Max.Chen Sequencer: Fix delay at shot boundaries causing sequences to not play back and render out. The shot id needs to be tracked to determine whether a new shot is encountered. #jira UE-51307 Change 3705624 by Max.Chen Sequencer: Reset drop node on drag leave Change 3718781 by Max.Preussner MediaAssets: Removed obsolete pointer checks (Playlist is always valid); added checks to enforce this invariant Change 3721586 by Max.Preussner MediaAssets: Added verbose logging to MediaPlayer BP functions Change 3721662 by Max.Preussner WmfMedia: Fixed media session not generating PlaybackEndReached event when session forced to stop #jira UE-50962 Change 3722954 by Max.Preussner MediaAssets: Removed looping option from play lists Change 3723076 by Andrew.Porter Removed controls for looping playlist. Change 3724202 by Max.Chen Sequencer: Spawn time optimizations #jira UE-32885 Change 3725359 by Max.Chen Sequencer: Fix spawnables not playing back. bIsEditorPreviewActor = false for sequencer spawnables so that BeginPlay() doesn't get skipped. #jira UE-51750 Change 3725362 by Max.Chen Sequencer: Change check to ensure for null object in property actuate. This prevents a crash when there's a track without a binding object. This occur when pasting a property track to the root. #jira UE-51713 Change 3725802 by Max.Chen Sequencer: Add the ability to drag sections up. #jira UE-43305 Change 3726520 by Max.Preussner MediaAssets: Fixed OnMediaOpened called when looping a source #jira UE-51773 Change 3728509 by Max.Chen Sequencer: Fix crash pasting a camera cut track because the outer isn't set to the movie scene. #jira UE-51787 Change 3729216 by Max.Chen Sequencer: Fix pre edit property chain broadcast so that the property path will include possible struct/array node. #jira UE-51525 Change 3729248 by Max.Chen Sequencer: Add default expansion states to allow track editors to specify them per track type. Material track is currently the only track that defaults to expanded. #jira UE-21741 Change 3729392 by Max.Preussner ImgMedia: Disabling video output when video track is selected Change 3729452 by Max.Preussner MediaPlayerEditor: Showing a notification if no video track available or selected Change 3729462 by Max.Preussner MediaPlayerEditor: Creating overlay font only once Change 3731155 by Max.Chen Sequencer: Set row index when creating a new take #jira UE-51867 Change 3731446 by Max.Chen Sequencer: Add null check and warning for invalid GetParameterCollectionInstance. Change 3731640 by Max.Chen Sequencer: Automatically create a camera cut track if a camera is dropped and there's no existing camera cut or there's no existing camera cut sections. #jira UE-51846 Change 3731653 by Max.Chen Sequencer: Defer details panel updates on scrubbing and playing. #jira UE-48448 Change 3732597 by Max.Chen Sequencer: Don't swap the camera cut section if it already exists and a camera is created. Change 3733554 by Max.Chen Sequencer: Fix crash when existing hotspot is null. Change 3734305 by Max.Preussner MediaAssets: Fixed assertion when assigning same media player to a media texture twice #jira UE-51012 Change 3735735 by Max.Preussner MediaFrameworkTest: Setting MediaAssets log category Verbose to prevent log spam in Editor Change 3736393 by Max.Chen Sequencer: Set min/max values for generic key area so that they don't default to 0,10. #jira UE-52012 Change 3736804 by Max.Chen Sequencer: Fix rotation rotator->quat->rotator conversion which prevents you from typing in a rotation of 0,0,320 into the key editor. Unwind rotations from the previous transform to the current transform so that the nearest rotation is set rather than the rotator->quat->rotator conversion. #jira UE-52009 #jira UE-34816 Change 3737790 by Max.Chen Sequencer: Follow up fix to quat->rot->quat so that unwinding is only processed if the last transform is valid. Change 3739738 by Max.Chen PR #4184: Unregister Missing TrackEditors in MovieSceneTools (Contributed by LordNed) Change 3741910 by Max.Preussner MfMedia: Simplified track switching code; enabled seeking Change 3742171 by Max.Preussner MediaAssets: Fixed timecode check to include current presentation time Change 3744889 by Max.Chen Sequencer: Use drag and drop actor factory if specifiied. This ensures that the correct actor factory is used in creating the object template for the sequencer spawner. This fixes some spawnables not getting created properly (ie. Empty Actor) #jira UE-51678 Change 3746049 by Andrew.Rodham FBX Import: Fixed tangent overrides producing the wrong type of key tangent modes Change 3747870 by Max.Chen Sequencer: Update auto scroll when moving keys/sections. #jira UE-31212 Change 3747885 by Max.Chen UMG: Remove template instance finish on pause. It appears that was only there to stop audio (CL #3161056). Instead, evaluate in the stopped position with the stopped playback state. #jira UE-47749 Change 3747914 by Max.Chen Sequencer: Add config for default completion mode for movie scene sequences. The default for level sequences is RestoreState. All others, such as UMG are set to KeepState. #jira UE-49480 Change 3747915 by Max.Chen Sequencer: Set default completion mode for all sections to project default. #jira UE-49480 Change 3748377 by Max.Preussner EngineTest: Fixed media player automation test BP #jira UE-50637 Change 3748531 by Max.Preussner EngineTest: Fixed media player not opening media during FTest setup I fixed up the Blueprint. Also, don't use PlayOnOpen on the media player if you don't intend to play the movie after opening. You can call Pause right after opening. If you enable PlayOnOpen, the order of operations will not work, because it will first call Pause via the IsReady check in Tick and then Play via the PlayOnOpen checkbox. I disabled PlayOnOpen. #jira UE-47207 Change 3750362 by Max.Chen PR #4205: parameter not used bug fixes (Contributed by shrimpy56) Change 3750885 by Max.Chen Sequencer: Prevent throttling on the curve editor so that editor world tick can apply. #jira UE-51624 Change 3757123 by Max.Preussner MediaAssets: Allowing media players to be part of GC clusters #jira FORT-59774 #jira UE-51943 Change 3764055 by Max.Chen Sequencer: Add SetPlaybackPosition as latent action to fix crash when calling SetPlaybackPosition in an event. #jira UE-52270 Change 3764555 by Max.Chen Sequencer: Change camera cut binding from guid to object binding id to allow for subscene bindings Change 3764613 by Max.Chen Sequencer: Show binding ID picker customization on all details panels. Allow creation of new camera cut sections from existing bindings. Deprecate AddNewCameraCut(FGuid) Change 3766389 by Max.Chen Sequencer: Don't override existing camera binding id on postload if it's valid. Change 3766432 by Max.Chen Sequencer: Switch constraint guid to constraint binding ID #jira UE-52438 Change 3767160 by Max.Preussner WmfMedia: Added more logging Change 3767843 by Max.Preussner MediaAssets: Fixed Crash in UMediaSoundComponent::UpdatePlayer #jira UE-52594 Change 3771038 by Max.Preussner Engine: Changed message log back to ensure Cannot use message log on render thread as it may call LoadModule Change 3771071 by Max.Preussner MediaCompositing: Fixed default media plane material Change 3771287 by Max.Preussner Engine: Changed ensure to global log Change 3771450 by Max.Preussner MediaAssets: Fixed crash when dragging media player viewport #jira UE-52675 Change 3771461 by Max.Preussner ImgMedia: Fixed seeking not working when paused #jira UE-52677 Change 3772999 by Andrew.Rodham Sequencer: Added the ability to supply an instance data object to sequence runtime evaluation - This allows systems to inject information into a sequence at runtime, enabling more dynamic control of tracks - Level sequence actors use this by default to supply a dynamic 'transform origin' to all component transform tracks, to which all absolute transform sections will be added. #jira UE-46003 Change 3774633 by Max.Preussner MediaAssets: Fixed MediaPlayer.Prev/Next not playing automatically if player was playing previously #jira UE-52714 Change 3774961 by Max.Preussner UdpMessaging: Patch to make message serialization notification thread-safe #jira UE-52624 Change 3778108 by Max.Chen Sequencer: Scroll in track area. #jira UESEQ-330 Change 3778270 by Max.Chen Sequencer: Copy/cut/paste/duplicate object bindings FMovieSceneCopyableBinding - struct containing the copied FMovieSceneBinding, FMovieScenePossessable and FMovieSceneSpawnable MovieScene - AddPossessable, AddSpawnable with existing possessable or spawnable ISequencer - FOnMovieSceneBindingsPasted to allow fixing up bindings on paste #jira UESEQ-352, UESEQ-335 Change 3778674 by Max.Preussner Engine: Fixed online documentation for external texture registry Change 3778699 by Max.Preussner Engine: Fixed external textures not registering correctly in all cases #jira UE-52648 Change 3778776 by Max.Preussner Engine: Corrected code comments for external texture registry Change 3779153 by Max.Preussner LinearTimecode: Fixed plugin category Change 3779166 by Max.Preussner WmfMedia: Reversing FourceCC display string, so it displays correctly Change 3780576 by Max.Chen Sequencer: Fix viewport invalidation so that it happens on sequence evaluation. #jira UE-52836 Change 3780619 by Max.Chen Sequencer: Always save default spawnable state regardless of focused sequence. This fixes a bug where if you step back to the master sequence (and the spawnable still exists), and then scrub outside the region where the spawnable exists, it gets destroyed but saved default spawnable state doesn't get called because it's no longer the focused sequence. #jira UE-52008 Change 3781227 by Max.Chen Sequencer: Add playback speed settings menu #jira UESEQ-384 Change 3782213 by Max.Preussner WmfMedia: Fixed H.265 frames being dropped due to false negative buffer size check #jira UE-52859 Change 3782239 by Max.Chen Sequencer: Add shortcut to tooltips #jira UE-52795 Change 3782388 by Max.Preussner WmfMedia: Fixed IYUV encoded AVI not playing correctly #jira UE-52855 Change 3782541 by Chris.Babcock Protect against asking for duration before prepare completed in movie player #jira UE-52805 #ue4 #android Change 3787676 by Max.Chen Sequencer: Export unmatched float properties to custom attributes #jira UE-52983 Change 3787788 by Max.Preussner Extras: Natvis for FTimespan Change 3789419 by Max.Chen Sequencer: Fix import camera so that when new cameras are created, values from the fbx are going only to the newly created cameras. Also, added bReduceKeys and bReduceKeysTolerance to import fbx. #jira UE-52997 Change 3789628 by Max.Chen Sequencer: Remove Shift-C and Shift-D as a hotkey for toggling the cinematic viewport as it was causing some confusion when users accidentally hit it. Change 3789716 by Andrew.Rodham Seqeuncer: Fixed slot animation not being restored for montages that are recreated during evaluation - The issue here is that the animation system can deem montages as inactive at any point, and will re-create a new montage instance if this is the case. Previously, we stored pre-animated state on the anim instance, and cached the montage that we played, which meant that we attempt to restore a stale montage. - The solution is to store pre-animated state for the montages, and cache the anim instance. This means we'll always store pre-animated state if the montage is re-created. #jira UE-49981 Change 3789874 by Max.Chen Sequencer: Add option to only show selected nodes only ISequencer - Added OnGetIsBindingVisible(), OnGetIsTrackVisible() LevelEditorSequencerIntegration - implement OnGetIsBindingVisible based on actor selection #jira UESEQ-357 Change 3789877 by Max.Chen Control Rig: Implement IsTrackVisible to show nodes in the sequencer tree that are selected. #jira UESEQ-357 Change 3791514 by Andrew.Rodham Image Plate: Fixed image plates not showing up in high res screenshots - The image plate mesh had a LOD index of -1 which meant it never showed up when a LOD to render was specified - Also simplified the bounds calculation #jira UE-51764 Change 3791596 by Max.Chen Sequence Recorder: Don't record editor only components #jira UE-49071 Change 3791659 by Andrew.Rodham Sequencer: Event struct payloads now support user defined struct default values on creation #jira UE-45430 Change 3791718 by Max.Chen Sequence Recorder: Fix level sequences not triggering when recording. Level sequences would not get recorded if the world settings actor was not recorded. Change 3791761 by Max.Chen Sequencer: Find available non-overlapping row index when adding subsections. Change 3791837 by Max.Chen Sequencer: Fix sequencer not updating after toggling Bind Sequencer to PIE/Simulate while PIE is active. Change 3791875 by Max.Chen Sequence Recorder: Add recording button now adds for any selected actors. Change 3791880 by Max.Chen Sequence Recorder: Fix end pie not stopping sequence recording if not recording world settings. Change 3791932 by Max.Chen Sequence Recorder: Record spawned actors immediately so that they won't be missed if they're deleted before tick. Clean up queued recordings that were from spawned actors. Change 3791954 by Max.Chen Sequence Recorder: Don't process if not recording on end pie. Change 3791955 by Max.Chen Sequence Recorder: Fix recording spawnables not getting the correct position for being spawned at. Set a transform on the movie scene spawnable which will be used if the root component of the object template doesn't exist. Change 3792061 by Max.Chen Sequence Recorder: Change FOnRecordingStarted and FOnRecordingFinished to multicast delegate. If a sequence being recorded into is currently open in sequencer, it gets reloaded to prevent crashes. Change 3792271 by Max.Chen Sequence Recorder: Duplicate the actor to trigger before playing so that a sequence can be recorded and played back at the same time. #jira UE-49069 Change 3792292 by Max.Preussner MfMedia: Fixed tracks being reported in reverse order #jira UE-53074 Change 3792811 by Max.Chen Sequencer: Add option to disable camera cuts on the movie scene player. Change 3793341 by Max.Preussner AvfMedia: Fix for crash when opening AVF Media after opening multiple players Merged from shelved CL in Dev-Rendering #author richard.wallis #jira UE-52383 Change 3793642 by Max.Chen Sequencer: Delete and rename icons. PR #4194: Improvements to Sequencer (Contributed by projectgheist) #jira UE-52139 Change 3794678 by Max.Chen Sequencer: Fix crash on HandleRecordingFinished #jira UE-53178 Change 3795007 by Max.Preussner AudioMixer: Fix for AVF Media Player audio is garbled and has static #author ethan.geller #jira UE-52785 Change 3795103 by Max.Chen Sequencer: Add bKeyCreated for FKeyPropertyResult and notify movie scene data changed when a key is created. #jira UE-53175 Change 3795457 by Michael.Trepka Reverted one of the changes from CL 3793341 as it was causing a crash at exit #jira UE-53196 Change 3795739 by Max.Chen Sequencer: Set ease in/out objects as transactional. #jira UE-50594 Change 3796871 by Max.Preussner MediaAssets: Fixed media texture initialization related crash on Metal; fixed white output on inactive media player; added proper support for clear color #jira UE-51940 #jira UE-52932 Change 3796921 by Michael.Trepka Fix for a crash in AvfMediaPlayer related to reusing FAvfMediaPlayer object #jira UE-53181 Change 3797176 by Max.Preussner MediaAssets: Fixed white flicker when rapidly swapping media players on a media texture Also no longer clearing media textures each frame if they are not in use #jira UE-52932 Change 3797515 by Max.Chen Actor Sequence: Add nullptr check - fix actor sequence crash when actor sequence doesn't exist. #jira UE-49103 [CL 3800998 by Max Chen in Main branch]
2017-12-11 11:42:27 -05:00
Copying //UE4/Dev-Core to //UE4/Dev-Main (Source: //UE4/Dev-Core @ 3847469) #lockdown Nick.Penwarden #rb none ============================ MAJOR FEATURES & CHANGES ============================ Change 3805828 by Gil.Gribb UE4 - Fixed a bug in the lock free stalling task queue and adjusted a comment. The code is not current used, so this is not actually change the way the code works. Change 3806784 by Ben.Marsh UAT: Remove code to compile UBT when using UE4Build. It should already be compiled as a dependency of UAT. Change 3807549 by Graeme.Thornton Add a cook timer around VerifyCanCookPackage. A licensee reports this taking a lot of time so it'll be good to account for it. Change 3807727 by Graeme.Thornton Unhide the text asset format experimental editor option Change 3807746 by Josh.Engebretson Remove WER from iOS platform Change 3807928 by Robert.Manuszewski When async loading, GC Clusters will be created after packages have been processed to avoid situations where some of the objects that are being added to a cluster haven't been fully loaded yet Change 3808221 by Steve.Robb GitHub #4307 - Made GetModulePtr() thread safe by not using GetModule() ^ I'm not convinced by how much thread-safer this is really, but it's tidier anyway. Change 3809233 by Graeme.Thornton TBA: Misc changes to text asset commandlet - Rename mode to "loadsave" - Add -outputFormat option which can be assigned "text" or "binary" - When saving binary, use a differentiated filename so that source assets aren't overwritten Change 3809518 by Ben.Marsh Remove the outdated UnrealSync automation script. Change 3809643 by Steve.Robb GitHub #4277 : fix bug; FMath::FormatIntToHumanReadable 3rd comma and negative value #jira UE-53037 Change 3809862 by Steve.Robb GitHub #3342 : [FRotator.h] Fix to DecompressAxisFromByte to be more efficient and reflect its intent accurately #jira UE-42593 Change 3811190 by Graeme.Thornton Add support for writing specific log channels to their own files Change 3811197 by Graeme.Thornton Minor updates to output formatting and timing for the text asset commandlet Change 3811257 by Robert.Manuszewski Cluster creation will now be time-sliced Change 3811565 by Steve.Robb Define out non-monolithic module functions. Change 3812561 by Steve.Robb GitHub #3886 : Enable Brace-Initialization for Declaring Variables Incorrect semi-colon search removed after discussion with author. Test added. #jira UE-48242 Change 3812864 by Steve.Robb Removal of some unproven code which was supposed to fix hot reloading BP class functions in plugins. See: https://udn.unrealengine.com/questions/376978/aitask-blueprint-nodes-disappear-when-their-module.html #jira UE-53089 Change 3820358 by Ben.Marsh PR #4358: Incredibuild use ShowAgent by default (Contributed by projectgheist) Change 3822594 by Ben.Marsh UAT: Improvements to log file handling. - Always create log files in the final location, rather than writing to a temp directory and copying in later. - Now supports -Verbose and -VeryVerbose for increasing log verbosity, rather than -Verbose=XXX. - Keep a backlog of log output before the log system is initialized, and flush it to the log file once it is. - Allow buildmachines to specify the uebp_FinalLogFolder environment variable, which is used to form paths for display. When build machines copy log files elsewhere after UAT finishes (eg. a network share), this allows error messages to display the right location. Change 3823695 by Ben.Marsh UGS: Fix issue where precompiled binaries would not be shown as available for a change until scrolling the last submitted code change into the buffer (other symptoms, like de-focussing the main window would cause it to go back to an unavailable state, since the changes buffer was shrunk). Now always queries changes up to the last change for which zipped binaries are available. Change 3823845 by Ben.Marsh UBT: Exclude C# projects for unsupported platforms when generating project files. Change 3824180 by Ben.Marsh UGS: Add an option to show changes by build machines, and move the "only show reviewed" option in there too (Options > Show Changes). #jira Change 3825777 by Steve.Robb Fix to return value of StringToBytes. Change 3825810 by Ben.Marsh UBT: Reduce length of include paths for MSVC toolchain. Change 3825822 by Robert.Manuszewski Optimized PIE lazy pointer fixup. Should be up to 8x faster now. Change 3826734 by Ben.Marsh Remove code to disable TextureFormatAndroid on Linux. It seems to be an editor dependency. Change 3827730 by Steve.Robb Try to avoid decltype(auto) if it's not supported. See: https://udn.unrealengine.com/questions/395644/build-417-with-c11-on-linux-ttuple-errors.html Change 3827745 by Steve.Robb Initializer list support for TMap. Change 3827770 by Steve.Robb GitHub #4399 : Added a CONSTEXPR qualifiers to FVariant::GetType() #jira UE-53813 Change 3829189 by Ben.Marsh UBT: Now always writes a minimal log file. By default, just contains the regular console output and any reasons why actions are outdated and needed to be executed. UAT directs child UBT instances to output logs into its own log folder, so that build machines can save them off. Change 3830444 by Steve.Robb BuildVersion and ModuleManifest moved to Core, and parsing of these files reimplemented to avoid a JSON library. This should be revisited when Core has its own JSON library. Change 3830718 by Ben.Marsh Fix incorrect group name being returned by FStatNameAndInfo::GetGroupName() for stat groups. The editor populates the viewport stats list by calling this for every registered stat and stat group (via FLevelViewportCommands::HandleNewStatGroup). The menu entry attempts to show the stat name with STAT_XXX stripped from the start as the menu item label, with the free-form text description as a tooltip. For stat groups, the it would previously just return the stat group name as "Groups" (due to the raw naming convention of "//Groups//STATGROUP_Foo//..."). Since this didn't match the expected naming convention in FLevelViewportCommands::HandleNewStat (ie. STAT_XXX or STATGROUP_XXX), it would fail to add it. When the first actual stat belonging to that group is added, it would add a menu entry for the group based on that, but the stat description no longer makes sense as a tooltip for the group. As a result, all the editor tooltips were junk. #jira UE-53845 Change 3831064 by Ben.Marsh Fix log file contention when spawning UBT recursively. Change 3832654 by Ben.Marsh UGS: Fix error panel not being selected when opened, and weird alignment/color issues on it. Change 3832680 by Ben.Marsh UGS: Fix failing to detect workspace if synced to a different stream. Seems to be a regression caused by recent P4D upgrade. Change 3832695 by Ben.Marsh UGS: Invert the options in the 'Show Changes' submenu for simplicity. Change 3833528 by Ben.Marsh UAT: Script to rewrite source files with public include paths relative to the 'Public' folder. Usage is: RebasePublicIncludePaths -UpdateDir=<Dir> [-Project=<Dir>] [-Write]. Change 3833543 by Ben.Marsh UBT: Allow targets to opt-out of having public include paths added for every dependent module. This reduces the command line length when building a target, which has recently become a problem with larger games (due to Microsoft's compiler embedding the command line into each object file, with a maximum length of 64kb). All engine modules are compiled with this enabled; games may opt into it by setting bLegacyPublicIncludePaths = false; from their .target.cs, as may individual modules. Change 3834354 by Robert.Manuszewski Archetype pointer will now be cached to avoid locking the object tables when acquiring its info. It should also be faster this way regardless of any locks. #jira UE-52035 Change 3834400 by Robert.Manuszewski Fixing crash on exit caused by cached archetypes not being cleaned up before static exit cleanup. #jira UE-52035 Change 3834947 by Steve.Robb USE_FORMAT_STRING_TYPE_CHECKING removed from FMsg::Logf and FMsg::Logf_Internal. Change 3835004 by Ben.Marsh Fix code that relies on dubious behavior of requiring referenced "include path only" modules having their _API macros set to be empty, even if the module is actually implemented in a separate DLL. Change 3835340 by Ben.Marsh Fix errors making installed build from directories with spaces in the name. Change 3835972 by Ben.Marsh UBT: Improved diagnostic message for targets which don't need a version file. Change 3836019 by Ben.Marsh UBT: Fix warnings caused by defining linkage macros for third party libraries. Change 3836269 by Ben.Marsh Fix message box larger than the screen height being created when a large number of modules are incompatible on startup. Change 3836543 by Ben.Marsh Enable SoundMod plugin on Linux, since it's already supported through the editor. Change 3836546 by Ben.Marsh PR #4412: fix type mismatch (Contributed by nakapon) Change 3836805 by Ben.Marsh Fix commandlet to compile marketplace plugins. Change 3836829 by Ben.Marsh UBT: Fix ability to precompile plugins from installed engine builds. Change 3837036 by Ben.Marsh UBT: Write the previous and new contents of intermediate files to the log if they change. Makes it easier to debug unexpected rebuilds. Change 3837037 by Ben.Marsh UBT: Fix engine modules having inconsistent definitions depending on whether modules are only referenced for their include paths vs being linked into a binary (due to different _API macro). Change 3837040 by Ben.Marsh UBT: Remove code that initializes members in ModuleRules and TargetRules objects before the constructor is run. This is no longer necessary, now that the backwards-compatible default constructors have been removed. Change 3837247 by Ben.Marsh UBT: Remove UELinkerFixups module, now that plugins and precompiled modules do not require hacks to force initialization (since they're linked in as object files). Encryption and signing keys are now set via macros expanded from the IMPLEMENT_PRIMARY_GAME_MODULE macro, via project-specific macros added in the TargetRules constructor. Change 3837262 by Ben.Marsh UBT: Set whether a module is an engine module or not via a default value for the rules assembly. All non-program engine and enterprise modules are created with this flag set to true; program targets and modules are now created from a different assembly that sets it to false. This removes hacks from UEBuildModule needed to adjust behavior for different module types based on the directory containing the module. Also add a bUseBackwardsCompatibleDefaults flag to the TargetRules class, also initialized to a default value from a setting passed to the RulesAssembly constructor. This controls whether modules created for the target should be configured to allow breaking changes to default settings, and is set to false for all engine targets, and true for all project targets. Change 3837343 by Ben.Marsh UBT: Remove the OverrideExecutableFileExtension target property. Change the only current use for this (the MayaLiveLinkPlugin target) to use a post build step to copy the file instead. Change 3837356 by Ben.Marsh Fix invalid character encodings. Change 3837727 by Graeme.Thornton UnrealPak: KeyGenerator: Only generate prime table when required, not all the time Change 3837823 by Ben.Marsh UBT: Output warnings and errors when compiling module rules assembly in a way that allows them to be double-clicked in the Visual Studio output window. Change 3837831 by Graeme.Thornton UBT: When parsing crypto settings, always load legacy data first, then allow the new system to override it. Provides the same key backwards compatibility that the editor settings class gives Change 3837857 by Robert.Manuszewski PR #4404: Make FGCArrayPool singleton global instead of per-CU (Contributed by mhutch) Change 3837943 by Robert.Manuszewski PR #4405: Fix FGarbageCollectionTracer (Contributed by mhutch) Change 3838451 by Ben.Marsh UBT: Fix exceptions thrown on a background thread while caching C++ includes not being caught and logged correctly. Now captures exceptions and re-throws on the main thread. #jira UE-53996 Change 3839519 by Ben.Marsh UBT: Simplify configuring bPrecompile and bUsePrecompile settings for modules. Each rules assembly can now be configured as installed, which defaults the module rules it creates to use precompiled data. Change 3843790 by Graeme.Thornton UnrealPak: Log the size of all encrypted data Change 3844258 by Ben.Marsh Fix plugin compile failure when created via new plugin wizard. Passing -plugin on the command line is unnecessary, and is now reserved for packaging external plugins for the marketplace. Also extend the length of time that the error toast stays visible, and don't delete the plugin on failure. #jira UE-54157 Change 3845796 by Ben.Marsh Workaround for slow performance of String.EndsWith() on Mono. Change 3845823 by Ben.Marsh Fix case sensitive matching of platform names in -TargetPlatform=X argument to BuildCookRun. #jira UE-54123 Change 3845901 by Arciel.Rekman Linux: fix crash due to lambda lifetime issues (UE-54040). - The lambda goes out of scope in FBufferVisualizationMenuCommands::CreateVisualizationCommands, crashing the editor if compiled with a recent clang (5.0+). (Edigrating 3819174 to Dev-Core) Change 3846439 by Ben.Marsh Revert CL 3822742 to always call Process.WaitForExit(). The Android target platform module in the editor spawns ADB.EXE, which inherits the editor's stdout/stderr handles and forks itself. Process.WaitForExit() waits for EOF on those pipes, which never occurs because the forked process never terminates. Proper fix is probably to have the engine explicitly duplicate stdout/stderr handles for new pipes to output process, but too risky before copying up to Main. Change 3816608 by Ben.Marsh UBT: Use DirectoryReference objects for all include paths. Change 3816954 by Ben.Marsh UBT: Remove bIncludeDependentLibrariesInLibrary option. This is not widely supported by platform toolchains, and is not used anywhere. Change 3816986 by Ben.Marsh UBT: Remove UEBuildBinaryConfig; UEBuildBinary objects are now just created directly. Change 3816991 by Ben.Marsh UBT: Deprecate PlatformSpecificDynamicallyLoadedModules. We no longer have any special behavior for these modules. Change 3823090 by Ben.Marsh UAT: Improve logging for child UAT instances. - Calling RunUAT now requires an identifier for prefixing into the parent log, which is also used to determine the name of the log folder. - Stdout is no longer written to its own output file, since it's written to the parent stdout, the parent log file, and the child log file anyway. - Log folders for child UAT instances are left intact, rather than being copied to the parent folder. The derived names for the copied names were confusing and hard to read. - Output from UAT is no longer returned as a string. It should not be parsed anyway (but may be huge!). ProcessResult now supports running without capturing output. Change 3826082 by Ben.Marsh UBT: Add a check to make sure that all modules that are precompiled are correctly marked to enable it, even if they are part of the build target. Change 3827025 by Ben.Marsh UBT: Move the compile output directory into a property on the module, and explicitly pass it to the toolchain when compiling. Change 3829927 by James.Hopkin Made HTTP interface const correct Change 3833533 by Ben.Marsh Rewrite engine source files to base include paths relative to the "Public" directory. This allows reducing the number of public include paths that have to be added for engine modules. Change 3835826 by Ben.Marsh UBT: Precompiled targets now generate a separate manifest for each precompiled module, rather than adding object files to a library. This fixes issues where object files from static libraries would not be linked into a target if a symbol in them was not referenced. Change 3835969 by Ben.Marsh UBT: Fix cases where text is being written directly to the console rather than via logging functions. Change 3837777 by Steve.Robb Format string type checking added to FOutputDevice::Logf. Fixes for those. Change 3838569 by Steve.Robb Algo moved up a folder. [CL 3847482 by Ben Marsh in Main branch]
2018-01-20 11:19:29 -05:00
#include "Evaluation/MovieSceneSequenceInstanceData.h"
Copying //UE4/Dev-Sequencer to //UE4/Dev-Main (Source: //UE4/Dev-Sequencer @ 3800792) #lockdown Nick.Penwarden #rb none ============================ MAJOR FEATURES & CHANGES ============================ Change 3631172 by Max.Chen Sequence Recorder: Record to the specified target animation for the target actor only. Newly tracked components will have newly created animations so that they don't record to the same target animation assets. #jira UE-49304 #jira UE-49216 #jira UE-49300 Change 3632895 by Max.Chen Sequencer: Fixed crash caused by erroneous persistent references to FSequencer. #jira UE-48647 #jira UE-48383 #jira UE-47661 Change 3634864 by Max.Chen Sequencer: Bake transforms #jira UE-49136 Change 3634879 by Max.Chen Sequence Recorder: Close the target animation asset editor if it exists before recording into it. #jira UE-49216 Change 3650553 by Max.Chen Sequencer: Switch shot display name to FString so that it's not localized. #jira UE-49824 Change 3650848 by Darren.Pegg Linear Timecode Plugin - first pass - still needs output interface Change 3653174 by Max.Chen Sequencer: Allow blending for vector tracks #jira UE-49809 Change 3653205 by Max.Chen Sequencer: Fix default burnin content. #jira UE-49824 Change 3653570 by Darren.Pegg Win32 Build fix: EmptyLinkFunctionForStaticInitializationLinearTimecode Change 3658673 by Darren.Pegg Timecode - Adding Accessors, renaming files Change 3663633 by Max.Chen Sequencer: Add option to export an object's transform to a camera anim asset. #jira UE-49599 Change 3665971 by Max.Chen Sequence Recorder: Add an active column for sequence recorder Change 3666066 by Max.Chen Sequencer: Suspend broadcast of selection delegates when performing multiple operations. #jira UE-40371 Change 3671057 by Max.Chen PR #4055: Fixed ACameraRig_Rail PreviewMeshes to match Spline Component (Contributed by Hemofektik) Change 3677104 by Max.Chen Sequencer: Add transaction for easing length. #jira UE-50588 Change 3677105 by Max.Chen Sequencer: Restore pre-animated state when changing active channels. #jira UE-50473 Change 3681069 by Max.Preussner LinearTimecode: Processing samples only if they have been dequeued successfully Change 3681783 by Andrew.Rodham Control Rig: Fixed crash attempting to zero out array with the wrong size Change 3681949 by Darren.Pegg OnTimecodeChange Delegate, Comments in DropTimecode, DropTimecode to string auto conversion Change 3682222 by Andrew.Porter EngineTest: Enabled MP4 Media Player test in the level ShaderModels. Set the texture ShaderModelPlayer_Video to use the correct media player. #jira UE-47213 Change 3683523 by Andrew.Rodham Sequencer: Display sub sequence name on binding ID pickers rather than the sub section name Change 3684318 by Max.Chen Sequencer: Fix crash in dragging a level sequence into the tree area. #jira UE-50902 Change 3687609 by Max.Chen Curve Editor: Add ModifyOwnerChange to CurveOwnerInterface. Call mark as changed when modifying keys or tangents. #jira UE-50882 Change 3687617 by Max.Chen Sequencer: Move some commands out of the generic sequencer command bindings so that they don't take over the viewport. ie. End for "Snap to Floor" should still function in the viewport. #jira UE-50997 Change 3687969 by Andrew.Rodham Sequencer: New compile on the fly logic - Sequencer is now able to compile partially or completely out-of-date evaluation templates from the source data as it needs. This affords much more efficient compilation when working within sequencer. - Added the concept of 'instance data' for sub sequences, available through the IMovieScenePlayer interface or persistent data stores. This replaces the compilation of specific templates for control rig templates. - Moved sub tracks and sections to MovieScene module - Removed the concept of shared tracks. Any previous uses should port over to shared execution tokens instead. #jira UE-46789 Change 3689884 by Max.Chen Sequencer: Remove null tracks on object bindings. Tracks can become null if they're from a plugin and the plugin is disabled. #jira UE-50839 Change 3690130 by Andrew.Rodham Sequencer: Fixed UMG animations not working with blueprint nativization Change 3690162 by Andrew.Rodham Sequencer: Fix assert when using filler shots #jira UE-51029 Change 3691904 by Max.Chen Sequencer: Fix overlap by looking at the key behind as well. This fixes a bug if there's 3 keyframes on consecutive frames, if you zoom out, you should see two bordered keys when the overlap threshold is passed. #jira UE-50993 Change 3692149 by Andrew.Rodham Sequencer: Change FSortByPrioritySegmentBlender::Blend to fall back to flag comparison if any sections are null for automation tests. - Combinations of null/non-null will never happen in the wild because we either run with sections or without, but the static analysis doesn't know that Change 3692212 by Andrew.Rodham Core: Changed TRange to pass-by-value for small types, inlined some functions Change 3693044 by Max.Chen Sequencer: Update pivot location for selection when closing sequencer. #jira UE-51132 Change 3693061 by Max.Chen Sequencer: Remove force evaluate on end scrubbing. Backout previous fix because 3657907 is the real fix. #jira UE-45905 Change 3694308 by Andrew.Rodham Sequencer: Sub tracks now blend correctly again #jira UE-51076 Change 3694365 by Andrew.Rodham Sequencer: Fixed exponential slow down when compiling large quantities of sub sequences on cook caused by not clamping sub-sequence compilation correctly Change 3698176 by Max.Chen Sequencer: Enable the camera cut track when popping back to the master only if there's a camera cut track in the master. This fixes an issue where if you don't have a camera cut track in the master, the camera gets locked to a camera cut in a subscene and you can't toggle out of it. #jira UE-51332 Change 3698979 by Max.Chen Sequencer: Fix delay before warmup causing sequences not to render. #jira UE-51307 Change 3700149 by Max.Chen Sequencer: Fix delay at shot boundaries causing sequences to not play back and render out. The shot id needs to be tracked to determine whether a new shot is encountered. #jira UE-51307 Change 3705624 by Max.Chen Sequencer: Reset drop node on drag leave Change 3718781 by Max.Preussner MediaAssets: Removed obsolete pointer checks (Playlist is always valid); added checks to enforce this invariant Change 3721586 by Max.Preussner MediaAssets: Added verbose logging to MediaPlayer BP functions Change 3721662 by Max.Preussner WmfMedia: Fixed media session not generating PlaybackEndReached event when session forced to stop #jira UE-50962 Change 3722954 by Max.Preussner MediaAssets: Removed looping option from play lists Change 3723076 by Andrew.Porter Removed controls for looping playlist. Change 3724202 by Max.Chen Sequencer: Spawn time optimizations #jira UE-32885 Change 3725359 by Max.Chen Sequencer: Fix spawnables not playing back. bIsEditorPreviewActor = false for sequencer spawnables so that BeginPlay() doesn't get skipped. #jira UE-51750 Change 3725362 by Max.Chen Sequencer: Change check to ensure for null object in property actuate. This prevents a crash when there's a track without a binding object. This occur when pasting a property track to the root. #jira UE-51713 Change 3725802 by Max.Chen Sequencer: Add the ability to drag sections up. #jira UE-43305 Change 3726520 by Max.Preussner MediaAssets: Fixed OnMediaOpened called when looping a source #jira UE-51773 Change 3728509 by Max.Chen Sequencer: Fix crash pasting a camera cut track because the outer isn't set to the movie scene. #jira UE-51787 Change 3729216 by Max.Chen Sequencer: Fix pre edit property chain broadcast so that the property path will include possible struct/array node. #jira UE-51525 Change 3729248 by Max.Chen Sequencer: Add default expansion states to allow track editors to specify them per track type. Material track is currently the only track that defaults to expanded. #jira UE-21741 Change 3729392 by Max.Preussner ImgMedia: Disabling video output when video track is selected Change 3729452 by Max.Preussner MediaPlayerEditor: Showing a notification if no video track available or selected Change 3729462 by Max.Preussner MediaPlayerEditor: Creating overlay font only once Change 3731155 by Max.Chen Sequencer: Set row index when creating a new take #jira UE-51867 Change 3731446 by Max.Chen Sequencer: Add null check and warning for invalid GetParameterCollectionInstance. Change 3731640 by Max.Chen Sequencer: Automatically create a camera cut track if a camera is dropped and there's no existing camera cut or there's no existing camera cut sections. #jira UE-51846 Change 3731653 by Max.Chen Sequencer: Defer details panel updates on scrubbing and playing. #jira UE-48448 Change 3732597 by Max.Chen Sequencer: Don't swap the camera cut section if it already exists and a camera is created. Change 3733554 by Max.Chen Sequencer: Fix crash when existing hotspot is null. Change 3734305 by Max.Preussner MediaAssets: Fixed assertion when assigning same media player to a media texture twice #jira UE-51012 Change 3735735 by Max.Preussner MediaFrameworkTest: Setting MediaAssets log category Verbose to prevent log spam in Editor Change 3736393 by Max.Chen Sequencer: Set min/max values for generic key area so that they don't default to 0,10. #jira UE-52012 Change 3736804 by Max.Chen Sequencer: Fix rotation rotator->quat->rotator conversion which prevents you from typing in a rotation of 0,0,320 into the key editor. Unwind rotations from the previous transform to the current transform so that the nearest rotation is set rather than the rotator->quat->rotator conversion. #jira UE-52009 #jira UE-34816 Change 3737790 by Max.Chen Sequencer: Follow up fix to quat->rot->quat so that unwinding is only processed if the last transform is valid. Change 3739738 by Max.Chen PR #4184: Unregister Missing TrackEditors in MovieSceneTools (Contributed by LordNed) Change 3741910 by Max.Preussner MfMedia: Simplified track switching code; enabled seeking Change 3742171 by Max.Preussner MediaAssets: Fixed timecode check to include current presentation time Change 3744889 by Max.Chen Sequencer: Use drag and drop actor factory if specifiied. This ensures that the correct actor factory is used in creating the object template for the sequencer spawner. This fixes some spawnables not getting created properly (ie. Empty Actor) #jira UE-51678 Change 3746049 by Andrew.Rodham FBX Import: Fixed tangent overrides producing the wrong type of key tangent modes Change 3747870 by Max.Chen Sequencer: Update auto scroll when moving keys/sections. #jira UE-31212 Change 3747885 by Max.Chen UMG: Remove template instance finish on pause. It appears that was only there to stop audio (CL #3161056). Instead, evaluate in the stopped position with the stopped playback state. #jira UE-47749 Change 3747914 by Max.Chen Sequencer: Add config for default completion mode for movie scene sequences. The default for level sequences is RestoreState. All others, such as UMG are set to KeepState. #jira UE-49480 Change 3747915 by Max.Chen Sequencer: Set default completion mode for all sections to project default. #jira UE-49480 Change 3748377 by Max.Preussner EngineTest: Fixed media player automation test BP #jira UE-50637 Change 3748531 by Max.Preussner EngineTest: Fixed media player not opening media during FTest setup I fixed up the Blueprint. Also, don't use PlayOnOpen on the media player if you don't intend to play the movie after opening. You can call Pause right after opening. If you enable PlayOnOpen, the order of operations will not work, because it will first call Pause via the IsReady check in Tick and then Play via the PlayOnOpen checkbox. I disabled PlayOnOpen. #jira UE-47207 Change 3750362 by Max.Chen PR #4205: parameter not used bug fixes (Contributed by shrimpy56) Change 3750885 by Max.Chen Sequencer: Prevent throttling on the curve editor so that editor world tick can apply. #jira UE-51624 Change 3757123 by Max.Preussner MediaAssets: Allowing media players to be part of GC clusters #jira FORT-59774 #jira UE-51943 Change 3764055 by Max.Chen Sequencer: Add SetPlaybackPosition as latent action to fix crash when calling SetPlaybackPosition in an event. #jira UE-52270 Change 3764555 by Max.Chen Sequencer: Change camera cut binding from guid to object binding id to allow for subscene bindings Change 3764613 by Max.Chen Sequencer: Show binding ID picker customization on all details panels. Allow creation of new camera cut sections from existing bindings. Deprecate AddNewCameraCut(FGuid) Change 3766389 by Max.Chen Sequencer: Don't override existing camera binding id on postload if it's valid. Change 3766432 by Max.Chen Sequencer: Switch constraint guid to constraint binding ID #jira UE-52438 Change 3767160 by Max.Preussner WmfMedia: Added more logging Change 3767843 by Max.Preussner MediaAssets: Fixed Crash in UMediaSoundComponent::UpdatePlayer #jira UE-52594 Change 3771038 by Max.Preussner Engine: Changed message log back to ensure Cannot use message log on render thread as it may call LoadModule Change 3771071 by Max.Preussner MediaCompositing: Fixed default media plane material Change 3771287 by Max.Preussner Engine: Changed ensure to global log Change 3771450 by Max.Preussner MediaAssets: Fixed crash when dragging media player viewport #jira UE-52675 Change 3771461 by Max.Preussner ImgMedia: Fixed seeking not working when paused #jira UE-52677 Change 3772999 by Andrew.Rodham Sequencer: Added the ability to supply an instance data object to sequence runtime evaluation - This allows systems to inject information into a sequence at runtime, enabling more dynamic control of tracks - Level sequence actors use this by default to supply a dynamic 'transform origin' to all component transform tracks, to which all absolute transform sections will be added. #jira UE-46003 Change 3774633 by Max.Preussner MediaAssets: Fixed MediaPlayer.Prev/Next not playing automatically if player was playing previously #jira UE-52714 Change 3774961 by Max.Preussner UdpMessaging: Patch to make message serialization notification thread-safe #jira UE-52624 Change 3778108 by Max.Chen Sequencer: Scroll in track area. #jira UESEQ-330 Change 3778270 by Max.Chen Sequencer: Copy/cut/paste/duplicate object bindings FMovieSceneCopyableBinding - struct containing the copied FMovieSceneBinding, FMovieScenePossessable and FMovieSceneSpawnable MovieScene - AddPossessable, AddSpawnable with existing possessable or spawnable ISequencer - FOnMovieSceneBindingsPasted to allow fixing up bindings on paste #jira UESEQ-352, UESEQ-335 Change 3778674 by Max.Preussner Engine: Fixed online documentation for external texture registry Change 3778699 by Max.Preussner Engine: Fixed external textures not registering correctly in all cases #jira UE-52648 Change 3778776 by Max.Preussner Engine: Corrected code comments for external texture registry Change 3779153 by Max.Preussner LinearTimecode: Fixed plugin category Change 3779166 by Max.Preussner WmfMedia: Reversing FourceCC display string, so it displays correctly Change 3780576 by Max.Chen Sequencer: Fix viewport invalidation so that it happens on sequence evaluation. #jira UE-52836 Change 3780619 by Max.Chen Sequencer: Always save default spawnable state regardless of focused sequence. This fixes a bug where if you step back to the master sequence (and the spawnable still exists), and then scrub outside the region where the spawnable exists, it gets destroyed but saved default spawnable state doesn't get called because it's no longer the focused sequence. #jira UE-52008 Change 3781227 by Max.Chen Sequencer: Add playback speed settings menu #jira UESEQ-384 Change 3782213 by Max.Preussner WmfMedia: Fixed H.265 frames being dropped due to false negative buffer size check #jira UE-52859 Change 3782239 by Max.Chen Sequencer: Add shortcut to tooltips #jira UE-52795 Change 3782388 by Max.Preussner WmfMedia: Fixed IYUV encoded AVI not playing correctly #jira UE-52855 Change 3782541 by Chris.Babcock Protect against asking for duration before prepare completed in movie player #jira UE-52805 #ue4 #android Change 3787676 by Max.Chen Sequencer: Export unmatched float properties to custom attributes #jira UE-52983 Change 3787788 by Max.Preussner Extras: Natvis for FTimespan Change 3789419 by Max.Chen Sequencer: Fix import camera so that when new cameras are created, values from the fbx are going only to the newly created cameras. Also, added bReduceKeys and bReduceKeysTolerance to import fbx. #jira UE-52997 Change 3789628 by Max.Chen Sequencer: Remove Shift-C and Shift-D as a hotkey for toggling the cinematic viewport as it was causing some confusion when users accidentally hit it. Change 3789716 by Andrew.Rodham Seqeuncer: Fixed slot animation not being restored for montages that are recreated during evaluation - The issue here is that the animation system can deem montages as inactive at any point, and will re-create a new montage instance if this is the case. Previously, we stored pre-animated state on the anim instance, and cached the montage that we played, which meant that we attempt to restore a stale montage. - The solution is to store pre-animated state for the montages, and cache the anim instance. This means we'll always store pre-animated state if the montage is re-created. #jira UE-49981 Change 3789874 by Max.Chen Sequencer: Add option to only show selected nodes only ISequencer - Added OnGetIsBindingVisible(), OnGetIsTrackVisible() LevelEditorSequencerIntegration - implement OnGetIsBindingVisible based on actor selection #jira UESEQ-357 Change 3789877 by Max.Chen Control Rig: Implement IsTrackVisible to show nodes in the sequencer tree that are selected. #jira UESEQ-357 Change 3791514 by Andrew.Rodham Image Plate: Fixed image plates not showing up in high res screenshots - The image plate mesh had a LOD index of -1 which meant it never showed up when a LOD to render was specified - Also simplified the bounds calculation #jira UE-51764 Change 3791596 by Max.Chen Sequence Recorder: Don't record editor only components #jira UE-49071 Change 3791659 by Andrew.Rodham Sequencer: Event struct payloads now support user defined struct default values on creation #jira UE-45430 Change 3791718 by Max.Chen Sequence Recorder: Fix level sequences not triggering when recording. Level sequences would not get recorded if the world settings actor was not recorded. Change 3791761 by Max.Chen Sequencer: Find available non-overlapping row index when adding subsections. Change 3791837 by Max.Chen Sequencer: Fix sequencer not updating after toggling Bind Sequencer to PIE/Simulate while PIE is active. Change 3791875 by Max.Chen Sequence Recorder: Add recording button now adds for any selected actors. Change 3791880 by Max.Chen Sequence Recorder: Fix end pie not stopping sequence recording if not recording world settings. Change 3791932 by Max.Chen Sequence Recorder: Record spawned actors immediately so that they won't be missed if they're deleted before tick. Clean up queued recordings that were from spawned actors. Change 3791954 by Max.Chen Sequence Recorder: Don't process if not recording on end pie. Change 3791955 by Max.Chen Sequence Recorder: Fix recording spawnables not getting the correct position for being spawned at. Set a transform on the movie scene spawnable which will be used if the root component of the object template doesn't exist. Change 3792061 by Max.Chen Sequence Recorder: Change FOnRecordingStarted and FOnRecordingFinished to multicast delegate. If a sequence being recorded into is currently open in sequencer, it gets reloaded to prevent crashes. Change 3792271 by Max.Chen Sequence Recorder: Duplicate the actor to trigger before playing so that a sequence can be recorded and played back at the same time. #jira UE-49069 Change 3792292 by Max.Preussner MfMedia: Fixed tracks being reported in reverse order #jira UE-53074 Change 3792811 by Max.Chen Sequencer: Add option to disable camera cuts on the movie scene player. Change 3793341 by Max.Preussner AvfMedia: Fix for crash when opening AVF Media after opening multiple players Merged from shelved CL in Dev-Rendering #author richard.wallis #jira UE-52383 Change 3793642 by Max.Chen Sequencer: Delete and rename icons. PR #4194: Improvements to Sequencer (Contributed by projectgheist) #jira UE-52139 Change 3794678 by Max.Chen Sequencer: Fix crash on HandleRecordingFinished #jira UE-53178 Change 3795007 by Max.Preussner AudioMixer: Fix for AVF Media Player audio is garbled and has static #author ethan.geller #jira UE-52785 Change 3795103 by Max.Chen Sequencer: Add bKeyCreated for FKeyPropertyResult and notify movie scene data changed when a key is created. #jira UE-53175 Change 3795457 by Michael.Trepka Reverted one of the changes from CL 3793341 as it was causing a crash at exit #jira UE-53196 Change 3795739 by Max.Chen Sequencer: Set ease in/out objects as transactional. #jira UE-50594 Change 3796871 by Max.Preussner MediaAssets: Fixed media texture initialization related crash on Metal; fixed white output on inactive media player; added proper support for clear color #jira UE-51940 #jira UE-52932 Change 3796921 by Michael.Trepka Fix for a crash in AvfMediaPlayer related to reusing FAvfMediaPlayer object #jira UE-53181 Change 3797176 by Max.Preussner MediaAssets: Fixed white flicker when rapidly swapping media players on a media texture Also no longer clearing media textures each frame if they are not in use #jira UE-52932 Change 3797515 by Max.Chen Actor Sequence: Add nullptr check - fix actor sequence crash when actor sequence doesn't exist. #jira UE-49103 [CL 3800998 by Max Chen in Main branch]
2017-12-11 11:42:27 -05:00
#include "Evaluation/MovieSceneEvalTemplateBase.h"
#include "Evaluation/MovieSceneEvalTemplateSerializer.h"
FMovieSceneSequenceInstanceDataPtr::FMovieSceneSequenceInstanceDataPtr(const FMovieSceneSequenceInstanceDataPtr& RHS)
{
*this = RHS;
}
FMovieSceneSequenceInstanceDataPtr& FMovieSceneSequenceInstanceDataPtr::operator=(const FMovieSceneSequenceInstanceDataPtr& RHS)
{
if (RHS.IsValid())
{
UScriptStruct::ICppStructOps& StructOps = *RHS->GetScriptStruct().GetCppStructOps();
void* Allocation = Reserve(StructOps.GetSize(), StructOps.GetAlignment());
StructOps.Construct(Allocation);
StructOps.Copy(Allocation, &RHS.GetValue(), 1);
}
return *this;
}
bool FMovieSceneSequenceInstanceDataPtr::Serialize(FArchive& Ar)
{
Copying //UE4/Dev-Sequencer to //UE4/Dev-Main (Source: //UE4/Dev-Sequencer @ 3946692) #lockdown Nick.Penwarden #rb none ============================ MAJOR FEATURES & CHANGES ============================ Change 3801826 by Max.Chen PR #4304: Level Sequence crash fix - Guarded against dereferencing null componen. (Contributed by DSDambuster) Change 3801828 by Max.Chen PR #4302: Movie Scene Visibility Template unitialised variable, causing random . (Contributed by DSDambuster) Change 3801837 by Max.Chen Sequencer: Delay spawning/construction for convert to possessable. This fixes a bug where property values would be lost when converting back and forth from possessable to spawnable. #jira UE-52400 Change 3801841 by Max.Chen Sequencer: Make spacer nodes not selectable. PR #4194: Improvements to Sequencer (Contributed by projectgheist) #jira UE-53117 #jira UE-52139 Change 3804183 by Max.Preussner MediaAssets: Added missing lock in media sound component Change 3805414 by Max.Preussner MediaAssets: Setting valid GUID when initializing media texture resource Change 3819578 by Max.Chen PR #4370: When enabling the "MovieCapture", do not turn off the Stereo-3D display. (Contributed by yehaike) #jira UE-53647 Change 3823414 by Max.Chen Curve Editor: Lock down the first and last keys in the redundant keys removal range so that they're unaffected. #jira UE-53591 Change 3826406 by Max.Chen Sequencer: Move OnStartedPlaying() to within first update in UpdateTimeCursorPosition(). This fixes an issue where setting the hud/player visibility was getting stomped on later. #jira UE-52772 Change 3827044 by Max.Preussner MediaAssets: Added sprite visualization to media sound component #jira UE-53594 Change 3827988 by Max.Preussner MediaPlayerAssets: Fixed Media Texture is not linked to Media Player when created together #jira UE-53532 Change 3828506 by Max.Preussner MediaPlayerEditor: Added attenuation visualizer for media sound components #jira UE-53594 Change 3832590 by andrew.porter EngineTest: Added a keep state check in Property Animation sequencer test Change 3833053 by andrew.porter EngineTest: Adding Hierarchical Bias test Change 3835683 by andrew.porter EngineTest: Adding UMG Animation screenshot test Change 3836076 by Max.Chen Sequencer: Fix audio volume and pitch multiplier deprecation. Change 3836230 by andrew.porter EngineTest: Adding Sequence Bone Position automation test Change 3836347 by Max.Chen Sequencer: Fixes to shot name parsing. When a shot doesn't contain a shot number, assume, [ShotName]_[TakeNumber]. When duplicating a shot, put the new shot in the same path of the original shot, so that the take numbers will increment properly. #jira UE-51868 Change 3836552 by Max.Chen Sequencer: Sub section now has a takes menu Change 3838094 by Max.Chen UMG: Fix template finish not getting called on stop. This fixes a bug where sections aren't restored when finished. #jira UE-52285 Change 3838708 by Max.Chen Sequencer: Add notification when the blend type is changed. #jira UE-54046 Change 3840295 by Max.Chen Sequencer: Fix copy/paste crash for lights #jira UE-54084 Change 3840957 by Mike.Zyracki Added Show Only Keyable and Show Only Animated to the filter list in the property editor. Added IsPropertyAnimated to IDetailKeyframe Interface which already had support for showing properties which are keyable (which is used for the key icon next to the properties.). Could have created another interface but then would have had to mimic the sequencer binding, releasing also, so this seemed best way. One issue still left is that custom built detail items currently don't store associated properties(usually) and so certain properties, in particulalry transforms, won't show up as keyable or animated. Note this also shows up with the keyable icon not showing up next to transform tracks, and other filters like Show Only Modified not working with transforms/customs. Not sure best way to tackle this. #jira UESEQ-328 Change 3841756 by Max.Chen Sequencer: Fix unbound possessable components when pasting spawnables. #jira UE-54104 Change 3843950 by andrew.porter EngineTest: Renaming LevelStreaming tests/content to LevelVisibility Change 3844082 by Mike.Zyracki Missing file for animated filter in property editor. When finding if a track is animated we need to find it but we can't easily induce the MovieTrack class for any particular property. So we don't set a class for it and just search by it's ID and name. #jira UESEQ-328 Change 3846902 by Max.Preussner ImgMedia: Fixed image media player never finished initialization if loading failed #jira UE-54247 Change 3849820 by Mike.Zyracki Reassigning deleted widgets didn't work since the menu extender mechanism needs a valid UObject in order to perform an operation on it. So to fix we replaced GetObjectBindingContextMenuExtender in WidgetBlueprint with new delegate mechanism (OnBuildCustomContextMenuForGuid) that supports FGuid in addition to UObjects which is needed to handle re-binding deleted widgets. Note that the default sequencer hacks this for replacing deleted actors in SequencerObjectBindingNode to check to see if a LevelSequence is active. We could move to this mechanism there also. #jira UE-53163 Change 3852211 by Max.Chen UMG: Indicate name of the property that is not bound. #jira UE-54350 Change 3854120 by Max.Chen Sequencer: Fix sibling folders being allowed to have the same folder name. #jira UE-54363 Change 3854627 by Max.Chen Sequencer: Step to next/previous key should work for all tracks if there aren't any selected. #jira UESEQ-391 Change 3855825 by andrew.porter EngineTest: Adding animation blending automation test Change 3855950 by andrew.porter EngineTest: Adding correct expected valuues to animation blending test Change 3856237 by Matt.Hoffman UESEQ-336 - Sequencer Track Reordering Adds the ability to re-order Master Tracks, Folders and Object Bindings within sequencer hierarchies (including UMG). Adds the ability to do a one-off sorting of the content under the old sorting behavior if the user wants to reset their layout to how it was under legacy behavior. Modifies SequencerTrackNodes, SequencerFolderNodes and SequencerObjectBindingNodes to handle CanDrop/OnDrop for above, below and ontop of. Fixes a Slate Issue that forcibly expanded a TreeviewRow if an item handled OnDrop. Slate will now only forcibly expand the row if the item says the drop happened ontop of the item, and not above or below it like it previously did. Change 3856503 by andrew.porter EngineTest: Adding automation test for using animation blueprint with blend multi node in sequencer Change 3857875 by Max.Chen Sequencer: Assign the sequence id after the template is compiled. #jira UE-54462 Change 3858344 by Max.Chen Sequencer: Prevent Goto and Transform boxes from overlapping by allowing them to be visible at the same time in an autosized horizontal box. Also, added close button to the goto box. PR #4425: Prevent Goto and Transform boxes from overlapping in Sequencer ... (Contributed by projectgheist) #jira UE-54210 Change 3860566 by andrew.porter MediaFrameworkTest: Set the option to index 0 for the audio and video track list by default Change 3860654 by andrew.porter EngineTest: Enabling Camera Cut + FOV test Change 3860981 by andrew.porter EngineTest: Updating skeletal mesh tests with a delay after set playback position Change 3861256 by Max.Chen Sequencer: Add all bindings if none selected. #jira-54440 Change 3862154 by Andrew.Rodham Added TimeManagement module Change 3862424 by andrew.porter EngineTest: Turned on the test Bone Positions with Blend Multi Node Change 3862573 by andrew.porter EngineTest: Adding test to compare bone positions in a sequence that is blending an animation that is using an AnimBP Change 3865117 by Max.Chen Sequencer: Stop auto scroll on mouse release of movement. #jira UE-31212 Change 3865303 by Max.Chen Sequencer: Add drag and drop transactions #jira UE-54662 Change 3865304 by Max.Chen Sequencer: Fix crash when an actor factory is not found. Change 3865361 by Max.Chen Sequencer: Don't change the camera/shot lock button when popping out of a sequence. #jira UE-54665 Change 3865412 by Max.Chen Sequencer: Determine whether a transform track is for a camera by using the spawned object or template #jira UE-54666 Change 3865685 by Max.Chen Sequencer: Clear autoscrub offset when stopping autoscroll #jira UE-31212 Change 3865886 by Max.Chen Sequence Recorder: Log an error if the number of frames changes while recording. This can happen if the skeleton changes while recording. #jira UE-48715 Change 3866925 by Andrew.Porter MediaFrameworkTest: Changing the current PNG test video image sequence to 1024 x 576 Change 3867705 by andrew.porter QAGame: Adding Audio Sort Sequence to dev folder Change 3867890 by andrew.porter QAGame: Adding a sequence for testing a sorting crash to my dev folder Change 3872628 by Max.Chen Movie Scene Capture: Split delay before warmup into split delay before shot warmup so that there's separate controls for when the movie scene capture warmups up vs. shot boundaries. Change 3873131 by Matt.Hoffman UE-54732 - Crash reordering a folder with a track. This was caused by folders being the only type of track to check if someone was putting a parent track into a child track. Object Binding tracks and Tracks now check as well so that you can't use the above/below drop targets to add parents as children. This also fixed a typo in the localization keys. #jira UE-54732 Change 3873301 by Mike.Zyracki Added ability to support continous euler angle changes when changing rotations, in particularly with the rotation gizmo's. To do this we effectively added a form an of 'euler filter'(https://en.wikipedia.org/wiki/Euler_filter) to find the closest euler angle to the current euler angle. Three functions were added to FRotator to make this possible, one to get the euler angle that's has the same rotation as it, one to get the difference between two euler angles via Manhattan distance and a third using the previous two to choose a Rotator value that's closest to it. We then use these functions before calling UComponent::SetRelativeRotation to make sure we use the correct Euler after the Quat conversion. We also no longer limit(bound) the euler angles to -180,180, which is obviously necessary to avoid flips. I also changed how we caluclate yaw and roll when pitch is -90 or 90 to make it the standard approach of zeroing out roll and just setting yaw. Main reasons are the previous implementation had precision issues so things like 180, 90, -180 would show up due to numbers being nearly zero but negative,(this would break any smooth interpolations), and this facilitates having a 'gimbal' rotation mode (like Maya, Blender etc..) if we ever want that also. If needed we could keep the previous implementation but would need to add some FMath::IsNearlyZero checks, with less performance. Note we only do this special filtering when applying delta's to actors or components in the editors, which then call UComponent::SetRelativeRotationExact, which is a new function to foces the RelativeRotation to be equal to the new rotation. This allows us to store un-nomalized Rotators at the cost that the RotationCache may be broken. We didn't change any of the other UComponent functions that set rotations (via Quats or Transforms) so they will still be bounded and unwound. In SetInternalWorldLocationAndRotation we only set the rotation if the rotation has changed, which fixes the rotation getting changed and re-normalized if just translate happens. In TransformTrackEditor, we correclty use the bUndwing flag and in MovieScene3DTransformSection there was an un-needed winding check there, it will be unwound earlier if needed, which happens if Sequence Recording is happening. Max we should talk about what to do about this . Note the euler angle drag via the widget is still bound to 0-360. I think we should just unbound that now since the rotations value are now unbound. This review now includes fixes suggested by Zak. #jira UE-UE-22228 Change 3873483 by Matt.Hoffman Sequencer Tracks can now be inserted above the spacer at the bottom of the tree. #jira UE-54706 Change 3873899 by Max.Chen Sequencer: Add section selection throbbing Change 3873908 by Max.Chen Movie Scene Capture: Added logging per frame Change 3873924 by Matt.Hoffman Adds the ability to store Sequence Recorder setups into profiles that stay with the map and can be re-loaded later. Profiles store the Actor Recordings so the settings for each actor should carry with them. #jira UESEQ-339 Change 3874726 by Matt.Hoffman Disable drag-and-drop targets on spacers that come between rows in Sequencer. This prevents extra drag/drop targets showing up between each row. #jira UE-54706 Change 3874862 by Matt.Hoffman Audio Track no longer gets reordered when adding sub-audio tracks, as sub-tracks are no longer counted towards the sorting order index when normalizing indexes. #jira UE-54727 Change 3875905 by Matt.Hoffman Disable Fade Track UI if a fade track already exists in the sequence. #jira UESEQ-393 Change 3876163 by Max.Chen Sequencer: Swap the camera object to the camera component's owner if it's not the same. #jira UE-54874 Change 3876971 by Andrew.Porter EngineTest: Moved Media Player Seek test to new folder. Also enabled the test with new ground truth image. Change 3877040 by Max.Chen Cine Camera: Split camera properties to two groups, "Camera Options" and "Camera Settings". The cine camera now hides properties in the "Camera Settings" group so that properties like bConstrainAspectRatio (in the "Camera Options" group) can be visible. #jira UE-54192 Change 3877763 by Max.Chen Curve Editor: Fix curve changed on end drag so that only curves that had keys/tangents that were changed receive notification, otherwise all loaded curves were getting notified that they were changed. #jira UE-54951 Change 3878234 by Matt.Hoffman Disable "Drop Below" targets for Sequencer Tree nodes to prevent a confusing UX issue where dropping underneath a Object Binding Node puts it after the object binding node but the UI looks like it's inserting it inside the Object Binding node. #jira UE-54743 Change 3879359 by Mike.Zyracki If a track is inactive we dim it a bit which seems to be the UE4 way to show inactive or disabled state. We changed the active logic so that all subtracks need to be inactive for the track to also be inactive(instead of all active for active). This conforms to how the active state actually works, e.g if you have two sections and only one is active the track is still active above it. #jira UESEQ-388 Change 3879462 by Max.Chen Sequencer: Allow dragging onto a particular row which would move out any overlapping sections to make space for the newly created section. Newly created sections are now selected and throbbed to draw attention to themselves. #jira UE-54664 Change 3879464 by Max.Chen Sequencer: Fixed overlapping ranges being inserted into the evaluation field during compilation - The issue was that track segments that had been combined with adjacent segments (due to them being identical) would potentially cause a subsequently compiled frame to overlap with a range that had already been inserted into the evaluation field. - The insertion code previously asserted that only minor overlaps were catered for (due to fp rounding errors) and assumed that a supplied range could not entirely contain any other range in the field. - The solution is to supply the insertion time along with the range to know exactly where the data should live in the field, and crop the range to the maximum allowable space between adjacent ranges. #jira UE-54922 Change 3879590 by Matt.Hoffman Items that are now added to the Sequencer via the "+Track" menu will be selected after being added. Items can now be added inside of folders instead of just to the root level. #jira UE-27397 Change 3879612 by Mike.Zyracki Display Nodes with no children are always active. #jira UESEQ-388 Change 3879730 by Matt.Hoffman Sequence Recorder's actor recording groups now remove items from the group when removed via the UI. #jira UESEQ-339 Change 3880256 by Mike.Zyracki Fix issue with inactive display with folders and other track nodes. #jira UESEQ-388 Change 3883491 by Max.Chen Fix issue where tick is skipped due to last ticked pose isn't cleared after AnimInstance changes. Copy from Release-4.19 #jira UE-51323 Change 3883603 by Max.Chen Movie Scene Capture: Add option toggle disable screen percentage. By default this is on (no change in current behavior). #jira UE-51898 Change 3885074 by Max.Preussner MediaCompositing: Resetting media texture & freeing resource on section end; removed dead code Change 3887220 by Max.Preussner MediaCompositing: Defaulted media section duration to 1 sec (since we do not know the actual duration in most cases) Change 3887478 by Matt.Hoffman Sequences now show [Inactive] in their title bars when they're disabled. This helps communicate why a sequence isn't being evaluated. #jira UE-51469 Change 3888985 by Max.Chen Movie Scene Capture: Clamp HDR Compression Quality between 0 and 1. #jira UE-55136 Change 3893519 by Max.Chen Sequence Recorder: Clarified tooltip for bRecordNearbySpawnedActors - spawned actors will still be recorded if they match the ActorFilter. #jira UE-55238 Change 3893546 by Max.Chen Sequence Recorder: If a selected actor already has a recording, add a blank recording. #jira UE-55239 Change 3894044 by Max.Preussner MediaCompositing: Added support for seeking into a media section Change 3894310 by andrew.porter MediaFrameworkTest: Adding Img media sources for 1080 and 2160 ravent test content Change 3894426 by Max.Preussner MediaAssets: Letting media textures with AutoClear retain their clear color when player is reset Change 3895717 by Max.Chen Sequencer: Null checks to prevent crash when saving the default state of a spawnable #jira UE-55304 Change 3897388 by Max.Chen Sequencer: Don't update current time to be within the view range when stepping into a sequence. #jira UE-55322 Change 3897452 by Max.Chen Audio: Fix crash when trying to record audio without any active capture devices. Log warning if the number of input channels is not 1 or 2. #jira UE-55223 Change 3897619 by Max.Preussner MediaCompositing: Removed commented out code Change 3898072 by Max.Chen Sequencer: Override the animation asset in the player state if it doesn't match the animation asset that's being evaluated. #jira UE-55328 Change 3898272 by Max.Preussner MediaPlayerEditor: Made slate brush constants static Change 3898704 by Max.Chen Sequencer: Skip if the binding id's sequence can't be found. #jira UE-55337 Change 3899855 by Max.Preussner MediaCompositingEditor: Added cache state visualization to media track Change 3900300 by Max.Preussner MediaCompositingEditor: Added loop indicators to media sections Change 3900694 by Max.Preussner ImfMedia: Looping cache only when player is looping Change 3900892 by Max.Preussner Stats: Added stats category for media framework Change 3900954 by Max.Preussner MediaCompositing: Don't evaluate at the end of media section Change 3901348 by Max.Preussner Core: Replaced TLruCache autos for better readability Change 3901655 by Max.Preussner ImgMedia: Added more perf stats to EXR reader Change 3901972 by Max.Preussner MediaAssets: Added getter for media player in media sound components Change 3902233 by Max.Preussner MediaAssets: Enabling media textures to receive samples right after player is assigned Change 3902238 by Max.Preussner MediaCompositing: Working around init/shutdown idiosyncracies in sequencer Change 3904045 by Max.Chen Sequencer: Fix copy/paste crash. Only process UMovieSceneCopyableBinding and objects that can be spawned by the movie scene spawn register. #jira UE-55314 Change 3905605 by Max.Chen Sequencer: Restrict spawnables from being created if they have a ClassWithin that UMovieScene is not a child of. #jira UE-55429 Change 3906550 by Max.Chen Sequencer: Add media track icon #jira UE-55480 Change 3907101 by Max.Chen Sequence Recorder: Fix bugs related to not recording a level sequence. There were certain assumptions that creating a level sequence meant that sequence recording was in progress. This is not always the case - the recorders can record animation assets and not create a level sequence. Changed the notion of IsRecording() to having at least one actor recording that is recording. Countdown timer, recording displays, etc should function if IsRecording() and not based on whether a level sequence is created. #jira UE-55485 Change 3907247 by Max.Chen Sequence Recorder: Fix crash not removing PrepareToCleanseEditorObject delegate. Repros when opening sequence recorder, closing it, and then opening or creating a level. Change 3910343 by Max.Preussner Core: Added async helper for executing functions on a given thread pool Change 3910346 by Max.Preussner ImgMedia: Added separate thread pools for loading/decoding and deleting image frames Change 3910829 by Max.Preussner Profiler: Increased visible range of profiler graph Change 3910841 by Max.Preussner MediaCompositing: Displaying asset name instead of full media source path in media section Change 3910870 by Max.Preussner ImgMedia: Using deallocation thread pool only in debug builds Change 3919642 by Max.Chen Sequence Recorder: Clarify active tooltip #jira UE-55661 Change 3919660 by Max.Chen Sequencer: Sequence template source signatures are now also compared to catch the case where a sub-sequence asset has been saved but not modified - The following sequence of events exposes this issue: - Create a master sequence with a single shot that spawns a cube - Add this sequence to a level and set it to auto-play - Save everything and restart - Resave just the inner shot asset without opening it - PIE - The inner shot never spawns its cube because its template was wiped on save, but its signature never changed. Since the master sequence previously didn't check the template source signature, it ends up trying to evaluate an empty template. #jira UE-55626 #jira UE-55490 Change 3921825 by Max.Chen Sequencer: "Run Construction Script in Sequencer" is off by default for blueprints but on for Sequencer. This allows the content author to switch it on for specific blueprints and sequencer will be default, run those with construction scripts enabled. Change 3922232 by Max.Chen Sequence Recorder: Reset countdelay on stop. #jira UE-55755 Change 3922306 by Max.Chen Sequence Recorder: Don't automatically mark transforms to be recorded by sequence recorder. Instead, log a warning if the user toggled it off to warn that the resulting animation might not match gameplay. #jira UE-55758 Change 3922912 by Max.Chen Sequence Recorder: Fix refresh next sequence name #jira UE-55757 Change 3927654 by Max.Chen Movie Scene Capture: Added format mapping for the name of the current camera #jira UE-55769 PR #4537 Change 3927658 by Max.Chen Sequencer: Added fbx property mapping for "FocusDistance" to "FocusSettings.ManualFocusDistance" #jira UE-55782 Change 3932022 by Max.Chen Sequencer: Add import animation track section to next available row index. #jira UE-55892 Change 3933919 by Max.Chen Sequencer: Jump to playback start frame and not 0 to start playback for recording. #jira UE-55933 Change 3934307 by Andrew.Rodham Sequencer: Add template signature that is re-generated every time the base template is regenerated, which invalidates evaluation fields This fixes an issue where the same sequence is instantiated multiple times in a sequence. If the source sequence was saved, its template would be wiped, which would invalidate the template ID When an instance tries to evaluate the master template, it would only invalidate a range in the evaluation field that was the hull of any invalid sub sequences overlapping the current time, potentially leaving invalid data in the evaluation field at positions later (or earlier) on in the sequence When the sub template was re-generated, it receives the same SequenceSignature as it had before (because the sequence hasn't actually changed), which causes the stale evaluation field data to fail the IsDirty check (because the sequence is the same as it thought, but the *template* has changed) This has been addressed be adding a signature to templates themselves, and checking both the template signature and sequence signature as a part of the IsDirty check. This ensures that we regenerate if either the template, or the sequence have changed. #jira UE-55934 Change 3936327 by Andrew.Rodham Sequencer: Removed increment when trimming right UMovieSceneSection::TrimSection already explicity assigns an exclusive bound to the time passed in. The new behavior means we can trim a section to the right, and insert another section without changing the time to create adjacent sections. #jira UE-42652 Change 3936328 by Andrew.Rodham Fixed KeyFrameManipulator assignment operators and copy/move constructors - These types are potentially self-referential so cannot use default constructors/assignment Change 3936330 by Andrew.Rodham Converted UMGSequencePlayer to use frames internally #jira UE-54878 Change 3936726 by Max.Chen Sequencer: Set track node as the parent of the key area node. The key area switcher needs the object binding id from the parent object binding node. Without this, the binding to the external value fails. #jira UE-55931 Change 3936775 by Max.Chen Sequencer: Should stop or loop should compare DurationFrames with Current Time from StartTime. The bug is that if you set 30 warmup frames in movie rendering for a range of 0-100, the FrameRange will be starting at -30 and have a duration of 130. Without this fix, the playback will continue until frame 130, rather than 100. #jira UE-55933 Change 3936935 by Matt.Hoffman Easing Curves are now represented in Play Rate resolution instead of internal resolution. #jira UE-55937 Change 3937069 by Matt.Hoffman Users can toggle if the is infinite on each side, limited by which tracks support infinite ranges. #jira UE-55891 Change 3937516 by Max.Preussner ImgMedia: Added support for single-threaded platforms #jira UE-55986 Change 3937826 by Max.Preussner MediaAssets: Disabling media sound components on HTML5 if AudioMixer is not enabled Change 3937997 by Max.Chen Curve Editor: Add Zoom to Fit Curves so that selected curves from Sequencer can be focused on. Tested that undo doesn't re-zoom. #jira UE-55935 Change 3938000 by Max.Chen Sequencer: Stop all sounds before generating audio waveforms. #jira UE-55951 Change 3938376 by Max.Preussner XGEController: Disabled XGE Controller in single-threaded apps to prevent crash Change 3938444 by Max.Preussner Core: Added async support for single-threaded applications Change 3938445 by Max.Preussner Networking: Added support for single-threaded applications in UDP socket sender/receiver Change 3938447 by Max.Preussner Messaging: Added support for single-threaded applications Change 3939432 by Max.Chen Sequence Recorder: Append command list to global level editor actions so that shortcuts are accessible in level editor. #jira UE-55798 Change 3940229 by Andrew.Rodham Added prospective display rate upgrade to UMovieScene::PostLoad - There was previously some very odd behaviour that would assign the fixed frame interval only when a sub sequence was focused in SSequencer. This meant that many sequences could have a frame interval of 0 set in the data. - Under the old method of snap interval display this would have fallen back to getting the display interval from the sequencer settings, but we no longer look at these. - The USequencerSettings properties have been removed and in their place, a prospective data upgrade for sequences that have a fixed frame interval old 0fps that sets the play rate to the previous defaults based off the old USequencerSettings defaults. - This could end up 'changing' the display rate for sequences where the user has changed the snap interval in the settings for a particular sequence editor, but there's not much we can do about that given we don't have access to the USequencerSettings classes in UMovieScene #jira UE-55919 Change 3940277 by Andrew.Rodham Sequencer: Added ability to default frame resolutions and play rates for newly created actor sequences Change 3940378 by Andrew.Rodham Sequencer: Post move import dialog now defaults to the playback framerate of the sequence, and floors to frame numbers Change 3940559 by Andrew.Rodham Reinstated primed or recording sequence color Change 3940642 by Max.Preussner ImagePlate: Removed image plate media playback functionality Change 3940843 by Max.Preussner Core: Made TCircularQueue actually thread-safe; improved code comments Change 3940860 by Max.Chen Sequencer: Changed StructNameToKey to StructPathToKey Previously, keying a PropertyPath of [RenderTransform][Shear][X] would get trimmed to X, which doesn't map to a channel name as considered by Sequencer2dTransformTrackEditor. Instead, trim the resulting property path to [Shear][X] so that track editors can determine the desired struct path and channels to key. #jira UE-52966 Change 3941292 by Mike.Zyracki Fix for trajectories out of range not showing up. 1) If we had no key data we would pop the time, so wouldn't get the section ranges. 2) Calculating of upper bound was wrong, checking against -1 and not key == num of keys when doing algo::lower_bound. 3) No need to do the Bck-- for the bakward iterators since we fixed #2. We start now from the upper bound correctly. 4) If we had no keys (at section start,end) we would incorrectly say we were any key type, so since we draw constant keys as dashed we would do so incorrectly around section end points. #jira UE-55929 Change 3941424 by Max.Chen Curve Editor: Change Zoom to Fit to use TArrayView Change 3941498 by Max.Preussner Core: Added FMath::DivideAndRoundNearest function Change 3942097 by Matt.Hoffman Drop Frame Timecode Support for NTSC rates. Change 3942104 by Matt.Hoffman Sequence Recorder Group is no longer visible inside the World Outliner after using one. #jira 55266 Change 3942107 by Max.Chen Sequencer: Resurrect logic to find or extend an existing section when adding keys. Change 3942330 by Max.Chen Sequence Recorder: Better tooltip for default animation settings. #jira UE-55636 Change 3942339 by Max.Chen Sequence Recorder: Better tooltip for default animation settings. #jira UE-55636 Change 3942507 by Andrew.Rodham Sequencer: We no longer pad the time overlap threshold with a small number that is not scaled by the current zoom level - The presence of this pad was causing keys that were far apart to be grouped when zoomed in a long way Change 3942509 by Andrew.Rodham Sequencer: Only pad total view range, rather than section range as well when retrieving keys to render - This stops us from rendering keys that are within the view range, but outside the section range Change 3942512 by Andrew.Rodham Added transactions to some sequencer details customizations Change 3942513 by Andrew.Rodham Sequencer: Reinstated validation checks to UMovieSceneSection::SetStartFrame and SetEndFrame, changed erroneous uses to use SetRange Change 3942560 by Andrew.Rodham Pass by rvalue reference to appease error C2719 on Win32 ('InChannels': formal parameter with requested alignment of 8 won't be aligned) Change 3942697 by Andrew.Rodham Newly Created Level Sequences and Actor Sequences now default to 24000 fps frame resolution (+/- ~24hrs range, supporting all integer rates + 23.976) Change 3942700 by Andrew.Rodham Sequencer: Added legacy out-of-bounds errors for times that are not supported by the current legacy upgrade frame resolution Change 3942989 by Max.Preussner Core: Fixed circular queue count calculation Change 3943538 by Max.Preussner MediaAssets: Reverted workaround for procedural audio log spam in HTML5 (Actor component initialization cannot be skipped if the component is used in a level) Change 3944071 by Max.Preussner QAGame: Fixed Media Texture keeps last frame of Media when PIE ends #jira UE-53360 Change 3944292 by Max.Chen Sequencer: Added extra flags to ensure that asset initialization does not occur on template actor sequences #jira UE-56113 Change 3944364 by Max.Chen Sequencer: Prevent circular shot/master tracks. Tested adding master -> child -> master as drag and drop cinematic shot tracks and sub tracks as well as through the + button. #jira UE-56091 Change 3944422 by Max.Chen Sequence Recorder: Disable transform recording if off. #jira UE-56061 Change 3944745 by Andrew.Rodham Sequencer: Key rendering fixes - Fixed assert that occured when keys happened to reside on some times due to KeyTime + TimeOverlapThreshold - KeyTime being slightly larger TimeOverlapThreshold - Fixed keys sometimes being clipped when zoomed right in due to lack of half-frame offset - Added missing documentation to MovieSceneTimeHelpers.h #jira UE-56107 Change 3945231 by Andrew.Rodham Sequencer: Reconstruct channel proxy on Serialize to catch all cases of undo/redo, PostLoad and duplication #jira UE-56089 Change 3945301 by Andrew.Rodham Sequencer: Added safety checks during initial sequence recording to guard against applying negative or 0-sized sequence ranges #jira UE-56125 Change 3946627 by Max.Preussner Fortnite: Fixed game crashes closing editor while in PIE - Pure virtual function being called #jira UE-56144 [CL 3946896 by Max Chen in Main branch]
2018-03-14 22:09:33 -04:00
bool bShouldWarn = !WITH_EDITORONLY_DATA;
return SerializeInlineValue(*this, Ar, bShouldWarn);
Copying //UE4/Dev-Core to //UE4/Dev-Main (Source: //UE4/Dev-Core @ 3847469) #lockdown Nick.Penwarden #rb none ============================ MAJOR FEATURES & CHANGES ============================ Change 3805828 by Gil.Gribb UE4 - Fixed a bug in the lock free stalling task queue and adjusted a comment. The code is not current used, so this is not actually change the way the code works. Change 3806784 by Ben.Marsh UAT: Remove code to compile UBT when using UE4Build. It should already be compiled as a dependency of UAT. Change 3807549 by Graeme.Thornton Add a cook timer around VerifyCanCookPackage. A licensee reports this taking a lot of time so it'll be good to account for it. Change 3807727 by Graeme.Thornton Unhide the text asset format experimental editor option Change 3807746 by Josh.Engebretson Remove WER from iOS platform Change 3807928 by Robert.Manuszewski When async loading, GC Clusters will be created after packages have been processed to avoid situations where some of the objects that are being added to a cluster haven't been fully loaded yet Change 3808221 by Steve.Robb GitHub #4307 - Made GetModulePtr() thread safe by not using GetModule() ^ I'm not convinced by how much thread-safer this is really, but it's tidier anyway. Change 3809233 by Graeme.Thornton TBA: Misc changes to text asset commandlet - Rename mode to "loadsave" - Add -outputFormat option which can be assigned "text" or "binary" - When saving binary, use a differentiated filename so that source assets aren't overwritten Change 3809518 by Ben.Marsh Remove the outdated UnrealSync automation script. Change 3809643 by Steve.Robb GitHub #4277 : fix bug; FMath::FormatIntToHumanReadable 3rd comma and negative value #jira UE-53037 Change 3809862 by Steve.Robb GitHub #3342 : [FRotator.h] Fix to DecompressAxisFromByte to be more efficient and reflect its intent accurately #jira UE-42593 Change 3811190 by Graeme.Thornton Add support for writing specific log channels to their own files Change 3811197 by Graeme.Thornton Minor updates to output formatting and timing for the text asset commandlet Change 3811257 by Robert.Manuszewski Cluster creation will now be time-sliced Change 3811565 by Steve.Robb Define out non-monolithic module functions. Change 3812561 by Steve.Robb GitHub #3886 : Enable Brace-Initialization for Declaring Variables Incorrect semi-colon search removed after discussion with author. Test added. #jira UE-48242 Change 3812864 by Steve.Robb Removal of some unproven code which was supposed to fix hot reloading BP class functions in plugins. See: https://udn.unrealengine.com/questions/376978/aitask-blueprint-nodes-disappear-when-their-module.html #jira UE-53089 Change 3820358 by Ben.Marsh PR #4358: Incredibuild use ShowAgent by default (Contributed by projectgheist) Change 3822594 by Ben.Marsh UAT: Improvements to log file handling. - Always create log files in the final location, rather than writing to a temp directory and copying in later. - Now supports -Verbose and -VeryVerbose for increasing log verbosity, rather than -Verbose=XXX. - Keep a backlog of log output before the log system is initialized, and flush it to the log file once it is. - Allow buildmachines to specify the uebp_FinalLogFolder environment variable, which is used to form paths for display. When build machines copy log files elsewhere after UAT finishes (eg. a network share), this allows error messages to display the right location. Change 3823695 by Ben.Marsh UGS: Fix issue where precompiled binaries would not be shown as available for a change until scrolling the last submitted code change into the buffer (other symptoms, like de-focussing the main window would cause it to go back to an unavailable state, since the changes buffer was shrunk). Now always queries changes up to the last change for which zipped binaries are available. Change 3823845 by Ben.Marsh UBT: Exclude C# projects for unsupported platforms when generating project files. Change 3824180 by Ben.Marsh UGS: Add an option to show changes by build machines, and move the "only show reviewed" option in there too (Options > Show Changes). #jira Change 3825777 by Steve.Robb Fix to return value of StringToBytes. Change 3825810 by Ben.Marsh UBT: Reduce length of include paths for MSVC toolchain. Change 3825822 by Robert.Manuszewski Optimized PIE lazy pointer fixup. Should be up to 8x faster now. Change 3826734 by Ben.Marsh Remove code to disable TextureFormatAndroid on Linux. It seems to be an editor dependency. Change 3827730 by Steve.Robb Try to avoid decltype(auto) if it's not supported. See: https://udn.unrealengine.com/questions/395644/build-417-with-c11-on-linux-ttuple-errors.html Change 3827745 by Steve.Robb Initializer list support for TMap. Change 3827770 by Steve.Robb GitHub #4399 : Added a CONSTEXPR qualifiers to FVariant::GetType() #jira UE-53813 Change 3829189 by Ben.Marsh UBT: Now always writes a minimal log file. By default, just contains the regular console output and any reasons why actions are outdated and needed to be executed. UAT directs child UBT instances to output logs into its own log folder, so that build machines can save them off. Change 3830444 by Steve.Robb BuildVersion and ModuleManifest moved to Core, and parsing of these files reimplemented to avoid a JSON library. This should be revisited when Core has its own JSON library. Change 3830718 by Ben.Marsh Fix incorrect group name being returned by FStatNameAndInfo::GetGroupName() for stat groups. The editor populates the viewport stats list by calling this for every registered stat and stat group (via FLevelViewportCommands::HandleNewStatGroup). The menu entry attempts to show the stat name with STAT_XXX stripped from the start as the menu item label, with the free-form text description as a tooltip. For stat groups, the it would previously just return the stat group name as "Groups" (due to the raw naming convention of "//Groups//STATGROUP_Foo//..."). Since this didn't match the expected naming convention in FLevelViewportCommands::HandleNewStat (ie. STAT_XXX or STATGROUP_XXX), it would fail to add it. When the first actual stat belonging to that group is added, it would add a menu entry for the group based on that, but the stat description no longer makes sense as a tooltip for the group. As a result, all the editor tooltips were junk. #jira UE-53845 Change 3831064 by Ben.Marsh Fix log file contention when spawning UBT recursively. Change 3832654 by Ben.Marsh UGS: Fix error panel not being selected when opened, and weird alignment/color issues on it. Change 3832680 by Ben.Marsh UGS: Fix failing to detect workspace if synced to a different stream. Seems to be a regression caused by recent P4D upgrade. Change 3832695 by Ben.Marsh UGS: Invert the options in the 'Show Changes' submenu for simplicity. Change 3833528 by Ben.Marsh UAT: Script to rewrite source files with public include paths relative to the 'Public' folder. Usage is: RebasePublicIncludePaths -UpdateDir=<Dir> [-Project=<Dir>] [-Write]. Change 3833543 by Ben.Marsh UBT: Allow targets to opt-out of having public include paths added for every dependent module. This reduces the command line length when building a target, which has recently become a problem with larger games (due to Microsoft's compiler embedding the command line into each object file, with a maximum length of 64kb). All engine modules are compiled with this enabled; games may opt into it by setting bLegacyPublicIncludePaths = false; from their .target.cs, as may individual modules. Change 3834354 by Robert.Manuszewski Archetype pointer will now be cached to avoid locking the object tables when acquiring its info. It should also be faster this way regardless of any locks. #jira UE-52035 Change 3834400 by Robert.Manuszewski Fixing crash on exit caused by cached archetypes not being cleaned up before static exit cleanup. #jira UE-52035 Change 3834947 by Steve.Robb USE_FORMAT_STRING_TYPE_CHECKING removed from FMsg::Logf and FMsg::Logf_Internal. Change 3835004 by Ben.Marsh Fix code that relies on dubious behavior of requiring referenced "include path only" modules having their _API macros set to be empty, even if the module is actually implemented in a separate DLL. Change 3835340 by Ben.Marsh Fix errors making installed build from directories with spaces in the name. Change 3835972 by Ben.Marsh UBT: Improved diagnostic message for targets which don't need a version file. Change 3836019 by Ben.Marsh UBT: Fix warnings caused by defining linkage macros for third party libraries. Change 3836269 by Ben.Marsh Fix message box larger than the screen height being created when a large number of modules are incompatible on startup. Change 3836543 by Ben.Marsh Enable SoundMod plugin on Linux, since it's already supported through the editor. Change 3836546 by Ben.Marsh PR #4412: fix type mismatch (Contributed by nakapon) Change 3836805 by Ben.Marsh Fix commandlet to compile marketplace plugins. Change 3836829 by Ben.Marsh UBT: Fix ability to precompile plugins from installed engine builds. Change 3837036 by Ben.Marsh UBT: Write the previous and new contents of intermediate files to the log if they change. Makes it easier to debug unexpected rebuilds. Change 3837037 by Ben.Marsh UBT: Fix engine modules having inconsistent definitions depending on whether modules are only referenced for their include paths vs being linked into a binary (due to different _API macro). Change 3837040 by Ben.Marsh UBT: Remove code that initializes members in ModuleRules and TargetRules objects before the constructor is run. This is no longer necessary, now that the backwards-compatible default constructors have been removed. Change 3837247 by Ben.Marsh UBT: Remove UELinkerFixups module, now that plugins and precompiled modules do not require hacks to force initialization (since they're linked in as object files). Encryption and signing keys are now set via macros expanded from the IMPLEMENT_PRIMARY_GAME_MODULE macro, via project-specific macros added in the TargetRules constructor. Change 3837262 by Ben.Marsh UBT: Set whether a module is an engine module or not via a default value for the rules assembly. All non-program engine and enterprise modules are created with this flag set to true; program targets and modules are now created from a different assembly that sets it to false. This removes hacks from UEBuildModule needed to adjust behavior for different module types based on the directory containing the module. Also add a bUseBackwardsCompatibleDefaults flag to the TargetRules class, also initialized to a default value from a setting passed to the RulesAssembly constructor. This controls whether modules created for the target should be configured to allow breaking changes to default settings, and is set to false for all engine targets, and true for all project targets. Change 3837343 by Ben.Marsh UBT: Remove the OverrideExecutableFileExtension target property. Change the only current use for this (the MayaLiveLinkPlugin target) to use a post build step to copy the file instead. Change 3837356 by Ben.Marsh Fix invalid character encodings. Change 3837727 by Graeme.Thornton UnrealPak: KeyGenerator: Only generate prime table when required, not all the time Change 3837823 by Ben.Marsh UBT: Output warnings and errors when compiling module rules assembly in a way that allows them to be double-clicked in the Visual Studio output window. Change 3837831 by Graeme.Thornton UBT: When parsing crypto settings, always load legacy data first, then allow the new system to override it. Provides the same key backwards compatibility that the editor settings class gives Change 3837857 by Robert.Manuszewski PR #4404: Make FGCArrayPool singleton global instead of per-CU (Contributed by mhutch) Change 3837943 by Robert.Manuszewski PR #4405: Fix FGarbageCollectionTracer (Contributed by mhutch) Change 3838451 by Ben.Marsh UBT: Fix exceptions thrown on a background thread while caching C++ includes not being caught and logged correctly. Now captures exceptions and re-throws on the main thread. #jira UE-53996 Change 3839519 by Ben.Marsh UBT: Simplify configuring bPrecompile and bUsePrecompile settings for modules. Each rules assembly can now be configured as installed, which defaults the module rules it creates to use precompiled data. Change 3843790 by Graeme.Thornton UnrealPak: Log the size of all encrypted data Change 3844258 by Ben.Marsh Fix plugin compile failure when created via new plugin wizard. Passing -plugin on the command line is unnecessary, and is now reserved for packaging external plugins for the marketplace. Also extend the length of time that the error toast stays visible, and don't delete the plugin on failure. #jira UE-54157 Change 3845796 by Ben.Marsh Workaround for slow performance of String.EndsWith() on Mono. Change 3845823 by Ben.Marsh Fix case sensitive matching of platform names in -TargetPlatform=X argument to BuildCookRun. #jira UE-54123 Change 3845901 by Arciel.Rekman Linux: fix crash due to lambda lifetime issues (UE-54040). - The lambda goes out of scope in FBufferVisualizationMenuCommands::CreateVisualizationCommands, crashing the editor if compiled with a recent clang (5.0+). (Edigrating 3819174 to Dev-Core) Change 3846439 by Ben.Marsh Revert CL 3822742 to always call Process.WaitForExit(). The Android target platform module in the editor spawns ADB.EXE, which inherits the editor's stdout/stderr handles and forks itself. Process.WaitForExit() waits for EOF on those pipes, which never occurs because the forked process never terminates. Proper fix is probably to have the engine explicitly duplicate stdout/stderr handles for new pipes to output process, but too risky before copying up to Main. Change 3816608 by Ben.Marsh UBT: Use DirectoryReference objects for all include paths. Change 3816954 by Ben.Marsh UBT: Remove bIncludeDependentLibrariesInLibrary option. This is not widely supported by platform toolchains, and is not used anywhere. Change 3816986 by Ben.Marsh UBT: Remove UEBuildBinaryConfig; UEBuildBinary objects are now just created directly. Change 3816991 by Ben.Marsh UBT: Deprecate PlatformSpecificDynamicallyLoadedModules. We no longer have any special behavior for these modules. Change 3823090 by Ben.Marsh UAT: Improve logging for child UAT instances. - Calling RunUAT now requires an identifier for prefixing into the parent log, which is also used to determine the name of the log folder. - Stdout is no longer written to its own output file, since it's written to the parent stdout, the parent log file, and the child log file anyway. - Log folders for child UAT instances are left intact, rather than being copied to the parent folder. The derived names for the copied names were confusing and hard to read. - Output from UAT is no longer returned as a string. It should not be parsed anyway (but may be huge!). ProcessResult now supports running without capturing output. Change 3826082 by Ben.Marsh UBT: Add a check to make sure that all modules that are precompiled are correctly marked to enable it, even if they are part of the build target. Change 3827025 by Ben.Marsh UBT: Move the compile output directory into a property on the module, and explicitly pass it to the toolchain when compiling. Change 3829927 by James.Hopkin Made HTTP interface const correct Change 3833533 by Ben.Marsh Rewrite engine source files to base include paths relative to the "Public" directory. This allows reducing the number of public include paths that have to be added for engine modules. Change 3835826 by Ben.Marsh UBT: Precompiled targets now generate a separate manifest for each precompiled module, rather than adding object files to a library. This fixes issues where object files from static libraries would not be linked into a target if a symbol in them was not referenced. Change 3835969 by Ben.Marsh UBT: Fix cases where text is being written directly to the console rather than via logging functions. Change 3837777 by Steve.Robb Format string type checking added to FOutputDevice::Logf. Fixes for those. Change 3838569 by Steve.Robb Algo moved up a folder. [CL 3847482 by Ben Marsh in Main branch]
2018-01-20 11:19:29 -05:00
}