Files

71 lines
2.4 KiB
C++
Raw Permalink Normal View History

// Copyright Epic Games, Inc. All Rights Reserved.
Copying //UE4/Dev-Sequencer to //UE4/Dev-Main (Source: //UE4/Dev-Sequencer @ 3237992) #lockdown Nick.Penwarden #rb none ========================== MAJOR FEATURES + CHANGES ========================== Change 3136778 on 2016/09/22 by Max.Preussner Merged Dev-Main to Dev-Sequencer Change 3179199 on 2016/10/29 by Max.Chen Sequencer: Fade only oin the current player context, not on all worlds. Copy from Release-4.14. Copied fix to FadeTrackInstance to FadeTemplate. #jira UE-37939 Change 3179340 on 2016/10/29 by Max.Preussner PS4Media: Fixed audio track dropping first frame Change 3180391 on 2016/10/31 by Max.Preussner UdpMessaging: nulling out message processor in destructor Change 3180459 on 2016/10/31 by Max.Chen Sequencer: Fix copy/paste crash in UMG. Change 3180607 on 2016/10/31 by Andrew.Rodham UMG: Fixed parent bindings not being adhered to correctly. Fixed slot widgets that get recreated not having their object bindings updated. #jira UE-38021 #jira UE-38018 Change 3181405 on 2016/11/01 by Lina.Halper #ANIM/SEQUCNER: sequencer animation blending support including additive - created multiway blend node - extension of two way blend - created anim sequencer instance to be used in sequencer for blending multiple animations and additives - hooked up to sequencer track players - renamed AnimationNode_TwoWay to AnimNode_TwoWay to be consistent with other node names. - Make sure you can't choose montage when selecting animation in Sequencer - Fixed Anim BP playing with multi group montages #code review: Max.Chen Change 3181870 on 2016/11/01 by Andrew.Rodham Sequencer: Made sequence pointers stored in sequence template instances weak object ptrs - We can't guarantee the lifetime of the objects here #jira UE-38051 Change 3182851 on 2016/11/02 by Andrew.Rodham Sequencer: Assert that a GetScriptStructImpl has been overridden correctly on templates Change 3182852 on 2016/11/02 by Andrew.Rodham Sequencer: Added 'Restore Animated State' command (CTRL+R) and button to sequencer toolbar Change 3183161 on 2016/11/02 by Max.Preussner Media: Added supported file extensions & URL schemes Change 3183476 on 2016/11/02 by Max.Preussner Merged Dev-Main to Dev-Sequencer Change 3185181 on 2016/11/03 by Max.Chen Sequencer: Refactor general options button menu into play options and select options. Add Select Sections in Selection Range and Select All in Selection Range. Fix issues with convert to spawanble and convert to possessable. Convert to possessable now deletes the spawn track so that it's not left lying around, which when deleted would end up deleting the converted possessable actor. #jira UE-37854 Change 3185184 on 2016/11/03 by Max.Chen Sequencer: Add hotkey to toggle camera cut track lock/unlock camera. Change 3185409 on 2016/11/03 by Max.Chen Sequencer: Fix crash in skeletal mesh section drawing. #jira UE-38090 Change 3185444 on 2016/11/03 by Max.Chen UMG: Expose label browser for UMG Change 3185662 on 2016/11/03 by Max.Chen Sequencer: Paste track fixes. - Loosen restrictions on paste track destination. This allows the paste to operate on spawnables and on properties that don't have an explicit Set function. - Allow pasting onto all types of tracks, not just property tracks. - Fix when pasting the copied tracks onto multiple objects. Tested pasting transform tracks from possessable to spawnables. Tested pasting skeletal animation tracks from spawnable to possessables. #jira UETOOL-1206 Change 3185920 on 2016/11/03 by Andrew.Porter Adding test content for multiple audio video tracks. Change 3186404 on 2016/11/03 by Max.Preussner Merged Dev-Main to Dev-Sequencer Change 3187957 on 2016/11/04 by Max.Preussner MediaAssets: Exposed CanPlaySource in BP Change 3187988 on 2016/11/05 by Max.Preussner Fixed documentation Change 3188035 on 2016/11/05 by Max.Chen Sequencer: Show camera name in cinematic viewport. #jira UE-28115 Change 3188603 on 2016/11/07 by Max.Preussner WmfMedia: Added missing nullptr check Change 3188788 on 2016/11/07 by Max.Preussner MediaPlayerEditor: Removed property buttons from PlatformMediaSource customization (UE-37948) #jira UE-37948 Change 3188808 on 2016/11/07 by Max.Preussner MediaAssets: Moved media player implementation into reusable class Also moved overlay text handling into separate asset. Change 3188919 on 2016/11/07 by Max.Preussner Media: Changed the handling of invalid media and media that failed to open (UE-38014) #jira UE-38014 Change 3189112 on 2016/11/07 by Max.Preussner WmfMedia: Added rudimentary H.265 HEVC support for Windows 10 (UE-38324) #jira UE-38324 Change 3189376 on 2016/11/07 by Max.Preussner WmfMedia: Removed Windows specific code from factory module Change 3189381 on 2016/11/07 by Max.Preussner Atrac9Audio: Fixed log category Change 3189497 on 2016/11/07 by Max.Preussner Media: Added binary sinks support Change 3189666 on 2016/11/07 by Max.Chen Curve Editor: Add option to show time in frame numbers #jira UE-27210 Change 3190339 on 2016/11/08 by Max.Preussner MediaAssets: Removed SetDesiredPlayerName since the field is public Change 3190342 on 2016/11/08 by Andrew.Porter Adding sequencer test content for animation blueprint Change 3190398 on 2016/11/08 by Max.Preussner Media: Renamed binary tracks to metadata tracks Change 3190458 on 2016/11/08 by andrew.porter Updating Skeleton with new slots. Change 3191167 on 2016/11/08 by Max.Chen Sequencer: Fix crash in validating paste tracks buffer. Validate the tracks instead of actually pasting into temp. #jira UE-38353 Change 3191336 on 2016/11/09 by Andrew.Rodham Slate: Added the ability to set and retrieve a host tab manager from a details view Change 3191338 on 2016/11/09 by Andrew.Rodham Editor: Added the ability to extend default layouts - FLayoutExtender can be used to provide basic tab layout extensions on default themes. - This can be used by external plugins to inject tabs to other interfaces where necessary. - Currently this is supported by the blueprint editor's unified component layout, and the level editor layout. Change 3191346 on 2016/11/09 by Andrew.Rodham Sequencer: Added new (experimental) ActorSequence module and editor - Sequences can now be added to actors via the UActorSequenceComponent. - An embedded sequencer will appear on details panels, with the option to break it out into a tab. - Separated common playback elements from ULevelSequencePlayer into UMovieSceneSequencePlayer, from which specific players can derive. - The majority of level editorintegration with sequencer has been separated out into a separate singleton class that can manage multiple sequencers. - All movie scene data now defaults to instanced, such that it can be duplicated and instanced correctly. - Added read-only mode for sequencer which is used for actor sequence components that come from a blueprint archetype to prevent erroneous editing. Change 3191387 on 2016/11/09 by Andrew.Rodham Orion: Fixed deprecation warnings Change 3191388 on 2016/11/09 by Andrew.Rodham Orion: Added dependency on MovieScene module Change 3191403 on 2016/11/09 by Andrew.Rodham Sequencer: Fix initialization order warning Change 3191428 on 2016/11/09 by Andrew.Rodham Sequencer: Added missing include Change 3191510 on 2016/11/09 by Andrew.Rodham Header include fixes Change 3191599 on 2016/11/09 by Max.Chen Sequencer: Add option to lock the playback range per movie scene. The toggle is stored as editor only and should be a saved value so that it can persist as the asset is passed from user to user. #jira UE-34677 Change 3191664 on 2016/11/09 by Andrew.Rodham Sequencer: Ensure keyframe handlers are only added once Change 3192373 on 2016/11/09 by Max.Preussner MediaAssets: Fixed regression: playlists no longer open Change 3192408 on 2016/11/09 by Max.Preussner MediaAssets: Fixed OpenPlaylistIndex crashing Change 3192878 on 2016/11/09 by Max.Chen Camera Rig: Fix log spam trying to unregister component. #jira UE-38435 Change 3192989 on 2016/11/10 by Andrew.Rodham Slate: Added constructor to appease old VS2013 compiler warning about non-constructible type Change 3192991 on 2016/11/10 by Andrew.Rodham Sequencer: Moved lambda out-of-line to fix static analysis warning Change 3193420 on 2016/11/10 by Max.Preussner MediaAssets: Replaced CopyToResolveTarget with new TransitionTarget API Change 3193478 on 2016/11/10 by Max.Chen Sequencer: Moved Fix Actor References back under the General Options menu. Change 3193870 on 2016/11/10 by Max.Preussner MediaPlayerEditor: Removed additional buttons in per-platform overrides (UE-37948) #jira UE-37948 Change 3193873 on 2016/11/10 by Lina.Halper - Sequencer fix with anim instance reinit - Fixed TMap issue with memory by changing to pointer from ref. #code review: Max.Chen Change 3194184 on 2016/11/10 by Max.Chen Sequencer: Only expand section when setting keys when there are keys. Otherwise if you set the default value while the time position is outside of the section range, the section will expand, which seems undesirable. Change 3194187 on 2016/11/10 by Max.Chen Sequencer: Backwards compatibility if a track no longer supports multiple rows, its sections are split to other duplicate tracks. Change 3194191 on 2016/11/10 by Max.Chen Sequencer: Add audio volume and pitch curves. #jira UE-30009 Change 3194256 on 2016/11/10 by Max.Chen Merging //UE4/Dev-Main to Dev-Sequencer (//UE4/Dev-Sequencer) Change 3194282 on 2016/11/10 by Max.Chen Movie Capture: Add some frame rate bounds. Max frame rate for recording is 200. Min is 1. #jira UE-38502 Change 3194355 on 2016/11/11 by Max.Chen Sequencer: Minimum handle size for time slider scrubber. #jira UE-34676 Change 3194767 on 2016/11/11 by Max.Chen Sequencer: Mark duplicated tracks as changed so that their template gets regenerated. Change 3195094 on 2016/11/11 by Max.Preussner Media: Removing game thread dependencies This change removes game thread dependencies from all media players so that we can use the media framework for startup movies where the game thread is block while loading the Engine. The players now have two new methods, TickPlayer and TickVideo, which need to be called from the external code that owns the players. On the Engine side, this is taken care of by UMediaPlayer, which calls TickPlayer from the game thread and TickVideo from the render thread. In startup movies, this will be taken care of by a special thread. AvfMedia: This change does not fully remove game thread dependencies in AvfMediaPlayer yet. There are some async callbacks scheduled to execute on the game thread that need to be refactored. The execution of these events should be performed in TickPlayer instead. All platform owners, please review these changes for your platform and make sure that everything still works. I have not had time to test all platforms yet. Change 3195396 on 2016/11/11 by Max.Preussner AvfMedia: Removed remaining game thread dependencies Change 3195670 on 2016/11/11 by Max.Preussner MediaUtils: Renamed function Change 3195690 on 2016/11/11 by Max.Preussner MediaAssets: MediaPlayerBase instance is now a field instead of pointer. Change 3195802 on 2016/11/11 by Max.Preussner Media: Removed UMediaPlayer::GetNativePlayer Change 3195843 on 2016/11/11 by Max.Preussner Kismet: Fixed non-unity Change 3195851 on 2016/11/11 by Max.Preussner Fixed typo. Change 3195854 on 2016/11/11 by Max.Preussner MediaUtils: Added missing forward declaration Change 3195937 on 2016/11/11 by Max.Chen Media: CIS Fix Change 3196120 on 2016/11/13 by Max.Chen Sequencer: Weight curve for skeletal animation section. Changed skeletal template evaluation so that it works with multiple animation tracks. The shared track clears all the weights, the section gathers up all the data, and the shared track evaluates the data. Otherwise, the multiple track evaluations would conflict with each other in setting states back and forth. #jira UE-38374, UEFW-128 Change 3196265 on 2016/11/13 by Max.Chen Sequencer: Fix audio waveforms so that they're regenrated when audio start time is changed. #jira UE-38543 Change 3196421 on 2016/11/14 by Andrew.Rodham Sequencer: Fixed modified tracks not being written to the transaction buffer when replacing object bindings #jira UE-38423 Change 3197131 on 2016/11/14 by Max.Chen Sequencer: Null checks. #jira UE-38570, UE-38593 Change 3197209 on 2016/11/14 by Max.Chen Cine Camera: Reset focus smoothing interpolation on PostEditChangeProperty. This fixes an issue where if you enable focus smoothing, the manual focus distance that is input isn't used since the interpolation happens from the last current focus distance. #jira UE-27055 Change 3198691 on 2016/11/15 by Max.Chen Sequence Recorder: Optimize record transforms by setting all the keyframes at once. Also, added option to toggle removing redundant keyframes from the recorded tracks. #jira UE-38489 Change 3198711 on 2016/11/15 by andrew.porter Adding test content for MEdia Framework Track Switching. Change 3199174 on 2016/11/15 by Lina.Halper Sequencer backward compatibility fix with root motion Make sure you could remove root motion fine #jira : UE-38591 Change 3199260 on 2016/11/15 by tim.gautier Updated QA-Media_TrackSwitch - changed Trigger Collision to only detect overlap from PlayerPawn Change 3199663 on 2016/11/15 by Max.Chen Anim Sequencer: Fix deprecation warning for bCanUseParallelUpdateAnimation. Updated to use bUseMultiThreadedAnimationUpdate. Change 3199727 on 2016/11/15 by Max.Chen Matinee to Level Sequence: Set default scale when converting matinee move tracks to sequencer. #jira UE-38688 Change 3199847 on 2016/11/16 by Max.Chen Sequencer: Add menu option to reduce keys of all sections in the current level sequence Change 3200351 on 2016/11/16 by Max.Chen Level Editor/Sequencer: Fixes to allow for component keyframing. The transform track operates on the components that changed, not the actor. The level editor viewport broadcasts begin/end movement on the components that changed. #jira UE-38649, UE-38646 Change 3200474 on 2016/11/16 by Max.Chen Sequencer: Move reduce keys to section context menu. Change 3200888 on 2016/11/16 by Max.Chen Sequencer: Clamp skeletal animation evaluation remapping of time to section bounds. This is necessary when evaluating nearest is enabled and the time is beyond the section bounds. Also, set the shared track template to have higher priority so that it always clears/initializes weights before each section's template adds section params for evaluation. Change 3201633 on 2016/11/17 by Max.Chen Matinee to Level Sequence: Fix matinee 3d scale track conversion to level sequence. Also, added paste matinee vector track to sequencer's vector track. #jira UE-38688 Change 3202458 on 2016/11/17 by Max.Chen Sequencer: Fix track editor commands getting unregistered when switching from one level sequence to another. The sequence of events is: track editor commands get bound when a level sequence is edited. When switching to another level sequence, the existing track editor is released after the new one is registered, causing the commands to ultimately get unbound. #jira UE-38693 Change 3202606 on 2016/11/17 by Max.Chen Actor Sequence: Null check in CanPossessObject for a component's owner. #jira UE-38514 Change 3203522 on 2016/11/17 by Max.Chen Sequencer: Audio start time deprecated in favor of start offset which is an offset into the audio clip. Also, limit the start offset to positive values since you can just crop into the audio clip by dragging the section's start time. Audio track no longer supports multiple rows (should have been checked in along with the audio volume and pitch multiplier curves). #jira UE-38549, UE-38554, UE-38547 Change 3203863 on 2016/11/18 by Andrew.Rodham Engine: Ensure that world settings actor is considered by network object list when sorting the actor list for a level Change 3203865 on 2016/11/18 by Andrew.Rodham Sequencer: Fixed play rate track interaction between servers and clients - The logic for evaluation was previously flawed (it would only run in editor builds). Play rate is now only evaluated on servers and standalone clients, with the time dilation being replicated to network clients. Change 3203900 on 2016/11/18 by Andrew.Rodham Sequencer: Changed CreateLevelSequencePlayer to create a transient level sequence actor #jira UE-37277 Change 3205038 on 2016/11/18 by Max.Preussner Slate: Corrected comment Change 3205046 on 2016/11/18 by Max.Preussner WmfMedia: Added missing nullptr check #jira UE-38825 Change 3205073 on 2016/11/18 by Max.Chen Sequencer: Fix audio upgrade case when start time is 0. Change 3205277 on 2016/11/19 by Max.Preussner Merging //UE4/Dev-Main to Dev-Sequencer (//UE4/Dev-Sequencer) Please take a look at SequencerEdMode.cpp and Sequencer.cpp. I ended up accepting latest Dev-Sequencer, which seemed to be the right thing to do. Change 3205465 on 2016/11/20 by Max.Preussner MovieScene: Fixed non-unity build Change 3205467 on 2016/11/20 by Max.Preussner Engine: Fixed spelling Change 3206264 on 2016/11/21 by Max.Preussner Kismet: Added missing forward declaration Change 3206493 on 2016/11/21 by Max.Preussner PS4Media: Added remaining changes for removing game thread dependencies Change 3206512 on 2016/11/21 by Andrew.Porter Adding test content to QAGame for Sequencer animation weight blending. Change 3206529 on 2016/11/21 by Lina.Halper Fixed anim notifes to work in Sequencer Instance - Give proper delta in editor preview - Make sure not to recreate AnimInstance #jira: UE-38849 #code review:Max.Chen Change 3206552 on 2016/11/21 by Max.Preussner QAGame: Enabled looping by default Change 3207462 on 2016/11/22 by andrew.porter QAGame: updating QA-Sequencer with changes to animation blending test cases Change 3207499 on 2016/11/22 by tim.gautier Added Streaming Sources, added Streaming Source options for BP_MediaPlayer. Specified Media Option Categories with BP_MediaPlayer to clean up details panel. #jira none Change 3207571 on 2016/11/22 by Max.Chen Curve Editor: Expose curve editor settings to Editor Preferences. #jira UE-38907 Change 3207690 on 2016/11/22 by Max.Chen Sequencer: Speculative crash fix for switching UMG animations. #jira UE-29333 Change 3207744 on 2016/11/22 by tim.gautier Removed unnecessary nodes from BP_MediaPlayer. Created a variable visible in the Details Panel to allow the user to specify a URL to Stream media without specifying a Source in-editor. #jira none Change 3207935 on 2016/11/22 by Max.Chen Sequencer: Temporary fix for skeletal animation track scrubbing. Verified that anim notifies still fire when playing and scrubbing. #jira UE-38964 Change 3207938 on 2016/11/22 by Max.Chen Sequence Recorder: Set reduce keys back to true so that there's no change in current behavior. This should be toggled off for performance reasons but in general is nice to have reduced keys. Change 3207950 on 2016/11/22 by Lina.Halper - Fixed so that mesh space additive won't show up in sequencer - Added warning if you change type later or existing ones #jira: UE-38062? Change 3208278 on 2016/11/22 by andrew.porter QAGame: Adjusting level blueprint for test case. Change 3208285 on 2016/11/22 by andrew.porter QAGame: adding SequencerBP animation blueprint. Change 3208538 on 2016/11/23 by Max.Chen Actor Sequence: Fix plugin filename. Change 3208916 on 2016/11/23 by Max.Chen Sequencer: Fix material parameter initialization so that the value is retrieved from the material instance and not the parent material. #jira UE-34317 Change 3208924 on 2016/11/23 by Max.Chen Save As: Cancel should not save over the existing asset. It should just return. Change 3208939 on 2016/11/23 by andrew.porter QAGame: reset some content back to its default state for testing Change 3209053 on 2016/11/23 by Max.Chen Sequencer: Ensure the section id is unique. Change 3209161 on 2016/11/23 by Max.Chen Save As: Follow up fix for cancelling save as. Change 3210540 on 2016/11/26 by Max.Preussner WmfMedia: Reworked fallback stride calculations to fix issues with some exotic video formats Change 3210546 on 2016/11/26 by Max.Preussner WmfMedia: Fixed NV12 vertical buffer alignment Change 3211567 on 2016/11/28 by Max.Preussner Merging //UE4/Dev-Main to Dev-Sequencer (//UE4/Dev-Sequencer) Step 1 of 2 Change 3212408 on 2016/11/28 by Max.Preussner Fixed fallout from Dev-Main merge Change 3212456 on 2016/11/28 by Max.Preussner ActorSequenceEditor: Removed monolithic header dependencies Change 3212562 on 2016/11/28 by Max.Preussner ActorSequenceEditor: Removed monolithic header usage Change 3212649 on 2016/11/28 by Max.Chen Fix CIS Change 3212671 on 2016/11/28 by Max.Chen Sequencer: Add option to restore to the pre animated state. #jira UE-38862 #2953 Change 3212672 on 2016/11/28 by Max.Chen Sequencer: Select object binding node corresponding to selected components and vice versa (select components in level when object binding node is selected) Change 3212673 on 2016/11/28 by Max.Chen Sequencer: Follow-up fix for component keyframing - key area needs to be updated by component. #jira UE-38649 Change 3212676 on 2016/11/28 by Max.Chen Level Editor: PostEditMove should only be called on the actor if it is moved. #jira UE-38646 Change 3212688 on 2016/11/29 by Max.Chen Sequencer: Force refresh event parameters customization when struct contents change but not a full refresh when struct child contents change. #jira UE-39094 Change 3212831 on 2016/11/29 by Andrew.Rodham Disabled ActorSequenceEditor plugin by default while it's experimental Change 3213219 on 2016/11/29 by Max.Preussner AvfMedia: Added missing include Change 3213333 on 2016/11/29 by Andrew.Rodham Sequencer: Added the ability to override bindings when playing back a level sequence on a level sequence actor #jira UETOOL-746 Change 3213905 on 2016/11/29 by Max.Preussner More IWYU fixes for macOS Change 3214203 on 2016/11/29 by Michael.Gay Some demo files to test Sequencer timing. Change 3214205 on 2016/11/29 by Max.Preussner More IWYU fixes for macOS Change 3214548 on 2016/11/29 by Max.Preussner More IWYU fixes for macOS Change 3214564 on 2016/11/29 by Max.Preussner More IWYU fixes Change 3214567 on 2016/11/29 by Max.Chen More IWYU fixes for Win32 Change 3214573 on 2016/11/29 by Max.Preussner More IWYU fixes Change 3214576 on 2016/11/29 by Max.Preussner More IWYU fixes Change 3214621 on 2016/11/30 by Max.Preussner Atrac9Decoder: Fixed log category declaration Change 3214630 on 2016/11/30 by Max.Preussner More IWYU fixes Change 3214747 on 2016/11/30 by Andrew.Rodham Sequencer: Fixed shadow variable Change 3214957 on 2016/11/30 by Andrew.Rodham Core: Changed Algo::Find to use TElementType - This allows it to support c style arrays Change 3215127 on 2016/11/30 by Andrew.Rodham Sequencer: Made burn-in options and init settings instanced - This ensures they work correctly when defined on archetypes and blueprints #jira UE-38645 Change 3215754 on 2016/11/30 by Max.Chen Sequencer: Fix skeletal animation track evaluating tracks in the wrong time space. Cache the evalulation time and weight value in each section's template and then execute with those values in the shared track's template. #jira UE-39145 Change 3216603 on 2016/12/01 by Max.Chen Sequencer: Set audio volume/pitch only if changed. Change 3216613 on 2016/12/01 by Max.Chen Sequencer: Add component selector when there are multiple components that have sockets. This fixes a crash when there are multiple components to attach to. #jira UE-39167 Change 3217175 on 2016/12/01 by Max.Chen Sequencer: Set skeletal animation track evaluation to be upper bound exclusive. This gives better behavior when two clips butt up against each other since the sections would overlap in time and evaluation would normalize they weighted contribution of each. #jira UE-37184 Change 3217292 on 2016/12/01 by Max.Chen Sequencer: Rework upgrading track rows to include overlapping sections. For skeletal animation sections, set weight values based on the evaluation bounds since there was no blending prior to 4.15. Change 3217860 on 2016/12/01 by Max.Preussner Media: Fall-through for media options Change 3217965 on 2016/12/01 by Max.Preussner MediaAssets: Renamed media option name Change 3218470 on 2016/12/01 by Max.Chen Sequencer: Fix start time deprecation value so that negative values are supported. #jira UE-39259 Change 3218473 on 2016/12/01 by Max.Chen Sequencer: Fix crash if start seq length is negative. Change 3219021 on 2016/12/02 by Max.Chen Sequencer: Add multiply and divide to transform box. Change 3219374 on 2016/12/02 by Max.Chen Sequencer: Teleport simulating components when moving them through the transform track. This fixes bugs with recording simulating actors (ie. vehicle game) where recorded actors don't playback with the recorded positions and there are warnings about attempting to move a fully simulated skeletal mesh. #jira UE-38442, UE-38444, UE-38852 Change 3219638 on 2016/12/02 by Max.Preussner Projects: Fixed error message Change 3220584 on 2016/12/03 by Andrew.Rodham Sequencer: Blueprint generated classes are now always removed from level sequences on load in the editor - This ensures that old (and perhaps corrupt) BP generated classes are destroyed #jira UE-39173 Change 3220585 on 2016/12/03 by Andrew.Rodham Editor: Fix EditInstanceOnly properties that aren't variables on the generated class being editable in blueprints Change 3220973 on 2016/12/04 by Max.Chen Fix CIS Change 3222833 on 2016/12/05 by Max.Chen Sequencer: Fixed some recorded components not being generated. #jira UE-34289 Change 3224450 on 2016/12/06 by Max.Chen Sequencer: Fix convert spawnable to posessable. Logic for setting the parent was mistakenly removed in runtime eval. #jira UE-39419 Change 3225301 on 2016/12/07 by Max.Preussner AvfMedia: Added settings class Change 3225304 on 2016/12/07 by Max.Preussner Fixed typo Change 3225723 on 2016/12/07 by Max.Preussner Fixed typo. Change 3225871 on 2016/12/07 by Max.Preussner Forgot to check in Change 3225932 on 2016/12/07 by Max.Preussner Added missing header Change 3226266 on 2016/12/07 by Max.Preussner Media: Fixed various module dependencies Change 3226451 on 2016/12/07 by Max.Preussner Include fixes Change 3226455 on 2016/12/07 by Max.Preussner LevelSequence: Added missing include Change 3227135 on 2016/12/08 by Max.Preussner Merging //UE4/Dev-Main to Dev-Sequencer (//UE4/Dev-Sequencer) Change 3227143 on 2016/12/08 by Max.Preussner LevelSequencer: Added missing header Change 3227731 on 2016/12/08 by Max.Preussner LevelSequencer: Added missing include Change 3228222 on 2016/12/08 by Max.Preussner UBT: Fixed delay load library support for remote compilation to macOS Change 3228266 on 2016/12/08 by Max.Preussner PluginBrowser: Added missing includes Change 3228755 on 2016/12/09 by Andrew.Rodham Sequencer: Fixed copy-paste of event keys - Also added a key-value iterator to TCurveInterface (both const and non-const) #jira UE-39526 Change 3228777 on 2016/12/09 by Luke.Thatcher [PLATFORM] [PS4] [!] Reimplement fixes from Fortnite for PS4 media framework in //UE4/Dev-Sequencer. Based on Original CL 3227137 - Event callback from AvPlayer was enqueing the processing of events over to the player thread, so the "State" member of FPS4MediaPlayer doesn't get updated until the following frame. This breaks cases with multiple calls to SetRate within a single frame. - Removed time check in FPS4MediavideoSampler::Tick. There are cases where the time check failed, even when a new frame was available from the AvPlayer libs. The video sampler now always calls sceAvPlayerGetVideoDataEx. This returns immediately if no frame data is available. - FPS4MediaPlayer::Seek was failing if the video is in a playing/paused state. We now restart the stream if a seek command occurs after the video has stopped (e.g. due to EOF reached). - Shared a single critical section between the FPS4MediaTracks, FPS4MediaVideoSampler and FPS4MediaPlayer objects. Fixes deadlocks between the decoder/player threads where each will be waiting on each others' critical section. [~] Enabled debug warnings from AvPlayer library in non-shipping builds. [~] Changed log levels of UE_LOGs to match their severity. ------------------------- [!] Also, fixed rendering artifacts on videos using a cropping rectangle - e.g. 1080p videos are actually decoded as 1920x1088, with an extra 8 pixels height, which contained garbage. - We determine the final media texture size as the size of the cropping rectangle, and use modified UVs during the YCbCr->RGB converstion shader to do the mapping. Change 3228793 on 2016/12/09 by Andrew.Rodham Sequencer: Edits to actor sequences now correctly mark their parent blueprints for compilation #jira UE-38723 Change 3228877 on 2016/12/09 by Luke.Thatcher [PLATFORM] [PS4] [!] Fix track switching issues in PS4 media player. - Sony's AvPlayer library does not support switching tracks (audio or video) on-the-fly after a stream has begun playback. - The higher level UMediaPlayer enables track 0 automatically, which would be committed to the AvPlayer, and therefore lock out other streams. - Actual track selection is now deferred until the stream is started, after which changing tracks is prohibited. - Tracks must be selected before calling SetRate for the first time. #jira UE-37225 Change 3229501 on 2016/12/09 by Max.Preussner Media: Better display names for media player plug-ins Change 3229515 on 2016/12/09 by Max.Preussner MediaPlayerEditor: Sorting player plug-ins alphabetically; consistent display in both media player editor and media source customization Change 3229716 on 2016/12/09 by andrew.porter Adding PlayRate sequence to my dev folder Change 3230554 on 2016/12/12 by Andrew.Rodham Back out changelist 3220584 - Currently this causes actor instances to fail to load because they are instanced of dead classes. Need to think of a more robust solution here. #jira UE-39398 Change 3230922 on 2016/12/12 by Max.Preussner Merging //UE4/Dev-Main to Dev-Sequencer (//UE4/Dev-Sequencer) Change 3232059 on 2016/12/12 by Max.Preussner MediaUtils: Better error message for when no suitable media player plug-in was found Change 3232097 on 2016/12/13 by Max.Preussner Switch: Temp fix for borked folder name on case-sensitive platforms Change 3232100 on 2016/12/13 by Max.Preussner MediaAssets: Split up UMediaSource into UBaseMediaSource Also added color space related properties Change 3232101 on 2016/12/13 by Max.Preussner Media: Started to implement support for color spaces Change 3232119 on 2016/12/13 by Max.Preussner MediaAssets: Fixed buffer not recreated if color space changed Change 3232799 on 2016/12/13 by Max.Preussner PS4Media: Fixed build #jira UE-39706 Change 3233170 on 2016/12/13 by Max.Preussner Merging //UE4/Dev-Main to Dev-Sequencer (//UE4/Dev-Sequencer) Change 3233250 on 2016/12/13 by Max.Preussner MediaPlayerEditor: Added separator in track menu Change 3233309 on 2016/12/13 by andrew.porter QAGame: Edited text render actors in QA-Media_TrackSwitch Change 3233439 on 2016/12/13 by Chris.Babcock Standardize Android media track DisplayName Change 3233817 on 2016/12/13 by Chris.Babcock Fix virtual keyboard EditableTextBox update when comitted text matches current text from change updates #jira UE-39424 #ue4 #mobile Change 3234421 on 2016/12/14 by Andrew.Rodham Sequencer: Fixed nullptr crash Change 3234423 on 2016/12/14 by Andrew.Rodham Sequencer: Fixed incorrect copying of base-class from compiler rules Change 3234429 on 2016/12/14 by Andrew.Rodham Sequencer: Fixed empty space not being added between the last and penultimate segments when required #jira UE-39442 Change 3234635 on 2016/12/14 by Max.Preussner MediaAssets: Exposed UTexture properties in UMediaTexture Change 3234681 on 2016/12/14 by Max.Preussner MediaAssets: Made MediaTextureResources support -onethread Change 3234878 on 2016/12/14 by Andrew.Rodham Sequencer: Fixed crash with "Evaluate Sub Sequences in Isolation" enabled - This occurred when there were tracks at the root level of the sub sequence, because it would incorrectly hash in the parent ID, rather than just using it directly Change 3234901 on 2016/12/14 by Max.Preussner MediaPlayerEditor: Detail customization improvements Change 3235275 on 2016/12/14 by Chris.Babcock Fix WMF stream ordering to match other players #jira UE-39703 #ue4 #mediaframework Change 3235390 on 2016/12/14 by Max.Preussner DesktopPlatform: Added IniPlatformName to FPlatformInfo; fixed up indentation Change 3235402 on 2016/12/14 by Max.Preussner MediaAssets: Fixed platform player name overrides ignored in packaged builds (UE-39771) #jira UE-39771 Change 3235667 on 2016/12/14 by Max.Preussner Media: Moved enums into separate header file, so they can be shared Change 3235984 on 2016/12/14 by Max.Preussner Back out changelist 3235667 Change 3236040 on 2016/12/14 by Max.Preussner Core: Added modulus operator to FTimespan Change 3236139 on 2016/12/15 by Max.Preussner Core: Added FTimespan::IsZero Change 3236527 on 2016/12/15 by Max.Preussner Fixed initialization order Change 3237101 on 2016/12/15 by Andrew.Rodham Sequencer: Skeletal animation and audio tracks now support multiple rows again. - In practice there were too many edge-cases to account for whilst considering backwards compatability - The impossible scenario was 2 sections on different rows, but evaluating nearest section - this cannot be represented as separate tracks. - Reorganised animation runtime template to use execution tokens rather than ::Initialize to ensure that animation operates correctly on the first frame for spawned objects #jira UE-39442 #jira UE-39725 Change 3237213 on 2016/12/15 by Andrew.Rodham Sequencer: Fixed crash when setting event key properties #jira UE-39347 Change 3237255 on 2016/12/15 by Chris.Babcock Fix Multi with ETC2 and PVRTC selecting ES3.0 instead of 2.0 #jira UE-39839 #ue4 #android Change 3237294 on 2016/12/15 by Andrew.Rodham Sequencer: Fixed shadowed variable warnings Change 3237366 on 2016/12/15 by Max.Preussner Media: Removed color space changes; we'll do these in material graphs instead Change 3237436 on 2016/12/15 by Andrew.Rodham Sequencer: Fixed montages not being stopped for specific animation slots when animation sections were no longer evaluated #jira UE-39847 Change 3237458 on 2016/12/15 by Andrew.Rodham Sequencer: Always force regeneration of templates when PIE to eliminate the posibility of combining stale data Change 3237516 on 2016/12/15 by Max.Preussner Media: Attempting to fix Crash in fortnite just before exiting onboarding (UE-39841) #jira UE-39841 Change 3237532 on 2016/12/15 by Max.Preussner Added missing scope lock Change 3237991 on 2016/12/16 by Max.Preussner PS4Media: Fixed build [CL 3238204 by Max Preussner in Main branch]
2016-12-16 11:17:44 -05:00
/*=============================================================================
UAnimSequencerInstance.cpp: Single Node Tree Instance
Only plays one animation at a time.
=============================================================================*/
#include "AnimSequencerInstance.h"
#include "AnimSequencerInstanceProxy.h"
#include UE_INLINE_GENERATED_CPP_BY_NAME(AnimSequencerInstance)
Copying //UE4/Dev-Sequencer to //UE4/Dev-Main (Source: //UE4/Dev-Sequencer @ 3237992) #lockdown Nick.Penwarden #rb none ========================== MAJOR FEATURES + CHANGES ========================== Change 3136778 on 2016/09/22 by Max.Preussner Merged Dev-Main to Dev-Sequencer Change 3179199 on 2016/10/29 by Max.Chen Sequencer: Fade only oin the current player context, not on all worlds. Copy from Release-4.14. Copied fix to FadeTrackInstance to FadeTemplate. #jira UE-37939 Change 3179340 on 2016/10/29 by Max.Preussner PS4Media: Fixed audio track dropping first frame Change 3180391 on 2016/10/31 by Max.Preussner UdpMessaging: nulling out message processor in destructor Change 3180459 on 2016/10/31 by Max.Chen Sequencer: Fix copy/paste crash in UMG. Change 3180607 on 2016/10/31 by Andrew.Rodham UMG: Fixed parent bindings not being adhered to correctly. Fixed slot widgets that get recreated not having their object bindings updated. #jira UE-38021 #jira UE-38018 Change 3181405 on 2016/11/01 by Lina.Halper #ANIM/SEQUCNER: sequencer animation blending support including additive - created multiway blend node - extension of two way blend - created anim sequencer instance to be used in sequencer for blending multiple animations and additives - hooked up to sequencer track players - renamed AnimationNode_TwoWay to AnimNode_TwoWay to be consistent with other node names. - Make sure you can't choose montage when selecting animation in Sequencer - Fixed Anim BP playing with multi group montages #code review: Max.Chen Change 3181870 on 2016/11/01 by Andrew.Rodham Sequencer: Made sequence pointers stored in sequence template instances weak object ptrs - We can't guarantee the lifetime of the objects here #jira UE-38051 Change 3182851 on 2016/11/02 by Andrew.Rodham Sequencer: Assert that a GetScriptStructImpl has been overridden correctly on templates Change 3182852 on 2016/11/02 by Andrew.Rodham Sequencer: Added 'Restore Animated State' command (CTRL+R) and button to sequencer toolbar Change 3183161 on 2016/11/02 by Max.Preussner Media: Added supported file extensions & URL schemes Change 3183476 on 2016/11/02 by Max.Preussner Merged Dev-Main to Dev-Sequencer Change 3185181 on 2016/11/03 by Max.Chen Sequencer: Refactor general options button menu into play options and select options. Add Select Sections in Selection Range and Select All in Selection Range. Fix issues with convert to spawanble and convert to possessable. Convert to possessable now deletes the spawn track so that it's not left lying around, which when deleted would end up deleting the converted possessable actor. #jira UE-37854 Change 3185184 on 2016/11/03 by Max.Chen Sequencer: Add hotkey to toggle camera cut track lock/unlock camera. Change 3185409 on 2016/11/03 by Max.Chen Sequencer: Fix crash in skeletal mesh section drawing. #jira UE-38090 Change 3185444 on 2016/11/03 by Max.Chen UMG: Expose label browser for UMG Change 3185662 on 2016/11/03 by Max.Chen Sequencer: Paste track fixes. - Loosen restrictions on paste track destination. This allows the paste to operate on spawnables and on properties that don't have an explicit Set function. - Allow pasting onto all types of tracks, not just property tracks. - Fix when pasting the copied tracks onto multiple objects. Tested pasting transform tracks from possessable to spawnables. Tested pasting skeletal animation tracks from spawnable to possessables. #jira UETOOL-1206 Change 3185920 on 2016/11/03 by Andrew.Porter Adding test content for multiple audio video tracks. Change 3186404 on 2016/11/03 by Max.Preussner Merged Dev-Main to Dev-Sequencer Change 3187957 on 2016/11/04 by Max.Preussner MediaAssets: Exposed CanPlaySource in BP Change 3187988 on 2016/11/05 by Max.Preussner Fixed documentation Change 3188035 on 2016/11/05 by Max.Chen Sequencer: Show camera name in cinematic viewport. #jira UE-28115 Change 3188603 on 2016/11/07 by Max.Preussner WmfMedia: Added missing nullptr check Change 3188788 on 2016/11/07 by Max.Preussner MediaPlayerEditor: Removed property buttons from PlatformMediaSource customization (UE-37948) #jira UE-37948 Change 3188808 on 2016/11/07 by Max.Preussner MediaAssets: Moved media player implementation into reusable class Also moved overlay text handling into separate asset. Change 3188919 on 2016/11/07 by Max.Preussner Media: Changed the handling of invalid media and media that failed to open (UE-38014) #jira UE-38014 Change 3189112 on 2016/11/07 by Max.Preussner WmfMedia: Added rudimentary H.265 HEVC support for Windows 10 (UE-38324) #jira UE-38324 Change 3189376 on 2016/11/07 by Max.Preussner WmfMedia: Removed Windows specific code from factory module Change 3189381 on 2016/11/07 by Max.Preussner Atrac9Audio: Fixed log category Change 3189497 on 2016/11/07 by Max.Preussner Media: Added binary sinks support Change 3189666 on 2016/11/07 by Max.Chen Curve Editor: Add option to show time in frame numbers #jira UE-27210 Change 3190339 on 2016/11/08 by Max.Preussner MediaAssets: Removed SetDesiredPlayerName since the field is public Change 3190342 on 2016/11/08 by Andrew.Porter Adding sequencer test content for animation blueprint Change 3190398 on 2016/11/08 by Max.Preussner Media: Renamed binary tracks to metadata tracks Change 3190458 on 2016/11/08 by andrew.porter Updating Skeleton with new slots. Change 3191167 on 2016/11/08 by Max.Chen Sequencer: Fix crash in validating paste tracks buffer. Validate the tracks instead of actually pasting into temp. #jira UE-38353 Change 3191336 on 2016/11/09 by Andrew.Rodham Slate: Added the ability to set and retrieve a host tab manager from a details view Change 3191338 on 2016/11/09 by Andrew.Rodham Editor: Added the ability to extend default layouts - FLayoutExtender can be used to provide basic tab layout extensions on default themes. - This can be used by external plugins to inject tabs to other interfaces where necessary. - Currently this is supported by the blueprint editor's unified component layout, and the level editor layout. Change 3191346 on 2016/11/09 by Andrew.Rodham Sequencer: Added new (experimental) ActorSequence module and editor - Sequences can now be added to actors via the UActorSequenceComponent. - An embedded sequencer will appear on details panels, with the option to break it out into a tab. - Separated common playback elements from ULevelSequencePlayer into UMovieSceneSequencePlayer, from which specific players can derive. - The majority of level editorintegration with sequencer has been separated out into a separate singleton class that can manage multiple sequencers. - All movie scene data now defaults to instanced, such that it can be duplicated and instanced correctly. - Added read-only mode for sequencer which is used for actor sequence components that come from a blueprint archetype to prevent erroneous editing. Change 3191387 on 2016/11/09 by Andrew.Rodham Orion: Fixed deprecation warnings Change 3191388 on 2016/11/09 by Andrew.Rodham Orion: Added dependency on MovieScene module Change 3191403 on 2016/11/09 by Andrew.Rodham Sequencer: Fix initialization order warning Change 3191428 on 2016/11/09 by Andrew.Rodham Sequencer: Added missing include Change 3191510 on 2016/11/09 by Andrew.Rodham Header include fixes Change 3191599 on 2016/11/09 by Max.Chen Sequencer: Add option to lock the playback range per movie scene. The toggle is stored as editor only and should be a saved value so that it can persist as the asset is passed from user to user. #jira UE-34677 Change 3191664 on 2016/11/09 by Andrew.Rodham Sequencer: Ensure keyframe handlers are only added once Change 3192373 on 2016/11/09 by Max.Preussner MediaAssets: Fixed regression: playlists no longer open Change 3192408 on 2016/11/09 by Max.Preussner MediaAssets: Fixed OpenPlaylistIndex crashing Change 3192878 on 2016/11/09 by Max.Chen Camera Rig: Fix log spam trying to unregister component. #jira UE-38435 Change 3192989 on 2016/11/10 by Andrew.Rodham Slate: Added constructor to appease old VS2013 compiler warning about non-constructible type Change 3192991 on 2016/11/10 by Andrew.Rodham Sequencer: Moved lambda out-of-line to fix static analysis warning Change 3193420 on 2016/11/10 by Max.Preussner MediaAssets: Replaced CopyToResolveTarget with new TransitionTarget API Change 3193478 on 2016/11/10 by Max.Chen Sequencer: Moved Fix Actor References back under the General Options menu. Change 3193870 on 2016/11/10 by Max.Preussner MediaPlayerEditor: Removed additional buttons in per-platform overrides (UE-37948) #jira UE-37948 Change 3193873 on 2016/11/10 by Lina.Halper - Sequencer fix with anim instance reinit - Fixed TMap issue with memory by changing to pointer from ref. #code review: Max.Chen Change 3194184 on 2016/11/10 by Max.Chen Sequencer: Only expand section when setting keys when there are keys. Otherwise if you set the default value while the time position is outside of the section range, the section will expand, which seems undesirable. Change 3194187 on 2016/11/10 by Max.Chen Sequencer: Backwards compatibility if a track no longer supports multiple rows, its sections are split to other duplicate tracks. Change 3194191 on 2016/11/10 by Max.Chen Sequencer: Add audio volume and pitch curves. #jira UE-30009 Change 3194256 on 2016/11/10 by Max.Chen Merging //UE4/Dev-Main to Dev-Sequencer (//UE4/Dev-Sequencer) Change 3194282 on 2016/11/10 by Max.Chen Movie Capture: Add some frame rate bounds. Max frame rate for recording is 200. Min is 1. #jira UE-38502 Change 3194355 on 2016/11/11 by Max.Chen Sequencer: Minimum handle size for time slider scrubber. #jira UE-34676 Change 3194767 on 2016/11/11 by Max.Chen Sequencer: Mark duplicated tracks as changed so that their template gets regenerated. Change 3195094 on 2016/11/11 by Max.Preussner Media: Removing game thread dependencies This change removes game thread dependencies from all media players so that we can use the media framework for startup movies where the game thread is block while loading the Engine. The players now have two new methods, TickPlayer and TickVideo, which need to be called from the external code that owns the players. On the Engine side, this is taken care of by UMediaPlayer, which calls TickPlayer from the game thread and TickVideo from the render thread. In startup movies, this will be taken care of by a special thread. AvfMedia: This change does not fully remove game thread dependencies in AvfMediaPlayer yet. There are some async callbacks scheduled to execute on the game thread that need to be refactored. The execution of these events should be performed in TickPlayer instead. All platform owners, please review these changes for your platform and make sure that everything still works. I have not had time to test all platforms yet. Change 3195396 on 2016/11/11 by Max.Preussner AvfMedia: Removed remaining game thread dependencies Change 3195670 on 2016/11/11 by Max.Preussner MediaUtils: Renamed function Change 3195690 on 2016/11/11 by Max.Preussner MediaAssets: MediaPlayerBase instance is now a field instead of pointer. Change 3195802 on 2016/11/11 by Max.Preussner Media: Removed UMediaPlayer::GetNativePlayer Change 3195843 on 2016/11/11 by Max.Preussner Kismet: Fixed non-unity Change 3195851 on 2016/11/11 by Max.Preussner Fixed typo. Change 3195854 on 2016/11/11 by Max.Preussner MediaUtils: Added missing forward declaration Change 3195937 on 2016/11/11 by Max.Chen Media: CIS Fix Change 3196120 on 2016/11/13 by Max.Chen Sequencer: Weight curve for skeletal animation section. Changed skeletal template evaluation so that it works with multiple animation tracks. The shared track clears all the weights, the section gathers up all the data, and the shared track evaluates the data. Otherwise, the multiple track evaluations would conflict with each other in setting states back and forth. #jira UE-38374, UEFW-128 Change 3196265 on 2016/11/13 by Max.Chen Sequencer: Fix audio waveforms so that they're regenrated when audio start time is changed. #jira UE-38543 Change 3196421 on 2016/11/14 by Andrew.Rodham Sequencer: Fixed modified tracks not being written to the transaction buffer when replacing object bindings #jira UE-38423 Change 3197131 on 2016/11/14 by Max.Chen Sequencer: Null checks. #jira UE-38570, UE-38593 Change 3197209 on 2016/11/14 by Max.Chen Cine Camera: Reset focus smoothing interpolation on PostEditChangeProperty. This fixes an issue where if you enable focus smoothing, the manual focus distance that is input isn't used since the interpolation happens from the last current focus distance. #jira UE-27055 Change 3198691 on 2016/11/15 by Max.Chen Sequence Recorder: Optimize record transforms by setting all the keyframes at once. Also, added option to toggle removing redundant keyframes from the recorded tracks. #jira UE-38489 Change 3198711 on 2016/11/15 by andrew.porter Adding test content for MEdia Framework Track Switching. Change 3199174 on 2016/11/15 by Lina.Halper Sequencer backward compatibility fix with root motion Make sure you could remove root motion fine #jira : UE-38591 Change 3199260 on 2016/11/15 by tim.gautier Updated QA-Media_TrackSwitch - changed Trigger Collision to only detect overlap from PlayerPawn Change 3199663 on 2016/11/15 by Max.Chen Anim Sequencer: Fix deprecation warning for bCanUseParallelUpdateAnimation. Updated to use bUseMultiThreadedAnimationUpdate. Change 3199727 on 2016/11/15 by Max.Chen Matinee to Level Sequence: Set default scale when converting matinee move tracks to sequencer. #jira UE-38688 Change 3199847 on 2016/11/16 by Max.Chen Sequencer: Add menu option to reduce keys of all sections in the current level sequence Change 3200351 on 2016/11/16 by Max.Chen Level Editor/Sequencer: Fixes to allow for component keyframing. The transform track operates on the components that changed, not the actor. The level editor viewport broadcasts begin/end movement on the components that changed. #jira UE-38649, UE-38646 Change 3200474 on 2016/11/16 by Max.Chen Sequencer: Move reduce keys to section context menu. Change 3200888 on 2016/11/16 by Max.Chen Sequencer: Clamp skeletal animation evaluation remapping of time to section bounds. This is necessary when evaluating nearest is enabled and the time is beyond the section bounds. Also, set the shared track template to have higher priority so that it always clears/initializes weights before each section's template adds section params for evaluation. Change 3201633 on 2016/11/17 by Max.Chen Matinee to Level Sequence: Fix matinee 3d scale track conversion to level sequence. Also, added paste matinee vector track to sequencer's vector track. #jira UE-38688 Change 3202458 on 2016/11/17 by Max.Chen Sequencer: Fix track editor commands getting unregistered when switching from one level sequence to another. The sequence of events is: track editor commands get bound when a level sequence is edited. When switching to another level sequence, the existing track editor is released after the new one is registered, causing the commands to ultimately get unbound. #jira UE-38693 Change 3202606 on 2016/11/17 by Max.Chen Actor Sequence: Null check in CanPossessObject for a component's owner. #jira UE-38514 Change 3203522 on 2016/11/17 by Max.Chen Sequencer: Audio start time deprecated in favor of start offset which is an offset into the audio clip. Also, limit the start offset to positive values since you can just crop into the audio clip by dragging the section's start time. Audio track no longer supports multiple rows (should have been checked in along with the audio volume and pitch multiplier curves). #jira UE-38549, UE-38554, UE-38547 Change 3203863 on 2016/11/18 by Andrew.Rodham Engine: Ensure that world settings actor is considered by network object list when sorting the actor list for a level Change 3203865 on 2016/11/18 by Andrew.Rodham Sequencer: Fixed play rate track interaction between servers and clients - The logic for evaluation was previously flawed (it would only run in editor builds). Play rate is now only evaluated on servers and standalone clients, with the time dilation being replicated to network clients. Change 3203900 on 2016/11/18 by Andrew.Rodham Sequencer: Changed CreateLevelSequencePlayer to create a transient level sequence actor #jira UE-37277 Change 3205038 on 2016/11/18 by Max.Preussner Slate: Corrected comment Change 3205046 on 2016/11/18 by Max.Preussner WmfMedia: Added missing nullptr check #jira UE-38825 Change 3205073 on 2016/11/18 by Max.Chen Sequencer: Fix audio upgrade case when start time is 0. Change 3205277 on 2016/11/19 by Max.Preussner Merging //UE4/Dev-Main to Dev-Sequencer (//UE4/Dev-Sequencer) Please take a look at SequencerEdMode.cpp and Sequencer.cpp. I ended up accepting latest Dev-Sequencer, which seemed to be the right thing to do. Change 3205465 on 2016/11/20 by Max.Preussner MovieScene: Fixed non-unity build Change 3205467 on 2016/11/20 by Max.Preussner Engine: Fixed spelling Change 3206264 on 2016/11/21 by Max.Preussner Kismet: Added missing forward declaration Change 3206493 on 2016/11/21 by Max.Preussner PS4Media: Added remaining changes for removing game thread dependencies Change 3206512 on 2016/11/21 by Andrew.Porter Adding test content to QAGame for Sequencer animation weight blending. Change 3206529 on 2016/11/21 by Lina.Halper Fixed anim notifes to work in Sequencer Instance - Give proper delta in editor preview - Make sure not to recreate AnimInstance #jira: UE-38849 #code review:Max.Chen Change 3206552 on 2016/11/21 by Max.Preussner QAGame: Enabled looping by default Change 3207462 on 2016/11/22 by andrew.porter QAGame: updating QA-Sequencer with changes to animation blending test cases Change 3207499 on 2016/11/22 by tim.gautier Added Streaming Sources, added Streaming Source options for BP_MediaPlayer. Specified Media Option Categories with BP_MediaPlayer to clean up details panel. #jira none Change 3207571 on 2016/11/22 by Max.Chen Curve Editor: Expose curve editor settings to Editor Preferences. #jira UE-38907 Change 3207690 on 2016/11/22 by Max.Chen Sequencer: Speculative crash fix for switching UMG animations. #jira UE-29333 Change 3207744 on 2016/11/22 by tim.gautier Removed unnecessary nodes from BP_MediaPlayer. Created a variable visible in the Details Panel to allow the user to specify a URL to Stream media without specifying a Source in-editor. #jira none Change 3207935 on 2016/11/22 by Max.Chen Sequencer: Temporary fix for skeletal animation track scrubbing. Verified that anim notifies still fire when playing and scrubbing. #jira UE-38964 Change 3207938 on 2016/11/22 by Max.Chen Sequence Recorder: Set reduce keys back to true so that there's no change in current behavior. This should be toggled off for performance reasons but in general is nice to have reduced keys. Change 3207950 on 2016/11/22 by Lina.Halper - Fixed so that mesh space additive won't show up in sequencer - Added warning if you change type later or existing ones #jira: UE-38062? Change 3208278 on 2016/11/22 by andrew.porter QAGame: Adjusting level blueprint for test case. Change 3208285 on 2016/11/22 by andrew.porter QAGame: adding SequencerBP animation blueprint. Change 3208538 on 2016/11/23 by Max.Chen Actor Sequence: Fix plugin filename. Change 3208916 on 2016/11/23 by Max.Chen Sequencer: Fix material parameter initialization so that the value is retrieved from the material instance and not the parent material. #jira UE-34317 Change 3208924 on 2016/11/23 by Max.Chen Save As: Cancel should not save over the existing asset. It should just return. Change 3208939 on 2016/11/23 by andrew.porter QAGame: reset some content back to its default state for testing Change 3209053 on 2016/11/23 by Max.Chen Sequencer: Ensure the section id is unique. Change 3209161 on 2016/11/23 by Max.Chen Save As: Follow up fix for cancelling save as. Change 3210540 on 2016/11/26 by Max.Preussner WmfMedia: Reworked fallback stride calculations to fix issues with some exotic video formats Change 3210546 on 2016/11/26 by Max.Preussner WmfMedia: Fixed NV12 vertical buffer alignment Change 3211567 on 2016/11/28 by Max.Preussner Merging //UE4/Dev-Main to Dev-Sequencer (//UE4/Dev-Sequencer) Step 1 of 2 Change 3212408 on 2016/11/28 by Max.Preussner Fixed fallout from Dev-Main merge Change 3212456 on 2016/11/28 by Max.Preussner ActorSequenceEditor: Removed monolithic header dependencies Change 3212562 on 2016/11/28 by Max.Preussner ActorSequenceEditor: Removed monolithic header usage Change 3212649 on 2016/11/28 by Max.Chen Fix CIS Change 3212671 on 2016/11/28 by Max.Chen Sequencer: Add option to restore to the pre animated state. #jira UE-38862 #2953 Change 3212672 on 2016/11/28 by Max.Chen Sequencer: Select object binding node corresponding to selected components and vice versa (select components in level when object binding node is selected) Change 3212673 on 2016/11/28 by Max.Chen Sequencer: Follow-up fix for component keyframing - key area needs to be updated by component. #jira UE-38649 Change 3212676 on 2016/11/28 by Max.Chen Level Editor: PostEditMove should only be called on the actor if it is moved. #jira UE-38646 Change 3212688 on 2016/11/29 by Max.Chen Sequencer: Force refresh event parameters customization when struct contents change but not a full refresh when struct child contents change. #jira UE-39094 Change 3212831 on 2016/11/29 by Andrew.Rodham Disabled ActorSequenceEditor plugin by default while it's experimental Change 3213219 on 2016/11/29 by Max.Preussner AvfMedia: Added missing include Change 3213333 on 2016/11/29 by Andrew.Rodham Sequencer: Added the ability to override bindings when playing back a level sequence on a level sequence actor #jira UETOOL-746 Change 3213905 on 2016/11/29 by Max.Preussner More IWYU fixes for macOS Change 3214203 on 2016/11/29 by Michael.Gay Some demo files to test Sequencer timing. Change 3214205 on 2016/11/29 by Max.Preussner More IWYU fixes for macOS Change 3214548 on 2016/11/29 by Max.Preussner More IWYU fixes for macOS Change 3214564 on 2016/11/29 by Max.Preussner More IWYU fixes Change 3214567 on 2016/11/29 by Max.Chen More IWYU fixes for Win32 Change 3214573 on 2016/11/29 by Max.Preussner More IWYU fixes Change 3214576 on 2016/11/29 by Max.Preussner More IWYU fixes Change 3214621 on 2016/11/30 by Max.Preussner Atrac9Decoder: Fixed log category declaration Change 3214630 on 2016/11/30 by Max.Preussner More IWYU fixes Change 3214747 on 2016/11/30 by Andrew.Rodham Sequencer: Fixed shadow variable Change 3214957 on 2016/11/30 by Andrew.Rodham Core: Changed Algo::Find to use TElementType - This allows it to support c style arrays Change 3215127 on 2016/11/30 by Andrew.Rodham Sequencer: Made burn-in options and init settings instanced - This ensures they work correctly when defined on archetypes and blueprints #jira UE-38645 Change 3215754 on 2016/11/30 by Max.Chen Sequencer: Fix skeletal animation track evaluating tracks in the wrong time space. Cache the evalulation time and weight value in each section's template and then execute with those values in the shared track's template. #jira UE-39145 Change 3216603 on 2016/12/01 by Max.Chen Sequencer: Set audio volume/pitch only if changed. Change 3216613 on 2016/12/01 by Max.Chen Sequencer: Add component selector when there are multiple components that have sockets. This fixes a crash when there are multiple components to attach to. #jira UE-39167 Change 3217175 on 2016/12/01 by Max.Chen Sequencer: Set skeletal animation track evaluation to be upper bound exclusive. This gives better behavior when two clips butt up against each other since the sections would overlap in time and evaluation would normalize they weighted contribution of each. #jira UE-37184 Change 3217292 on 2016/12/01 by Max.Chen Sequencer: Rework upgrading track rows to include overlapping sections. For skeletal animation sections, set weight values based on the evaluation bounds since there was no blending prior to 4.15. Change 3217860 on 2016/12/01 by Max.Preussner Media: Fall-through for media options Change 3217965 on 2016/12/01 by Max.Preussner MediaAssets: Renamed media option name Change 3218470 on 2016/12/01 by Max.Chen Sequencer: Fix start time deprecation value so that negative values are supported. #jira UE-39259 Change 3218473 on 2016/12/01 by Max.Chen Sequencer: Fix crash if start seq length is negative. Change 3219021 on 2016/12/02 by Max.Chen Sequencer: Add multiply and divide to transform box. Change 3219374 on 2016/12/02 by Max.Chen Sequencer: Teleport simulating components when moving them through the transform track. This fixes bugs with recording simulating actors (ie. vehicle game) where recorded actors don't playback with the recorded positions and there are warnings about attempting to move a fully simulated skeletal mesh. #jira UE-38442, UE-38444, UE-38852 Change 3219638 on 2016/12/02 by Max.Preussner Projects: Fixed error message Change 3220584 on 2016/12/03 by Andrew.Rodham Sequencer: Blueprint generated classes are now always removed from level sequences on load in the editor - This ensures that old (and perhaps corrupt) BP generated classes are destroyed #jira UE-39173 Change 3220585 on 2016/12/03 by Andrew.Rodham Editor: Fix EditInstanceOnly properties that aren't variables on the generated class being editable in blueprints Change 3220973 on 2016/12/04 by Max.Chen Fix CIS Change 3222833 on 2016/12/05 by Max.Chen Sequencer: Fixed some recorded components not being generated. #jira UE-34289 Change 3224450 on 2016/12/06 by Max.Chen Sequencer: Fix convert spawnable to posessable. Logic for setting the parent was mistakenly removed in runtime eval. #jira UE-39419 Change 3225301 on 2016/12/07 by Max.Preussner AvfMedia: Added settings class Change 3225304 on 2016/12/07 by Max.Preussner Fixed typo Change 3225723 on 2016/12/07 by Max.Preussner Fixed typo. Change 3225871 on 2016/12/07 by Max.Preussner Forgot to check in Change 3225932 on 2016/12/07 by Max.Preussner Added missing header Change 3226266 on 2016/12/07 by Max.Preussner Media: Fixed various module dependencies Change 3226451 on 2016/12/07 by Max.Preussner Include fixes Change 3226455 on 2016/12/07 by Max.Preussner LevelSequence: Added missing include Change 3227135 on 2016/12/08 by Max.Preussner Merging //UE4/Dev-Main to Dev-Sequencer (//UE4/Dev-Sequencer) Change 3227143 on 2016/12/08 by Max.Preussner LevelSequencer: Added missing header Change 3227731 on 2016/12/08 by Max.Preussner LevelSequencer: Added missing include Change 3228222 on 2016/12/08 by Max.Preussner UBT: Fixed delay load library support for remote compilation to macOS Change 3228266 on 2016/12/08 by Max.Preussner PluginBrowser: Added missing includes Change 3228755 on 2016/12/09 by Andrew.Rodham Sequencer: Fixed copy-paste of event keys - Also added a key-value iterator to TCurveInterface (both const and non-const) #jira UE-39526 Change 3228777 on 2016/12/09 by Luke.Thatcher [PLATFORM] [PS4] [!] Reimplement fixes from Fortnite for PS4 media framework in //UE4/Dev-Sequencer. Based on Original CL 3227137 - Event callback from AvPlayer was enqueing the processing of events over to the player thread, so the "State" member of FPS4MediaPlayer doesn't get updated until the following frame. This breaks cases with multiple calls to SetRate within a single frame. - Removed time check in FPS4MediavideoSampler::Tick. There are cases where the time check failed, even when a new frame was available from the AvPlayer libs. The video sampler now always calls sceAvPlayerGetVideoDataEx. This returns immediately if no frame data is available. - FPS4MediaPlayer::Seek was failing if the video is in a playing/paused state. We now restart the stream if a seek command occurs after the video has stopped (e.g. due to EOF reached). - Shared a single critical section between the FPS4MediaTracks, FPS4MediaVideoSampler and FPS4MediaPlayer objects. Fixes deadlocks between the decoder/player threads where each will be waiting on each others' critical section. [~] Enabled debug warnings from AvPlayer library in non-shipping builds. [~] Changed log levels of UE_LOGs to match their severity. ------------------------- [!] Also, fixed rendering artifacts on videos using a cropping rectangle - e.g. 1080p videos are actually decoded as 1920x1088, with an extra 8 pixels height, which contained garbage. - We determine the final media texture size as the size of the cropping rectangle, and use modified UVs during the YCbCr->RGB converstion shader to do the mapping. Change 3228793 on 2016/12/09 by Andrew.Rodham Sequencer: Edits to actor sequences now correctly mark their parent blueprints for compilation #jira UE-38723 Change 3228877 on 2016/12/09 by Luke.Thatcher [PLATFORM] [PS4] [!] Fix track switching issues in PS4 media player. - Sony's AvPlayer library does not support switching tracks (audio or video) on-the-fly after a stream has begun playback. - The higher level UMediaPlayer enables track 0 automatically, which would be committed to the AvPlayer, and therefore lock out other streams. - Actual track selection is now deferred until the stream is started, after which changing tracks is prohibited. - Tracks must be selected before calling SetRate for the first time. #jira UE-37225 Change 3229501 on 2016/12/09 by Max.Preussner Media: Better display names for media player plug-ins Change 3229515 on 2016/12/09 by Max.Preussner MediaPlayerEditor: Sorting player plug-ins alphabetically; consistent display in both media player editor and media source customization Change 3229716 on 2016/12/09 by andrew.porter Adding PlayRate sequence to my dev folder Change 3230554 on 2016/12/12 by Andrew.Rodham Back out changelist 3220584 - Currently this causes actor instances to fail to load because they are instanced of dead classes. Need to think of a more robust solution here. #jira UE-39398 Change 3230922 on 2016/12/12 by Max.Preussner Merging //UE4/Dev-Main to Dev-Sequencer (//UE4/Dev-Sequencer) Change 3232059 on 2016/12/12 by Max.Preussner MediaUtils: Better error message for when no suitable media player plug-in was found Change 3232097 on 2016/12/13 by Max.Preussner Switch: Temp fix for borked folder name on case-sensitive platforms Change 3232100 on 2016/12/13 by Max.Preussner MediaAssets: Split up UMediaSource into UBaseMediaSource Also added color space related properties Change 3232101 on 2016/12/13 by Max.Preussner Media: Started to implement support for color spaces Change 3232119 on 2016/12/13 by Max.Preussner MediaAssets: Fixed buffer not recreated if color space changed Change 3232799 on 2016/12/13 by Max.Preussner PS4Media: Fixed build #jira UE-39706 Change 3233170 on 2016/12/13 by Max.Preussner Merging //UE4/Dev-Main to Dev-Sequencer (//UE4/Dev-Sequencer) Change 3233250 on 2016/12/13 by Max.Preussner MediaPlayerEditor: Added separator in track menu Change 3233309 on 2016/12/13 by andrew.porter QAGame: Edited text render actors in QA-Media_TrackSwitch Change 3233439 on 2016/12/13 by Chris.Babcock Standardize Android media track DisplayName Change 3233817 on 2016/12/13 by Chris.Babcock Fix virtual keyboard EditableTextBox update when comitted text matches current text from change updates #jira UE-39424 #ue4 #mobile Change 3234421 on 2016/12/14 by Andrew.Rodham Sequencer: Fixed nullptr crash Change 3234423 on 2016/12/14 by Andrew.Rodham Sequencer: Fixed incorrect copying of base-class from compiler rules Change 3234429 on 2016/12/14 by Andrew.Rodham Sequencer: Fixed empty space not being added between the last and penultimate segments when required #jira UE-39442 Change 3234635 on 2016/12/14 by Max.Preussner MediaAssets: Exposed UTexture properties in UMediaTexture Change 3234681 on 2016/12/14 by Max.Preussner MediaAssets: Made MediaTextureResources support -onethread Change 3234878 on 2016/12/14 by Andrew.Rodham Sequencer: Fixed crash with "Evaluate Sub Sequences in Isolation" enabled - This occurred when there were tracks at the root level of the sub sequence, because it would incorrectly hash in the parent ID, rather than just using it directly Change 3234901 on 2016/12/14 by Max.Preussner MediaPlayerEditor: Detail customization improvements Change 3235275 on 2016/12/14 by Chris.Babcock Fix WMF stream ordering to match other players #jira UE-39703 #ue4 #mediaframework Change 3235390 on 2016/12/14 by Max.Preussner DesktopPlatform: Added IniPlatformName to FPlatformInfo; fixed up indentation Change 3235402 on 2016/12/14 by Max.Preussner MediaAssets: Fixed platform player name overrides ignored in packaged builds (UE-39771) #jira UE-39771 Change 3235667 on 2016/12/14 by Max.Preussner Media: Moved enums into separate header file, so they can be shared Change 3235984 on 2016/12/14 by Max.Preussner Back out changelist 3235667 Change 3236040 on 2016/12/14 by Max.Preussner Core: Added modulus operator to FTimespan Change 3236139 on 2016/12/15 by Max.Preussner Core: Added FTimespan::IsZero Change 3236527 on 2016/12/15 by Max.Preussner Fixed initialization order Change 3237101 on 2016/12/15 by Andrew.Rodham Sequencer: Skeletal animation and audio tracks now support multiple rows again. - In practice there were too many edge-cases to account for whilst considering backwards compatability - The impossible scenario was 2 sections on different rows, but evaluating nearest section - this cannot be represented as separate tracks. - Reorganised animation runtime template to use execution tokens rather than ::Initialize to ensure that animation operates correctly on the first frame for spawned objects #jira UE-39442 #jira UE-39725 Change 3237213 on 2016/12/15 by Andrew.Rodham Sequencer: Fixed crash when setting event key properties #jira UE-39347 Change 3237255 on 2016/12/15 by Chris.Babcock Fix Multi with ETC2 and PVRTC selecting ES3.0 instead of 2.0 #jira UE-39839 #ue4 #android Change 3237294 on 2016/12/15 by Andrew.Rodham Sequencer: Fixed shadowed variable warnings Change 3237366 on 2016/12/15 by Max.Preussner Media: Removed color space changes; we'll do these in material graphs instead Change 3237436 on 2016/12/15 by Andrew.Rodham Sequencer: Fixed montages not being stopped for specific animation slots when animation sections were no longer evaluated #jira UE-39847 Change 3237458 on 2016/12/15 by Andrew.Rodham Sequencer: Always force regeneration of templates when PIE to eliminate the posibility of combining stale data Change 3237516 on 2016/12/15 by Max.Preussner Media: Attempting to fix Crash in fortnite just before exiting onboarding (UE-39841) #jira UE-39841 Change 3237532 on 2016/12/15 by Max.Preussner Added missing scope lock Change 3237991 on 2016/12/16 by Max.Preussner PS4Media: Fixed build [CL 3238204 by Max Preussner in Main branch]
2016-12-16 11:17:44 -05:00
/////////////////////////////////////////////////////
// UAnimSequencerInstance
/////////////////////////////////////////////////////
const FName UAnimSequencerInstance::SequencerPoseName(TEXT("Sequencer_Pose_Name"));
Copying //UE4/Dev-Sequencer to //UE4/Dev-Main (Source: //UE4/Dev-Sequencer @ 3237992) #lockdown Nick.Penwarden #rb none ========================== MAJOR FEATURES + CHANGES ========================== Change 3136778 on 2016/09/22 by Max.Preussner Merged Dev-Main to Dev-Sequencer Change 3179199 on 2016/10/29 by Max.Chen Sequencer: Fade only oin the current player context, not on all worlds. Copy from Release-4.14. Copied fix to FadeTrackInstance to FadeTemplate. #jira UE-37939 Change 3179340 on 2016/10/29 by Max.Preussner PS4Media: Fixed audio track dropping first frame Change 3180391 on 2016/10/31 by Max.Preussner UdpMessaging: nulling out message processor in destructor Change 3180459 on 2016/10/31 by Max.Chen Sequencer: Fix copy/paste crash in UMG. Change 3180607 on 2016/10/31 by Andrew.Rodham UMG: Fixed parent bindings not being adhered to correctly. Fixed slot widgets that get recreated not having their object bindings updated. #jira UE-38021 #jira UE-38018 Change 3181405 on 2016/11/01 by Lina.Halper #ANIM/SEQUCNER: sequencer animation blending support including additive - created multiway blend node - extension of two way blend - created anim sequencer instance to be used in sequencer for blending multiple animations and additives - hooked up to sequencer track players - renamed AnimationNode_TwoWay to AnimNode_TwoWay to be consistent with other node names. - Make sure you can't choose montage when selecting animation in Sequencer - Fixed Anim BP playing with multi group montages #code review: Max.Chen Change 3181870 on 2016/11/01 by Andrew.Rodham Sequencer: Made sequence pointers stored in sequence template instances weak object ptrs - We can't guarantee the lifetime of the objects here #jira UE-38051 Change 3182851 on 2016/11/02 by Andrew.Rodham Sequencer: Assert that a GetScriptStructImpl has been overridden correctly on templates Change 3182852 on 2016/11/02 by Andrew.Rodham Sequencer: Added 'Restore Animated State' command (CTRL+R) and button to sequencer toolbar Change 3183161 on 2016/11/02 by Max.Preussner Media: Added supported file extensions & URL schemes Change 3183476 on 2016/11/02 by Max.Preussner Merged Dev-Main to Dev-Sequencer Change 3185181 on 2016/11/03 by Max.Chen Sequencer: Refactor general options button menu into play options and select options. Add Select Sections in Selection Range and Select All in Selection Range. Fix issues with convert to spawanble and convert to possessable. Convert to possessable now deletes the spawn track so that it's not left lying around, which when deleted would end up deleting the converted possessable actor. #jira UE-37854 Change 3185184 on 2016/11/03 by Max.Chen Sequencer: Add hotkey to toggle camera cut track lock/unlock camera. Change 3185409 on 2016/11/03 by Max.Chen Sequencer: Fix crash in skeletal mesh section drawing. #jira UE-38090 Change 3185444 on 2016/11/03 by Max.Chen UMG: Expose label browser for UMG Change 3185662 on 2016/11/03 by Max.Chen Sequencer: Paste track fixes. - Loosen restrictions on paste track destination. This allows the paste to operate on spawnables and on properties that don't have an explicit Set function. - Allow pasting onto all types of tracks, not just property tracks. - Fix when pasting the copied tracks onto multiple objects. Tested pasting transform tracks from possessable to spawnables. Tested pasting skeletal animation tracks from spawnable to possessables. #jira UETOOL-1206 Change 3185920 on 2016/11/03 by Andrew.Porter Adding test content for multiple audio video tracks. Change 3186404 on 2016/11/03 by Max.Preussner Merged Dev-Main to Dev-Sequencer Change 3187957 on 2016/11/04 by Max.Preussner MediaAssets: Exposed CanPlaySource in BP Change 3187988 on 2016/11/05 by Max.Preussner Fixed documentation Change 3188035 on 2016/11/05 by Max.Chen Sequencer: Show camera name in cinematic viewport. #jira UE-28115 Change 3188603 on 2016/11/07 by Max.Preussner WmfMedia: Added missing nullptr check Change 3188788 on 2016/11/07 by Max.Preussner MediaPlayerEditor: Removed property buttons from PlatformMediaSource customization (UE-37948) #jira UE-37948 Change 3188808 on 2016/11/07 by Max.Preussner MediaAssets: Moved media player implementation into reusable class Also moved overlay text handling into separate asset. Change 3188919 on 2016/11/07 by Max.Preussner Media: Changed the handling of invalid media and media that failed to open (UE-38014) #jira UE-38014 Change 3189112 on 2016/11/07 by Max.Preussner WmfMedia: Added rudimentary H.265 HEVC support for Windows 10 (UE-38324) #jira UE-38324 Change 3189376 on 2016/11/07 by Max.Preussner WmfMedia: Removed Windows specific code from factory module Change 3189381 on 2016/11/07 by Max.Preussner Atrac9Audio: Fixed log category Change 3189497 on 2016/11/07 by Max.Preussner Media: Added binary sinks support Change 3189666 on 2016/11/07 by Max.Chen Curve Editor: Add option to show time in frame numbers #jira UE-27210 Change 3190339 on 2016/11/08 by Max.Preussner MediaAssets: Removed SetDesiredPlayerName since the field is public Change 3190342 on 2016/11/08 by Andrew.Porter Adding sequencer test content for animation blueprint Change 3190398 on 2016/11/08 by Max.Preussner Media: Renamed binary tracks to metadata tracks Change 3190458 on 2016/11/08 by andrew.porter Updating Skeleton with new slots. Change 3191167 on 2016/11/08 by Max.Chen Sequencer: Fix crash in validating paste tracks buffer. Validate the tracks instead of actually pasting into temp. #jira UE-38353 Change 3191336 on 2016/11/09 by Andrew.Rodham Slate: Added the ability to set and retrieve a host tab manager from a details view Change 3191338 on 2016/11/09 by Andrew.Rodham Editor: Added the ability to extend default layouts - FLayoutExtender can be used to provide basic tab layout extensions on default themes. - This can be used by external plugins to inject tabs to other interfaces where necessary. - Currently this is supported by the blueprint editor's unified component layout, and the level editor layout. Change 3191346 on 2016/11/09 by Andrew.Rodham Sequencer: Added new (experimental) ActorSequence module and editor - Sequences can now be added to actors via the UActorSequenceComponent. - An embedded sequencer will appear on details panels, with the option to break it out into a tab. - Separated common playback elements from ULevelSequencePlayer into UMovieSceneSequencePlayer, from which specific players can derive. - The majority of level editorintegration with sequencer has been separated out into a separate singleton class that can manage multiple sequencers. - All movie scene data now defaults to instanced, such that it can be duplicated and instanced correctly. - Added read-only mode for sequencer which is used for actor sequence components that come from a blueprint archetype to prevent erroneous editing. Change 3191387 on 2016/11/09 by Andrew.Rodham Orion: Fixed deprecation warnings Change 3191388 on 2016/11/09 by Andrew.Rodham Orion: Added dependency on MovieScene module Change 3191403 on 2016/11/09 by Andrew.Rodham Sequencer: Fix initialization order warning Change 3191428 on 2016/11/09 by Andrew.Rodham Sequencer: Added missing include Change 3191510 on 2016/11/09 by Andrew.Rodham Header include fixes Change 3191599 on 2016/11/09 by Max.Chen Sequencer: Add option to lock the playback range per movie scene. The toggle is stored as editor only and should be a saved value so that it can persist as the asset is passed from user to user. #jira UE-34677 Change 3191664 on 2016/11/09 by Andrew.Rodham Sequencer: Ensure keyframe handlers are only added once Change 3192373 on 2016/11/09 by Max.Preussner MediaAssets: Fixed regression: playlists no longer open Change 3192408 on 2016/11/09 by Max.Preussner MediaAssets: Fixed OpenPlaylistIndex crashing Change 3192878 on 2016/11/09 by Max.Chen Camera Rig: Fix log spam trying to unregister component. #jira UE-38435 Change 3192989 on 2016/11/10 by Andrew.Rodham Slate: Added constructor to appease old VS2013 compiler warning about non-constructible type Change 3192991 on 2016/11/10 by Andrew.Rodham Sequencer: Moved lambda out-of-line to fix static analysis warning Change 3193420 on 2016/11/10 by Max.Preussner MediaAssets: Replaced CopyToResolveTarget with new TransitionTarget API Change 3193478 on 2016/11/10 by Max.Chen Sequencer: Moved Fix Actor References back under the General Options menu. Change 3193870 on 2016/11/10 by Max.Preussner MediaPlayerEditor: Removed additional buttons in per-platform overrides (UE-37948) #jira UE-37948 Change 3193873 on 2016/11/10 by Lina.Halper - Sequencer fix with anim instance reinit - Fixed TMap issue with memory by changing to pointer from ref. #code review: Max.Chen Change 3194184 on 2016/11/10 by Max.Chen Sequencer: Only expand section when setting keys when there are keys. Otherwise if you set the default value while the time position is outside of the section range, the section will expand, which seems undesirable. Change 3194187 on 2016/11/10 by Max.Chen Sequencer: Backwards compatibility if a track no longer supports multiple rows, its sections are split to other duplicate tracks. Change 3194191 on 2016/11/10 by Max.Chen Sequencer: Add audio volume and pitch curves. #jira UE-30009 Change 3194256 on 2016/11/10 by Max.Chen Merging //UE4/Dev-Main to Dev-Sequencer (//UE4/Dev-Sequencer) Change 3194282 on 2016/11/10 by Max.Chen Movie Capture: Add some frame rate bounds. Max frame rate for recording is 200. Min is 1. #jira UE-38502 Change 3194355 on 2016/11/11 by Max.Chen Sequencer: Minimum handle size for time slider scrubber. #jira UE-34676 Change 3194767 on 2016/11/11 by Max.Chen Sequencer: Mark duplicated tracks as changed so that their template gets regenerated. Change 3195094 on 2016/11/11 by Max.Preussner Media: Removing game thread dependencies This change removes game thread dependencies from all media players so that we can use the media framework for startup movies where the game thread is block while loading the Engine. The players now have two new methods, TickPlayer and TickVideo, which need to be called from the external code that owns the players. On the Engine side, this is taken care of by UMediaPlayer, which calls TickPlayer from the game thread and TickVideo from the render thread. In startup movies, this will be taken care of by a special thread. AvfMedia: This change does not fully remove game thread dependencies in AvfMediaPlayer yet. There are some async callbacks scheduled to execute on the game thread that need to be refactored. The execution of these events should be performed in TickPlayer instead. All platform owners, please review these changes for your platform and make sure that everything still works. I have not had time to test all platforms yet. Change 3195396 on 2016/11/11 by Max.Preussner AvfMedia: Removed remaining game thread dependencies Change 3195670 on 2016/11/11 by Max.Preussner MediaUtils: Renamed function Change 3195690 on 2016/11/11 by Max.Preussner MediaAssets: MediaPlayerBase instance is now a field instead of pointer. Change 3195802 on 2016/11/11 by Max.Preussner Media: Removed UMediaPlayer::GetNativePlayer Change 3195843 on 2016/11/11 by Max.Preussner Kismet: Fixed non-unity Change 3195851 on 2016/11/11 by Max.Preussner Fixed typo. Change 3195854 on 2016/11/11 by Max.Preussner MediaUtils: Added missing forward declaration Change 3195937 on 2016/11/11 by Max.Chen Media: CIS Fix Change 3196120 on 2016/11/13 by Max.Chen Sequencer: Weight curve for skeletal animation section. Changed skeletal template evaluation so that it works with multiple animation tracks. The shared track clears all the weights, the section gathers up all the data, and the shared track evaluates the data. Otherwise, the multiple track evaluations would conflict with each other in setting states back and forth. #jira UE-38374, UEFW-128 Change 3196265 on 2016/11/13 by Max.Chen Sequencer: Fix audio waveforms so that they're regenrated when audio start time is changed. #jira UE-38543 Change 3196421 on 2016/11/14 by Andrew.Rodham Sequencer: Fixed modified tracks not being written to the transaction buffer when replacing object bindings #jira UE-38423 Change 3197131 on 2016/11/14 by Max.Chen Sequencer: Null checks. #jira UE-38570, UE-38593 Change 3197209 on 2016/11/14 by Max.Chen Cine Camera: Reset focus smoothing interpolation on PostEditChangeProperty. This fixes an issue where if you enable focus smoothing, the manual focus distance that is input isn't used since the interpolation happens from the last current focus distance. #jira UE-27055 Change 3198691 on 2016/11/15 by Max.Chen Sequence Recorder: Optimize record transforms by setting all the keyframes at once. Also, added option to toggle removing redundant keyframes from the recorded tracks. #jira UE-38489 Change 3198711 on 2016/11/15 by andrew.porter Adding test content for MEdia Framework Track Switching. Change 3199174 on 2016/11/15 by Lina.Halper Sequencer backward compatibility fix with root motion Make sure you could remove root motion fine #jira : UE-38591 Change 3199260 on 2016/11/15 by tim.gautier Updated QA-Media_TrackSwitch - changed Trigger Collision to only detect overlap from PlayerPawn Change 3199663 on 2016/11/15 by Max.Chen Anim Sequencer: Fix deprecation warning for bCanUseParallelUpdateAnimation. Updated to use bUseMultiThreadedAnimationUpdate. Change 3199727 on 2016/11/15 by Max.Chen Matinee to Level Sequence: Set default scale when converting matinee move tracks to sequencer. #jira UE-38688 Change 3199847 on 2016/11/16 by Max.Chen Sequencer: Add menu option to reduce keys of all sections in the current level sequence Change 3200351 on 2016/11/16 by Max.Chen Level Editor/Sequencer: Fixes to allow for component keyframing. The transform track operates on the components that changed, not the actor. The level editor viewport broadcasts begin/end movement on the components that changed. #jira UE-38649, UE-38646 Change 3200474 on 2016/11/16 by Max.Chen Sequencer: Move reduce keys to section context menu. Change 3200888 on 2016/11/16 by Max.Chen Sequencer: Clamp skeletal animation evaluation remapping of time to section bounds. This is necessary when evaluating nearest is enabled and the time is beyond the section bounds. Also, set the shared track template to have higher priority so that it always clears/initializes weights before each section's template adds section params for evaluation. Change 3201633 on 2016/11/17 by Max.Chen Matinee to Level Sequence: Fix matinee 3d scale track conversion to level sequence. Also, added paste matinee vector track to sequencer's vector track. #jira UE-38688 Change 3202458 on 2016/11/17 by Max.Chen Sequencer: Fix track editor commands getting unregistered when switching from one level sequence to another. The sequence of events is: track editor commands get bound when a level sequence is edited. When switching to another level sequence, the existing track editor is released after the new one is registered, causing the commands to ultimately get unbound. #jira UE-38693 Change 3202606 on 2016/11/17 by Max.Chen Actor Sequence: Null check in CanPossessObject for a component's owner. #jira UE-38514 Change 3203522 on 2016/11/17 by Max.Chen Sequencer: Audio start time deprecated in favor of start offset which is an offset into the audio clip. Also, limit the start offset to positive values since you can just crop into the audio clip by dragging the section's start time. Audio track no longer supports multiple rows (should have been checked in along with the audio volume and pitch multiplier curves). #jira UE-38549, UE-38554, UE-38547 Change 3203863 on 2016/11/18 by Andrew.Rodham Engine: Ensure that world settings actor is considered by network object list when sorting the actor list for a level Change 3203865 on 2016/11/18 by Andrew.Rodham Sequencer: Fixed play rate track interaction between servers and clients - The logic for evaluation was previously flawed (it would only run in editor builds). Play rate is now only evaluated on servers and standalone clients, with the time dilation being replicated to network clients. Change 3203900 on 2016/11/18 by Andrew.Rodham Sequencer: Changed CreateLevelSequencePlayer to create a transient level sequence actor #jira UE-37277 Change 3205038 on 2016/11/18 by Max.Preussner Slate: Corrected comment Change 3205046 on 2016/11/18 by Max.Preussner WmfMedia: Added missing nullptr check #jira UE-38825 Change 3205073 on 2016/11/18 by Max.Chen Sequencer: Fix audio upgrade case when start time is 0. Change 3205277 on 2016/11/19 by Max.Preussner Merging //UE4/Dev-Main to Dev-Sequencer (//UE4/Dev-Sequencer) Please take a look at SequencerEdMode.cpp and Sequencer.cpp. I ended up accepting latest Dev-Sequencer, which seemed to be the right thing to do. Change 3205465 on 2016/11/20 by Max.Preussner MovieScene: Fixed non-unity build Change 3205467 on 2016/11/20 by Max.Preussner Engine: Fixed spelling Change 3206264 on 2016/11/21 by Max.Preussner Kismet: Added missing forward declaration Change 3206493 on 2016/11/21 by Max.Preussner PS4Media: Added remaining changes for removing game thread dependencies Change 3206512 on 2016/11/21 by Andrew.Porter Adding test content to QAGame for Sequencer animation weight blending. Change 3206529 on 2016/11/21 by Lina.Halper Fixed anim notifes to work in Sequencer Instance - Give proper delta in editor preview - Make sure not to recreate AnimInstance #jira: UE-38849 #code review:Max.Chen Change 3206552 on 2016/11/21 by Max.Preussner QAGame: Enabled looping by default Change 3207462 on 2016/11/22 by andrew.porter QAGame: updating QA-Sequencer with changes to animation blending test cases Change 3207499 on 2016/11/22 by tim.gautier Added Streaming Sources, added Streaming Source options for BP_MediaPlayer. Specified Media Option Categories with BP_MediaPlayer to clean up details panel. #jira none Change 3207571 on 2016/11/22 by Max.Chen Curve Editor: Expose curve editor settings to Editor Preferences. #jira UE-38907 Change 3207690 on 2016/11/22 by Max.Chen Sequencer: Speculative crash fix for switching UMG animations. #jira UE-29333 Change 3207744 on 2016/11/22 by tim.gautier Removed unnecessary nodes from BP_MediaPlayer. Created a variable visible in the Details Panel to allow the user to specify a URL to Stream media without specifying a Source in-editor. #jira none Change 3207935 on 2016/11/22 by Max.Chen Sequencer: Temporary fix for skeletal animation track scrubbing. Verified that anim notifies still fire when playing and scrubbing. #jira UE-38964 Change 3207938 on 2016/11/22 by Max.Chen Sequence Recorder: Set reduce keys back to true so that there's no change in current behavior. This should be toggled off for performance reasons but in general is nice to have reduced keys. Change 3207950 on 2016/11/22 by Lina.Halper - Fixed so that mesh space additive won't show up in sequencer - Added warning if you change type later or existing ones #jira: UE-38062? Change 3208278 on 2016/11/22 by andrew.porter QAGame: Adjusting level blueprint for test case. Change 3208285 on 2016/11/22 by andrew.porter QAGame: adding SequencerBP animation blueprint. Change 3208538 on 2016/11/23 by Max.Chen Actor Sequence: Fix plugin filename. Change 3208916 on 2016/11/23 by Max.Chen Sequencer: Fix material parameter initialization so that the value is retrieved from the material instance and not the parent material. #jira UE-34317 Change 3208924 on 2016/11/23 by Max.Chen Save As: Cancel should not save over the existing asset. It should just return. Change 3208939 on 2016/11/23 by andrew.porter QAGame: reset some content back to its default state for testing Change 3209053 on 2016/11/23 by Max.Chen Sequencer: Ensure the section id is unique. Change 3209161 on 2016/11/23 by Max.Chen Save As: Follow up fix for cancelling save as. Change 3210540 on 2016/11/26 by Max.Preussner WmfMedia: Reworked fallback stride calculations to fix issues with some exotic video formats Change 3210546 on 2016/11/26 by Max.Preussner WmfMedia: Fixed NV12 vertical buffer alignment Change 3211567 on 2016/11/28 by Max.Preussner Merging //UE4/Dev-Main to Dev-Sequencer (//UE4/Dev-Sequencer) Step 1 of 2 Change 3212408 on 2016/11/28 by Max.Preussner Fixed fallout from Dev-Main merge Change 3212456 on 2016/11/28 by Max.Preussner ActorSequenceEditor: Removed monolithic header dependencies Change 3212562 on 2016/11/28 by Max.Preussner ActorSequenceEditor: Removed monolithic header usage Change 3212649 on 2016/11/28 by Max.Chen Fix CIS Change 3212671 on 2016/11/28 by Max.Chen Sequencer: Add option to restore to the pre animated state. #jira UE-38862 #2953 Change 3212672 on 2016/11/28 by Max.Chen Sequencer: Select object binding node corresponding to selected components and vice versa (select components in level when object binding node is selected) Change 3212673 on 2016/11/28 by Max.Chen Sequencer: Follow-up fix for component keyframing - key area needs to be updated by component. #jira UE-38649 Change 3212676 on 2016/11/28 by Max.Chen Level Editor: PostEditMove should only be called on the actor if it is moved. #jira UE-38646 Change 3212688 on 2016/11/29 by Max.Chen Sequencer: Force refresh event parameters customization when struct contents change but not a full refresh when struct child contents change. #jira UE-39094 Change 3212831 on 2016/11/29 by Andrew.Rodham Disabled ActorSequenceEditor plugin by default while it's experimental Change 3213219 on 2016/11/29 by Max.Preussner AvfMedia: Added missing include Change 3213333 on 2016/11/29 by Andrew.Rodham Sequencer: Added the ability to override bindings when playing back a level sequence on a level sequence actor #jira UETOOL-746 Change 3213905 on 2016/11/29 by Max.Preussner More IWYU fixes for macOS Change 3214203 on 2016/11/29 by Michael.Gay Some demo files to test Sequencer timing. Change 3214205 on 2016/11/29 by Max.Preussner More IWYU fixes for macOS Change 3214548 on 2016/11/29 by Max.Preussner More IWYU fixes for macOS Change 3214564 on 2016/11/29 by Max.Preussner More IWYU fixes Change 3214567 on 2016/11/29 by Max.Chen More IWYU fixes for Win32 Change 3214573 on 2016/11/29 by Max.Preussner More IWYU fixes Change 3214576 on 2016/11/29 by Max.Preussner More IWYU fixes Change 3214621 on 2016/11/30 by Max.Preussner Atrac9Decoder: Fixed log category declaration Change 3214630 on 2016/11/30 by Max.Preussner More IWYU fixes Change 3214747 on 2016/11/30 by Andrew.Rodham Sequencer: Fixed shadow variable Change 3214957 on 2016/11/30 by Andrew.Rodham Core: Changed Algo::Find to use TElementType - This allows it to support c style arrays Change 3215127 on 2016/11/30 by Andrew.Rodham Sequencer: Made burn-in options and init settings instanced - This ensures they work correctly when defined on archetypes and blueprints #jira UE-38645 Change 3215754 on 2016/11/30 by Max.Chen Sequencer: Fix skeletal animation track evaluating tracks in the wrong time space. Cache the evalulation time and weight value in each section's template and then execute with those values in the shared track's template. #jira UE-39145 Change 3216603 on 2016/12/01 by Max.Chen Sequencer: Set audio volume/pitch only if changed. Change 3216613 on 2016/12/01 by Max.Chen Sequencer: Add component selector when there are multiple components that have sockets. This fixes a crash when there are multiple components to attach to. #jira UE-39167 Change 3217175 on 2016/12/01 by Max.Chen Sequencer: Set skeletal animation track evaluation to be upper bound exclusive. This gives better behavior when two clips butt up against each other since the sections would overlap in time and evaluation would normalize they weighted contribution of each. #jira UE-37184 Change 3217292 on 2016/12/01 by Max.Chen Sequencer: Rework upgrading track rows to include overlapping sections. For skeletal animation sections, set weight values based on the evaluation bounds since there was no blending prior to 4.15. Change 3217860 on 2016/12/01 by Max.Preussner Media: Fall-through for media options Change 3217965 on 2016/12/01 by Max.Preussner MediaAssets: Renamed media option name Change 3218470 on 2016/12/01 by Max.Chen Sequencer: Fix start time deprecation value so that negative values are supported. #jira UE-39259 Change 3218473 on 2016/12/01 by Max.Chen Sequencer: Fix crash if start seq length is negative. Change 3219021 on 2016/12/02 by Max.Chen Sequencer: Add multiply and divide to transform box. Change 3219374 on 2016/12/02 by Max.Chen Sequencer: Teleport simulating components when moving them through the transform track. This fixes bugs with recording simulating actors (ie. vehicle game) where recorded actors don't playback with the recorded positions and there are warnings about attempting to move a fully simulated skeletal mesh. #jira UE-38442, UE-38444, UE-38852 Change 3219638 on 2016/12/02 by Max.Preussner Projects: Fixed error message Change 3220584 on 2016/12/03 by Andrew.Rodham Sequencer: Blueprint generated classes are now always removed from level sequences on load in the editor - This ensures that old (and perhaps corrupt) BP generated classes are destroyed #jira UE-39173 Change 3220585 on 2016/12/03 by Andrew.Rodham Editor: Fix EditInstanceOnly properties that aren't variables on the generated class being editable in blueprints Change 3220973 on 2016/12/04 by Max.Chen Fix CIS Change 3222833 on 2016/12/05 by Max.Chen Sequencer: Fixed some recorded components not being generated. #jira UE-34289 Change 3224450 on 2016/12/06 by Max.Chen Sequencer: Fix convert spawnable to posessable. Logic for setting the parent was mistakenly removed in runtime eval. #jira UE-39419 Change 3225301 on 2016/12/07 by Max.Preussner AvfMedia: Added settings class Change 3225304 on 2016/12/07 by Max.Preussner Fixed typo Change 3225723 on 2016/12/07 by Max.Preussner Fixed typo. Change 3225871 on 2016/12/07 by Max.Preussner Forgot to check in Change 3225932 on 2016/12/07 by Max.Preussner Added missing header Change 3226266 on 2016/12/07 by Max.Preussner Media: Fixed various module dependencies Change 3226451 on 2016/12/07 by Max.Preussner Include fixes Change 3226455 on 2016/12/07 by Max.Preussner LevelSequence: Added missing include Change 3227135 on 2016/12/08 by Max.Preussner Merging //UE4/Dev-Main to Dev-Sequencer (//UE4/Dev-Sequencer) Change 3227143 on 2016/12/08 by Max.Preussner LevelSequencer: Added missing header Change 3227731 on 2016/12/08 by Max.Preussner LevelSequencer: Added missing include Change 3228222 on 2016/12/08 by Max.Preussner UBT: Fixed delay load library support for remote compilation to macOS Change 3228266 on 2016/12/08 by Max.Preussner PluginBrowser: Added missing includes Change 3228755 on 2016/12/09 by Andrew.Rodham Sequencer: Fixed copy-paste of event keys - Also added a key-value iterator to TCurveInterface (both const and non-const) #jira UE-39526 Change 3228777 on 2016/12/09 by Luke.Thatcher [PLATFORM] [PS4] [!] Reimplement fixes from Fortnite for PS4 media framework in //UE4/Dev-Sequencer. Based on Original CL 3227137 - Event callback from AvPlayer was enqueing the processing of events over to the player thread, so the "State" member of FPS4MediaPlayer doesn't get updated until the following frame. This breaks cases with multiple calls to SetRate within a single frame. - Removed time check in FPS4MediavideoSampler::Tick. There are cases where the time check failed, even when a new frame was available from the AvPlayer libs. The video sampler now always calls sceAvPlayerGetVideoDataEx. This returns immediately if no frame data is available. - FPS4MediaPlayer::Seek was failing if the video is in a playing/paused state. We now restart the stream if a seek command occurs after the video has stopped (e.g. due to EOF reached). - Shared a single critical section between the FPS4MediaTracks, FPS4MediaVideoSampler and FPS4MediaPlayer objects. Fixes deadlocks between the decoder/player threads where each will be waiting on each others' critical section. [~] Enabled debug warnings from AvPlayer library in non-shipping builds. [~] Changed log levels of UE_LOGs to match their severity. ------------------------- [!] Also, fixed rendering artifacts on videos using a cropping rectangle - e.g. 1080p videos are actually decoded as 1920x1088, with an extra 8 pixels height, which contained garbage. - We determine the final media texture size as the size of the cropping rectangle, and use modified UVs during the YCbCr->RGB converstion shader to do the mapping. Change 3228793 on 2016/12/09 by Andrew.Rodham Sequencer: Edits to actor sequences now correctly mark their parent blueprints for compilation #jira UE-38723 Change 3228877 on 2016/12/09 by Luke.Thatcher [PLATFORM] [PS4] [!] Fix track switching issues in PS4 media player. - Sony's AvPlayer library does not support switching tracks (audio or video) on-the-fly after a stream has begun playback. - The higher level UMediaPlayer enables track 0 automatically, which would be committed to the AvPlayer, and therefore lock out other streams. - Actual track selection is now deferred until the stream is started, after which changing tracks is prohibited. - Tracks must be selected before calling SetRate for the first time. #jira UE-37225 Change 3229501 on 2016/12/09 by Max.Preussner Media: Better display names for media player plug-ins Change 3229515 on 2016/12/09 by Max.Preussner MediaPlayerEditor: Sorting player plug-ins alphabetically; consistent display in both media player editor and media source customization Change 3229716 on 2016/12/09 by andrew.porter Adding PlayRate sequence to my dev folder Change 3230554 on 2016/12/12 by Andrew.Rodham Back out changelist 3220584 - Currently this causes actor instances to fail to load because they are instanced of dead classes. Need to think of a more robust solution here. #jira UE-39398 Change 3230922 on 2016/12/12 by Max.Preussner Merging //UE4/Dev-Main to Dev-Sequencer (//UE4/Dev-Sequencer) Change 3232059 on 2016/12/12 by Max.Preussner MediaUtils: Better error message for when no suitable media player plug-in was found Change 3232097 on 2016/12/13 by Max.Preussner Switch: Temp fix for borked folder name on case-sensitive platforms Change 3232100 on 2016/12/13 by Max.Preussner MediaAssets: Split up UMediaSource into UBaseMediaSource Also added color space related properties Change 3232101 on 2016/12/13 by Max.Preussner Media: Started to implement support for color spaces Change 3232119 on 2016/12/13 by Max.Preussner MediaAssets: Fixed buffer not recreated if color space changed Change 3232799 on 2016/12/13 by Max.Preussner PS4Media: Fixed build #jira UE-39706 Change 3233170 on 2016/12/13 by Max.Preussner Merging //UE4/Dev-Main to Dev-Sequencer (//UE4/Dev-Sequencer) Change 3233250 on 2016/12/13 by Max.Preussner MediaPlayerEditor: Added separator in track menu Change 3233309 on 2016/12/13 by andrew.porter QAGame: Edited text render actors in QA-Media_TrackSwitch Change 3233439 on 2016/12/13 by Chris.Babcock Standardize Android media track DisplayName Change 3233817 on 2016/12/13 by Chris.Babcock Fix virtual keyboard EditableTextBox update when comitted text matches current text from change updates #jira UE-39424 #ue4 #mobile Change 3234421 on 2016/12/14 by Andrew.Rodham Sequencer: Fixed nullptr crash Change 3234423 on 2016/12/14 by Andrew.Rodham Sequencer: Fixed incorrect copying of base-class from compiler rules Change 3234429 on 2016/12/14 by Andrew.Rodham Sequencer: Fixed empty space not being added between the last and penultimate segments when required #jira UE-39442 Change 3234635 on 2016/12/14 by Max.Preussner MediaAssets: Exposed UTexture properties in UMediaTexture Change 3234681 on 2016/12/14 by Max.Preussner MediaAssets: Made MediaTextureResources support -onethread Change 3234878 on 2016/12/14 by Andrew.Rodham Sequencer: Fixed crash with "Evaluate Sub Sequences in Isolation" enabled - This occurred when there were tracks at the root level of the sub sequence, because it would incorrectly hash in the parent ID, rather than just using it directly Change 3234901 on 2016/12/14 by Max.Preussner MediaPlayerEditor: Detail customization improvements Change 3235275 on 2016/12/14 by Chris.Babcock Fix WMF stream ordering to match other players #jira UE-39703 #ue4 #mediaframework Change 3235390 on 2016/12/14 by Max.Preussner DesktopPlatform: Added IniPlatformName to FPlatformInfo; fixed up indentation Change 3235402 on 2016/12/14 by Max.Preussner MediaAssets: Fixed platform player name overrides ignored in packaged builds (UE-39771) #jira UE-39771 Change 3235667 on 2016/12/14 by Max.Preussner Media: Moved enums into separate header file, so they can be shared Change 3235984 on 2016/12/14 by Max.Preussner Back out changelist 3235667 Change 3236040 on 2016/12/14 by Max.Preussner Core: Added modulus operator to FTimespan Change 3236139 on 2016/12/15 by Max.Preussner Core: Added FTimespan::IsZero Change 3236527 on 2016/12/15 by Max.Preussner Fixed initialization order Change 3237101 on 2016/12/15 by Andrew.Rodham Sequencer: Skeletal animation and audio tracks now support multiple rows again. - In practice there were too many edge-cases to account for whilst considering backwards compatability - The impossible scenario was 2 sections on different rows, but evaluating nearest section - this cannot be represented as separate tracks. - Reorganised animation runtime template to use execution tokens rather than ::Initialize to ensure that animation operates correctly on the first frame for spawned objects #jira UE-39442 #jira UE-39725 Change 3237213 on 2016/12/15 by Andrew.Rodham Sequencer: Fixed crash when setting event key properties #jira UE-39347 Change 3237255 on 2016/12/15 by Chris.Babcock Fix Multi with ETC2 and PVRTC selecting ES3.0 instead of 2.0 #jira UE-39839 #ue4 #android Change 3237294 on 2016/12/15 by Andrew.Rodham Sequencer: Fixed shadowed variable warnings Change 3237366 on 2016/12/15 by Max.Preussner Media: Removed color space changes; we'll do these in material graphs instead Change 3237436 on 2016/12/15 by Andrew.Rodham Sequencer: Fixed montages not being stopped for specific animation slots when animation sections were no longer evaluated #jira UE-39847 Change 3237458 on 2016/12/15 by Andrew.Rodham Sequencer: Always force regeneration of templates when PIE to eliminate the posibility of combining stale data Change 3237516 on 2016/12/15 by Max.Preussner Media: Attempting to fix Crash in fortnite just before exiting onboarding (UE-39841) #jira UE-39841 Change 3237532 on 2016/12/15 by Max.Preussner Added missing scope lock Change 3237991 on 2016/12/16 by Max.Preussner PS4Media: Fixed build [CL 3238204 by Max Preussner in Main branch]
2016-12-16 11:17:44 -05:00
UAnimSequencerInstance::UAnimSequencerInstance(const FObjectInitializer& ObjectInitializer)
: Super(ObjectInitializer)
{
bUseMultiThreadedAnimationUpdate = false;
}
FAnimInstanceProxy* UAnimSequencerInstance::CreateAnimInstanceProxy()
{
return new FAnimSequencerInstanceProxy(this);
}
void UAnimSequencerInstance::UpdateAnimTrack(UAnimSequenceBase* InAnimSequence, int32 SequenceId, float InPosition, float Weight, bool bFireNotifies)
{
GetProxyOnGameThread<FAnimSequencerInstanceProxy>().UpdateAnimTrack(InAnimSequence, SequenceId, InPosition, Weight, bFireNotifies);
}
void UAnimSequencerInstance::UpdateAnimTrack(UAnimSequenceBase* InAnimSequence, int32 SequenceId, float InFromPosition, float InToPosition, float Weight, bool bFireNotifies)
{
GetProxyOnGameThread<FAnimSequencerInstanceProxy>().UpdateAnimTrack(InAnimSequence, SequenceId, InFromPosition, InToPosition, Weight, bFireNotifies);
}
void UAnimSequencerInstance::UpdateAnimTrackWithRootMotion(const FAnimSequencerData& InAnimSequencerData)
{
GetProxyOnGameThread<FAnimSequencerInstanceProxy>().UpdateAnimTrackWithRootMotion(InAnimSequencerData);
}
void UAnimSequencerInstance::ConstructNodes()
{
GetProxyOnGameThread<FAnimSequencerInstanceProxy>().ConstructNodes();
}
Copying //UE4/Dev-Sequencer to //UE4/Dev-Main (Source: //UE4/Dev-Sequencer @ 3237992) #lockdown Nick.Penwarden #rb none ========================== MAJOR FEATURES + CHANGES ========================== Change 3136778 on 2016/09/22 by Max.Preussner Merged Dev-Main to Dev-Sequencer Change 3179199 on 2016/10/29 by Max.Chen Sequencer: Fade only oin the current player context, not on all worlds. Copy from Release-4.14. Copied fix to FadeTrackInstance to FadeTemplate. #jira UE-37939 Change 3179340 on 2016/10/29 by Max.Preussner PS4Media: Fixed audio track dropping first frame Change 3180391 on 2016/10/31 by Max.Preussner UdpMessaging: nulling out message processor in destructor Change 3180459 on 2016/10/31 by Max.Chen Sequencer: Fix copy/paste crash in UMG. Change 3180607 on 2016/10/31 by Andrew.Rodham UMG: Fixed parent bindings not being adhered to correctly. Fixed slot widgets that get recreated not having their object bindings updated. #jira UE-38021 #jira UE-38018 Change 3181405 on 2016/11/01 by Lina.Halper #ANIM/SEQUCNER: sequencer animation blending support including additive - created multiway blend node - extension of two way blend - created anim sequencer instance to be used in sequencer for blending multiple animations and additives - hooked up to sequencer track players - renamed AnimationNode_TwoWay to AnimNode_TwoWay to be consistent with other node names. - Make sure you can't choose montage when selecting animation in Sequencer - Fixed Anim BP playing with multi group montages #code review: Max.Chen Change 3181870 on 2016/11/01 by Andrew.Rodham Sequencer: Made sequence pointers stored in sequence template instances weak object ptrs - We can't guarantee the lifetime of the objects here #jira UE-38051 Change 3182851 on 2016/11/02 by Andrew.Rodham Sequencer: Assert that a GetScriptStructImpl has been overridden correctly on templates Change 3182852 on 2016/11/02 by Andrew.Rodham Sequencer: Added 'Restore Animated State' command (CTRL+R) and button to sequencer toolbar Change 3183161 on 2016/11/02 by Max.Preussner Media: Added supported file extensions & URL schemes Change 3183476 on 2016/11/02 by Max.Preussner Merged Dev-Main to Dev-Sequencer Change 3185181 on 2016/11/03 by Max.Chen Sequencer: Refactor general options button menu into play options and select options. Add Select Sections in Selection Range and Select All in Selection Range. Fix issues with convert to spawanble and convert to possessable. Convert to possessable now deletes the spawn track so that it's not left lying around, which when deleted would end up deleting the converted possessable actor. #jira UE-37854 Change 3185184 on 2016/11/03 by Max.Chen Sequencer: Add hotkey to toggle camera cut track lock/unlock camera. Change 3185409 on 2016/11/03 by Max.Chen Sequencer: Fix crash in skeletal mesh section drawing. #jira UE-38090 Change 3185444 on 2016/11/03 by Max.Chen UMG: Expose label browser for UMG Change 3185662 on 2016/11/03 by Max.Chen Sequencer: Paste track fixes. - Loosen restrictions on paste track destination. This allows the paste to operate on spawnables and on properties that don't have an explicit Set function. - Allow pasting onto all types of tracks, not just property tracks. - Fix when pasting the copied tracks onto multiple objects. Tested pasting transform tracks from possessable to spawnables. Tested pasting skeletal animation tracks from spawnable to possessables. #jira UETOOL-1206 Change 3185920 on 2016/11/03 by Andrew.Porter Adding test content for multiple audio video tracks. Change 3186404 on 2016/11/03 by Max.Preussner Merged Dev-Main to Dev-Sequencer Change 3187957 on 2016/11/04 by Max.Preussner MediaAssets: Exposed CanPlaySource in BP Change 3187988 on 2016/11/05 by Max.Preussner Fixed documentation Change 3188035 on 2016/11/05 by Max.Chen Sequencer: Show camera name in cinematic viewport. #jira UE-28115 Change 3188603 on 2016/11/07 by Max.Preussner WmfMedia: Added missing nullptr check Change 3188788 on 2016/11/07 by Max.Preussner MediaPlayerEditor: Removed property buttons from PlatformMediaSource customization (UE-37948) #jira UE-37948 Change 3188808 on 2016/11/07 by Max.Preussner MediaAssets: Moved media player implementation into reusable class Also moved overlay text handling into separate asset. Change 3188919 on 2016/11/07 by Max.Preussner Media: Changed the handling of invalid media and media that failed to open (UE-38014) #jira UE-38014 Change 3189112 on 2016/11/07 by Max.Preussner WmfMedia: Added rudimentary H.265 HEVC support for Windows 10 (UE-38324) #jira UE-38324 Change 3189376 on 2016/11/07 by Max.Preussner WmfMedia: Removed Windows specific code from factory module Change 3189381 on 2016/11/07 by Max.Preussner Atrac9Audio: Fixed log category Change 3189497 on 2016/11/07 by Max.Preussner Media: Added binary sinks support Change 3189666 on 2016/11/07 by Max.Chen Curve Editor: Add option to show time in frame numbers #jira UE-27210 Change 3190339 on 2016/11/08 by Max.Preussner MediaAssets: Removed SetDesiredPlayerName since the field is public Change 3190342 on 2016/11/08 by Andrew.Porter Adding sequencer test content for animation blueprint Change 3190398 on 2016/11/08 by Max.Preussner Media: Renamed binary tracks to metadata tracks Change 3190458 on 2016/11/08 by andrew.porter Updating Skeleton with new slots. Change 3191167 on 2016/11/08 by Max.Chen Sequencer: Fix crash in validating paste tracks buffer. Validate the tracks instead of actually pasting into temp. #jira UE-38353 Change 3191336 on 2016/11/09 by Andrew.Rodham Slate: Added the ability to set and retrieve a host tab manager from a details view Change 3191338 on 2016/11/09 by Andrew.Rodham Editor: Added the ability to extend default layouts - FLayoutExtender can be used to provide basic tab layout extensions on default themes. - This can be used by external plugins to inject tabs to other interfaces where necessary. - Currently this is supported by the blueprint editor's unified component layout, and the level editor layout. Change 3191346 on 2016/11/09 by Andrew.Rodham Sequencer: Added new (experimental) ActorSequence module and editor - Sequences can now be added to actors via the UActorSequenceComponent. - An embedded sequencer will appear on details panels, with the option to break it out into a tab. - Separated common playback elements from ULevelSequencePlayer into UMovieSceneSequencePlayer, from which specific players can derive. - The majority of level editorintegration with sequencer has been separated out into a separate singleton class that can manage multiple sequencers. - All movie scene data now defaults to instanced, such that it can be duplicated and instanced correctly. - Added read-only mode for sequencer which is used for actor sequence components that come from a blueprint archetype to prevent erroneous editing. Change 3191387 on 2016/11/09 by Andrew.Rodham Orion: Fixed deprecation warnings Change 3191388 on 2016/11/09 by Andrew.Rodham Orion: Added dependency on MovieScene module Change 3191403 on 2016/11/09 by Andrew.Rodham Sequencer: Fix initialization order warning Change 3191428 on 2016/11/09 by Andrew.Rodham Sequencer: Added missing include Change 3191510 on 2016/11/09 by Andrew.Rodham Header include fixes Change 3191599 on 2016/11/09 by Max.Chen Sequencer: Add option to lock the playback range per movie scene. The toggle is stored as editor only and should be a saved value so that it can persist as the asset is passed from user to user. #jira UE-34677 Change 3191664 on 2016/11/09 by Andrew.Rodham Sequencer: Ensure keyframe handlers are only added once Change 3192373 on 2016/11/09 by Max.Preussner MediaAssets: Fixed regression: playlists no longer open Change 3192408 on 2016/11/09 by Max.Preussner MediaAssets: Fixed OpenPlaylistIndex crashing Change 3192878 on 2016/11/09 by Max.Chen Camera Rig: Fix log spam trying to unregister component. #jira UE-38435 Change 3192989 on 2016/11/10 by Andrew.Rodham Slate: Added constructor to appease old VS2013 compiler warning about non-constructible type Change 3192991 on 2016/11/10 by Andrew.Rodham Sequencer: Moved lambda out-of-line to fix static analysis warning Change 3193420 on 2016/11/10 by Max.Preussner MediaAssets: Replaced CopyToResolveTarget with new TransitionTarget API Change 3193478 on 2016/11/10 by Max.Chen Sequencer: Moved Fix Actor References back under the General Options menu. Change 3193870 on 2016/11/10 by Max.Preussner MediaPlayerEditor: Removed additional buttons in per-platform overrides (UE-37948) #jira UE-37948 Change 3193873 on 2016/11/10 by Lina.Halper - Sequencer fix with anim instance reinit - Fixed TMap issue with memory by changing to pointer from ref. #code review: Max.Chen Change 3194184 on 2016/11/10 by Max.Chen Sequencer: Only expand section when setting keys when there are keys. Otherwise if you set the default value while the time position is outside of the section range, the section will expand, which seems undesirable. Change 3194187 on 2016/11/10 by Max.Chen Sequencer: Backwards compatibility if a track no longer supports multiple rows, its sections are split to other duplicate tracks. Change 3194191 on 2016/11/10 by Max.Chen Sequencer: Add audio volume and pitch curves. #jira UE-30009 Change 3194256 on 2016/11/10 by Max.Chen Merging //UE4/Dev-Main to Dev-Sequencer (//UE4/Dev-Sequencer) Change 3194282 on 2016/11/10 by Max.Chen Movie Capture: Add some frame rate bounds. Max frame rate for recording is 200. Min is 1. #jira UE-38502 Change 3194355 on 2016/11/11 by Max.Chen Sequencer: Minimum handle size for time slider scrubber. #jira UE-34676 Change 3194767 on 2016/11/11 by Max.Chen Sequencer: Mark duplicated tracks as changed so that their template gets regenerated. Change 3195094 on 2016/11/11 by Max.Preussner Media: Removing game thread dependencies This change removes game thread dependencies from all media players so that we can use the media framework for startup movies where the game thread is block while loading the Engine. The players now have two new methods, TickPlayer and TickVideo, which need to be called from the external code that owns the players. On the Engine side, this is taken care of by UMediaPlayer, which calls TickPlayer from the game thread and TickVideo from the render thread. In startup movies, this will be taken care of by a special thread. AvfMedia: This change does not fully remove game thread dependencies in AvfMediaPlayer yet. There are some async callbacks scheduled to execute on the game thread that need to be refactored. The execution of these events should be performed in TickPlayer instead. All platform owners, please review these changes for your platform and make sure that everything still works. I have not had time to test all platforms yet. Change 3195396 on 2016/11/11 by Max.Preussner AvfMedia: Removed remaining game thread dependencies Change 3195670 on 2016/11/11 by Max.Preussner MediaUtils: Renamed function Change 3195690 on 2016/11/11 by Max.Preussner MediaAssets: MediaPlayerBase instance is now a field instead of pointer. Change 3195802 on 2016/11/11 by Max.Preussner Media: Removed UMediaPlayer::GetNativePlayer Change 3195843 on 2016/11/11 by Max.Preussner Kismet: Fixed non-unity Change 3195851 on 2016/11/11 by Max.Preussner Fixed typo. Change 3195854 on 2016/11/11 by Max.Preussner MediaUtils: Added missing forward declaration Change 3195937 on 2016/11/11 by Max.Chen Media: CIS Fix Change 3196120 on 2016/11/13 by Max.Chen Sequencer: Weight curve for skeletal animation section. Changed skeletal template evaluation so that it works with multiple animation tracks. The shared track clears all the weights, the section gathers up all the data, and the shared track evaluates the data. Otherwise, the multiple track evaluations would conflict with each other in setting states back and forth. #jira UE-38374, UEFW-128 Change 3196265 on 2016/11/13 by Max.Chen Sequencer: Fix audio waveforms so that they're regenrated when audio start time is changed. #jira UE-38543 Change 3196421 on 2016/11/14 by Andrew.Rodham Sequencer: Fixed modified tracks not being written to the transaction buffer when replacing object bindings #jira UE-38423 Change 3197131 on 2016/11/14 by Max.Chen Sequencer: Null checks. #jira UE-38570, UE-38593 Change 3197209 on 2016/11/14 by Max.Chen Cine Camera: Reset focus smoothing interpolation on PostEditChangeProperty. This fixes an issue where if you enable focus smoothing, the manual focus distance that is input isn't used since the interpolation happens from the last current focus distance. #jira UE-27055 Change 3198691 on 2016/11/15 by Max.Chen Sequence Recorder: Optimize record transforms by setting all the keyframes at once. Also, added option to toggle removing redundant keyframes from the recorded tracks. #jira UE-38489 Change 3198711 on 2016/11/15 by andrew.porter Adding test content for MEdia Framework Track Switching. Change 3199174 on 2016/11/15 by Lina.Halper Sequencer backward compatibility fix with root motion Make sure you could remove root motion fine #jira : UE-38591 Change 3199260 on 2016/11/15 by tim.gautier Updated QA-Media_TrackSwitch - changed Trigger Collision to only detect overlap from PlayerPawn Change 3199663 on 2016/11/15 by Max.Chen Anim Sequencer: Fix deprecation warning for bCanUseParallelUpdateAnimation. Updated to use bUseMultiThreadedAnimationUpdate. Change 3199727 on 2016/11/15 by Max.Chen Matinee to Level Sequence: Set default scale when converting matinee move tracks to sequencer. #jira UE-38688 Change 3199847 on 2016/11/16 by Max.Chen Sequencer: Add menu option to reduce keys of all sections in the current level sequence Change 3200351 on 2016/11/16 by Max.Chen Level Editor/Sequencer: Fixes to allow for component keyframing. The transform track operates on the components that changed, not the actor. The level editor viewport broadcasts begin/end movement on the components that changed. #jira UE-38649, UE-38646 Change 3200474 on 2016/11/16 by Max.Chen Sequencer: Move reduce keys to section context menu. Change 3200888 on 2016/11/16 by Max.Chen Sequencer: Clamp skeletal animation evaluation remapping of time to section bounds. This is necessary when evaluating nearest is enabled and the time is beyond the section bounds. Also, set the shared track template to have higher priority so that it always clears/initializes weights before each section's template adds section params for evaluation. Change 3201633 on 2016/11/17 by Max.Chen Matinee to Level Sequence: Fix matinee 3d scale track conversion to level sequence. Also, added paste matinee vector track to sequencer's vector track. #jira UE-38688 Change 3202458 on 2016/11/17 by Max.Chen Sequencer: Fix track editor commands getting unregistered when switching from one level sequence to another. The sequence of events is: track editor commands get bound when a level sequence is edited. When switching to another level sequence, the existing track editor is released after the new one is registered, causing the commands to ultimately get unbound. #jira UE-38693 Change 3202606 on 2016/11/17 by Max.Chen Actor Sequence: Null check in CanPossessObject for a component's owner. #jira UE-38514 Change 3203522 on 2016/11/17 by Max.Chen Sequencer: Audio start time deprecated in favor of start offset which is an offset into the audio clip. Also, limit the start offset to positive values since you can just crop into the audio clip by dragging the section's start time. Audio track no longer supports multiple rows (should have been checked in along with the audio volume and pitch multiplier curves). #jira UE-38549, UE-38554, UE-38547 Change 3203863 on 2016/11/18 by Andrew.Rodham Engine: Ensure that world settings actor is considered by network object list when sorting the actor list for a level Change 3203865 on 2016/11/18 by Andrew.Rodham Sequencer: Fixed play rate track interaction between servers and clients - The logic for evaluation was previously flawed (it would only run in editor builds). Play rate is now only evaluated on servers and standalone clients, with the time dilation being replicated to network clients. Change 3203900 on 2016/11/18 by Andrew.Rodham Sequencer: Changed CreateLevelSequencePlayer to create a transient level sequence actor #jira UE-37277 Change 3205038 on 2016/11/18 by Max.Preussner Slate: Corrected comment Change 3205046 on 2016/11/18 by Max.Preussner WmfMedia: Added missing nullptr check #jira UE-38825 Change 3205073 on 2016/11/18 by Max.Chen Sequencer: Fix audio upgrade case when start time is 0. Change 3205277 on 2016/11/19 by Max.Preussner Merging //UE4/Dev-Main to Dev-Sequencer (//UE4/Dev-Sequencer) Please take a look at SequencerEdMode.cpp and Sequencer.cpp. I ended up accepting latest Dev-Sequencer, which seemed to be the right thing to do. Change 3205465 on 2016/11/20 by Max.Preussner MovieScene: Fixed non-unity build Change 3205467 on 2016/11/20 by Max.Preussner Engine: Fixed spelling Change 3206264 on 2016/11/21 by Max.Preussner Kismet: Added missing forward declaration Change 3206493 on 2016/11/21 by Max.Preussner PS4Media: Added remaining changes for removing game thread dependencies Change 3206512 on 2016/11/21 by Andrew.Porter Adding test content to QAGame for Sequencer animation weight blending. Change 3206529 on 2016/11/21 by Lina.Halper Fixed anim notifes to work in Sequencer Instance - Give proper delta in editor preview - Make sure not to recreate AnimInstance #jira: UE-38849 #code review:Max.Chen Change 3206552 on 2016/11/21 by Max.Preussner QAGame: Enabled looping by default Change 3207462 on 2016/11/22 by andrew.porter QAGame: updating QA-Sequencer with changes to animation blending test cases Change 3207499 on 2016/11/22 by tim.gautier Added Streaming Sources, added Streaming Source options for BP_MediaPlayer. Specified Media Option Categories with BP_MediaPlayer to clean up details panel. #jira none Change 3207571 on 2016/11/22 by Max.Chen Curve Editor: Expose curve editor settings to Editor Preferences. #jira UE-38907 Change 3207690 on 2016/11/22 by Max.Chen Sequencer: Speculative crash fix for switching UMG animations. #jira UE-29333 Change 3207744 on 2016/11/22 by tim.gautier Removed unnecessary nodes from BP_MediaPlayer. Created a variable visible in the Details Panel to allow the user to specify a URL to Stream media without specifying a Source in-editor. #jira none Change 3207935 on 2016/11/22 by Max.Chen Sequencer: Temporary fix for skeletal animation track scrubbing. Verified that anim notifies still fire when playing and scrubbing. #jira UE-38964 Change 3207938 on 2016/11/22 by Max.Chen Sequence Recorder: Set reduce keys back to true so that there's no change in current behavior. This should be toggled off for performance reasons but in general is nice to have reduced keys. Change 3207950 on 2016/11/22 by Lina.Halper - Fixed so that mesh space additive won't show up in sequencer - Added warning if you change type later or existing ones #jira: UE-38062? Change 3208278 on 2016/11/22 by andrew.porter QAGame: Adjusting level blueprint for test case. Change 3208285 on 2016/11/22 by andrew.porter QAGame: adding SequencerBP animation blueprint. Change 3208538 on 2016/11/23 by Max.Chen Actor Sequence: Fix plugin filename. Change 3208916 on 2016/11/23 by Max.Chen Sequencer: Fix material parameter initialization so that the value is retrieved from the material instance and not the parent material. #jira UE-34317 Change 3208924 on 2016/11/23 by Max.Chen Save As: Cancel should not save over the existing asset. It should just return. Change 3208939 on 2016/11/23 by andrew.porter QAGame: reset some content back to its default state for testing Change 3209053 on 2016/11/23 by Max.Chen Sequencer: Ensure the section id is unique. Change 3209161 on 2016/11/23 by Max.Chen Save As: Follow up fix for cancelling save as. Change 3210540 on 2016/11/26 by Max.Preussner WmfMedia: Reworked fallback stride calculations to fix issues with some exotic video formats Change 3210546 on 2016/11/26 by Max.Preussner WmfMedia: Fixed NV12 vertical buffer alignment Change 3211567 on 2016/11/28 by Max.Preussner Merging //UE4/Dev-Main to Dev-Sequencer (//UE4/Dev-Sequencer) Step 1 of 2 Change 3212408 on 2016/11/28 by Max.Preussner Fixed fallout from Dev-Main merge Change 3212456 on 2016/11/28 by Max.Preussner ActorSequenceEditor: Removed monolithic header dependencies Change 3212562 on 2016/11/28 by Max.Preussner ActorSequenceEditor: Removed monolithic header usage Change 3212649 on 2016/11/28 by Max.Chen Fix CIS Change 3212671 on 2016/11/28 by Max.Chen Sequencer: Add option to restore to the pre animated state. #jira UE-38862 #2953 Change 3212672 on 2016/11/28 by Max.Chen Sequencer: Select object binding node corresponding to selected components and vice versa (select components in level when object binding node is selected) Change 3212673 on 2016/11/28 by Max.Chen Sequencer: Follow-up fix for component keyframing - key area needs to be updated by component. #jira UE-38649 Change 3212676 on 2016/11/28 by Max.Chen Level Editor: PostEditMove should only be called on the actor if it is moved. #jira UE-38646 Change 3212688 on 2016/11/29 by Max.Chen Sequencer: Force refresh event parameters customization when struct contents change but not a full refresh when struct child contents change. #jira UE-39094 Change 3212831 on 2016/11/29 by Andrew.Rodham Disabled ActorSequenceEditor plugin by default while it's experimental Change 3213219 on 2016/11/29 by Max.Preussner AvfMedia: Added missing include Change 3213333 on 2016/11/29 by Andrew.Rodham Sequencer: Added the ability to override bindings when playing back a level sequence on a level sequence actor #jira UETOOL-746 Change 3213905 on 2016/11/29 by Max.Preussner More IWYU fixes for macOS Change 3214203 on 2016/11/29 by Michael.Gay Some demo files to test Sequencer timing. Change 3214205 on 2016/11/29 by Max.Preussner More IWYU fixes for macOS Change 3214548 on 2016/11/29 by Max.Preussner More IWYU fixes for macOS Change 3214564 on 2016/11/29 by Max.Preussner More IWYU fixes Change 3214567 on 2016/11/29 by Max.Chen More IWYU fixes for Win32 Change 3214573 on 2016/11/29 by Max.Preussner More IWYU fixes Change 3214576 on 2016/11/29 by Max.Preussner More IWYU fixes Change 3214621 on 2016/11/30 by Max.Preussner Atrac9Decoder: Fixed log category declaration Change 3214630 on 2016/11/30 by Max.Preussner More IWYU fixes Change 3214747 on 2016/11/30 by Andrew.Rodham Sequencer: Fixed shadow variable Change 3214957 on 2016/11/30 by Andrew.Rodham Core: Changed Algo::Find to use TElementType - This allows it to support c style arrays Change 3215127 on 2016/11/30 by Andrew.Rodham Sequencer: Made burn-in options and init settings instanced - This ensures they work correctly when defined on archetypes and blueprints #jira UE-38645 Change 3215754 on 2016/11/30 by Max.Chen Sequencer: Fix skeletal animation track evaluating tracks in the wrong time space. Cache the evalulation time and weight value in each section's template and then execute with those values in the shared track's template. #jira UE-39145 Change 3216603 on 2016/12/01 by Max.Chen Sequencer: Set audio volume/pitch only if changed. Change 3216613 on 2016/12/01 by Max.Chen Sequencer: Add component selector when there are multiple components that have sockets. This fixes a crash when there are multiple components to attach to. #jira UE-39167 Change 3217175 on 2016/12/01 by Max.Chen Sequencer: Set skeletal animation track evaluation to be upper bound exclusive. This gives better behavior when two clips butt up against each other since the sections would overlap in time and evaluation would normalize they weighted contribution of each. #jira UE-37184 Change 3217292 on 2016/12/01 by Max.Chen Sequencer: Rework upgrading track rows to include overlapping sections. For skeletal animation sections, set weight values based on the evaluation bounds since there was no blending prior to 4.15. Change 3217860 on 2016/12/01 by Max.Preussner Media: Fall-through for media options Change 3217965 on 2016/12/01 by Max.Preussner MediaAssets: Renamed media option name Change 3218470 on 2016/12/01 by Max.Chen Sequencer: Fix start time deprecation value so that negative values are supported. #jira UE-39259 Change 3218473 on 2016/12/01 by Max.Chen Sequencer: Fix crash if start seq length is negative. Change 3219021 on 2016/12/02 by Max.Chen Sequencer: Add multiply and divide to transform box. Change 3219374 on 2016/12/02 by Max.Chen Sequencer: Teleport simulating components when moving them through the transform track. This fixes bugs with recording simulating actors (ie. vehicle game) where recorded actors don't playback with the recorded positions and there are warnings about attempting to move a fully simulated skeletal mesh. #jira UE-38442, UE-38444, UE-38852 Change 3219638 on 2016/12/02 by Max.Preussner Projects: Fixed error message Change 3220584 on 2016/12/03 by Andrew.Rodham Sequencer: Blueprint generated classes are now always removed from level sequences on load in the editor - This ensures that old (and perhaps corrupt) BP generated classes are destroyed #jira UE-39173 Change 3220585 on 2016/12/03 by Andrew.Rodham Editor: Fix EditInstanceOnly properties that aren't variables on the generated class being editable in blueprints Change 3220973 on 2016/12/04 by Max.Chen Fix CIS Change 3222833 on 2016/12/05 by Max.Chen Sequencer: Fixed some recorded components not being generated. #jira UE-34289 Change 3224450 on 2016/12/06 by Max.Chen Sequencer: Fix convert spawnable to posessable. Logic for setting the parent was mistakenly removed in runtime eval. #jira UE-39419 Change 3225301 on 2016/12/07 by Max.Preussner AvfMedia: Added settings class Change 3225304 on 2016/12/07 by Max.Preussner Fixed typo Change 3225723 on 2016/12/07 by Max.Preussner Fixed typo. Change 3225871 on 2016/12/07 by Max.Preussner Forgot to check in Change 3225932 on 2016/12/07 by Max.Preussner Added missing header Change 3226266 on 2016/12/07 by Max.Preussner Media: Fixed various module dependencies Change 3226451 on 2016/12/07 by Max.Preussner Include fixes Change 3226455 on 2016/12/07 by Max.Preussner LevelSequence: Added missing include Change 3227135 on 2016/12/08 by Max.Preussner Merging //UE4/Dev-Main to Dev-Sequencer (//UE4/Dev-Sequencer) Change 3227143 on 2016/12/08 by Max.Preussner LevelSequencer: Added missing header Change 3227731 on 2016/12/08 by Max.Preussner LevelSequencer: Added missing include Change 3228222 on 2016/12/08 by Max.Preussner UBT: Fixed delay load library support for remote compilation to macOS Change 3228266 on 2016/12/08 by Max.Preussner PluginBrowser: Added missing includes Change 3228755 on 2016/12/09 by Andrew.Rodham Sequencer: Fixed copy-paste of event keys - Also added a key-value iterator to TCurveInterface (both const and non-const) #jira UE-39526 Change 3228777 on 2016/12/09 by Luke.Thatcher [PLATFORM] [PS4] [!] Reimplement fixes from Fortnite for PS4 media framework in //UE4/Dev-Sequencer. Based on Original CL 3227137 - Event callback from AvPlayer was enqueing the processing of events over to the player thread, so the "State" member of FPS4MediaPlayer doesn't get updated until the following frame. This breaks cases with multiple calls to SetRate within a single frame. - Removed time check in FPS4MediavideoSampler::Tick. There are cases where the time check failed, even when a new frame was available from the AvPlayer libs. The video sampler now always calls sceAvPlayerGetVideoDataEx. This returns immediately if no frame data is available. - FPS4MediaPlayer::Seek was failing if the video is in a playing/paused state. We now restart the stream if a seek command occurs after the video has stopped (e.g. due to EOF reached). - Shared a single critical section between the FPS4MediaTracks, FPS4MediaVideoSampler and FPS4MediaPlayer objects. Fixes deadlocks between the decoder/player threads where each will be waiting on each others' critical section. [~] Enabled debug warnings from AvPlayer library in non-shipping builds. [~] Changed log levels of UE_LOGs to match their severity. ------------------------- [!] Also, fixed rendering artifacts on videos using a cropping rectangle - e.g. 1080p videos are actually decoded as 1920x1088, with an extra 8 pixels height, which contained garbage. - We determine the final media texture size as the size of the cropping rectangle, and use modified UVs during the YCbCr->RGB converstion shader to do the mapping. Change 3228793 on 2016/12/09 by Andrew.Rodham Sequencer: Edits to actor sequences now correctly mark their parent blueprints for compilation #jira UE-38723 Change 3228877 on 2016/12/09 by Luke.Thatcher [PLATFORM] [PS4] [!] Fix track switching issues in PS4 media player. - Sony's AvPlayer library does not support switching tracks (audio or video) on-the-fly after a stream has begun playback. - The higher level UMediaPlayer enables track 0 automatically, which would be committed to the AvPlayer, and therefore lock out other streams. - Actual track selection is now deferred until the stream is started, after which changing tracks is prohibited. - Tracks must be selected before calling SetRate for the first time. #jira UE-37225 Change 3229501 on 2016/12/09 by Max.Preussner Media: Better display names for media player plug-ins Change 3229515 on 2016/12/09 by Max.Preussner MediaPlayerEditor: Sorting player plug-ins alphabetically; consistent display in both media player editor and media source customization Change 3229716 on 2016/12/09 by andrew.porter Adding PlayRate sequence to my dev folder Change 3230554 on 2016/12/12 by Andrew.Rodham Back out changelist 3220584 - Currently this causes actor instances to fail to load because they are instanced of dead classes. Need to think of a more robust solution here. #jira UE-39398 Change 3230922 on 2016/12/12 by Max.Preussner Merging //UE4/Dev-Main to Dev-Sequencer (//UE4/Dev-Sequencer) Change 3232059 on 2016/12/12 by Max.Preussner MediaUtils: Better error message for when no suitable media player plug-in was found Change 3232097 on 2016/12/13 by Max.Preussner Switch: Temp fix for borked folder name on case-sensitive platforms Change 3232100 on 2016/12/13 by Max.Preussner MediaAssets: Split up UMediaSource into UBaseMediaSource Also added color space related properties Change 3232101 on 2016/12/13 by Max.Preussner Media: Started to implement support for color spaces Change 3232119 on 2016/12/13 by Max.Preussner MediaAssets: Fixed buffer not recreated if color space changed Change 3232799 on 2016/12/13 by Max.Preussner PS4Media: Fixed build #jira UE-39706 Change 3233170 on 2016/12/13 by Max.Preussner Merging //UE4/Dev-Main to Dev-Sequencer (//UE4/Dev-Sequencer) Change 3233250 on 2016/12/13 by Max.Preussner MediaPlayerEditor: Added separator in track menu Change 3233309 on 2016/12/13 by andrew.porter QAGame: Edited text render actors in QA-Media_TrackSwitch Change 3233439 on 2016/12/13 by Chris.Babcock Standardize Android media track DisplayName Change 3233817 on 2016/12/13 by Chris.Babcock Fix virtual keyboard EditableTextBox update when comitted text matches current text from change updates #jira UE-39424 #ue4 #mobile Change 3234421 on 2016/12/14 by Andrew.Rodham Sequencer: Fixed nullptr crash Change 3234423 on 2016/12/14 by Andrew.Rodham Sequencer: Fixed incorrect copying of base-class from compiler rules Change 3234429 on 2016/12/14 by Andrew.Rodham Sequencer: Fixed empty space not being added between the last and penultimate segments when required #jira UE-39442 Change 3234635 on 2016/12/14 by Max.Preussner MediaAssets: Exposed UTexture properties in UMediaTexture Change 3234681 on 2016/12/14 by Max.Preussner MediaAssets: Made MediaTextureResources support -onethread Change 3234878 on 2016/12/14 by Andrew.Rodham Sequencer: Fixed crash with "Evaluate Sub Sequences in Isolation" enabled - This occurred when there were tracks at the root level of the sub sequence, because it would incorrectly hash in the parent ID, rather than just using it directly Change 3234901 on 2016/12/14 by Max.Preussner MediaPlayerEditor: Detail customization improvements Change 3235275 on 2016/12/14 by Chris.Babcock Fix WMF stream ordering to match other players #jira UE-39703 #ue4 #mediaframework Change 3235390 on 2016/12/14 by Max.Preussner DesktopPlatform: Added IniPlatformName to FPlatformInfo; fixed up indentation Change 3235402 on 2016/12/14 by Max.Preussner MediaAssets: Fixed platform player name overrides ignored in packaged builds (UE-39771) #jira UE-39771 Change 3235667 on 2016/12/14 by Max.Preussner Media: Moved enums into separate header file, so they can be shared Change 3235984 on 2016/12/14 by Max.Preussner Back out changelist 3235667 Change 3236040 on 2016/12/14 by Max.Preussner Core: Added modulus operator to FTimespan Change 3236139 on 2016/12/15 by Max.Preussner Core: Added FTimespan::IsZero Change 3236527 on 2016/12/15 by Max.Preussner Fixed initialization order Change 3237101 on 2016/12/15 by Andrew.Rodham Sequencer: Skeletal animation and audio tracks now support multiple rows again. - In practice there were too many edge-cases to account for whilst considering backwards compatability - The impossible scenario was 2 sections on different rows, but evaluating nearest section - this cannot be represented as separate tracks. - Reorganised animation runtime template to use execution tokens rather than ::Initialize to ensure that animation operates correctly on the first frame for spawned objects #jira UE-39442 #jira UE-39725 Change 3237213 on 2016/12/15 by Andrew.Rodham Sequencer: Fixed crash when setting event key properties #jira UE-39347 Change 3237255 on 2016/12/15 by Chris.Babcock Fix Multi with ETC2 and PVRTC selecting ES3.0 instead of 2.0 #jira UE-39839 #ue4 #android Change 3237294 on 2016/12/15 by Andrew.Rodham Sequencer: Fixed shadowed variable warnings Change 3237366 on 2016/12/15 by Max.Preussner Media: Removed color space changes; we'll do these in material graphs instead Change 3237436 on 2016/12/15 by Andrew.Rodham Sequencer: Fixed montages not being stopped for specific animation slots when animation sections were no longer evaluated #jira UE-39847 Change 3237458 on 2016/12/15 by Andrew.Rodham Sequencer: Always force regeneration of templates when PIE to eliminate the posibility of combining stale data Change 3237516 on 2016/12/15 by Max.Preussner Media: Attempting to fix Crash in fortnite just before exiting onboarding (UE-39841) #jira UE-39841 Change 3237532 on 2016/12/15 by Max.Preussner Added missing scope lock Change 3237991 on 2016/12/16 by Max.Preussner PS4Media: Fixed build [CL 3238204 by Max Preussner in Main branch]
2016-12-16 11:17:44 -05:00
void UAnimSequencerInstance::ResetNodes()
{
GetProxyOnGameThread<FAnimSequencerInstanceProxy>().ResetNodes();
}
void UAnimSequencerInstance::ResetPose()
{
GetProxyOnGameThread<FAnimSequencerInstanceProxy>().ResetPose();
}
void UAnimSequencerInstance::SavePose()
{
if (USkeletalMeshComponent* SkeletalMeshComponent = GetSkelMeshComponent())
{
if (SkeletalMeshComponent->GetSkeletalMeshAsset() && SkeletalMeshComponent->GetComponentSpaceTransforms().Num() > 0)
{
SavePoseSnapshot(UAnimSequencerInstance::SequencerPoseName);
}
}
}