2019-12-26 15:32:37 -05:00
|
|
|
// Copyright Epic Games, Inc. All Rights Reserved.
|
2014-11-19 07:43:07 -05:00
|
|
|
|
|
|
|
|
#pragma once
|
|
|
|
|
|
Copying //UE4/Dev-Build to //UE4/Dev-Main (Source: //UE4/Dev-Build @ 3209340)
#lockdown Nick.Penwarden
#rb none
==========================
MAJOR FEATURES + CHANGES
==========================
Change 3209340 on 2016/11/23 by Ben.Marsh
Convert UE4 codebase to an "include what you use" model - where every header just includes the dependencies it needs, rather than every source file including large monolithic headers like Engine.h and UnrealEd.h.
Measured full rebuild times around 2x faster using XGE on Windows, and improvements of 25% or more for incremental builds and full rebuilds on most other platforms.
* Every header now includes everything it needs to compile.
* There's a CoreMinimal.h header that gets you a set of ubiquitous types from Core (eg. FString, FName, TArray, FVector, etc...). Most headers now include this first.
* There's a CoreTypes.h header that sets up primitive UE4 types and build macros (int32, PLATFORM_WIN64, etc...). All headers in Core include this first, as does CoreMinimal.h.
* Every .cpp file includes its matching .h file first.
* This helps validate that each header is including everything it needs to compile.
* No engine code includes a monolithic header such as Engine.h or UnrealEd.h any more.
* You will get a warning if you try to include one of these from the engine. They still exist for compatibility with game projects and do not produce warnings when included there.
* There have only been minor changes to our internal games down to accommodate these changes. The intent is for this to be as seamless as possible.
* No engine code explicitly includes a precompiled header any more.
* We still use PCHs, but they're force-included on the compiler command line by UnrealBuildTool instead. This lets us tune what they contain without breaking any existing include dependencies.
* PCHs are generated by a tool to get a statistical amount of coverage for the source files using it, and I've seeded the new shared PCHs to contain any header included by > 15% of source files.
Tool used to generate this transform is at Engine\Source\Programs\IncludeTool.
[CL 3209342 by Ben Marsh in Main branch]
2016-11-23 15:48:37 -05:00
|
|
|
#include "CoreMinimal.h"
|
|
|
|
|
#include "Misc/Attribute.h"
|
|
|
|
|
#include "Input/CursorReply.h"
|
|
|
|
|
#include "Input/Reply.h"
|
|
|
|
|
#include "Widgets/SWidget.h"
|
|
|
|
|
#include "Widgets/Layout/SScrollBar.h"
|
|
|
|
|
|
|
|
|
|
class FSlateWindowElementList;
|
2014-11-19 07:43:07 -05:00
|
|
|
|
Copying //UE4/Dev-Sequencer to //UE4/Dev-Main (Source: //UE4/Dev-Sequencer @ 3946692)
#lockdown Nick.Penwarden
#rb none
============================
MAJOR FEATURES & CHANGES
============================
Change 3801826 by Max.Chen
PR #4304: Level Sequence crash fix - Guarded against dereferencing null componen. (Contributed by DSDambuster)
Change 3801828 by Max.Chen
PR #4302: Movie Scene Visibility Template unitialised variable, causing random . (Contributed by DSDambuster)
Change 3801837 by Max.Chen
Sequencer: Delay spawning/construction for convert to possessable. This fixes a bug where property values would be lost when
converting back and forth from possessable to spawnable.
#jira UE-52400
Change 3801841 by Max.Chen
Sequencer: Make spacer nodes not selectable.
PR #4194: Improvements to Sequencer (Contributed by projectgheist)
#jira UE-53117
#jira UE-52139
Change 3804183 by Max.Preussner
MediaAssets: Added missing lock in media sound component
Change 3805414 by Max.Preussner
MediaAssets: Setting valid GUID when initializing media texture resource
Change 3819578 by Max.Chen
PR #4370: When enabling the "MovieCapture", do not turn off the Stereo-3D display. (Contributed by yehaike)
#jira UE-53647
Change 3823414 by Max.Chen
Curve Editor: Lock down the first and last keys in the redundant keys removal range so that they're unaffected.
#jira UE-53591
Change 3826406 by Max.Chen
Sequencer: Move OnStartedPlaying() to within first update in UpdateTimeCursorPosition(). This fixes an issue where setting the
hud/player visibility was getting stomped on later.
#jira UE-52772
Change 3827044 by Max.Preussner
MediaAssets: Added sprite visualization to media sound component
#jira UE-53594
Change 3827988 by Max.Preussner
MediaPlayerAssets: Fixed Media Texture is not linked to Media Player when created together
#jira UE-53532
Change 3828506 by Max.Preussner
MediaPlayerEditor: Added attenuation visualizer for media sound components
#jira UE-53594
Change 3832590 by andrew.porter
EngineTest: Added a keep state check in Property Animation sequencer test
Change 3833053 by andrew.porter
EngineTest: Adding Hierarchical Bias test
Change 3835683 by andrew.porter
EngineTest: Adding UMG Animation screenshot test
Change 3836076 by Max.Chen
Sequencer: Fix audio volume and pitch multiplier deprecation.
Change 3836230 by andrew.porter
EngineTest: Adding Sequence Bone Position automation test
Change 3836347 by Max.Chen
Sequencer: Fixes to shot name parsing.
When a shot doesn't contain a shot number, assume, [ShotName]_[TakeNumber].
When duplicating a shot, put the new shot in the same path of the original shot, so that the take numbers will increment
properly.
#jira UE-51868
Change 3836552 by Max.Chen
Sequencer: Sub section now has a takes menu
Change 3838094 by Max.Chen
UMG: Fix template finish not getting called on stop. This fixes a bug where sections aren't restored when finished.
#jira UE-52285
Change 3838708 by Max.Chen
Sequencer: Add notification when the blend type is changed.
#jira UE-54046
Change 3840295 by Max.Chen
Sequencer: Fix copy/paste crash for lights
#jira UE-54084
Change 3840957 by Mike.Zyracki
Added Show Only Keyable and Show Only Animated to the filter list in the property editor.
Added IsPropertyAnimated to IDetailKeyframe Interface which already had support for showing properties which are keyable (which
is used for the key icon next to the properties.). Could have created another interface but then would have had to mimic the sequencer
binding, releasing also, so this seemed best way.
One issue still left is that custom built detail items currently don't store associated properties(usually) and so certain
properties, in particulalry transforms, won't show up as keyable or animated. Note this also shows up with the keyable icon not showing
up next to transform tracks, and other filters like Show Only Modified not working with transforms/customs. Not sure best way to tackle
this.
#jira UESEQ-328
Change 3841756 by Max.Chen
Sequencer: Fix unbound possessable components when pasting spawnables.
#jira UE-54104
Change 3843950 by andrew.porter
EngineTest: Renaming LevelStreaming tests/content to LevelVisibility
Change 3844082 by Mike.Zyracki
Missing file for animated filter in property editor.
When finding if a track is animated we need to find it but we can't easily induce the MovieTrack class for any particular
property. So we don't set a class for it and just search by it's ID and name.
#jira UESEQ-328
Change 3846902 by Max.Preussner
ImgMedia: Fixed image media player never finished initialization if loading failed
#jira UE-54247
Change 3849820 by Mike.Zyracki
Reassigning deleted widgets didn't work since the menu extender mechanism needs a valid UObject in order to perform an operation
on it. So to fix we replaced GetObjectBindingContextMenuExtender in WidgetBlueprint with new delegate mechanism
(OnBuildCustomContextMenuForGuid) that supports FGuid in addition to UObjects which is needed to handle re-binding deleted widgets. Note
that the default sequencer hacks this for replacing deleted actors in SequencerObjectBindingNode to check to see if a LevelSequence is
active. We could move to this mechanism there also.
#jira UE-53163
Change 3852211 by Max.Chen
UMG: Indicate name of the property that is not bound.
#jira UE-54350
Change 3854120 by Max.Chen
Sequencer: Fix sibling folders being allowed to have the same folder name.
#jira UE-54363
Change 3854627 by Max.Chen
Sequencer: Step to next/previous key should work for all tracks if there aren't any selected.
#jira UESEQ-391
Change 3855825 by andrew.porter
EngineTest: Adding animation blending automation test
Change 3855950 by andrew.porter
EngineTest: Adding correct expected valuues to animation blending test
Change 3856237 by Matt.Hoffman
UESEQ-336 - Sequencer Track Reordering
Adds the ability to re-order Master Tracks, Folders and Object Bindings within sequencer hierarchies (including UMG). Adds the
ability to do a one-off sorting of the content under the old sorting behavior if the user wants to reset their layout to how it was
under legacy behavior.
Modifies SequencerTrackNodes, SequencerFolderNodes and SequencerObjectBindingNodes to handle CanDrop/OnDrop for above, below and
ontop of.
Fixes a Slate Issue that forcibly expanded a TreeviewRow if an item handled OnDrop. Slate will now only forcibly expand the row
if the item says the drop happened ontop of the item, and not above or below it like it previously did.
Change 3856503 by andrew.porter
EngineTest: Adding automation test for using animation blueprint with blend multi node in sequencer
Change 3857875 by Max.Chen
Sequencer: Assign the sequence id after the template is compiled.
#jira UE-54462
Change 3858344 by Max.Chen
Sequencer: Prevent Goto and Transform boxes from overlapping by allowing them to be visible at the same time in an autosized
horizontal box. Also, added close button to the goto box.
PR #4425: Prevent Goto and Transform boxes from overlapping in Sequencer ... (Contributed by projectgheist)
#jira UE-54210
Change 3860566 by andrew.porter
MediaFrameworkTest: Set the option to index 0 for the audio and video track list by default
Change 3860654 by andrew.porter
EngineTest: Enabling Camera Cut + FOV test
Change 3860981 by andrew.porter
EngineTest: Updating skeletal mesh tests with a delay after set playback position
Change 3861256 by Max.Chen
Sequencer: Add all bindings if none selected.
#jira-54440
Change 3862154 by Andrew.Rodham
Added TimeManagement module
Change 3862424 by andrew.porter
EngineTest: Turned on the test Bone Positions with Blend Multi Node
Change 3862573 by andrew.porter
EngineTest: Adding test to compare bone positions in a sequence that is blending an animation that is using an AnimBP
Change 3865117 by Max.Chen
Sequencer: Stop auto scroll on mouse release of movement.
#jira UE-31212
Change 3865303 by Max.Chen
Sequencer: Add drag and drop transactions
#jira UE-54662
Change 3865304 by Max.Chen
Sequencer: Fix crash when an actor factory is not found.
Change 3865361 by Max.Chen
Sequencer: Don't change the camera/shot lock button when popping out of a sequence.
#jira UE-54665
Change 3865412 by Max.Chen
Sequencer: Determine whether a transform track is for a camera by using the spawned object or template
#jira UE-54666
Change 3865685 by Max.Chen
Sequencer: Clear autoscrub offset when stopping autoscroll
#jira UE-31212
Change 3865886 by Max.Chen
Sequence Recorder: Log an error if the number of frames changes while recording. This can happen if the skeleton changes while
recording.
#jira UE-48715
Change 3866925 by Andrew.Porter
MediaFrameworkTest: Changing the current PNG test video image sequence to 1024 x 576
Change 3867705 by andrew.porter
QAGame: Adding Audio Sort Sequence to dev folder
Change 3867890 by andrew.porter
QAGame: Adding a sequence for testing a sorting crash to my dev folder
Change 3872628 by Max.Chen
Movie Scene Capture: Split delay before warmup into split delay before shot warmup so that there's separate controls for when
the movie scene capture warmups up vs. shot boundaries.
Change 3873131 by Matt.Hoffman
UE-54732 - Crash reordering a folder with a track.
This was caused by folders being the only type of track to check if someone was putting a parent track into a child track.
Object Binding tracks and Tracks now check as well so that you can't use the above/below drop targets to add parents as children.
This also fixed a typo in the localization keys.
#jira UE-54732
Change 3873301 by Mike.Zyracki
Added ability to support continous euler angle changes when changing rotations, in particularly with the rotation gizmo's. To do
this we effectively added a form an of 'euler filter'(https://en.wikipedia.org/wiki/Euler_filter) to find the closest euler angle to the
current euler angle.
Three functions were added to FRotator to make this possible, one to get the euler angle that's has the same rotation as it, one
to get the difference between two euler angles via Manhattan distance and a third using the previous two to choose a Rotator value
that's closest to it. We then use these functions before calling UComponent::SetRelativeRotation to make sure we use the correct Euler
after the Quat conversion. We also no longer limit(bound) the euler angles to -180,180, which is obviously necessary to avoid flips.
I also changed how we caluclate yaw and roll when pitch is -90 or 90 to make it the standard approach of zeroing out roll and
just setting yaw. Main reasons are the previous implementation had precision issues so things like 180, 90, -180 would show up due to
numbers being nearly zero but negative,(this would break any smooth interpolations), and this facilitates having a 'gimbal' rotation
mode (like Maya, Blender etc..) if we ever want that also. If needed we could keep the previous implementation but would need to add
some FMath::IsNearlyZero checks, with less performance.
Note we only do this special filtering when applying delta's to actors or components in the editors, which then call
UComponent::SetRelativeRotationExact, which is a new function to foces the RelativeRotation to be equal to the new rotation. This allows
us to store un-nomalized Rotators at the cost that the RotationCache may be broken. We didn't change any of the other UComponent
functions that set rotations (via Quats or Transforms) so they will still be bounded and unwound.
In SetInternalWorldLocationAndRotation we only set the rotation if the rotation has changed, which fixes the rotation getting
changed and re-normalized if just translate happens.
In TransformTrackEditor, we correclty use the bUndwing flag and in MovieScene3DTransformSection there was an un-needed winding
check there, it will be unwound earlier if needed, which happens if Sequence Recording is happening. Max we should talk about what to do
about this .
Note the euler angle drag via the widget is still bound to 0-360. I think we should just unbound that now since the rotations
value are now unbound.
This review now includes fixes suggested by Zak.
#jira UE-UE-22228
Change 3873483 by Matt.Hoffman
Sequencer Tracks can now be inserted above the spacer at the bottom of the tree.
#jira UE-54706
Change 3873899 by Max.Chen
Sequencer: Add section selection throbbing
Change 3873908 by Max.Chen
Movie Scene Capture: Added logging per frame
Change 3873924 by Matt.Hoffman
Adds the ability to store Sequence Recorder setups into profiles that stay with the map and can be re-loaded later. Profiles
store the Actor Recordings so the settings for each actor should carry with them.
#jira UESEQ-339
Change 3874726 by Matt.Hoffman
Disable drag-and-drop targets on spacers that come between rows in Sequencer. This prevents extra drag/drop targets showing up
between each row.
#jira UE-54706
Change 3874862 by Matt.Hoffman
Audio Track no longer gets reordered when adding sub-audio tracks, as sub-tracks are no longer counted towards the sorting order
index when normalizing indexes.
#jira UE-54727
Change 3875905 by Matt.Hoffman
Disable Fade Track UI if a fade track already exists in the sequence.
#jira UESEQ-393
Change 3876163 by Max.Chen
Sequencer: Swap the camera object to the camera component's owner if it's not the same.
#jira UE-54874
Change 3876971 by Andrew.Porter
EngineTest: Moved Media Player Seek test to new folder. Also enabled the test with new ground truth image.
Change 3877040 by Max.Chen
Cine Camera: Split camera properties to two groups, "Camera Options" and "Camera Settings". The cine camera now hides properties
in the "Camera Settings" group so that properties like bConstrainAspectRatio (in the "Camera Options" group) can be visible.
#jira UE-54192
Change 3877763 by Max.Chen
Curve Editor: Fix curve changed on end drag so that only curves that had keys/tangents that were changed receive notification,
otherwise all loaded curves were getting notified that they were changed.
#jira UE-54951
Change 3878234 by Matt.Hoffman
Disable "Drop Below" targets for Sequencer Tree nodes to prevent a confusing UX issue where dropping underneath a Object Binding
Node puts it after the object binding node but the UI looks like it's inserting it inside the Object Binding node.
#jira UE-54743
Change 3879359 by Mike.Zyracki
If a track is inactive we dim it a bit which seems to be the UE4 way to show inactive or disabled state. We changed the active
logic so that all subtracks need to be inactive for the track to also be inactive(instead of all active for active). This conforms to
how the active state actually works, e.g if you have two sections and only one is active the track is still active above it.
#jira UESEQ-388
Change 3879462 by Max.Chen
Sequencer: Allow dragging onto a particular row which would move out any overlapping sections to make space for the newly
created section. Newly created sections are now selected and throbbed to draw attention to themselves.
#jira UE-54664
Change 3879464 by Max.Chen
Sequencer: Fixed overlapping ranges being inserted into the evaluation field during compilation
- The issue was that track segments that had been combined with adjacent segments (due to them being identical) would
potentially cause a subsequently compiled frame to overlap with a range that had already been inserted into the evaluation field.
- The insertion code previously asserted that only minor overlaps were catered for (due to fp rounding errors) and assumed
that a supplied range could not entirely contain any other range in the field.
- The solution is to supply the insertion time along with the range to know exactly where the data should live in the field,
and crop the range to the maximum allowable space between adjacent ranges.
#jira UE-54922
Change 3879590 by Matt.Hoffman
Items that are now added to the Sequencer via the "+Track" menu will be selected after being added.
Items can now be added inside of folders instead of just to the root level.
#jira UE-27397
Change 3879612 by Mike.Zyracki
Display Nodes with no children are always active.
#jira UESEQ-388
Change 3879730 by Matt.Hoffman
Sequence Recorder's actor recording groups now remove items from the group when removed via the UI.
#jira UESEQ-339
Change 3880256 by Mike.Zyracki
Fix issue with inactive display with folders and other track nodes.
#jira UESEQ-388
Change 3883491 by Max.Chen
Fix issue where tick is skipped due to last ticked pose isn't cleared after AnimInstance changes.
Copy from Release-4.19
#jira UE-51323
Change 3883603 by Max.Chen
Movie Scene Capture: Add option toggle disable screen percentage. By default this is on (no change in current behavior).
#jira UE-51898
Change 3885074 by Max.Preussner
MediaCompositing: Resetting media texture & freeing resource on section end; removed dead code
Change 3887220 by Max.Preussner
MediaCompositing: Defaulted media section duration to 1 sec (since we do not know the actual duration in most cases)
Change 3887478 by Matt.Hoffman
Sequences now show [Inactive] in their title bars when they're disabled. This helps communicate why a sequence isn't being
evaluated.
#jira UE-51469
Change 3888985 by Max.Chen
Movie Scene Capture: Clamp HDR Compression Quality between 0 and 1.
#jira UE-55136
Change 3893519 by Max.Chen
Sequence Recorder: Clarified tooltip for bRecordNearbySpawnedActors - spawned actors will still be recorded if they match the
ActorFilter.
#jira UE-55238
Change 3893546 by Max.Chen
Sequence Recorder: If a selected actor already has a recording, add a blank recording.
#jira UE-55239
Change 3894044 by Max.Preussner
MediaCompositing: Added support for seeking into a media section
Change 3894310 by andrew.porter
MediaFrameworkTest: Adding Img media sources for 1080 and 2160 ravent test content
Change 3894426 by Max.Preussner
MediaAssets: Letting media textures with AutoClear retain their clear color when player is reset
Change 3895717 by Max.Chen
Sequencer: Null checks to prevent crash when saving the default state of a spawnable
#jira UE-55304
Change 3897388 by Max.Chen
Sequencer: Don't update current time to be within the view range when stepping into a sequence.
#jira UE-55322
Change 3897452 by Max.Chen
Audio: Fix crash when trying to record audio without any active capture devices. Log warning if the number of input channels is
not 1 or 2.
#jira UE-55223
Change 3897619 by Max.Preussner
MediaCompositing: Removed commented out code
Change 3898072 by Max.Chen
Sequencer: Override the animation asset in the player state if it doesn't match the animation asset that's being evaluated.
#jira UE-55328
Change 3898272 by Max.Preussner
MediaPlayerEditor: Made slate brush constants static
Change 3898704 by Max.Chen
Sequencer: Skip if the binding id's sequence can't be found.
#jira UE-55337
Change 3899855 by Max.Preussner
MediaCompositingEditor: Added cache state visualization to media track
Change 3900300 by Max.Preussner
MediaCompositingEditor: Added loop indicators to media sections
Change 3900694 by Max.Preussner
ImfMedia: Looping cache only when player is looping
Change 3900892 by Max.Preussner
Stats: Added stats category for media framework
Change 3900954 by Max.Preussner
MediaCompositing: Don't evaluate at the end of media section
Change 3901348 by Max.Preussner
Core: Replaced TLruCache autos for better readability
Change 3901655 by Max.Preussner
ImgMedia: Added more perf stats to EXR reader
Change 3901972 by Max.Preussner
MediaAssets: Added getter for media player in media sound components
Change 3902233 by Max.Preussner
MediaAssets: Enabling media textures to receive samples right after player is assigned
Change 3902238 by Max.Preussner
MediaCompositing: Working around init/shutdown idiosyncracies in sequencer
Change 3904045 by Max.Chen
Sequencer: Fix copy/paste crash. Only process UMovieSceneCopyableBinding and objects that can be spawned by the movie scene
spawn register.
#jira UE-55314
Change 3905605 by Max.Chen
Sequencer: Restrict spawnables from being created if they have a ClassWithin that UMovieScene is not a child of.
#jira UE-55429
Change 3906550 by Max.Chen
Sequencer: Add media track icon
#jira UE-55480
Change 3907101 by Max.Chen
Sequence Recorder: Fix bugs related to not recording a level sequence. There were certain assumptions that creating a level
sequence meant that sequence recording was in progress. This is not always the case - the recorders can record animation assets and not
create a level sequence.
Changed the notion of IsRecording() to having at least one actor recording that is recording. Countdown timer, recording
displays, etc should function if IsRecording() and not based on whether a level sequence is created.
#jira UE-55485
Change 3907247 by Max.Chen
Sequence Recorder: Fix crash not removing PrepareToCleanseEditorObject delegate. Repros when opening sequence recorder, closing
it, and then opening or creating a level.
Change 3910343 by Max.Preussner
Core: Added async helper for executing functions on a given thread pool
Change 3910346 by Max.Preussner
ImgMedia: Added separate thread pools for loading/decoding and deleting image frames
Change 3910829 by Max.Preussner
Profiler: Increased visible range of profiler graph
Change 3910841 by Max.Preussner
MediaCompositing: Displaying asset name instead of full media source path in media section
Change 3910870 by Max.Preussner
ImgMedia: Using deallocation thread pool only in debug builds
Change 3919642 by Max.Chen
Sequence Recorder: Clarify active tooltip
#jira UE-55661
Change 3919660 by Max.Chen
Sequencer: Sequence template source signatures are now also compared to catch the case where a sub-sequence asset has been saved
but not modified
- The following sequence of events exposes this issue:
- Create a master sequence with a single shot that spawns a cube
- Add this sequence to a level and set it to auto-play
- Save everything and restart
- Resave just the inner shot asset without opening it
- PIE
- The inner shot never spawns its cube because its template was wiped on save, but its signature never changed. Since the
master sequence previously didn't check the template source signature, it ends up trying to evaluate an empty template.
#jira UE-55626
#jira UE-55490
Change 3921825 by Max.Chen
Sequencer: "Run Construction Script in Sequencer" is off by default for blueprints but on for Sequencer. This allows the content
author to switch it on for specific blueprints and sequencer will be default, run those with construction scripts enabled.
Change 3922232 by Max.Chen
Sequence Recorder: Reset countdelay on stop.
#jira UE-55755
Change 3922306 by Max.Chen
Sequence Recorder: Don't automatically mark transforms to be recorded by sequence recorder. Instead, log a warning if the user
toggled it off to warn that the resulting animation might not match gameplay.
#jira UE-55758
Change 3922912 by Max.Chen
Sequence Recorder: Fix refresh next sequence name
#jira UE-55757
Change 3927654 by Max.Chen
Movie Scene Capture: Added format mapping for the name of the current camera
#jira UE-55769
PR #4537
Change 3927658 by Max.Chen
Sequencer: Added fbx property mapping for "FocusDistance" to "FocusSettings.ManualFocusDistance"
#jira UE-55782
Change 3932022 by Max.Chen
Sequencer: Add import animation track section to next available row index.
#jira UE-55892
Change 3933919 by Max.Chen
Sequencer: Jump to playback start frame and not 0 to start playback for recording.
#jira UE-55933
Change 3934307 by Andrew.Rodham
Sequencer: Add template signature that is re-generated every time the base template is regenerated, which invalidates evaluation
fields
This fixes an issue where the same sequence is instantiated multiple times in a sequence.
If the source sequence was saved, its template would be wiped, which would invalidate the template ID
When an instance tries to evaluate the master template, it would only invalidate a range in the evaluation field that was the
hull of any invalid sub sequences overlapping the current time, potentially leaving invalid data in the evaluation field at positions
later (or earlier) on in the sequence
When the sub template was re-generated, it receives the same SequenceSignature as it had before (because the sequence hasn't
actually changed), which causes the stale evaluation field data to fail the IsDirty check (because the sequence is the same as it
thought, but the *template* has changed)
This has been addressed be adding a signature to templates themselves, and checking both the template signature and sequence
signature as a part of the IsDirty check. This ensures that we regenerate if either the template, or the sequence have changed.
#jira UE-55934
Change 3936327 by Andrew.Rodham
Sequencer: Removed increment when trimming right
UMovieSceneSection::TrimSection already explicity assigns an exclusive bound to the time passed in. The new behavior means we
can trim a section to the right, and insert another section without changing the time to create adjacent sections.
#jira UE-42652
Change 3936328 by Andrew.Rodham
Fixed KeyFrameManipulator assignment operators and copy/move constructors
- These types are potentially self-referential so cannot use default constructors/assignment
Change 3936330 by Andrew.Rodham
Converted UMGSequencePlayer to use frames internally
#jira UE-54878
Change 3936726 by Max.Chen
Sequencer: Set track node as the parent of the key area node. The key area switcher needs the object binding id from the parent
object binding node. Without this, the binding to the external value fails.
#jira UE-55931
Change 3936775 by Max.Chen
Sequencer: Should stop or loop should compare DurationFrames with Current Time from StartTime.
The bug is that if you set 30 warmup frames in movie rendering for a range of 0-100, the FrameRange will be starting at -30 and
have a duration of 130. Without this fix, the playback will continue until frame 130, rather than 100.
#jira UE-55933
Change 3936935 by Matt.Hoffman
Easing Curves are now represented in Play Rate resolution instead of internal resolution.
#jira UE-55937
Change 3937069 by Matt.Hoffman
Users can toggle if the is infinite on each side, limited by which tracks support infinite ranges.
#jira UE-55891
Change 3937516 by Max.Preussner
ImgMedia: Added support for single-threaded platforms
#jira UE-55986
Change 3937826 by Max.Preussner
MediaAssets: Disabling media sound components on HTML5 if AudioMixer is not enabled
Change 3937997 by Max.Chen
Curve Editor: Add Zoom to Fit Curves so that selected curves from Sequencer can be focused on. Tested that undo doesn't re-zoom.
#jira UE-55935
Change 3938000 by Max.Chen
Sequencer: Stop all sounds before generating audio waveforms.
#jira UE-55951
Change 3938376 by Max.Preussner
XGEController: Disabled XGE Controller in single-threaded apps to prevent crash
Change 3938444 by Max.Preussner
Core: Added async support for single-threaded applications
Change 3938445 by Max.Preussner
Networking: Added support for single-threaded applications in UDP socket sender/receiver
Change 3938447 by Max.Preussner
Messaging: Added support for single-threaded applications
Change 3939432 by Max.Chen
Sequence Recorder: Append command list to global level editor actions so that shortcuts are accessible in level editor.
#jira UE-55798
Change 3940229 by Andrew.Rodham
Added prospective display rate upgrade to UMovieScene::PostLoad
- There was previously some very odd behaviour that would assign the fixed frame interval only when a sub sequence was focused
in SSequencer. This meant that many sequences could have a frame interval of 0 set in the data.
- Under the old method of snap interval display this would have fallen back to getting the display interval from the sequencer
settings, but we no longer look at these.
- The USequencerSettings properties have been removed and in their place, a prospective data upgrade for sequences that have a
fixed frame interval old 0fps that sets the play rate to the previous defaults based off the old USequencerSettings defaults.
- This could end up 'changing' the display rate for sequences where the user has changed the snap interval in the settings for
a particular sequence editor, but there's not much we can do about that given we don't have access to the USequencerSettings classes in
UMovieScene
#jira UE-55919
Change 3940277 by Andrew.Rodham
Sequencer: Added ability to default frame resolutions and play rates for newly created actor sequences
Change 3940378 by Andrew.Rodham
Sequencer: Post move import dialog now defaults to the playback framerate of the sequence, and floors to frame numbers
Change 3940559 by Andrew.Rodham
Reinstated primed or recording sequence color
Change 3940642 by Max.Preussner
ImagePlate: Removed image plate media playback functionality
Change 3940843 by Max.Preussner
Core: Made TCircularQueue actually thread-safe; improved code comments
Change 3940860 by Max.Chen
Sequencer: Changed StructNameToKey to StructPathToKey
Previously, keying a PropertyPath of [RenderTransform][Shear][X] would get trimmed to X, which doesn't map to a channel name as
considered by Sequencer2dTransformTrackEditor. Instead, trim the resulting property path to [Shear][X] so that track editors can
determine the desired struct path and channels to key.
#jira UE-52966
Change 3941292 by Mike.Zyracki
Fix for trajectories out of range not showing up.
1) If we had no key data we would pop the time, so wouldn't get the section ranges.
2) Calculating of upper bound was wrong, checking against -1 and not key == num of keys when doing algo::lower_bound.
3) No need to do the Bck-- for the bakward iterators since we fixed #2. We start now from the upper bound correctly.
4) If we had no keys (at section start,end) we would incorrectly say we were any key type, so since we draw constant keys as
dashed we would do so incorrectly around section end points.
#jira UE-55929
Change 3941424 by Max.Chen
Curve Editor: Change Zoom to Fit to use TArrayView
Change 3941498 by Max.Preussner
Core: Added FMath::DivideAndRoundNearest function
Change 3942097 by Matt.Hoffman
Drop Frame Timecode Support for NTSC rates.
Change 3942104 by Matt.Hoffman
Sequence Recorder Group is no longer visible inside the World Outliner after using one.
#jira 55266
Change 3942107 by Max.Chen
Sequencer: Resurrect logic to find or extend an existing section when adding keys.
Change 3942330 by Max.Chen
Sequence Recorder: Better tooltip for default animation settings.
#jira UE-55636
Change 3942339 by Max.Chen
Sequence Recorder: Better tooltip for default animation settings.
#jira UE-55636
Change 3942507 by Andrew.Rodham
Sequencer: We no longer pad the time overlap threshold with a small number that is not scaled by the current zoom level
- The presence of this pad was causing keys that were far apart to be grouped when zoomed in a long way
Change 3942509 by Andrew.Rodham
Sequencer: Only pad total view range, rather than section range as well when retrieving keys to render
- This stops us from rendering keys that are within the view range, but outside the section range
Change 3942512 by Andrew.Rodham
Added transactions to some sequencer details customizations
Change 3942513 by Andrew.Rodham
Sequencer: Reinstated validation checks to UMovieSceneSection::SetStartFrame and SetEndFrame, changed erroneous uses to use
SetRange
Change 3942560 by Andrew.Rodham
Pass by rvalue reference to appease error C2719 on Win32
('InChannels': formal parameter with requested alignment of 8 won't be aligned)
Change 3942697 by Andrew.Rodham
Newly Created Level Sequences and Actor Sequences now default to 24000 fps frame resolution (+/- ~24hrs range, supporting all
integer rates + 23.976)
Change 3942700 by Andrew.Rodham
Sequencer: Added legacy out-of-bounds errors for times that are not supported by the current legacy upgrade frame resolution
Change 3942989 by Max.Preussner
Core: Fixed circular queue count calculation
Change 3943538 by Max.Preussner
MediaAssets: Reverted workaround for procedural audio log spam in HTML5
(Actor component initialization cannot be skipped if the component is used in a level)
Change 3944071 by Max.Preussner
QAGame: Fixed Media Texture keeps last frame of Media when PIE ends
#jira UE-53360
Change 3944292 by Max.Chen
Sequencer: Added extra flags to ensure that asset initialization does not occur on template actor sequences
#jira UE-56113
Change 3944364 by Max.Chen
Sequencer: Prevent circular shot/master tracks.
Tested adding master -> child -> master as drag and drop cinematic shot tracks and sub tracks as well as through the + button.
#jira UE-56091
Change 3944422 by Max.Chen
Sequence Recorder: Disable transform recording if off.
#jira UE-56061
Change 3944745 by Andrew.Rodham
Sequencer: Key rendering fixes
- Fixed assert that occured when keys happened to reside on some times due to KeyTime + TimeOverlapThreshold - KeyTime being
slightly larger TimeOverlapThreshold
- Fixed keys sometimes being clipped when zoomed right in due to lack of half-frame offset
- Added missing documentation to MovieSceneTimeHelpers.h
#jira UE-56107
Change 3945231 by Andrew.Rodham
Sequencer: Reconstruct channel proxy on Serialize to catch all cases of undo/redo, PostLoad and duplication
#jira UE-56089
Change 3945301 by Andrew.Rodham
Sequencer: Added safety checks during initial sequence recording to guard against applying negative or 0-sized sequence ranges
#jira UE-56125
Change 3946627 by Max.Preussner
Fortnite: Fixed game crashes closing editor while in PIE - Pure virtual function being called
#jira UE-56144
[CL 3946896 by Max Chen in Main branch]
2018-03-14 22:09:33 -04:00
|
|
|
struct FVisualLoggerTimeSliderArgs
|
2014-11-19 07:43:07 -05:00
|
|
|
{
|
2022-11-29 09:25:35 -05:00
|
|
|
DECLARE_DELEGATE_OneParam( FOnRangeChanged, TRange<double> )
|
|
|
|
|
DECLARE_DELEGATE_TwoParams( FOnScrubPositionChanged, double, bool )
|
Copying //UE4/Dev-Sequencer to //UE4/Dev-Main (Source: //UE4/Dev-Sequencer @ 3946692)
#lockdown Nick.Penwarden
#rb none
============================
MAJOR FEATURES & CHANGES
============================
Change 3801826 by Max.Chen
PR #4304: Level Sequence crash fix - Guarded against dereferencing null componen. (Contributed by DSDambuster)
Change 3801828 by Max.Chen
PR #4302: Movie Scene Visibility Template unitialised variable, causing random . (Contributed by DSDambuster)
Change 3801837 by Max.Chen
Sequencer: Delay spawning/construction for convert to possessable. This fixes a bug where property values would be lost when
converting back and forth from possessable to spawnable.
#jira UE-52400
Change 3801841 by Max.Chen
Sequencer: Make spacer nodes not selectable.
PR #4194: Improvements to Sequencer (Contributed by projectgheist)
#jira UE-53117
#jira UE-52139
Change 3804183 by Max.Preussner
MediaAssets: Added missing lock in media sound component
Change 3805414 by Max.Preussner
MediaAssets: Setting valid GUID when initializing media texture resource
Change 3819578 by Max.Chen
PR #4370: When enabling the "MovieCapture", do not turn off the Stereo-3D display. (Contributed by yehaike)
#jira UE-53647
Change 3823414 by Max.Chen
Curve Editor: Lock down the first and last keys in the redundant keys removal range so that they're unaffected.
#jira UE-53591
Change 3826406 by Max.Chen
Sequencer: Move OnStartedPlaying() to within first update in UpdateTimeCursorPosition(). This fixes an issue where setting the
hud/player visibility was getting stomped on later.
#jira UE-52772
Change 3827044 by Max.Preussner
MediaAssets: Added sprite visualization to media sound component
#jira UE-53594
Change 3827988 by Max.Preussner
MediaPlayerAssets: Fixed Media Texture is not linked to Media Player when created together
#jira UE-53532
Change 3828506 by Max.Preussner
MediaPlayerEditor: Added attenuation visualizer for media sound components
#jira UE-53594
Change 3832590 by andrew.porter
EngineTest: Added a keep state check in Property Animation sequencer test
Change 3833053 by andrew.porter
EngineTest: Adding Hierarchical Bias test
Change 3835683 by andrew.porter
EngineTest: Adding UMG Animation screenshot test
Change 3836076 by Max.Chen
Sequencer: Fix audio volume and pitch multiplier deprecation.
Change 3836230 by andrew.porter
EngineTest: Adding Sequence Bone Position automation test
Change 3836347 by Max.Chen
Sequencer: Fixes to shot name parsing.
When a shot doesn't contain a shot number, assume, [ShotName]_[TakeNumber].
When duplicating a shot, put the new shot in the same path of the original shot, so that the take numbers will increment
properly.
#jira UE-51868
Change 3836552 by Max.Chen
Sequencer: Sub section now has a takes menu
Change 3838094 by Max.Chen
UMG: Fix template finish not getting called on stop. This fixes a bug where sections aren't restored when finished.
#jira UE-52285
Change 3838708 by Max.Chen
Sequencer: Add notification when the blend type is changed.
#jira UE-54046
Change 3840295 by Max.Chen
Sequencer: Fix copy/paste crash for lights
#jira UE-54084
Change 3840957 by Mike.Zyracki
Added Show Only Keyable and Show Only Animated to the filter list in the property editor.
Added IsPropertyAnimated to IDetailKeyframe Interface which already had support for showing properties which are keyable (which
is used for the key icon next to the properties.). Could have created another interface but then would have had to mimic the sequencer
binding, releasing also, so this seemed best way.
One issue still left is that custom built detail items currently don't store associated properties(usually) and so certain
properties, in particulalry transforms, won't show up as keyable or animated. Note this also shows up with the keyable icon not showing
up next to transform tracks, and other filters like Show Only Modified not working with transforms/customs. Not sure best way to tackle
this.
#jira UESEQ-328
Change 3841756 by Max.Chen
Sequencer: Fix unbound possessable components when pasting spawnables.
#jira UE-54104
Change 3843950 by andrew.porter
EngineTest: Renaming LevelStreaming tests/content to LevelVisibility
Change 3844082 by Mike.Zyracki
Missing file for animated filter in property editor.
When finding if a track is animated we need to find it but we can't easily induce the MovieTrack class for any particular
property. So we don't set a class for it and just search by it's ID and name.
#jira UESEQ-328
Change 3846902 by Max.Preussner
ImgMedia: Fixed image media player never finished initialization if loading failed
#jira UE-54247
Change 3849820 by Mike.Zyracki
Reassigning deleted widgets didn't work since the menu extender mechanism needs a valid UObject in order to perform an operation
on it. So to fix we replaced GetObjectBindingContextMenuExtender in WidgetBlueprint with new delegate mechanism
(OnBuildCustomContextMenuForGuid) that supports FGuid in addition to UObjects which is needed to handle re-binding deleted widgets. Note
that the default sequencer hacks this for replacing deleted actors in SequencerObjectBindingNode to check to see if a LevelSequence is
active. We could move to this mechanism there also.
#jira UE-53163
Change 3852211 by Max.Chen
UMG: Indicate name of the property that is not bound.
#jira UE-54350
Change 3854120 by Max.Chen
Sequencer: Fix sibling folders being allowed to have the same folder name.
#jira UE-54363
Change 3854627 by Max.Chen
Sequencer: Step to next/previous key should work for all tracks if there aren't any selected.
#jira UESEQ-391
Change 3855825 by andrew.porter
EngineTest: Adding animation blending automation test
Change 3855950 by andrew.porter
EngineTest: Adding correct expected valuues to animation blending test
Change 3856237 by Matt.Hoffman
UESEQ-336 - Sequencer Track Reordering
Adds the ability to re-order Master Tracks, Folders and Object Bindings within sequencer hierarchies (including UMG). Adds the
ability to do a one-off sorting of the content under the old sorting behavior if the user wants to reset their layout to how it was
under legacy behavior.
Modifies SequencerTrackNodes, SequencerFolderNodes and SequencerObjectBindingNodes to handle CanDrop/OnDrop for above, below and
ontop of.
Fixes a Slate Issue that forcibly expanded a TreeviewRow if an item handled OnDrop. Slate will now only forcibly expand the row
if the item says the drop happened ontop of the item, and not above or below it like it previously did.
Change 3856503 by andrew.porter
EngineTest: Adding automation test for using animation blueprint with blend multi node in sequencer
Change 3857875 by Max.Chen
Sequencer: Assign the sequence id after the template is compiled.
#jira UE-54462
Change 3858344 by Max.Chen
Sequencer: Prevent Goto and Transform boxes from overlapping by allowing them to be visible at the same time in an autosized
horizontal box. Also, added close button to the goto box.
PR #4425: Prevent Goto and Transform boxes from overlapping in Sequencer ... (Contributed by projectgheist)
#jira UE-54210
Change 3860566 by andrew.porter
MediaFrameworkTest: Set the option to index 0 for the audio and video track list by default
Change 3860654 by andrew.porter
EngineTest: Enabling Camera Cut + FOV test
Change 3860981 by andrew.porter
EngineTest: Updating skeletal mesh tests with a delay after set playback position
Change 3861256 by Max.Chen
Sequencer: Add all bindings if none selected.
#jira-54440
Change 3862154 by Andrew.Rodham
Added TimeManagement module
Change 3862424 by andrew.porter
EngineTest: Turned on the test Bone Positions with Blend Multi Node
Change 3862573 by andrew.porter
EngineTest: Adding test to compare bone positions in a sequence that is blending an animation that is using an AnimBP
Change 3865117 by Max.Chen
Sequencer: Stop auto scroll on mouse release of movement.
#jira UE-31212
Change 3865303 by Max.Chen
Sequencer: Add drag and drop transactions
#jira UE-54662
Change 3865304 by Max.Chen
Sequencer: Fix crash when an actor factory is not found.
Change 3865361 by Max.Chen
Sequencer: Don't change the camera/shot lock button when popping out of a sequence.
#jira UE-54665
Change 3865412 by Max.Chen
Sequencer: Determine whether a transform track is for a camera by using the spawned object or template
#jira UE-54666
Change 3865685 by Max.Chen
Sequencer: Clear autoscrub offset when stopping autoscroll
#jira UE-31212
Change 3865886 by Max.Chen
Sequence Recorder: Log an error if the number of frames changes while recording. This can happen if the skeleton changes while
recording.
#jira UE-48715
Change 3866925 by Andrew.Porter
MediaFrameworkTest: Changing the current PNG test video image sequence to 1024 x 576
Change 3867705 by andrew.porter
QAGame: Adding Audio Sort Sequence to dev folder
Change 3867890 by andrew.porter
QAGame: Adding a sequence for testing a sorting crash to my dev folder
Change 3872628 by Max.Chen
Movie Scene Capture: Split delay before warmup into split delay before shot warmup so that there's separate controls for when
the movie scene capture warmups up vs. shot boundaries.
Change 3873131 by Matt.Hoffman
UE-54732 - Crash reordering a folder with a track.
This was caused by folders being the only type of track to check if someone was putting a parent track into a child track.
Object Binding tracks and Tracks now check as well so that you can't use the above/below drop targets to add parents as children.
This also fixed a typo in the localization keys.
#jira UE-54732
Change 3873301 by Mike.Zyracki
Added ability to support continous euler angle changes when changing rotations, in particularly with the rotation gizmo's. To do
this we effectively added a form an of 'euler filter'(https://en.wikipedia.org/wiki/Euler_filter) to find the closest euler angle to the
current euler angle.
Three functions were added to FRotator to make this possible, one to get the euler angle that's has the same rotation as it, one
to get the difference between two euler angles via Manhattan distance and a third using the previous two to choose a Rotator value
that's closest to it. We then use these functions before calling UComponent::SetRelativeRotation to make sure we use the correct Euler
after the Quat conversion. We also no longer limit(bound) the euler angles to -180,180, which is obviously necessary to avoid flips.
I also changed how we caluclate yaw and roll when pitch is -90 or 90 to make it the standard approach of zeroing out roll and
just setting yaw. Main reasons are the previous implementation had precision issues so things like 180, 90, -180 would show up due to
numbers being nearly zero but negative,(this would break any smooth interpolations), and this facilitates having a 'gimbal' rotation
mode (like Maya, Blender etc..) if we ever want that also. If needed we could keep the previous implementation but would need to add
some FMath::IsNearlyZero checks, with less performance.
Note we only do this special filtering when applying delta's to actors or components in the editors, which then call
UComponent::SetRelativeRotationExact, which is a new function to foces the RelativeRotation to be equal to the new rotation. This allows
us to store un-nomalized Rotators at the cost that the RotationCache may be broken. We didn't change any of the other UComponent
functions that set rotations (via Quats or Transforms) so they will still be bounded and unwound.
In SetInternalWorldLocationAndRotation we only set the rotation if the rotation has changed, which fixes the rotation getting
changed and re-normalized if just translate happens.
In TransformTrackEditor, we correclty use the bUndwing flag and in MovieScene3DTransformSection there was an un-needed winding
check there, it will be unwound earlier if needed, which happens if Sequence Recording is happening. Max we should talk about what to do
about this .
Note the euler angle drag via the widget is still bound to 0-360. I think we should just unbound that now since the rotations
value are now unbound.
This review now includes fixes suggested by Zak.
#jira UE-UE-22228
Change 3873483 by Matt.Hoffman
Sequencer Tracks can now be inserted above the spacer at the bottom of the tree.
#jira UE-54706
Change 3873899 by Max.Chen
Sequencer: Add section selection throbbing
Change 3873908 by Max.Chen
Movie Scene Capture: Added logging per frame
Change 3873924 by Matt.Hoffman
Adds the ability to store Sequence Recorder setups into profiles that stay with the map and can be re-loaded later. Profiles
store the Actor Recordings so the settings for each actor should carry with them.
#jira UESEQ-339
Change 3874726 by Matt.Hoffman
Disable drag-and-drop targets on spacers that come between rows in Sequencer. This prevents extra drag/drop targets showing up
between each row.
#jira UE-54706
Change 3874862 by Matt.Hoffman
Audio Track no longer gets reordered when adding sub-audio tracks, as sub-tracks are no longer counted towards the sorting order
index when normalizing indexes.
#jira UE-54727
Change 3875905 by Matt.Hoffman
Disable Fade Track UI if a fade track already exists in the sequence.
#jira UESEQ-393
Change 3876163 by Max.Chen
Sequencer: Swap the camera object to the camera component's owner if it's not the same.
#jira UE-54874
Change 3876971 by Andrew.Porter
EngineTest: Moved Media Player Seek test to new folder. Also enabled the test with new ground truth image.
Change 3877040 by Max.Chen
Cine Camera: Split camera properties to two groups, "Camera Options" and "Camera Settings". The cine camera now hides properties
in the "Camera Settings" group so that properties like bConstrainAspectRatio (in the "Camera Options" group) can be visible.
#jira UE-54192
Change 3877763 by Max.Chen
Curve Editor: Fix curve changed on end drag so that only curves that had keys/tangents that were changed receive notification,
otherwise all loaded curves were getting notified that they were changed.
#jira UE-54951
Change 3878234 by Matt.Hoffman
Disable "Drop Below" targets for Sequencer Tree nodes to prevent a confusing UX issue where dropping underneath a Object Binding
Node puts it after the object binding node but the UI looks like it's inserting it inside the Object Binding node.
#jira UE-54743
Change 3879359 by Mike.Zyracki
If a track is inactive we dim it a bit which seems to be the UE4 way to show inactive or disabled state. We changed the active
logic so that all subtracks need to be inactive for the track to also be inactive(instead of all active for active). This conforms to
how the active state actually works, e.g if you have two sections and only one is active the track is still active above it.
#jira UESEQ-388
Change 3879462 by Max.Chen
Sequencer: Allow dragging onto a particular row which would move out any overlapping sections to make space for the newly
created section. Newly created sections are now selected and throbbed to draw attention to themselves.
#jira UE-54664
Change 3879464 by Max.Chen
Sequencer: Fixed overlapping ranges being inserted into the evaluation field during compilation
- The issue was that track segments that had been combined with adjacent segments (due to them being identical) would
potentially cause a subsequently compiled frame to overlap with a range that had already been inserted into the evaluation field.
- The insertion code previously asserted that only minor overlaps were catered for (due to fp rounding errors) and assumed
that a supplied range could not entirely contain any other range in the field.
- The solution is to supply the insertion time along with the range to know exactly where the data should live in the field,
and crop the range to the maximum allowable space between adjacent ranges.
#jira UE-54922
Change 3879590 by Matt.Hoffman
Items that are now added to the Sequencer via the "+Track" menu will be selected after being added.
Items can now be added inside of folders instead of just to the root level.
#jira UE-27397
Change 3879612 by Mike.Zyracki
Display Nodes with no children are always active.
#jira UESEQ-388
Change 3879730 by Matt.Hoffman
Sequence Recorder's actor recording groups now remove items from the group when removed via the UI.
#jira UESEQ-339
Change 3880256 by Mike.Zyracki
Fix issue with inactive display with folders and other track nodes.
#jira UESEQ-388
Change 3883491 by Max.Chen
Fix issue where tick is skipped due to last ticked pose isn't cleared after AnimInstance changes.
Copy from Release-4.19
#jira UE-51323
Change 3883603 by Max.Chen
Movie Scene Capture: Add option toggle disable screen percentage. By default this is on (no change in current behavior).
#jira UE-51898
Change 3885074 by Max.Preussner
MediaCompositing: Resetting media texture & freeing resource on section end; removed dead code
Change 3887220 by Max.Preussner
MediaCompositing: Defaulted media section duration to 1 sec (since we do not know the actual duration in most cases)
Change 3887478 by Matt.Hoffman
Sequences now show [Inactive] in their title bars when they're disabled. This helps communicate why a sequence isn't being
evaluated.
#jira UE-51469
Change 3888985 by Max.Chen
Movie Scene Capture: Clamp HDR Compression Quality between 0 and 1.
#jira UE-55136
Change 3893519 by Max.Chen
Sequence Recorder: Clarified tooltip for bRecordNearbySpawnedActors - spawned actors will still be recorded if they match the
ActorFilter.
#jira UE-55238
Change 3893546 by Max.Chen
Sequence Recorder: If a selected actor already has a recording, add a blank recording.
#jira UE-55239
Change 3894044 by Max.Preussner
MediaCompositing: Added support for seeking into a media section
Change 3894310 by andrew.porter
MediaFrameworkTest: Adding Img media sources for 1080 and 2160 ravent test content
Change 3894426 by Max.Preussner
MediaAssets: Letting media textures with AutoClear retain their clear color when player is reset
Change 3895717 by Max.Chen
Sequencer: Null checks to prevent crash when saving the default state of a spawnable
#jira UE-55304
Change 3897388 by Max.Chen
Sequencer: Don't update current time to be within the view range when stepping into a sequence.
#jira UE-55322
Change 3897452 by Max.Chen
Audio: Fix crash when trying to record audio without any active capture devices. Log warning if the number of input channels is
not 1 or 2.
#jira UE-55223
Change 3897619 by Max.Preussner
MediaCompositing: Removed commented out code
Change 3898072 by Max.Chen
Sequencer: Override the animation asset in the player state if it doesn't match the animation asset that's being evaluated.
#jira UE-55328
Change 3898272 by Max.Preussner
MediaPlayerEditor: Made slate brush constants static
Change 3898704 by Max.Chen
Sequencer: Skip if the binding id's sequence can't be found.
#jira UE-55337
Change 3899855 by Max.Preussner
MediaCompositingEditor: Added cache state visualization to media track
Change 3900300 by Max.Preussner
MediaCompositingEditor: Added loop indicators to media sections
Change 3900694 by Max.Preussner
ImfMedia: Looping cache only when player is looping
Change 3900892 by Max.Preussner
Stats: Added stats category for media framework
Change 3900954 by Max.Preussner
MediaCompositing: Don't evaluate at the end of media section
Change 3901348 by Max.Preussner
Core: Replaced TLruCache autos for better readability
Change 3901655 by Max.Preussner
ImgMedia: Added more perf stats to EXR reader
Change 3901972 by Max.Preussner
MediaAssets: Added getter for media player in media sound components
Change 3902233 by Max.Preussner
MediaAssets: Enabling media textures to receive samples right after player is assigned
Change 3902238 by Max.Preussner
MediaCompositing: Working around init/shutdown idiosyncracies in sequencer
Change 3904045 by Max.Chen
Sequencer: Fix copy/paste crash. Only process UMovieSceneCopyableBinding and objects that can be spawned by the movie scene
spawn register.
#jira UE-55314
Change 3905605 by Max.Chen
Sequencer: Restrict spawnables from being created if they have a ClassWithin that UMovieScene is not a child of.
#jira UE-55429
Change 3906550 by Max.Chen
Sequencer: Add media track icon
#jira UE-55480
Change 3907101 by Max.Chen
Sequence Recorder: Fix bugs related to not recording a level sequence. There were certain assumptions that creating a level
sequence meant that sequence recording was in progress. This is not always the case - the recorders can record animation assets and not
create a level sequence.
Changed the notion of IsRecording() to having at least one actor recording that is recording. Countdown timer, recording
displays, etc should function if IsRecording() and not based on whether a level sequence is created.
#jira UE-55485
Change 3907247 by Max.Chen
Sequence Recorder: Fix crash not removing PrepareToCleanseEditorObject delegate. Repros when opening sequence recorder, closing
it, and then opening or creating a level.
Change 3910343 by Max.Preussner
Core: Added async helper for executing functions on a given thread pool
Change 3910346 by Max.Preussner
ImgMedia: Added separate thread pools for loading/decoding and deleting image frames
Change 3910829 by Max.Preussner
Profiler: Increased visible range of profiler graph
Change 3910841 by Max.Preussner
MediaCompositing: Displaying asset name instead of full media source path in media section
Change 3910870 by Max.Preussner
ImgMedia: Using deallocation thread pool only in debug builds
Change 3919642 by Max.Chen
Sequence Recorder: Clarify active tooltip
#jira UE-55661
Change 3919660 by Max.Chen
Sequencer: Sequence template source signatures are now also compared to catch the case where a sub-sequence asset has been saved
but not modified
- The following sequence of events exposes this issue:
- Create a master sequence with a single shot that spawns a cube
- Add this sequence to a level and set it to auto-play
- Save everything and restart
- Resave just the inner shot asset without opening it
- PIE
- The inner shot never spawns its cube because its template was wiped on save, but its signature never changed. Since the
master sequence previously didn't check the template source signature, it ends up trying to evaluate an empty template.
#jira UE-55626
#jira UE-55490
Change 3921825 by Max.Chen
Sequencer: "Run Construction Script in Sequencer" is off by default for blueprints but on for Sequencer. This allows the content
author to switch it on for specific blueprints and sequencer will be default, run those with construction scripts enabled.
Change 3922232 by Max.Chen
Sequence Recorder: Reset countdelay on stop.
#jira UE-55755
Change 3922306 by Max.Chen
Sequence Recorder: Don't automatically mark transforms to be recorded by sequence recorder. Instead, log a warning if the user
toggled it off to warn that the resulting animation might not match gameplay.
#jira UE-55758
Change 3922912 by Max.Chen
Sequence Recorder: Fix refresh next sequence name
#jira UE-55757
Change 3927654 by Max.Chen
Movie Scene Capture: Added format mapping for the name of the current camera
#jira UE-55769
PR #4537
Change 3927658 by Max.Chen
Sequencer: Added fbx property mapping for "FocusDistance" to "FocusSettings.ManualFocusDistance"
#jira UE-55782
Change 3932022 by Max.Chen
Sequencer: Add import animation track section to next available row index.
#jira UE-55892
Change 3933919 by Max.Chen
Sequencer: Jump to playback start frame and not 0 to start playback for recording.
#jira UE-55933
Change 3934307 by Andrew.Rodham
Sequencer: Add template signature that is re-generated every time the base template is regenerated, which invalidates evaluation
fields
This fixes an issue where the same sequence is instantiated multiple times in a sequence.
If the source sequence was saved, its template would be wiped, which would invalidate the template ID
When an instance tries to evaluate the master template, it would only invalidate a range in the evaluation field that was the
hull of any invalid sub sequences overlapping the current time, potentially leaving invalid data in the evaluation field at positions
later (or earlier) on in the sequence
When the sub template was re-generated, it receives the same SequenceSignature as it had before (because the sequence hasn't
actually changed), which causes the stale evaluation field data to fail the IsDirty check (because the sequence is the same as it
thought, but the *template* has changed)
This has been addressed be adding a signature to templates themselves, and checking both the template signature and sequence
signature as a part of the IsDirty check. This ensures that we regenerate if either the template, or the sequence have changed.
#jira UE-55934
Change 3936327 by Andrew.Rodham
Sequencer: Removed increment when trimming right
UMovieSceneSection::TrimSection already explicity assigns an exclusive bound to the time passed in. The new behavior means we
can trim a section to the right, and insert another section without changing the time to create adjacent sections.
#jira UE-42652
Change 3936328 by Andrew.Rodham
Fixed KeyFrameManipulator assignment operators and copy/move constructors
- These types are potentially self-referential so cannot use default constructors/assignment
Change 3936330 by Andrew.Rodham
Converted UMGSequencePlayer to use frames internally
#jira UE-54878
Change 3936726 by Max.Chen
Sequencer: Set track node as the parent of the key area node. The key area switcher needs the object binding id from the parent
object binding node. Without this, the binding to the external value fails.
#jira UE-55931
Change 3936775 by Max.Chen
Sequencer: Should stop or loop should compare DurationFrames with Current Time from StartTime.
The bug is that if you set 30 warmup frames in movie rendering for a range of 0-100, the FrameRange will be starting at -30 and
have a duration of 130. Without this fix, the playback will continue until frame 130, rather than 100.
#jira UE-55933
Change 3936935 by Matt.Hoffman
Easing Curves are now represented in Play Rate resolution instead of internal resolution.
#jira UE-55937
Change 3937069 by Matt.Hoffman
Users can toggle if the is infinite on each side, limited by which tracks support infinite ranges.
#jira UE-55891
Change 3937516 by Max.Preussner
ImgMedia: Added support for single-threaded platforms
#jira UE-55986
Change 3937826 by Max.Preussner
MediaAssets: Disabling media sound components on HTML5 if AudioMixer is not enabled
Change 3937997 by Max.Chen
Curve Editor: Add Zoom to Fit Curves so that selected curves from Sequencer can be focused on. Tested that undo doesn't re-zoom.
#jira UE-55935
Change 3938000 by Max.Chen
Sequencer: Stop all sounds before generating audio waveforms.
#jira UE-55951
Change 3938376 by Max.Preussner
XGEController: Disabled XGE Controller in single-threaded apps to prevent crash
Change 3938444 by Max.Preussner
Core: Added async support for single-threaded applications
Change 3938445 by Max.Preussner
Networking: Added support for single-threaded applications in UDP socket sender/receiver
Change 3938447 by Max.Preussner
Messaging: Added support for single-threaded applications
Change 3939432 by Max.Chen
Sequence Recorder: Append command list to global level editor actions so that shortcuts are accessible in level editor.
#jira UE-55798
Change 3940229 by Andrew.Rodham
Added prospective display rate upgrade to UMovieScene::PostLoad
- There was previously some very odd behaviour that would assign the fixed frame interval only when a sub sequence was focused
in SSequencer. This meant that many sequences could have a frame interval of 0 set in the data.
- Under the old method of snap interval display this would have fallen back to getting the display interval from the sequencer
settings, but we no longer look at these.
- The USequencerSettings properties have been removed and in their place, a prospective data upgrade for sequences that have a
fixed frame interval old 0fps that sets the play rate to the previous defaults based off the old USequencerSettings defaults.
- This could end up 'changing' the display rate for sequences where the user has changed the snap interval in the settings for
a particular sequence editor, but there's not much we can do about that given we don't have access to the USequencerSettings classes in
UMovieScene
#jira UE-55919
Change 3940277 by Andrew.Rodham
Sequencer: Added ability to default frame resolutions and play rates for newly created actor sequences
Change 3940378 by Andrew.Rodham
Sequencer: Post move import dialog now defaults to the playback framerate of the sequence, and floors to frame numbers
Change 3940559 by Andrew.Rodham
Reinstated primed or recording sequence color
Change 3940642 by Max.Preussner
ImagePlate: Removed image plate media playback functionality
Change 3940843 by Max.Preussner
Core: Made TCircularQueue actually thread-safe; improved code comments
Change 3940860 by Max.Chen
Sequencer: Changed StructNameToKey to StructPathToKey
Previously, keying a PropertyPath of [RenderTransform][Shear][X] would get trimmed to X, which doesn't map to a channel name as
considered by Sequencer2dTransformTrackEditor. Instead, trim the resulting property path to [Shear][X] so that track editors can
determine the desired struct path and channels to key.
#jira UE-52966
Change 3941292 by Mike.Zyracki
Fix for trajectories out of range not showing up.
1) If we had no key data we would pop the time, so wouldn't get the section ranges.
2) Calculating of upper bound was wrong, checking against -1 and not key == num of keys when doing algo::lower_bound.
3) No need to do the Bck-- for the bakward iterators since we fixed #2. We start now from the upper bound correctly.
4) If we had no keys (at section start,end) we would incorrectly say we were any key type, so since we draw constant keys as
dashed we would do so incorrectly around section end points.
#jira UE-55929
Change 3941424 by Max.Chen
Curve Editor: Change Zoom to Fit to use TArrayView
Change 3941498 by Max.Preussner
Core: Added FMath::DivideAndRoundNearest function
Change 3942097 by Matt.Hoffman
Drop Frame Timecode Support for NTSC rates.
Change 3942104 by Matt.Hoffman
Sequence Recorder Group is no longer visible inside the World Outliner after using one.
#jira 55266
Change 3942107 by Max.Chen
Sequencer: Resurrect logic to find or extend an existing section when adding keys.
Change 3942330 by Max.Chen
Sequence Recorder: Better tooltip for default animation settings.
#jira UE-55636
Change 3942339 by Max.Chen
Sequence Recorder: Better tooltip for default animation settings.
#jira UE-55636
Change 3942507 by Andrew.Rodham
Sequencer: We no longer pad the time overlap threshold with a small number that is not scaled by the current zoom level
- The presence of this pad was causing keys that were far apart to be grouped when zoomed in a long way
Change 3942509 by Andrew.Rodham
Sequencer: Only pad total view range, rather than section range as well when retrieving keys to render
- This stops us from rendering keys that are within the view range, but outside the section range
Change 3942512 by Andrew.Rodham
Added transactions to some sequencer details customizations
Change 3942513 by Andrew.Rodham
Sequencer: Reinstated validation checks to UMovieSceneSection::SetStartFrame and SetEndFrame, changed erroneous uses to use
SetRange
Change 3942560 by Andrew.Rodham
Pass by rvalue reference to appease error C2719 on Win32
('InChannels': formal parameter with requested alignment of 8 won't be aligned)
Change 3942697 by Andrew.Rodham
Newly Created Level Sequences and Actor Sequences now default to 24000 fps frame resolution (+/- ~24hrs range, supporting all
integer rates + 23.976)
Change 3942700 by Andrew.Rodham
Sequencer: Added legacy out-of-bounds errors for times that are not supported by the current legacy upgrade frame resolution
Change 3942989 by Max.Preussner
Core: Fixed circular queue count calculation
Change 3943538 by Max.Preussner
MediaAssets: Reverted workaround for procedural audio log spam in HTML5
(Actor component initialization cannot be skipped if the component is used in a level)
Change 3944071 by Max.Preussner
QAGame: Fixed Media Texture keeps last frame of Media when PIE ends
#jira UE-53360
Change 3944292 by Max.Chen
Sequencer: Added extra flags to ensure that asset initialization does not occur on template actor sequences
#jira UE-56113
Change 3944364 by Max.Chen
Sequencer: Prevent circular shot/master tracks.
Tested adding master -> child -> master as drag and drop cinematic shot tracks and sub tracks as well as through the + button.
#jira UE-56091
Change 3944422 by Max.Chen
Sequence Recorder: Disable transform recording if off.
#jira UE-56061
Change 3944745 by Andrew.Rodham
Sequencer: Key rendering fixes
- Fixed assert that occured when keys happened to reside on some times due to KeyTime + TimeOverlapThreshold - KeyTime being
slightly larger TimeOverlapThreshold
- Fixed keys sometimes being clipped when zoomed right in due to lack of half-frame offset
- Added missing documentation to MovieSceneTimeHelpers.h
#jira UE-56107
Change 3945231 by Andrew.Rodham
Sequencer: Reconstruct channel proxy on Serialize to catch all cases of undo/redo, PostLoad and duplication
#jira UE-56089
Change 3945301 by Andrew.Rodham
Sequencer: Added safety checks during initial sequence recording to guard against applying negative or 0-sized sequence ranges
#jira UE-56125
Change 3946627 by Max.Preussner
Fortnite: Fixed game crashes closing editor while in PIE - Pure virtual function being called
#jira UE-56144
[CL 3946896 by Max Chen in Main branch]
2018-03-14 22:09:33 -04:00
|
|
|
|
2014-11-19 07:43:07 -05:00
|
|
|
FVisualLoggerTimeSliderArgs()
|
2022-11-29 09:25:35 -05:00
|
|
|
: ScrubPosition(0.)
|
|
|
|
|
, ViewRange(TRange<double>(0., 5.))
|
|
|
|
|
, ClampRange(TRange<double>(0., 5.))
|
Copying //UE4/Dev-Sequencer to //UE4/Dev-Main (Source: //UE4/Dev-Sequencer @ 3946692)
#lockdown Nick.Penwarden
#rb none
============================
MAJOR FEATURES & CHANGES
============================
Change 3801826 by Max.Chen
PR #4304: Level Sequence crash fix - Guarded against dereferencing null componen. (Contributed by DSDambuster)
Change 3801828 by Max.Chen
PR #4302: Movie Scene Visibility Template unitialised variable, causing random . (Contributed by DSDambuster)
Change 3801837 by Max.Chen
Sequencer: Delay spawning/construction for convert to possessable. This fixes a bug where property values would be lost when
converting back and forth from possessable to spawnable.
#jira UE-52400
Change 3801841 by Max.Chen
Sequencer: Make spacer nodes not selectable.
PR #4194: Improvements to Sequencer (Contributed by projectgheist)
#jira UE-53117
#jira UE-52139
Change 3804183 by Max.Preussner
MediaAssets: Added missing lock in media sound component
Change 3805414 by Max.Preussner
MediaAssets: Setting valid GUID when initializing media texture resource
Change 3819578 by Max.Chen
PR #4370: When enabling the "MovieCapture", do not turn off the Stereo-3D display. (Contributed by yehaike)
#jira UE-53647
Change 3823414 by Max.Chen
Curve Editor: Lock down the first and last keys in the redundant keys removal range so that they're unaffected.
#jira UE-53591
Change 3826406 by Max.Chen
Sequencer: Move OnStartedPlaying() to within first update in UpdateTimeCursorPosition(). This fixes an issue where setting the
hud/player visibility was getting stomped on later.
#jira UE-52772
Change 3827044 by Max.Preussner
MediaAssets: Added sprite visualization to media sound component
#jira UE-53594
Change 3827988 by Max.Preussner
MediaPlayerAssets: Fixed Media Texture is not linked to Media Player when created together
#jira UE-53532
Change 3828506 by Max.Preussner
MediaPlayerEditor: Added attenuation visualizer for media sound components
#jira UE-53594
Change 3832590 by andrew.porter
EngineTest: Added a keep state check in Property Animation sequencer test
Change 3833053 by andrew.porter
EngineTest: Adding Hierarchical Bias test
Change 3835683 by andrew.porter
EngineTest: Adding UMG Animation screenshot test
Change 3836076 by Max.Chen
Sequencer: Fix audio volume and pitch multiplier deprecation.
Change 3836230 by andrew.porter
EngineTest: Adding Sequence Bone Position automation test
Change 3836347 by Max.Chen
Sequencer: Fixes to shot name parsing.
When a shot doesn't contain a shot number, assume, [ShotName]_[TakeNumber].
When duplicating a shot, put the new shot in the same path of the original shot, so that the take numbers will increment
properly.
#jira UE-51868
Change 3836552 by Max.Chen
Sequencer: Sub section now has a takes menu
Change 3838094 by Max.Chen
UMG: Fix template finish not getting called on stop. This fixes a bug where sections aren't restored when finished.
#jira UE-52285
Change 3838708 by Max.Chen
Sequencer: Add notification when the blend type is changed.
#jira UE-54046
Change 3840295 by Max.Chen
Sequencer: Fix copy/paste crash for lights
#jira UE-54084
Change 3840957 by Mike.Zyracki
Added Show Only Keyable and Show Only Animated to the filter list in the property editor.
Added IsPropertyAnimated to IDetailKeyframe Interface which already had support for showing properties which are keyable (which
is used for the key icon next to the properties.). Could have created another interface but then would have had to mimic the sequencer
binding, releasing also, so this seemed best way.
One issue still left is that custom built detail items currently don't store associated properties(usually) and so certain
properties, in particulalry transforms, won't show up as keyable or animated. Note this also shows up with the keyable icon not showing
up next to transform tracks, and other filters like Show Only Modified not working with transforms/customs. Not sure best way to tackle
this.
#jira UESEQ-328
Change 3841756 by Max.Chen
Sequencer: Fix unbound possessable components when pasting spawnables.
#jira UE-54104
Change 3843950 by andrew.porter
EngineTest: Renaming LevelStreaming tests/content to LevelVisibility
Change 3844082 by Mike.Zyracki
Missing file for animated filter in property editor.
When finding if a track is animated we need to find it but we can't easily induce the MovieTrack class for any particular
property. So we don't set a class for it and just search by it's ID and name.
#jira UESEQ-328
Change 3846902 by Max.Preussner
ImgMedia: Fixed image media player never finished initialization if loading failed
#jira UE-54247
Change 3849820 by Mike.Zyracki
Reassigning deleted widgets didn't work since the menu extender mechanism needs a valid UObject in order to perform an operation
on it. So to fix we replaced GetObjectBindingContextMenuExtender in WidgetBlueprint with new delegate mechanism
(OnBuildCustomContextMenuForGuid) that supports FGuid in addition to UObjects which is needed to handle re-binding deleted widgets. Note
that the default sequencer hacks this for replacing deleted actors in SequencerObjectBindingNode to check to see if a LevelSequence is
active. We could move to this mechanism there also.
#jira UE-53163
Change 3852211 by Max.Chen
UMG: Indicate name of the property that is not bound.
#jira UE-54350
Change 3854120 by Max.Chen
Sequencer: Fix sibling folders being allowed to have the same folder name.
#jira UE-54363
Change 3854627 by Max.Chen
Sequencer: Step to next/previous key should work for all tracks if there aren't any selected.
#jira UESEQ-391
Change 3855825 by andrew.porter
EngineTest: Adding animation blending automation test
Change 3855950 by andrew.porter
EngineTest: Adding correct expected valuues to animation blending test
Change 3856237 by Matt.Hoffman
UESEQ-336 - Sequencer Track Reordering
Adds the ability to re-order Master Tracks, Folders and Object Bindings within sequencer hierarchies (including UMG). Adds the
ability to do a one-off sorting of the content under the old sorting behavior if the user wants to reset their layout to how it was
under legacy behavior.
Modifies SequencerTrackNodes, SequencerFolderNodes and SequencerObjectBindingNodes to handle CanDrop/OnDrop for above, below and
ontop of.
Fixes a Slate Issue that forcibly expanded a TreeviewRow if an item handled OnDrop. Slate will now only forcibly expand the row
if the item says the drop happened ontop of the item, and not above or below it like it previously did.
Change 3856503 by andrew.porter
EngineTest: Adding automation test for using animation blueprint with blend multi node in sequencer
Change 3857875 by Max.Chen
Sequencer: Assign the sequence id after the template is compiled.
#jira UE-54462
Change 3858344 by Max.Chen
Sequencer: Prevent Goto and Transform boxes from overlapping by allowing them to be visible at the same time in an autosized
horizontal box. Also, added close button to the goto box.
PR #4425: Prevent Goto and Transform boxes from overlapping in Sequencer ... (Contributed by projectgheist)
#jira UE-54210
Change 3860566 by andrew.porter
MediaFrameworkTest: Set the option to index 0 for the audio and video track list by default
Change 3860654 by andrew.porter
EngineTest: Enabling Camera Cut + FOV test
Change 3860981 by andrew.porter
EngineTest: Updating skeletal mesh tests with a delay after set playback position
Change 3861256 by Max.Chen
Sequencer: Add all bindings if none selected.
#jira-54440
Change 3862154 by Andrew.Rodham
Added TimeManagement module
Change 3862424 by andrew.porter
EngineTest: Turned on the test Bone Positions with Blend Multi Node
Change 3862573 by andrew.porter
EngineTest: Adding test to compare bone positions in a sequence that is blending an animation that is using an AnimBP
Change 3865117 by Max.Chen
Sequencer: Stop auto scroll on mouse release of movement.
#jira UE-31212
Change 3865303 by Max.Chen
Sequencer: Add drag and drop transactions
#jira UE-54662
Change 3865304 by Max.Chen
Sequencer: Fix crash when an actor factory is not found.
Change 3865361 by Max.Chen
Sequencer: Don't change the camera/shot lock button when popping out of a sequence.
#jira UE-54665
Change 3865412 by Max.Chen
Sequencer: Determine whether a transform track is for a camera by using the spawned object or template
#jira UE-54666
Change 3865685 by Max.Chen
Sequencer: Clear autoscrub offset when stopping autoscroll
#jira UE-31212
Change 3865886 by Max.Chen
Sequence Recorder: Log an error if the number of frames changes while recording. This can happen if the skeleton changes while
recording.
#jira UE-48715
Change 3866925 by Andrew.Porter
MediaFrameworkTest: Changing the current PNG test video image sequence to 1024 x 576
Change 3867705 by andrew.porter
QAGame: Adding Audio Sort Sequence to dev folder
Change 3867890 by andrew.porter
QAGame: Adding a sequence for testing a sorting crash to my dev folder
Change 3872628 by Max.Chen
Movie Scene Capture: Split delay before warmup into split delay before shot warmup so that there's separate controls for when
the movie scene capture warmups up vs. shot boundaries.
Change 3873131 by Matt.Hoffman
UE-54732 - Crash reordering a folder with a track.
This was caused by folders being the only type of track to check if someone was putting a parent track into a child track.
Object Binding tracks and Tracks now check as well so that you can't use the above/below drop targets to add parents as children.
This also fixed a typo in the localization keys.
#jira UE-54732
Change 3873301 by Mike.Zyracki
Added ability to support continous euler angle changes when changing rotations, in particularly with the rotation gizmo's. To do
this we effectively added a form an of 'euler filter'(https://en.wikipedia.org/wiki/Euler_filter) to find the closest euler angle to the
current euler angle.
Three functions were added to FRotator to make this possible, one to get the euler angle that's has the same rotation as it, one
to get the difference between two euler angles via Manhattan distance and a third using the previous two to choose a Rotator value
that's closest to it. We then use these functions before calling UComponent::SetRelativeRotation to make sure we use the correct Euler
after the Quat conversion. We also no longer limit(bound) the euler angles to -180,180, which is obviously necessary to avoid flips.
I also changed how we caluclate yaw and roll when pitch is -90 or 90 to make it the standard approach of zeroing out roll and
just setting yaw. Main reasons are the previous implementation had precision issues so things like 180, 90, -180 would show up due to
numbers being nearly zero but negative,(this would break any smooth interpolations), and this facilitates having a 'gimbal' rotation
mode (like Maya, Blender etc..) if we ever want that also. If needed we could keep the previous implementation but would need to add
some FMath::IsNearlyZero checks, with less performance.
Note we only do this special filtering when applying delta's to actors or components in the editors, which then call
UComponent::SetRelativeRotationExact, which is a new function to foces the RelativeRotation to be equal to the new rotation. This allows
us to store un-nomalized Rotators at the cost that the RotationCache may be broken. We didn't change any of the other UComponent
functions that set rotations (via Quats or Transforms) so they will still be bounded and unwound.
In SetInternalWorldLocationAndRotation we only set the rotation if the rotation has changed, which fixes the rotation getting
changed and re-normalized if just translate happens.
In TransformTrackEditor, we correclty use the bUndwing flag and in MovieScene3DTransformSection there was an un-needed winding
check there, it will be unwound earlier if needed, which happens if Sequence Recording is happening. Max we should talk about what to do
about this .
Note the euler angle drag via the widget is still bound to 0-360. I think we should just unbound that now since the rotations
value are now unbound.
This review now includes fixes suggested by Zak.
#jira UE-UE-22228
Change 3873483 by Matt.Hoffman
Sequencer Tracks can now be inserted above the spacer at the bottom of the tree.
#jira UE-54706
Change 3873899 by Max.Chen
Sequencer: Add section selection throbbing
Change 3873908 by Max.Chen
Movie Scene Capture: Added logging per frame
Change 3873924 by Matt.Hoffman
Adds the ability to store Sequence Recorder setups into profiles that stay with the map and can be re-loaded later. Profiles
store the Actor Recordings so the settings for each actor should carry with them.
#jira UESEQ-339
Change 3874726 by Matt.Hoffman
Disable drag-and-drop targets on spacers that come between rows in Sequencer. This prevents extra drag/drop targets showing up
between each row.
#jira UE-54706
Change 3874862 by Matt.Hoffman
Audio Track no longer gets reordered when adding sub-audio tracks, as sub-tracks are no longer counted towards the sorting order
index when normalizing indexes.
#jira UE-54727
Change 3875905 by Matt.Hoffman
Disable Fade Track UI if a fade track already exists in the sequence.
#jira UESEQ-393
Change 3876163 by Max.Chen
Sequencer: Swap the camera object to the camera component's owner if it's not the same.
#jira UE-54874
Change 3876971 by Andrew.Porter
EngineTest: Moved Media Player Seek test to new folder. Also enabled the test with new ground truth image.
Change 3877040 by Max.Chen
Cine Camera: Split camera properties to two groups, "Camera Options" and "Camera Settings". The cine camera now hides properties
in the "Camera Settings" group so that properties like bConstrainAspectRatio (in the "Camera Options" group) can be visible.
#jira UE-54192
Change 3877763 by Max.Chen
Curve Editor: Fix curve changed on end drag so that only curves that had keys/tangents that were changed receive notification,
otherwise all loaded curves were getting notified that they were changed.
#jira UE-54951
Change 3878234 by Matt.Hoffman
Disable "Drop Below" targets for Sequencer Tree nodes to prevent a confusing UX issue where dropping underneath a Object Binding
Node puts it after the object binding node but the UI looks like it's inserting it inside the Object Binding node.
#jira UE-54743
Change 3879359 by Mike.Zyracki
If a track is inactive we dim it a bit which seems to be the UE4 way to show inactive or disabled state. We changed the active
logic so that all subtracks need to be inactive for the track to also be inactive(instead of all active for active). This conforms to
how the active state actually works, e.g if you have two sections and only one is active the track is still active above it.
#jira UESEQ-388
Change 3879462 by Max.Chen
Sequencer: Allow dragging onto a particular row which would move out any overlapping sections to make space for the newly
created section. Newly created sections are now selected and throbbed to draw attention to themselves.
#jira UE-54664
Change 3879464 by Max.Chen
Sequencer: Fixed overlapping ranges being inserted into the evaluation field during compilation
- The issue was that track segments that had been combined with adjacent segments (due to them being identical) would
potentially cause a subsequently compiled frame to overlap with a range that had already been inserted into the evaluation field.
- The insertion code previously asserted that only minor overlaps were catered for (due to fp rounding errors) and assumed
that a supplied range could not entirely contain any other range in the field.
- The solution is to supply the insertion time along with the range to know exactly where the data should live in the field,
and crop the range to the maximum allowable space between adjacent ranges.
#jira UE-54922
Change 3879590 by Matt.Hoffman
Items that are now added to the Sequencer via the "+Track" menu will be selected after being added.
Items can now be added inside of folders instead of just to the root level.
#jira UE-27397
Change 3879612 by Mike.Zyracki
Display Nodes with no children are always active.
#jira UESEQ-388
Change 3879730 by Matt.Hoffman
Sequence Recorder's actor recording groups now remove items from the group when removed via the UI.
#jira UESEQ-339
Change 3880256 by Mike.Zyracki
Fix issue with inactive display with folders and other track nodes.
#jira UESEQ-388
Change 3883491 by Max.Chen
Fix issue where tick is skipped due to last ticked pose isn't cleared after AnimInstance changes.
Copy from Release-4.19
#jira UE-51323
Change 3883603 by Max.Chen
Movie Scene Capture: Add option toggle disable screen percentage. By default this is on (no change in current behavior).
#jira UE-51898
Change 3885074 by Max.Preussner
MediaCompositing: Resetting media texture & freeing resource on section end; removed dead code
Change 3887220 by Max.Preussner
MediaCompositing: Defaulted media section duration to 1 sec (since we do not know the actual duration in most cases)
Change 3887478 by Matt.Hoffman
Sequences now show [Inactive] in their title bars when they're disabled. This helps communicate why a sequence isn't being
evaluated.
#jira UE-51469
Change 3888985 by Max.Chen
Movie Scene Capture: Clamp HDR Compression Quality between 0 and 1.
#jira UE-55136
Change 3893519 by Max.Chen
Sequence Recorder: Clarified tooltip for bRecordNearbySpawnedActors - spawned actors will still be recorded if they match the
ActorFilter.
#jira UE-55238
Change 3893546 by Max.Chen
Sequence Recorder: If a selected actor already has a recording, add a blank recording.
#jira UE-55239
Change 3894044 by Max.Preussner
MediaCompositing: Added support for seeking into a media section
Change 3894310 by andrew.porter
MediaFrameworkTest: Adding Img media sources for 1080 and 2160 ravent test content
Change 3894426 by Max.Preussner
MediaAssets: Letting media textures with AutoClear retain their clear color when player is reset
Change 3895717 by Max.Chen
Sequencer: Null checks to prevent crash when saving the default state of a spawnable
#jira UE-55304
Change 3897388 by Max.Chen
Sequencer: Don't update current time to be within the view range when stepping into a sequence.
#jira UE-55322
Change 3897452 by Max.Chen
Audio: Fix crash when trying to record audio without any active capture devices. Log warning if the number of input channels is
not 1 or 2.
#jira UE-55223
Change 3897619 by Max.Preussner
MediaCompositing: Removed commented out code
Change 3898072 by Max.Chen
Sequencer: Override the animation asset in the player state if it doesn't match the animation asset that's being evaluated.
#jira UE-55328
Change 3898272 by Max.Preussner
MediaPlayerEditor: Made slate brush constants static
Change 3898704 by Max.Chen
Sequencer: Skip if the binding id's sequence can't be found.
#jira UE-55337
Change 3899855 by Max.Preussner
MediaCompositingEditor: Added cache state visualization to media track
Change 3900300 by Max.Preussner
MediaCompositingEditor: Added loop indicators to media sections
Change 3900694 by Max.Preussner
ImfMedia: Looping cache only when player is looping
Change 3900892 by Max.Preussner
Stats: Added stats category for media framework
Change 3900954 by Max.Preussner
MediaCompositing: Don't evaluate at the end of media section
Change 3901348 by Max.Preussner
Core: Replaced TLruCache autos for better readability
Change 3901655 by Max.Preussner
ImgMedia: Added more perf stats to EXR reader
Change 3901972 by Max.Preussner
MediaAssets: Added getter for media player in media sound components
Change 3902233 by Max.Preussner
MediaAssets: Enabling media textures to receive samples right after player is assigned
Change 3902238 by Max.Preussner
MediaCompositing: Working around init/shutdown idiosyncracies in sequencer
Change 3904045 by Max.Chen
Sequencer: Fix copy/paste crash. Only process UMovieSceneCopyableBinding and objects that can be spawned by the movie scene
spawn register.
#jira UE-55314
Change 3905605 by Max.Chen
Sequencer: Restrict spawnables from being created if they have a ClassWithin that UMovieScene is not a child of.
#jira UE-55429
Change 3906550 by Max.Chen
Sequencer: Add media track icon
#jira UE-55480
Change 3907101 by Max.Chen
Sequence Recorder: Fix bugs related to not recording a level sequence. There were certain assumptions that creating a level
sequence meant that sequence recording was in progress. This is not always the case - the recorders can record animation assets and not
create a level sequence.
Changed the notion of IsRecording() to having at least one actor recording that is recording. Countdown timer, recording
displays, etc should function if IsRecording() and not based on whether a level sequence is created.
#jira UE-55485
Change 3907247 by Max.Chen
Sequence Recorder: Fix crash not removing PrepareToCleanseEditorObject delegate. Repros when opening sequence recorder, closing
it, and then opening or creating a level.
Change 3910343 by Max.Preussner
Core: Added async helper for executing functions on a given thread pool
Change 3910346 by Max.Preussner
ImgMedia: Added separate thread pools for loading/decoding and deleting image frames
Change 3910829 by Max.Preussner
Profiler: Increased visible range of profiler graph
Change 3910841 by Max.Preussner
MediaCompositing: Displaying asset name instead of full media source path in media section
Change 3910870 by Max.Preussner
ImgMedia: Using deallocation thread pool only in debug builds
Change 3919642 by Max.Chen
Sequence Recorder: Clarify active tooltip
#jira UE-55661
Change 3919660 by Max.Chen
Sequencer: Sequence template source signatures are now also compared to catch the case where a sub-sequence asset has been saved
but not modified
- The following sequence of events exposes this issue:
- Create a master sequence with a single shot that spawns a cube
- Add this sequence to a level and set it to auto-play
- Save everything and restart
- Resave just the inner shot asset without opening it
- PIE
- The inner shot never spawns its cube because its template was wiped on save, but its signature never changed. Since the
master sequence previously didn't check the template source signature, it ends up trying to evaluate an empty template.
#jira UE-55626
#jira UE-55490
Change 3921825 by Max.Chen
Sequencer: "Run Construction Script in Sequencer" is off by default for blueprints but on for Sequencer. This allows the content
author to switch it on for specific blueprints and sequencer will be default, run those with construction scripts enabled.
Change 3922232 by Max.Chen
Sequence Recorder: Reset countdelay on stop.
#jira UE-55755
Change 3922306 by Max.Chen
Sequence Recorder: Don't automatically mark transforms to be recorded by sequence recorder. Instead, log a warning if the user
toggled it off to warn that the resulting animation might not match gameplay.
#jira UE-55758
Change 3922912 by Max.Chen
Sequence Recorder: Fix refresh next sequence name
#jira UE-55757
Change 3927654 by Max.Chen
Movie Scene Capture: Added format mapping for the name of the current camera
#jira UE-55769
PR #4537
Change 3927658 by Max.Chen
Sequencer: Added fbx property mapping for "FocusDistance" to "FocusSettings.ManualFocusDistance"
#jira UE-55782
Change 3932022 by Max.Chen
Sequencer: Add import animation track section to next available row index.
#jira UE-55892
Change 3933919 by Max.Chen
Sequencer: Jump to playback start frame and not 0 to start playback for recording.
#jira UE-55933
Change 3934307 by Andrew.Rodham
Sequencer: Add template signature that is re-generated every time the base template is regenerated, which invalidates evaluation
fields
This fixes an issue where the same sequence is instantiated multiple times in a sequence.
If the source sequence was saved, its template would be wiped, which would invalidate the template ID
When an instance tries to evaluate the master template, it would only invalidate a range in the evaluation field that was the
hull of any invalid sub sequences overlapping the current time, potentially leaving invalid data in the evaluation field at positions
later (or earlier) on in the sequence
When the sub template was re-generated, it receives the same SequenceSignature as it had before (because the sequence hasn't
actually changed), which causes the stale evaluation field data to fail the IsDirty check (because the sequence is the same as it
thought, but the *template* has changed)
This has been addressed be adding a signature to templates themselves, and checking both the template signature and sequence
signature as a part of the IsDirty check. This ensures that we regenerate if either the template, or the sequence have changed.
#jira UE-55934
Change 3936327 by Andrew.Rodham
Sequencer: Removed increment when trimming right
UMovieSceneSection::TrimSection already explicity assigns an exclusive bound to the time passed in. The new behavior means we
can trim a section to the right, and insert another section without changing the time to create adjacent sections.
#jira UE-42652
Change 3936328 by Andrew.Rodham
Fixed KeyFrameManipulator assignment operators and copy/move constructors
- These types are potentially self-referential so cannot use default constructors/assignment
Change 3936330 by Andrew.Rodham
Converted UMGSequencePlayer to use frames internally
#jira UE-54878
Change 3936726 by Max.Chen
Sequencer: Set track node as the parent of the key area node. The key area switcher needs the object binding id from the parent
object binding node. Without this, the binding to the external value fails.
#jira UE-55931
Change 3936775 by Max.Chen
Sequencer: Should stop or loop should compare DurationFrames with Current Time from StartTime.
The bug is that if you set 30 warmup frames in movie rendering for a range of 0-100, the FrameRange will be starting at -30 and
have a duration of 130. Without this fix, the playback will continue until frame 130, rather than 100.
#jira UE-55933
Change 3936935 by Matt.Hoffman
Easing Curves are now represented in Play Rate resolution instead of internal resolution.
#jira UE-55937
Change 3937069 by Matt.Hoffman
Users can toggle if the is infinite on each side, limited by which tracks support infinite ranges.
#jira UE-55891
Change 3937516 by Max.Preussner
ImgMedia: Added support for single-threaded platforms
#jira UE-55986
Change 3937826 by Max.Preussner
MediaAssets: Disabling media sound components on HTML5 if AudioMixer is not enabled
Change 3937997 by Max.Chen
Curve Editor: Add Zoom to Fit Curves so that selected curves from Sequencer can be focused on. Tested that undo doesn't re-zoom.
#jira UE-55935
Change 3938000 by Max.Chen
Sequencer: Stop all sounds before generating audio waveforms.
#jira UE-55951
Change 3938376 by Max.Preussner
XGEController: Disabled XGE Controller in single-threaded apps to prevent crash
Change 3938444 by Max.Preussner
Core: Added async support for single-threaded applications
Change 3938445 by Max.Preussner
Networking: Added support for single-threaded applications in UDP socket sender/receiver
Change 3938447 by Max.Preussner
Messaging: Added support for single-threaded applications
Change 3939432 by Max.Chen
Sequence Recorder: Append command list to global level editor actions so that shortcuts are accessible in level editor.
#jira UE-55798
Change 3940229 by Andrew.Rodham
Added prospective display rate upgrade to UMovieScene::PostLoad
- There was previously some very odd behaviour that would assign the fixed frame interval only when a sub sequence was focused
in SSequencer. This meant that many sequences could have a frame interval of 0 set in the data.
- Under the old method of snap interval display this would have fallen back to getting the display interval from the sequencer
settings, but we no longer look at these.
- The USequencerSettings properties have been removed and in their place, a prospective data upgrade for sequences that have a
fixed frame interval old 0fps that sets the play rate to the previous defaults based off the old USequencerSettings defaults.
- This could end up 'changing' the display rate for sequences where the user has changed the snap interval in the settings for
a particular sequence editor, but there's not much we can do about that given we don't have access to the USequencerSettings classes in
UMovieScene
#jira UE-55919
Change 3940277 by Andrew.Rodham
Sequencer: Added ability to default frame resolutions and play rates for newly created actor sequences
Change 3940378 by Andrew.Rodham
Sequencer: Post move import dialog now defaults to the playback framerate of the sequence, and floors to frame numbers
Change 3940559 by Andrew.Rodham
Reinstated primed or recording sequence color
Change 3940642 by Max.Preussner
ImagePlate: Removed image plate media playback functionality
Change 3940843 by Max.Preussner
Core: Made TCircularQueue actually thread-safe; improved code comments
Change 3940860 by Max.Chen
Sequencer: Changed StructNameToKey to StructPathToKey
Previously, keying a PropertyPath of [RenderTransform][Shear][X] would get trimmed to X, which doesn't map to a channel name as
considered by Sequencer2dTransformTrackEditor. Instead, trim the resulting property path to [Shear][X] so that track editors can
determine the desired struct path and channels to key.
#jira UE-52966
Change 3941292 by Mike.Zyracki
Fix for trajectories out of range not showing up.
1) If we had no key data we would pop the time, so wouldn't get the section ranges.
2) Calculating of upper bound was wrong, checking against -1 and not key == num of keys when doing algo::lower_bound.
3) No need to do the Bck-- for the bakward iterators since we fixed #2. We start now from the upper bound correctly.
4) If we had no keys (at section start,end) we would incorrectly say we were any key type, so since we draw constant keys as
dashed we would do so incorrectly around section end points.
#jira UE-55929
Change 3941424 by Max.Chen
Curve Editor: Change Zoom to Fit to use TArrayView
Change 3941498 by Max.Preussner
Core: Added FMath::DivideAndRoundNearest function
Change 3942097 by Matt.Hoffman
Drop Frame Timecode Support for NTSC rates.
Change 3942104 by Matt.Hoffman
Sequence Recorder Group is no longer visible inside the World Outliner after using one.
#jira 55266
Change 3942107 by Max.Chen
Sequencer: Resurrect logic to find or extend an existing section when adding keys.
Change 3942330 by Max.Chen
Sequence Recorder: Better tooltip for default animation settings.
#jira UE-55636
Change 3942339 by Max.Chen
Sequence Recorder: Better tooltip for default animation settings.
#jira UE-55636
Change 3942507 by Andrew.Rodham
Sequencer: We no longer pad the time overlap threshold with a small number that is not scaled by the current zoom level
- The presence of this pad was causing keys that were far apart to be grouped when zoomed in a long way
Change 3942509 by Andrew.Rodham
Sequencer: Only pad total view range, rather than section range as well when retrieving keys to render
- This stops us from rendering keys that are within the view range, but outside the section range
Change 3942512 by Andrew.Rodham
Added transactions to some sequencer details customizations
Change 3942513 by Andrew.Rodham
Sequencer: Reinstated validation checks to UMovieSceneSection::SetStartFrame and SetEndFrame, changed erroneous uses to use
SetRange
Change 3942560 by Andrew.Rodham
Pass by rvalue reference to appease error C2719 on Win32
('InChannels': formal parameter with requested alignment of 8 won't be aligned)
Change 3942697 by Andrew.Rodham
Newly Created Level Sequences and Actor Sequences now default to 24000 fps frame resolution (+/- ~24hrs range, supporting all
integer rates + 23.976)
Change 3942700 by Andrew.Rodham
Sequencer: Added legacy out-of-bounds errors for times that are not supported by the current legacy upgrade frame resolution
Change 3942989 by Max.Preussner
Core: Fixed circular queue count calculation
Change 3943538 by Max.Preussner
MediaAssets: Reverted workaround for procedural audio log spam in HTML5
(Actor component initialization cannot be skipped if the component is used in a level)
Change 3944071 by Max.Preussner
QAGame: Fixed Media Texture keeps last frame of Media when PIE ends
#jira UE-53360
Change 3944292 by Max.Chen
Sequencer: Added extra flags to ensure that asset initialization does not occur on template actor sequences
#jira UE-56113
Change 3944364 by Max.Chen
Sequencer: Prevent circular shot/master tracks.
Tested adding master -> child -> master as drag and drop cinematic shot tracks and sub tracks as well as through the + button.
#jira UE-56091
Change 3944422 by Max.Chen
Sequence Recorder: Disable transform recording if off.
#jira UE-56061
Change 3944745 by Andrew.Rodham
Sequencer: Key rendering fixes
- Fixed assert that occured when keys happened to reside on some times due to KeyTime + TimeOverlapThreshold - KeyTime being
slightly larger TimeOverlapThreshold
- Fixed keys sometimes being clipped when zoomed right in due to lack of half-frame offset
- Added missing documentation to MovieSceneTimeHelpers.h
#jira UE-56107
Change 3945231 by Andrew.Rodham
Sequencer: Reconstruct channel proxy on Serialize to catch all cases of undo/redo, PostLoad and duplication
#jira UE-56089
Change 3945301 by Andrew.Rodham
Sequencer: Added safety checks during initial sequence recording to guard against applying negative or 0-sized sequence ranges
#jira UE-56125
Change 3946627 by Max.Preussner
Fortnite: Fixed game crashes closing editor while in PIE - Pure virtual function being called
#jira UE-56144
[CL 3946896 by Max Chen in Main branch]
2018-03-14 22:09:33 -04:00
|
|
|
, AllowZoom(true)
|
|
|
|
|
, CursorSize(0.05f)
|
|
|
|
|
{}
|
|
|
|
|
|
|
|
|
|
/** The scrub position */
|
2022-11-29 09:25:35 -05:00
|
|
|
TAttribute<double> ScrubPosition;
|
Copying //UE4/Dev-Sequencer to //UE4/Dev-Main (Source: //UE4/Dev-Sequencer @ 3946692)
#lockdown Nick.Penwarden
#rb none
============================
MAJOR FEATURES & CHANGES
============================
Change 3801826 by Max.Chen
PR #4304: Level Sequence crash fix - Guarded against dereferencing null componen. (Contributed by DSDambuster)
Change 3801828 by Max.Chen
PR #4302: Movie Scene Visibility Template unitialised variable, causing random . (Contributed by DSDambuster)
Change 3801837 by Max.Chen
Sequencer: Delay spawning/construction for convert to possessable. This fixes a bug where property values would be lost when
converting back and forth from possessable to spawnable.
#jira UE-52400
Change 3801841 by Max.Chen
Sequencer: Make spacer nodes not selectable.
PR #4194: Improvements to Sequencer (Contributed by projectgheist)
#jira UE-53117
#jira UE-52139
Change 3804183 by Max.Preussner
MediaAssets: Added missing lock in media sound component
Change 3805414 by Max.Preussner
MediaAssets: Setting valid GUID when initializing media texture resource
Change 3819578 by Max.Chen
PR #4370: When enabling the "MovieCapture", do not turn off the Stereo-3D display. (Contributed by yehaike)
#jira UE-53647
Change 3823414 by Max.Chen
Curve Editor: Lock down the first and last keys in the redundant keys removal range so that they're unaffected.
#jira UE-53591
Change 3826406 by Max.Chen
Sequencer: Move OnStartedPlaying() to within first update in UpdateTimeCursorPosition(). This fixes an issue where setting the
hud/player visibility was getting stomped on later.
#jira UE-52772
Change 3827044 by Max.Preussner
MediaAssets: Added sprite visualization to media sound component
#jira UE-53594
Change 3827988 by Max.Preussner
MediaPlayerAssets: Fixed Media Texture is not linked to Media Player when created together
#jira UE-53532
Change 3828506 by Max.Preussner
MediaPlayerEditor: Added attenuation visualizer for media sound components
#jira UE-53594
Change 3832590 by andrew.porter
EngineTest: Added a keep state check in Property Animation sequencer test
Change 3833053 by andrew.porter
EngineTest: Adding Hierarchical Bias test
Change 3835683 by andrew.porter
EngineTest: Adding UMG Animation screenshot test
Change 3836076 by Max.Chen
Sequencer: Fix audio volume and pitch multiplier deprecation.
Change 3836230 by andrew.porter
EngineTest: Adding Sequence Bone Position automation test
Change 3836347 by Max.Chen
Sequencer: Fixes to shot name parsing.
When a shot doesn't contain a shot number, assume, [ShotName]_[TakeNumber].
When duplicating a shot, put the new shot in the same path of the original shot, so that the take numbers will increment
properly.
#jira UE-51868
Change 3836552 by Max.Chen
Sequencer: Sub section now has a takes menu
Change 3838094 by Max.Chen
UMG: Fix template finish not getting called on stop. This fixes a bug where sections aren't restored when finished.
#jira UE-52285
Change 3838708 by Max.Chen
Sequencer: Add notification when the blend type is changed.
#jira UE-54046
Change 3840295 by Max.Chen
Sequencer: Fix copy/paste crash for lights
#jira UE-54084
Change 3840957 by Mike.Zyracki
Added Show Only Keyable and Show Only Animated to the filter list in the property editor.
Added IsPropertyAnimated to IDetailKeyframe Interface which already had support for showing properties which are keyable (which
is used for the key icon next to the properties.). Could have created another interface but then would have had to mimic the sequencer
binding, releasing also, so this seemed best way.
One issue still left is that custom built detail items currently don't store associated properties(usually) and so certain
properties, in particulalry transforms, won't show up as keyable or animated. Note this also shows up with the keyable icon not showing
up next to transform tracks, and other filters like Show Only Modified not working with transforms/customs. Not sure best way to tackle
this.
#jira UESEQ-328
Change 3841756 by Max.Chen
Sequencer: Fix unbound possessable components when pasting spawnables.
#jira UE-54104
Change 3843950 by andrew.porter
EngineTest: Renaming LevelStreaming tests/content to LevelVisibility
Change 3844082 by Mike.Zyracki
Missing file for animated filter in property editor.
When finding if a track is animated we need to find it but we can't easily induce the MovieTrack class for any particular
property. So we don't set a class for it and just search by it's ID and name.
#jira UESEQ-328
Change 3846902 by Max.Preussner
ImgMedia: Fixed image media player never finished initialization if loading failed
#jira UE-54247
Change 3849820 by Mike.Zyracki
Reassigning deleted widgets didn't work since the menu extender mechanism needs a valid UObject in order to perform an operation
on it. So to fix we replaced GetObjectBindingContextMenuExtender in WidgetBlueprint with new delegate mechanism
(OnBuildCustomContextMenuForGuid) that supports FGuid in addition to UObjects which is needed to handle re-binding deleted widgets. Note
that the default sequencer hacks this for replacing deleted actors in SequencerObjectBindingNode to check to see if a LevelSequence is
active. We could move to this mechanism there also.
#jira UE-53163
Change 3852211 by Max.Chen
UMG: Indicate name of the property that is not bound.
#jira UE-54350
Change 3854120 by Max.Chen
Sequencer: Fix sibling folders being allowed to have the same folder name.
#jira UE-54363
Change 3854627 by Max.Chen
Sequencer: Step to next/previous key should work for all tracks if there aren't any selected.
#jira UESEQ-391
Change 3855825 by andrew.porter
EngineTest: Adding animation blending automation test
Change 3855950 by andrew.porter
EngineTest: Adding correct expected valuues to animation blending test
Change 3856237 by Matt.Hoffman
UESEQ-336 - Sequencer Track Reordering
Adds the ability to re-order Master Tracks, Folders and Object Bindings within sequencer hierarchies (including UMG). Adds the
ability to do a one-off sorting of the content under the old sorting behavior if the user wants to reset their layout to how it was
under legacy behavior.
Modifies SequencerTrackNodes, SequencerFolderNodes and SequencerObjectBindingNodes to handle CanDrop/OnDrop for above, below and
ontop of.
Fixes a Slate Issue that forcibly expanded a TreeviewRow if an item handled OnDrop. Slate will now only forcibly expand the row
if the item says the drop happened ontop of the item, and not above or below it like it previously did.
Change 3856503 by andrew.porter
EngineTest: Adding automation test for using animation blueprint with blend multi node in sequencer
Change 3857875 by Max.Chen
Sequencer: Assign the sequence id after the template is compiled.
#jira UE-54462
Change 3858344 by Max.Chen
Sequencer: Prevent Goto and Transform boxes from overlapping by allowing them to be visible at the same time in an autosized
horizontal box. Also, added close button to the goto box.
PR #4425: Prevent Goto and Transform boxes from overlapping in Sequencer ... (Contributed by projectgheist)
#jira UE-54210
Change 3860566 by andrew.porter
MediaFrameworkTest: Set the option to index 0 for the audio and video track list by default
Change 3860654 by andrew.porter
EngineTest: Enabling Camera Cut + FOV test
Change 3860981 by andrew.porter
EngineTest: Updating skeletal mesh tests with a delay after set playback position
Change 3861256 by Max.Chen
Sequencer: Add all bindings if none selected.
#jira-54440
Change 3862154 by Andrew.Rodham
Added TimeManagement module
Change 3862424 by andrew.porter
EngineTest: Turned on the test Bone Positions with Blend Multi Node
Change 3862573 by andrew.porter
EngineTest: Adding test to compare bone positions in a sequence that is blending an animation that is using an AnimBP
Change 3865117 by Max.Chen
Sequencer: Stop auto scroll on mouse release of movement.
#jira UE-31212
Change 3865303 by Max.Chen
Sequencer: Add drag and drop transactions
#jira UE-54662
Change 3865304 by Max.Chen
Sequencer: Fix crash when an actor factory is not found.
Change 3865361 by Max.Chen
Sequencer: Don't change the camera/shot lock button when popping out of a sequence.
#jira UE-54665
Change 3865412 by Max.Chen
Sequencer: Determine whether a transform track is for a camera by using the spawned object or template
#jira UE-54666
Change 3865685 by Max.Chen
Sequencer: Clear autoscrub offset when stopping autoscroll
#jira UE-31212
Change 3865886 by Max.Chen
Sequence Recorder: Log an error if the number of frames changes while recording. This can happen if the skeleton changes while
recording.
#jira UE-48715
Change 3866925 by Andrew.Porter
MediaFrameworkTest: Changing the current PNG test video image sequence to 1024 x 576
Change 3867705 by andrew.porter
QAGame: Adding Audio Sort Sequence to dev folder
Change 3867890 by andrew.porter
QAGame: Adding a sequence for testing a sorting crash to my dev folder
Change 3872628 by Max.Chen
Movie Scene Capture: Split delay before warmup into split delay before shot warmup so that there's separate controls for when
the movie scene capture warmups up vs. shot boundaries.
Change 3873131 by Matt.Hoffman
UE-54732 - Crash reordering a folder with a track.
This was caused by folders being the only type of track to check if someone was putting a parent track into a child track.
Object Binding tracks and Tracks now check as well so that you can't use the above/below drop targets to add parents as children.
This also fixed a typo in the localization keys.
#jira UE-54732
Change 3873301 by Mike.Zyracki
Added ability to support continous euler angle changes when changing rotations, in particularly with the rotation gizmo's. To do
this we effectively added a form an of 'euler filter'(https://en.wikipedia.org/wiki/Euler_filter) to find the closest euler angle to the
current euler angle.
Three functions were added to FRotator to make this possible, one to get the euler angle that's has the same rotation as it, one
to get the difference between two euler angles via Manhattan distance and a third using the previous two to choose a Rotator value
that's closest to it. We then use these functions before calling UComponent::SetRelativeRotation to make sure we use the correct Euler
after the Quat conversion. We also no longer limit(bound) the euler angles to -180,180, which is obviously necessary to avoid flips.
I also changed how we caluclate yaw and roll when pitch is -90 or 90 to make it the standard approach of zeroing out roll and
just setting yaw. Main reasons are the previous implementation had precision issues so things like 180, 90, -180 would show up due to
numbers being nearly zero but negative,(this would break any smooth interpolations), and this facilitates having a 'gimbal' rotation
mode (like Maya, Blender etc..) if we ever want that also. If needed we could keep the previous implementation but would need to add
some FMath::IsNearlyZero checks, with less performance.
Note we only do this special filtering when applying delta's to actors or components in the editors, which then call
UComponent::SetRelativeRotationExact, which is a new function to foces the RelativeRotation to be equal to the new rotation. This allows
us to store un-nomalized Rotators at the cost that the RotationCache may be broken. We didn't change any of the other UComponent
functions that set rotations (via Quats or Transforms) so they will still be bounded and unwound.
In SetInternalWorldLocationAndRotation we only set the rotation if the rotation has changed, which fixes the rotation getting
changed and re-normalized if just translate happens.
In TransformTrackEditor, we correclty use the bUndwing flag and in MovieScene3DTransformSection there was an un-needed winding
check there, it will be unwound earlier if needed, which happens if Sequence Recording is happening. Max we should talk about what to do
about this .
Note the euler angle drag via the widget is still bound to 0-360. I think we should just unbound that now since the rotations
value are now unbound.
This review now includes fixes suggested by Zak.
#jira UE-UE-22228
Change 3873483 by Matt.Hoffman
Sequencer Tracks can now be inserted above the spacer at the bottom of the tree.
#jira UE-54706
Change 3873899 by Max.Chen
Sequencer: Add section selection throbbing
Change 3873908 by Max.Chen
Movie Scene Capture: Added logging per frame
Change 3873924 by Matt.Hoffman
Adds the ability to store Sequence Recorder setups into profiles that stay with the map and can be re-loaded later. Profiles
store the Actor Recordings so the settings for each actor should carry with them.
#jira UESEQ-339
Change 3874726 by Matt.Hoffman
Disable drag-and-drop targets on spacers that come between rows in Sequencer. This prevents extra drag/drop targets showing up
between each row.
#jira UE-54706
Change 3874862 by Matt.Hoffman
Audio Track no longer gets reordered when adding sub-audio tracks, as sub-tracks are no longer counted towards the sorting order
index when normalizing indexes.
#jira UE-54727
Change 3875905 by Matt.Hoffman
Disable Fade Track UI if a fade track already exists in the sequence.
#jira UESEQ-393
Change 3876163 by Max.Chen
Sequencer: Swap the camera object to the camera component's owner if it's not the same.
#jira UE-54874
Change 3876971 by Andrew.Porter
EngineTest: Moved Media Player Seek test to new folder. Also enabled the test with new ground truth image.
Change 3877040 by Max.Chen
Cine Camera: Split camera properties to two groups, "Camera Options" and "Camera Settings". The cine camera now hides properties
in the "Camera Settings" group so that properties like bConstrainAspectRatio (in the "Camera Options" group) can be visible.
#jira UE-54192
Change 3877763 by Max.Chen
Curve Editor: Fix curve changed on end drag so that only curves that had keys/tangents that were changed receive notification,
otherwise all loaded curves were getting notified that they were changed.
#jira UE-54951
Change 3878234 by Matt.Hoffman
Disable "Drop Below" targets for Sequencer Tree nodes to prevent a confusing UX issue where dropping underneath a Object Binding
Node puts it after the object binding node but the UI looks like it's inserting it inside the Object Binding node.
#jira UE-54743
Change 3879359 by Mike.Zyracki
If a track is inactive we dim it a bit which seems to be the UE4 way to show inactive or disabled state. We changed the active
logic so that all subtracks need to be inactive for the track to also be inactive(instead of all active for active). This conforms to
how the active state actually works, e.g if you have two sections and only one is active the track is still active above it.
#jira UESEQ-388
Change 3879462 by Max.Chen
Sequencer: Allow dragging onto a particular row which would move out any overlapping sections to make space for the newly
created section. Newly created sections are now selected and throbbed to draw attention to themselves.
#jira UE-54664
Change 3879464 by Max.Chen
Sequencer: Fixed overlapping ranges being inserted into the evaluation field during compilation
- The issue was that track segments that had been combined with adjacent segments (due to them being identical) would
potentially cause a subsequently compiled frame to overlap with a range that had already been inserted into the evaluation field.
- The insertion code previously asserted that only minor overlaps were catered for (due to fp rounding errors) and assumed
that a supplied range could not entirely contain any other range in the field.
- The solution is to supply the insertion time along with the range to know exactly where the data should live in the field,
and crop the range to the maximum allowable space between adjacent ranges.
#jira UE-54922
Change 3879590 by Matt.Hoffman
Items that are now added to the Sequencer via the "+Track" menu will be selected after being added.
Items can now be added inside of folders instead of just to the root level.
#jira UE-27397
Change 3879612 by Mike.Zyracki
Display Nodes with no children are always active.
#jira UESEQ-388
Change 3879730 by Matt.Hoffman
Sequence Recorder's actor recording groups now remove items from the group when removed via the UI.
#jira UESEQ-339
Change 3880256 by Mike.Zyracki
Fix issue with inactive display with folders and other track nodes.
#jira UESEQ-388
Change 3883491 by Max.Chen
Fix issue where tick is skipped due to last ticked pose isn't cleared after AnimInstance changes.
Copy from Release-4.19
#jira UE-51323
Change 3883603 by Max.Chen
Movie Scene Capture: Add option toggle disable screen percentage. By default this is on (no change in current behavior).
#jira UE-51898
Change 3885074 by Max.Preussner
MediaCompositing: Resetting media texture & freeing resource on section end; removed dead code
Change 3887220 by Max.Preussner
MediaCompositing: Defaulted media section duration to 1 sec (since we do not know the actual duration in most cases)
Change 3887478 by Matt.Hoffman
Sequences now show [Inactive] in their title bars when they're disabled. This helps communicate why a sequence isn't being
evaluated.
#jira UE-51469
Change 3888985 by Max.Chen
Movie Scene Capture: Clamp HDR Compression Quality between 0 and 1.
#jira UE-55136
Change 3893519 by Max.Chen
Sequence Recorder: Clarified tooltip for bRecordNearbySpawnedActors - spawned actors will still be recorded if they match the
ActorFilter.
#jira UE-55238
Change 3893546 by Max.Chen
Sequence Recorder: If a selected actor already has a recording, add a blank recording.
#jira UE-55239
Change 3894044 by Max.Preussner
MediaCompositing: Added support for seeking into a media section
Change 3894310 by andrew.porter
MediaFrameworkTest: Adding Img media sources for 1080 and 2160 ravent test content
Change 3894426 by Max.Preussner
MediaAssets: Letting media textures with AutoClear retain their clear color when player is reset
Change 3895717 by Max.Chen
Sequencer: Null checks to prevent crash when saving the default state of a spawnable
#jira UE-55304
Change 3897388 by Max.Chen
Sequencer: Don't update current time to be within the view range when stepping into a sequence.
#jira UE-55322
Change 3897452 by Max.Chen
Audio: Fix crash when trying to record audio without any active capture devices. Log warning if the number of input channels is
not 1 or 2.
#jira UE-55223
Change 3897619 by Max.Preussner
MediaCompositing: Removed commented out code
Change 3898072 by Max.Chen
Sequencer: Override the animation asset in the player state if it doesn't match the animation asset that's being evaluated.
#jira UE-55328
Change 3898272 by Max.Preussner
MediaPlayerEditor: Made slate brush constants static
Change 3898704 by Max.Chen
Sequencer: Skip if the binding id's sequence can't be found.
#jira UE-55337
Change 3899855 by Max.Preussner
MediaCompositingEditor: Added cache state visualization to media track
Change 3900300 by Max.Preussner
MediaCompositingEditor: Added loop indicators to media sections
Change 3900694 by Max.Preussner
ImfMedia: Looping cache only when player is looping
Change 3900892 by Max.Preussner
Stats: Added stats category for media framework
Change 3900954 by Max.Preussner
MediaCompositing: Don't evaluate at the end of media section
Change 3901348 by Max.Preussner
Core: Replaced TLruCache autos for better readability
Change 3901655 by Max.Preussner
ImgMedia: Added more perf stats to EXR reader
Change 3901972 by Max.Preussner
MediaAssets: Added getter for media player in media sound components
Change 3902233 by Max.Preussner
MediaAssets: Enabling media textures to receive samples right after player is assigned
Change 3902238 by Max.Preussner
MediaCompositing: Working around init/shutdown idiosyncracies in sequencer
Change 3904045 by Max.Chen
Sequencer: Fix copy/paste crash. Only process UMovieSceneCopyableBinding and objects that can be spawned by the movie scene
spawn register.
#jira UE-55314
Change 3905605 by Max.Chen
Sequencer: Restrict spawnables from being created if they have a ClassWithin that UMovieScene is not a child of.
#jira UE-55429
Change 3906550 by Max.Chen
Sequencer: Add media track icon
#jira UE-55480
Change 3907101 by Max.Chen
Sequence Recorder: Fix bugs related to not recording a level sequence. There were certain assumptions that creating a level
sequence meant that sequence recording was in progress. This is not always the case - the recorders can record animation assets and not
create a level sequence.
Changed the notion of IsRecording() to having at least one actor recording that is recording. Countdown timer, recording
displays, etc should function if IsRecording() and not based on whether a level sequence is created.
#jira UE-55485
Change 3907247 by Max.Chen
Sequence Recorder: Fix crash not removing PrepareToCleanseEditorObject delegate. Repros when opening sequence recorder, closing
it, and then opening or creating a level.
Change 3910343 by Max.Preussner
Core: Added async helper for executing functions on a given thread pool
Change 3910346 by Max.Preussner
ImgMedia: Added separate thread pools for loading/decoding and deleting image frames
Change 3910829 by Max.Preussner
Profiler: Increased visible range of profiler graph
Change 3910841 by Max.Preussner
MediaCompositing: Displaying asset name instead of full media source path in media section
Change 3910870 by Max.Preussner
ImgMedia: Using deallocation thread pool only in debug builds
Change 3919642 by Max.Chen
Sequence Recorder: Clarify active tooltip
#jira UE-55661
Change 3919660 by Max.Chen
Sequencer: Sequence template source signatures are now also compared to catch the case where a sub-sequence asset has been saved
but not modified
- The following sequence of events exposes this issue:
- Create a master sequence with a single shot that spawns a cube
- Add this sequence to a level and set it to auto-play
- Save everything and restart
- Resave just the inner shot asset without opening it
- PIE
- The inner shot never spawns its cube because its template was wiped on save, but its signature never changed. Since the
master sequence previously didn't check the template source signature, it ends up trying to evaluate an empty template.
#jira UE-55626
#jira UE-55490
Change 3921825 by Max.Chen
Sequencer: "Run Construction Script in Sequencer" is off by default for blueprints but on for Sequencer. This allows the content
author to switch it on for specific blueprints and sequencer will be default, run those with construction scripts enabled.
Change 3922232 by Max.Chen
Sequence Recorder: Reset countdelay on stop.
#jira UE-55755
Change 3922306 by Max.Chen
Sequence Recorder: Don't automatically mark transforms to be recorded by sequence recorder. Instead, log a warning if the user
toggled it off to warn that the resulting animation might not match gameplay.
#jira UE-55758
Change 3922912 by Max.Chen
Sequence Recorder: Fix refresh next sequence name
#jira UE-55757
Change 3927654 by Max.Chen
Movie Scene Capture: Added format mapping for the name of the current camera
#jira UE-55769
PR #4537
Change 3927658 by Max.Chen
Sequencer: Added fbx property mapping for "FocusDistance" to "FocusSettings.ManualFocusDistance"
#jira UE-55782
Change 3932022 by Max.Chen
Sequencer: Add import animation track section to next available row index.
#jira UE-55892
Change 3933919 by Max.Chen
Sequencer: Jump to playback start frame and not 0 to start playback for recording.
#jira UE-55933
Change 3934307 by Andrew.Rodham
Sequencer: Add template signature that is re-generated every time the base template is regenerated, which invalidates evaluation
fields
This fixes an issue where the same sequence is instantiated multiple times in a sequence.
If the source sequence was saved, its template would be wiped, which would invalidate the template ID
When an instance tries to evaluate the master template, it would only invalidate a range in the evaluation field that was the
hull of any invalid sub sequences overlapping the current time, potentially leaving invalid data in the evaluation field at positions
later (or earlier) on in the sequence
When the sub template was re-generated, it receives the same SequenceSignature as it had before (because the sequence hasn't
actually changed), which causes the stale evaluation field data to fail the IsDirty check (because the sequence is the same as it
thought, but the *template* has changed)
This has been addressed be adding a signature to templates themselves, and checking both the template signature and sequence
signature as a part of the IsDirty check. This ensures that we regenerate if either the template, or the sequence have changed.
#jira UE-55934
Change 3936327 by Andrew.Rodham
Sequencer: Removed increment when trimming right
UMovieSceneSection::TrimSection already explicity assigns an exclusive bound to the time passed in. The new behavior means we
can trim a section to the right, and insert another section without changing the time to create adjacent sections.
#jira UE-42652
Change 3936328 by Andrew.Rodham
Fixed KeyFrameManipulator assignment operators and copy/move constructors
- These types are potentially self-referential so cannot use default constructors/assignment
Change 3936330 by Andrew.Rodham
Converted UMGSequencePlayer to use frames internally
#jira UE-54878
Change 3936726 by Max.Chen
Sequencer: Set track node as the parent of the key area node. The key area switcher needs the object binding id from the parent
object binding node. Without this, the binding to the external value fails.
#jira UE-55931
Change 3936775 by Max.Chen
Sequencer: Should stop or loop should compare DurationFrames with Current Time from StartTime.
The bug is that if you set 30 warmup frames in movie rendering for a range of 0-100, the FrameRange will be starting at -30 and
have a duration of 130. Without this fix, the playback will continue until frame 130, rather than 100.
#jira UE-55933
Change 3936935 by Matt.Hoffman
Easing Curves are now represented in Play Rate resolution instead of internal resolution.
#jira UE-55937
Change 3937069 by Matt.Hoffman
Users can toggle if the is infinite on each side, limited by which tracks support infinite ranges.
#jira UE-55891
Change 3937516 by Max.Preussner
ImgMedia: Added support for single-threaded platforms
#jira UE-55986
Change 3937826 by Max.Preussner
MediaAssets: Disabling media sound components on HTML5 if AudioMixer is not enabled
Change 3937997 by Max.Chen
Curve Editor: Add Zoom to Fit Curves so that selected curves from Sequencer can be focused on. Tested that undo doesn't re-zoom.
#jira UE-55935
Change 3938000 by Max.Chen
Sequencer: Stop all sounds before generating audio waveforms.
#jira UE-55951
Change 3938376 by Max.Preussner
XGEController: Disabled XGE Controller in single-threaded apps to prevent crash
Change 3938444 by Max.Preussner
Core: Added async support for single-threaded applications
Change 3938445 by Max.Preussner
Networking: Added support for single-threaded applications in UDP socket sender/receiver
Change 3938447 by Max.Preussner
Messaging: Added support for single-threaded applications
Change 3939432 by Max.Chen
Sequence Recorder: Append command list to global level editor actions so that shortcuts are accessible in level editor.
#jira UE-55798
Change 3940229 by Andrew.Rodham
Added prospective display rate upgrade to UMovieScene::PostLoad
- There was previously some very odd behaviour that would assign the fixed frame interval only when a sub sequence was focused
in SSequencer. This meant that many sequences could have a frame interval of 0 set in the data.
- Under the old method of snap interval display this would have fallen back to getting the display interval from the sequencer
settings, but we no longer look at these.
- The USequencerSettings properties have been removed and in their place, a prospective data upgrade for sequences that have a
fixed frame interval old 0fps that sets the play rate to the previous defaults based off the old USequencerSettings defaults.
- This could end up 'changing' the display rate for sequences where the user has changed the snap interval in the settings for
a particular sequence editor, but there's not much we can do about that given we don't have access to the USequencerSettings classes in
UMovieScene
#jira UE-55919
Change 3940277 by Andrew.Rodham
Sequencer: Added ability to default frame resolutions and play rates for newly created actor sequences
Change 3940378 by Andrew.Rodham
Sequencer: Post move import dialog now defaults to the playback framerate of the sequence, and floors to frame numbers
Change 3940559 by Andrew.Rodham
Reinstated primed or recording sequence color
Change 3940642 by Max.Preussner
ImagePlate: Removed image plate media playback functionality
Change 3940843 by Max.Preussner
Core: Made TCircularQueue actually thread-safe; improved code comments
Change 3940860 by Max.Chen
Sequencer: Changed StructNameToKey to StructPathToKey
Previously, keying a PropertyPath of [RenderTransform][Shear][X] would get trimmed to X, which doesn't map to a channel name as
considered by Sequencer2dTransformTrackEditor. Instead, trim the resulting property path to [Shear][X] so that track editors can
determine the desired struct path and channels to key.
#jira UE-52966
Change 3941292 by Mike.Zyracki
Fix for trajectories out of range not showing up.
1) If we had no key data we would pop the time, so wouldn't get the section ranges.
2) Calculating of upper bound was wrong, checking against -1 and not key == num of keys when doing algo::lower_bound.
3) No need to do the Bck-- for the bakward iterators since we fixed #2. We start now from the upper bound correctly.
4) If we had no keys (at section start,end) we would incorrectly say we were any key type, so since we draw constant keys as
dashed we would do so incorrectly around section end points.
#jira UE-55929
Change 3941424 by Max.Chen
Curve Editor: Change Zoom to Fit to use TArrayView
Change 3941498 by Max.Preussner
Core: Added FMath::DivideAndRoundNearest function
Change 3942097 by Matt.Hoffman
Drop Frame Timecode Support for NTSC rates.
Change 3942104 by Matt.Hoffman
Sequence Recorder Group is no longer visible inside the World Outliner after using one.
#jira 55266
Change 3942107 by Max.Chen
Sequencer: Resurrect logic to find or extend an existing section when adding keys.
Change 3942330 by Max.Chen
Sequence Recorder: Better tooltip for default animation settings.
#jira UE-55636
Change 3942339 by Max.Chen
Sequence Recorder: Better tooltip for default animation settings.
#jira UE-55636
Change 3942507 by Andrew.Rodham
Sequencer: We no longer pad the time overlap threshold with a small number that is not scaled by the current zoom level
- The presence of this pad was causing keys that were far apart to be grouped when zoomed in a long way
Change 3942509 by Andrew.Rodham
Sequencer: Only pad total view range, rather than section range as well when retrieving keys to render
- This stops us from rendering keys that are within the view range, but outside the section range
Change 3942512 by Andrew.Rodham
Added transactions to some sequencer details customizations
Change 3942513 by Andrew.Rodham
Sequencer: Reinstated validation checks to UMovieSceneSection::SetStartFrame and SetEndFrame, changed erroneous uses to use
SetRange
Change 3942560 by Andrew.Rodham
Pass by rvalue reference to appease error C2719 on Win32
('InChannels': formal parameter with requested alignment of 8 won't be aligned)
Change 3942697 by Andrew.Rodham
Newly Created Level Sequences and Actor Sequences now default to 24000 fps frame resolution (+/- ~24hrs range, supporting all
integer rates + 23.976)
Change 3942700 by Andrew.Rodham
Sequencer: Added legacy out-of-bounds errors for times that are not supported by the current legacy upgrade frame resolution
Change 3942989 by Max.Preussner
Core: Fixed circular queue count calculation
Change 3943538 by Max.Preussner
MediaAssets: Reverted workaround for procedural audio log spam in HTML5
(Actor component initialization cannot be skipped if the component is used in a level)
Change 3944071 by Max.Preussner
QAGame: Fixed Media Texture keeps last frame of Media when PIE ends
#jira UE-53360
Change 3944292 by Max.Chen
Sequencer: Added extra flags to ensure that asset initialization does not occur on template actor sequences
#jira UE-56113
Change 3944364 by Max.Chen
Sequencer: Prevent circular shot/master tracks.
Tested adding master -> child -> master as drag and drop cinematic shot tracks and sub tracks as well as through the + button.
#jira UE-56091
Change 3944422 by Max.Chen
Sequence Recorder: Disable transform recording if off.
#jira UE-56061
Change 3944745 by Andrew.Rodham
Sequencer: Key rendering fixes
- Fixed assert that occured when keys happened to reside on some times due to KeyTime + TimeOverlapThreshold - KeyTime being
slightly larger TimeOverlapThreshold
- Fixed keys sometimes being clipped when zoomed right in due to lack of half-frame offset
- Added missing documentation to MovieSceneTimeHelpers.h
#jira UE-56107
Change 3945231 by Andrew.Rodham
Sequencer: Reconstruct channel proxy on Serialize to catch all cases of undo/redo, PostLoad and duplication
#jira UE-56089
Change 3945301 by Andrew.Rodham
Sequencer: Added safety checks during initial sequence recording to guard against applying negative or 0-sized sequence ranges
#jira UE-56125
Change 3946627 by Max.Preussner
Fortnite: Fixed game crashes closing editor while in PIE - Pure virtual function being called
#jira UE-56144
[CL 3946896 by Max Chen in Main branch]
2018-03-14 22:09:33 -04:00
|
|
|
|
|
|
|
|
/** Called when the scrub position changes */
|
|
|
|
|
FOnScrubPositionChanged OnScrubPositionChanged;
|
|
|
|
|
|
|
|
|
|
/** Called right before the scrubber begins to move */
|
|
|
|
|
FSimpleDelegate OnBeginScrubberMovement;
|
|
|
|
|
|
|
|
|
|
/** Called right after the scrubber handle is released by the user */
|
|
|
|
|
FSimpleDelegate OnEndScrubberMovement;
|
|
|
|
|
|
|
|
|
|
/** View time range */
|
2022-11-29 09:25:35 -05:00
|
|
|
TAttribute< TRange<double> > ViewRange;
|
Copying //UE4/Dev-Sequencer to //UE4/Dev-Main (Source: //UE4/Dev-Sequencer @ 3946692)
#lockdown Nick.Penwarden
#rb none
============================
MAJOR FEATURES & CHANGES
============================
Change 3801826 by Max.Chen
PR #4304: Level Sequence crash fix - Guarded against dereferencing null componen. (Contributed by DSDambuster)
Change 3801828 by Max.Chen
PR #4302: Movie Scene Visibility Template unitialised variable, causing random . (Contributed by DSDambuster)
Change 3801837 by Max.Chen
Sequencer: Delay spawning/construction for convert to possessable. This fixes a bug where property values would be lost when
converting back and forth from possessable to spawnable.
#jira UE-52400
Change 3801841 by Max.Chen
Sequencer: Make spacer nodes not selectable.
PR #4194: Improvements to Sequencer (Contributed by projectgheist)
#jira UE-53117
#jira UE-52139
Change 3804183 by Max.Preussner
MediaAssets: Added missing lock in media sound component
Change 3805414 by Max.Preussner
MediaAssets: Setting valid GUID when initializing media texture resource
Change 3819578 by Max.Chen
PR #4370: When enabling the "MovieCapture", do not turn off the Stereo-3D display. (Contributed by yehaike)
#jira UE-53647
Change 3823414 by Max.Chen
Curve Editor: Lock down the first and last keys in the redundant keys removal range so that they're unaffected.
#jira UE-53591
Change 3826406 by Max.Chen
Sequencer: Move OnStartedPlaying() to within first update in UpdateTimeCursorPosition(). This fixes an issue where setting the
hud/player visibility was getting stomped on later.
#jira UE-52772
Change 3827044 by Max.Preussner
MediaAssets: Added sprite visualization to media sound component
#jira UE-53594
Change 3827988 by Max.Preussner
MediaPlayerAssets: Fixed Media Texture is not linked to Media Player when created together
#jira UE-53532
Change 3828506 by Max.Preussner
MediaPlayerEditor: Added attenuation visualizer for media sound components
#jira UE-53594
Change 3832590 by andrew.porter
EngineTest: Added a keep state check in Property Animation sequencer test
Change 3833053 by andrew.porter
EngineTest: Adding Hierarchical Bias test
Change 3835683 by andrew.porter
EngineTest: Adding UMG Animation screenshot test
Change 3836076 by Max.Chen
Sequencer: Fix audio volume and pitch multiplier deprecation.
Change 3836230 by andrew.porter
EngineTest: Adding Sequence Bone Position automation test
Change 3836347 by Max.Chen
Sequencer: Fixes to shot name parsing.
When a shot doesn't contain a shot number, assume, [ShotName]_[TakeNumber].
When duplicating a shot, put the new shot in the same path of the original shot, so that the take numbers will increment
properly.
#jira UE-51868
Change 3836552 by Max.Chen
Sequencer: Sub section now has a takes menu
Change 3838094 by Max.Chen
UMG: Fix template finish not getting called on stop. This fixes a bug where sections aren't restored when finished.
#jira UE-52285
Change 3838708 by Max.Chen
Sequencer: Add notification when the blend type is changed.
#jira UE-54046
Change 3840295 by Max.Chen
Sequencer: Fix copy/paste crash for lights
#jira UE-54084
Change 3840957 by Mike.Zyracki
Added Show Only Keyable and Show Only Animated to the filter list in the property editor.
Added IsPropertyAnimated to IDetailKeyframe Interface which already had support for showing properties which are keyable (which
is used for the key icon next to the properties.). Could have created another interface but then would have had to mimic the sequencer
binding, releasing also, so this seemed best way.
One issue still left is that custom built detail items currently don't store associated properties(usually) and so certain
properties, in particulalry transforms, won't show up as keyable or animated. Note this also shows up with the keyable icon not showing
up next to transform tracks, and other filters like Show Only Modified not working with transforms/customs. Not sure best way to tackle
this.
#jira UESEQ-328
Change 3841756 by Max.Chen
Sequencer: Fix unbound possessable components when pasting spawnables.
#jira UE-54104
Change 3843950 by andrew.porter
EngineTest: Renaming LevelStreaming tests/content to LevelVisibility
Change 3844082 by Mike.Zyracki
Missing file for animated filter in property editor.
When finding if a track is animated we need to find it but we can't easily induce the MovieTrack class for any particular
property. So we don't set a class for it and just search by it's ID and name.
#jira UESEQ-328
Change 3846902 by Max.Preussner
ImgMedia: Fixed image media player never finished initialization if loading failed
#jira UE-54247
Change 3849820 by Mike.Zyracki
Reassigning deleted widgets didn't work since the menu extender mechanism needs a valid UObject in order to perform an operation
on it. So to fix we replaced GetObjectBindingContextMenuExtender in WidgetBlueprint with new delegate mechanism
(OnBuildCustomContextMenuForGuid) that supports FGuid in addition to UObjects which is needed to handle re-binding deleted widgets. Note
that the default sequencer hacks this for replacing deleted actors in SequencerObjectBindingNode to check to see if a LevelSequence is
active. We could move to this mechanism there also.
#jira UE-53163
Change 3852211 by Max.Chen
UMG: Indicate name of the property that is not bound.
#jira UE-54350
Change 3854120 by Max.Chen
Sequencer: Fix sibling folders being allowed to have the same folder name.
#jira UE-54363
Change 3854627 by Max.Chen
Sequencer: Step to next/previous key should work for all tracks if there aren't any selected.
#jira UESEQ-391
Change 3855825 by andrew.porter
EngineTest: Adding animation blending automation test
Change 3855950 by andrew.porter
EngineTest: Adding correct expected valuues to animation blending test
Change 3856237 by Matt.Hoffman
UESEQ-336 - Sequencer Track Reordering
Adds the ability to re-order Master Tracks, Folders and Object Bindings within sequencer hierarchies (including UMG). Adds the
ability to do a one-off sorting of the content under the old sorting behavior if the user wants to reset their layout to how it was
under legacy behavior.
Modifies SequencerTrackNodes, SequencerFolderNodes and SequencerObjectBindingNodes to handle CanDrop/OnDrop for above, below and
ontop of.
Fixes a Slate Issue that forcibly expanded a TreeviewRow if an item handled OnDrop. Slate will now only forcibly expand the row
if the item says the drop happened ontop of the item, and not above or below it like it previously did.
Change 3856503 by andrew.porter
EngineTest: Adding automation test for using animation blueprint with blend multi node in sequencer
Change 3857875 by Max.Chen
Sequencer: Assign the sequence id after the template is compiled.
#jira UE-54462
Change 3858344 by Max.Chen
Sequencer: Prevent Goto and Transform boxes from overlapping by allowing them to be visible at the same time in an autosized
horizontal box. Also, added close button to the goto box.
PR #4425: Prevent Goto and Transform boxes from overlapping in Sequencer ... (Contributed by projectgheist)
#jira UE-54210
Change 3860566 by andrew.porter
MediaFrameworkTest: Set the option to index 0 for the audio and video track list by default
Change 3860654 by andrew.porter
EngineTest: Enabling Camera Cut + FOV test
Change 3860981 by andrew.porter
EngineTest: Updating skeletal mesh tests with a delay after set playback position
Change 3861256 by Max.Chen
Sequencer: Add all bindings if none selected.
#jira-54440
Change 3862154 by Andrew.Rodham
Added TimeManagement module
Change 3862424 by andrew.porter
EngineTest: Turned on the test Bone Positions with Blend Multi Node
Change 3862573 by andrew.porter
EngineTest: Adding test to compare bone positions in a sequence that is blending an animation that is using an AnimBP
Change 3865117 by Max.Chen
Sequencer: Stop auto scroll on mouse release of movement.
#jira UE-31212
Change 3865303 by Max.Chen
Sequencer: Add drag and drop transactions
#jira UE-54662
Change 3865304 by Max.Chen
Sequencer: Fix crash when an actor factory is not found.
Change 3865361 by Max.Chen
Sequencer: Don't change the camera/shot lock button when popping out of a sequence.
#jira UE-54665
Change 3865412 by Max.Chen
Sequencer: Determine whether a transform track is for a camera by using the spawned object or template
#jira UE-54666
Change 3865685 by Max.Chen
Sequencer: Clear autoscrub offset when stopping autoscroll
#jira UE-31212
Change 3865886 by Max.Chen
Sequence Recorder: Log an error if the number of frames changes while recording. This can happen if the skeleton changes while
recording.
#jira UE-48715
Change 3866925 by Andrew.Porter
MediaFrameworkTest: Changing the current PNG test video image sequence to 1024 x 576
Change 3867705 by andrew.porter
QAGame: Adding Audio Sort Sequence to dev folder
Change 3867890 by andrew.porter
QAGame: Adding a sequence for testing a sorting crash to my dev folder
Change 3872628 by Max.Chen
Movie Scene Capture: Split delay before warmup into split delay before shot warmup so that there's separate controls for when
the movie scene capture warmups up vs. shot boundaries.
Change 3873131 by Matt.Hoffman
UE-54732 - Crash reordering a folder with a track.
This was caused by folders being the only type of track to check if someone was putting a parent track into a child track.
Object Binding tracks and Tracks now check as well so that you can't use the above/below drop targets to add parents as children.
This also fixed a typo in the localization keys.
#jira UE-54732
Change 3873301 by Mike.Zyracki
Added ability to support continous euler angle changes when changing rotations, in particularly with the rotation gizmo's. To do
this we effectively added a form an of 'euler filter'(https://en.wikipedia.org/wiki/Euler_filter) to find the closest euler angle to the
current euler angle.
Three functions were added to FRotator to make this possible, one to get the euler angle that's has the same rotation as it, one
to get the difference between two euler angles via Manhattan distance and a third using the previous two to choose a Rotator value
that's closest to it. We then use these functions before calling UComponent::SetRelativeRotation to make sure we use the correct Euler
after the Quat conversion. We also no longer limit(bound) the euler angles to -180,180, which is obviously necessary to avoid flips.
I also changed how we caluclate yaw and roll when pitch is -90 or 90 to make it the standard approach of zeroing out roll and
just setting yaw. Main reasons are the previous implementation had precision issues so things like 180, 90, -180 would show up due to
numbers being nearly zero but negative,(this would break any smooth interpolations), and this facilitates having a 'gimbal' rotation
mode (like Maya, Blender etc..) if we ever want that also. If needed we could keep the previous implementation but would need to add
some FMath::IsNearlyZero checks, with less performance.
Note we only do this special filtering when applying delta's to actors or components in the editors, which then call
UComponent::SetRelativeRotationExact, which is a new function to foces the RelativeRotation to be equal to the new rotation. This allows
us to store un-nomalized Rotators at the cost that the RotationCache may be broken. We didn't change any of the other UComponent
functions that set rotations (via Quats or Transforms) so they will still be bounded and unwound.
In SetInternalWorldLocationAndRotation we only set the rotation if the rotation has changed, which fixes the rotation getting
changed and re-normalized if just translate happens.
In TransformTrackEditor, we correclty use the bUndwing flag and in MovieScene3DTransformSection there was an un-needed winding
check there, it will be unwound earlier if needed, which happens if Sequence Recording is happening. Max we should talk about what to do
about this .
Note the euler angle drag via the widget is still bound to 0-360. I think we should just unbound that now since the rotations
value are now unbound.
This review now includes fixes suggested by Zak.
#jira UE-UE-22228
Change 3873483 by Matt.Hoffman
Sequencer Tracks can now be inserted above the spacer at the bottom of the tree.
#jira UE-54706
Change 3873899 by Max.Chen
Sequencer: Add section selection throbbing
Change 3873908 by Max.Chen
Movie Scene Capture: Added logging per frame
Change 3873924 by Matt.Hoffman
Adds the ability to store Sequence Recorder setups into profiles that stay with the map and can be re-loaded later. Profiles
store the Actor Recordings so the settings for each actor should carry with them.
#jira UESEQ-339
Change 3874726 by Matt.Hoffman
Disable drag-and-drop targets on spacers that come between rows in Sequencer. This prevents extra drag/drop targets showing up
between each row.
#jira UE-54706
Change 3874862 by Matt.Hoffman
Audio Track no longer gets reordered when adding sub-audio tracks, as sub-tracks are no longer counted towards the sorting order
index when normalizing indexes.
#jira UE-54727
Change 3875905 by Matt.Hoffman
Disable Fade Track UI if a fade track already exists in the sequence.
#jira UESEQ-393
Change 3876163 by Max.Chen
Sequencer: Swap the camera object to the camera component's owner if it's not the same.
#jira UE-54874
Change 3876971 by Andrew.Porter
EngineTest: Moved Media Player Seek test to new folder. Also enabled the test with new ground truth image.
Change 3877040 by Max.Chen
Cine Camera: Split camera properties to two groups, "Camera Options" and "Camera Settings". The cine camera now hides properties
in the "Camera Settings" group so that properties like bConstrainAspectRatio (in the "Camera Options" group) can be visible.
#jira UE-54192
Change 3877763 by Max.Chen
Curve Editor: Fix curve changed on end drag so that only curves that had keys/tangents that were changed receive notification,
otherwise all loaded curves were getting notified that they were changed.
#jira UE-54951
Change 3878234 by Matt.Hoffman
Disable "Drop Below" targets for Sequencer Tree nodes to prevent a confusing UX issue where dropping underneath a Object Binding
Node puts it after the object binding node but the UI looks like it's inserting it inside the Object Binding node.
#jira UE-54743
Change 3879359 by Mike.Zyracki
If a track is inactive we dim it a bit which seems to be the UE4 way to show inactive or disabled state. We changed the active
logic so that all subtracks need to be inactive for the track to also be inactive(instead of all active for active). This conforms to
how the active state actually works, e.g if you have two sections and only one is active the track is still active above it.
#jira UESEQ-388
Change 3879462 by Max.Chen
Sequencer: Allow dragging onto a particular row which would move out any overlapping sections to make space for the newly
created section. Newly created sections are now selected and throbbed to draw attention to themselves.
#jira UE-54664
Change 3879464 by Max.Chen
Sequencer: Fixed overlapping ranges being inserted into the evaluation field during compilation
- The issue was that track segments that had been combined with adjacent segments (due to them being identical) would
potentially cause a subsequently compiled frame to overlap with a range that had already been inserted into the evaluation field.
- The insertion code previously asserted that only minor overlaps were catered for (due to fp rounding errors) and assumed
that a supplied range could not entirely contain any other range in the field.
- The solution is to supply the insertion time along with the range to know exactly where the data should live in the field,
and crop the range to the maximum allowable space between adjacent ranges.
#jira UE-54922
Change 3879590 by Matt.Hoffman
Items that are now added to the Sequencer via the "+Track" menu will be selected after being added.
Items can now be added inside of folders instead of just to the root level.
#jira UE-27397
Change 3879612 by Mike.Zyracki
Display Nodes with no children are always active.
#jira UESEQ-388
Change 3879730 by Matt.Hoffman
Sequence Recorder's actor recording groups now remove items from the group when removed via the UI.
#jira UESEQ-339
Change 3880256 by Mike.Zyracki
Fix issue with inactive display with folders and other track nodes.
#jira UESEQ-388
Change 3883491 by Max.Chen
Fix issue where tick is skipped due to last ticked pose isn't cleared after AnimInstance changes.
Copy from Release-4.19
#jira UE-51323
Change 3883603 by Max.Chen
Movie Scene Capture: Add option toggle disable screen percentage. By default this is on (no change in current behavior).
#jira UE-51898
Change 3885074 by Max.Preussner
MediaCompositing: Resetting media texture & freeing resource on section end; removed dead code
Change 3887220 by Max.Preussner
MediaCompositing: Defaulted media section duration to 1 sec (since we do not know the actual duration in most cases)
Change 3887478 by Matt.Hoffman
Sequences now show [Inactive] in their title bars when they're disabled. This helps communicate why a sequence isn't being
evaluated.
#jira UE-51469
Change 3888985 by Max.Chen
Movie Scene Capture: Clamp HDR Compression Quality between 0 and 1.
#jira UE-55136
Change 3893519 by Max.Chen
Sequence Recorder: Clarified tooltip for bRecordNearbySpawnedActors - spawned actors will still be recorded if they match the
ActorFilter.
#jira UE-55238
Change 3893546 by Max.Chen
Sequence Recorder: If a selected actor already has a recording, add a blank recording.
#jira UE-55239
Change 3894044 by Max.Preussner
MediaCompositing: Added support for seeking into a media section
Change 3894310 by andrew.porter
MediaFrameworkTest: Adding Img media sources for 1080 and 2160 ravent test content
Change 3894426 by Max.Preussner
MediaAssets: Letting media textures with AutoClear retain their clear color when player is reset
Change 3895717 by Max.Chen
Sequencer: Null checks to prevent crash when saving the default state of a spawnable
#jira UE-55304
Change 3897388 by Max.Chen
Sequencer: Don't update current time to be within the view range when stepping into a sequence.
#jira UE-55322
Change 3897452 by Max.Chen
Audio: Fix crash when trying to record audio without any active capture devices. Log warning if the number of input channels is
not 1 or 2.
#jira UE-55223
Change 3897619 by Max.Preussner
MediaCompositing: Removed commented out code
Change 3898072 by Max.Chen
Sequencer: Override the animation asset in the player state if it doesn't match the animation asset that's being evaluated.
#jira UE-55328
Change 3898272 by Max.Preussner
MediaPlayerEditor: Made slate brush constants static
Change 3898704 by Max.Chen
Sequencer: Skip if the binding id's sequence can't be found.
#jira UE-55337
Change 3899855 by Max.Preussner
MediaCompositingEditor: Added cache state visualization to media track
Change 3900300 by Max.Preussner
MediaCompositingEditor: Added loop indicators to media sections
Change 3900694 by Max.Preussner
ImfMedia: Looping cache only when player is looping
Change 3900892 by Max.Preussner
Stats: Added stats category for media framework
Change 3900954 by Max.Preussner
MediaCompositing: Don't evaluate at the end of media section
Change 3901348 by Max.Preussner
Core: Replaced TLruCache autos for better readability
Change 3901655 by Max.Preussner
ImgMedia: Added more perf stats to EXR reader
Change 3901972 by Max.Preussner
MediaAssets: Added getter for media player in media sound components
Change 3902233 by Max.Preussner
MediaAssets: Enabling media textures to receive samples right after player is assigned
Change 3902238 by Max.Preussner
MediaCompositing: Working around init/shutdown idiosyncracies in sequencer
Change 3904045 by Max.Chen
Sequencer: Fix copy/paste crash. Only process UMovieSceneCopyableBinding and objects that can be spawned by the movie scene
spawn register.
#jira UE-55314
Change 3905605 by Max.Chen
Sequencer: Restrict spawnables from being created if they have a ClassWithin that UMovieScene is not a child of.
#jira UE-55429
Change 3906550 by Max.Chen
Sequencer: Add media track icon
#jira UE-55480
Change 3907101 by Max.Chen
Sequence Recorder: Fix bugs related to not recording a level sequence. There were certain assumptions that creating a level
sequence meant that sequence recording was in progress. This is not always the case - the recorders can record animation assets and not
create a level sequence.
Changed the notion of IsRecording() to having at least one actor recording that is recording. Countdown timer, recording
displays, etc should function if IsRecording() and not based on whether a level sequence is created.
#jira UE-55485
Change 3907247 by Max.Chen
Sequence Recorder: Fix crash not removing PrepareToCleanseEditorObject delegate. Repros when opening sequence recorder, closing
it, and then opening or creating a level.
Change 3910343 by Max.Preussner
Core: Added async helper for executing functions on a given thread pool
Change 3910346 by Max.Preussner
ImgMedia: Added separate thread pools for loading/decoding and deleting image frames
Change 3910829 by Max.Preussner
Profiler: Increased visible range of profiler graph
Change 3910841 by Max.Preussner
MediaCompositing: Displaying asset name instead of full media source path in media section
Change 3910870 by Max.Preussner
ImgMedia: Using deallocation thread pool only in debug builds
Change 3919642 by Max.Chen
Sequence Recorder: Clarify active tooltip
#jira UE-55661
Change 3919660 by Max.Chen
Sequencer: Sequence template source signatures are now also compared to catch the case where a sub-sequence asset has been saved
but not modified
- The following sequence of events exposes this issue:
- Create a master sequence with a single shot that spawns a cube
- Add this sequence to a level and set it to auto-play
- Save everything and restart
- Resave just the inner shot asset without opening it
- PIE
- The inner shot never spawns its cube because its template was wiped on save, but its signature never changed. Since the
master sequence previously didn't check the template source signature, it ends up trying to evaluate an empty template.
#jira UE-55626
#jira UE-55490
Change 3921825 by Max.Chen
Sequencer: "Run Construction Script in Sequencer" is off by default for blueprints but on for Sequencer. This allows the content
author to switch it on for specific blueprints and sequencer will be default, run those with construction scripts enabled.
Change 3922232 by Max.Chen
Sequence Recorder: Reset countdelay on stop.
#jira UE-55755
Change 3922306 by Max.Chen
Sequence Recorder: Don't automatically mark transforms to be recorded by sequence recorder. Instead, log a warning if the user
toggled it off to warn that the resulting animation might not match gameplay.
#jira UE-55758
Change 3922912 by Max.Chen
Sequence Recorder: Fix refresh next sequence name
#jira UE-55757
Change 3927654 by Max.Chen
Movie Scene Capture: Added format mapping for the name of the current camera
#jira UE-55769
PR #4537
Change 3927658 by Max.Chen
Sequencer: Added fbx property mapping for "FocusDistance" to "FocusSettings.ManualFocusDistance"
#jira UE-55782
Change 3932022 by Max.Chen
Sequencer: Add import animation track section to next available row index.
#jira UE-55892
Change 3933919 by Max.Chen
Sequencer: Jump to playback start frame and not 0 to start playback for recording.
#jira UE-55933
Change 3934307 by Andrew.Rodham
Sequencer: Add template signature that is re-generated every time the base template is regenerated, which invalidates evaluation
fields
This fixes an issue where the same sequence is instantiated multiple times in a sequence.
If the source sequence was saved, its template would be wiped, which would invalidate the template ID
When an instance tries to evaluate the master template, it would only invalidate a range in the evaluation field that was the
hull of any invalid sub sequences overlapping the current time, potentially leaving invalid data in the evaluation field at positions
later (or earlier) on in the sequence
When the sub template was re-generated, it receives the same SequenceSignature as it had before (because the sequence hasn't
actually changed), which causes the stale evaluation field data to fail the IsDirty check (because the sequence is the same as it
thought, but the *template* has changed)
This has been addressed be adding a signature to templates themselves, and checking both the template signature and sequence
signature as a part of the IsDirty check. This ensures that we regenerate if either the template, or the sequence have changed.
#jira UE-55934
Change 3936327 by Andrew.Rodham
Sequencer: Removed increment when trimming right
UMovieSceneSection::TrimSection already explicity assigns an exclusive bound to the time passed in. The new behavior means we
can trim a section to the right, and insert another section without changing the time to create adjacent sections.
#jira UE-42652
Change 3936328 by Andrew.Rodham
Fixed KeyFrameManipulator assignment operators and copy/move constructors
- These types are potentially self-referential so cannot use default constructors/assignment
Change 3936330 by Andrew.Rodham
Converted UMGSequencePlayer to use frames internally
#jira UE-54878
Change 3936726 by Max.Chen
Sequencer: Set track node as the parent of the key area node. The key area switcher needs the object binding id from the parent
object binding node. Without this, the binding to the external value fails.
#jira UE-55931
Change 3936775 by Max.Chen
Sequencer: Should stop or loop should compare DurationFrames with Current Time from StartTime.
The bug is that if you set 30 warmup frames in movie rendering for a range of 0-100, the FrameRange will be starting at -30 and
have a duration of 130. Without this fix, the playback will continue until frame 130, rather than 100.
#jira UE-55933
Change 3936935 by Matt.Hoffman
Easing Curves are now represented in Play Rate resolution instead of internal resolution.
#jira UE-55937
Change 3937069 by Matt.Hoffman
Users can toggle if the is infinite on each side, limited by which tracks support infinite ranges.
#jira UE-55891
Change 3937516 by Max.Preussner
ImgMedia: Added support for single-threaded platforms
#jira UE-55986
Change 3937826 by Max.Preussner
MediaAssets: Disabling media sound components on HTML5 if AudioMixer is not enabled
Change 3937997 by Max.Chen
Curve Editor: Add Zoom to Fit Curves so that selected curves from Sequencer can be focused on. Tested that undo doesn't re-zoom.
#jira UE-55935
Change 3938000 by Max.Chen
Sequencer: Stop all sounds before generating audio waveforms.
#jira UE-55951
Change 3938376 by Max.Preussner
XGEController: Disabled XGE Controller in single-threaded apps to prevent crash
Change 3938444 by Max.Preussner
Core: Added async support for single-threaded applications
Change 3938445 by Max.Preussner
Networking: Added support for single-threaded applications in UDP socket sender/receiver
Change 3938447 by Max.Preussner
Messaging: Added support for single-threaded applications
Change 3939432 by Max.Chen
Sequence Recorder: Append command list to global level editor actions so that shortcuts are accessible in level editor.
#jira UE-55798
Change 3940229 by Andrew.Rodham
Added prospective display rate upgrade to UMovieScene::PostLoad
- There was previously some very odd behaviour that would assign the fixed frame interval only when a sub sequence was focused
in SSequencer. This meant that many sequences could have a frame interval of 0 set in the data.
- Under the old method of snap interval display this would have fallen back to getting the display interval from the sequencer
settings, but we no longer look at these.
- The USequencerSettings properties have been removed and in their place, a prospective data upgrade for sequences that have a
fixed frame interval old 0fps that sets the play rate to the previous defaults based off the old USequencerSettings defaults.
- This could end up 'changing' the display rate for sequences where the user has changed the snap interval in the settings for
a particular sequence editor, but there's not much we can do about that given we don't have access to the USequencerSettings classes in
UMovieScene
#jira UE-55919
Change 3940277 by Andrew.Rodham
Sequencer: Added ability to default frame resolutions and play rates for newly created actor sequences
Change 3940378 by Andrew.Rodham
Sequencer: Post move import dialog now defaults to the playback framerate of the sequence, and floors to frame numbers
Change 3940559 by Andrew.Rodham
Reinstated primed or recording sequence color
Change 3940642 by Max.Preussner
ImagePlate: Removed image plate media playback functionality
Change 3940843 by Max.Preussner
Core: Made TCircularQueue actually thread-safe; improved code comments
Change 3940860 by Max.Chen
Sequencer: Changed StructNameToKey to StructPathToKey
Previously, keying a PropertyPath of [RenderTransform][Shear][X] would get trimmed to X, which doesn't map to a channel name as
considered by Sequencer2dTransformTrackEditor. Instead, trim the resulting property path to [Shear][X] so that track editors can
determine the desired struct path and channels to key.
#jira UE-52966
Change 3941292 by Mike.Zyracki
Fix for trajectories out of range not showing up.
1) If we had no key data we would pop the time, so wouldn't get the section ranges.
2) Calculating of upper bound was wrong, checking against -1 and not key == num of keys when doing algo::lower_bound.
3) No need to do the Bck-- for the bakward iterators since we fixed #2. We start now from the upper bound correctly.
4) If we had no keys (at section start,end) we would incorrectly say we were any key type, so since we draw constant keys as
dashed we would do so incorrectly around section end points.
#jira UE-55929
Change 3941424 by Max.Chen
Curve Editor: Change Zoom to Fit to use TArrayView
Change 3941498 by Max.Preussner
Core: Added FMath::DivideAndRoundNearest function
Change 3942097 by Matt.Hoffman
Drop Frame Timecode Support for NTSC rates.
Change 3942104 by Matt.Hoffman
Sequence Recorder Group is no longer visible inside the World Outliner after using one.
#jira 55266
Change 3942107 by Max.Chen
Sequencer: Resurrect logic to find or extend an existing section when adding keys.
Change 3942330 by Max.Chen
Sequence Recorder: Better tooltip for default animation settings.
#jira UE-55636
Change 3942339 by Max.Chen
Sequence Recorder: Better tooltip for default animation settings.
#jira UE-55636
Change 3942507 by Andrew.Rodham
Sequencer: We no longer pad the time overlap threshold with a small number that is not scaled by the current zoom level
- The presence of this pad was causing keys that were far apart to be grouped when zoomed in a long way
Change 3942509 by Andrew.Rodham
Sequencer: Only pad total view range, rather than section range as well when retrieving keys to render
- This stops us from rendering keys that are within the view range, but outside the section range
Change 3942512 by Andrew.Rodham
Added transactions to some sequencer details customizations
Change 3942513 by Andrew.Rodham
Sequencer: Reinstated validation checks to UMovieSceneSection::SetStartFrame and SetEndFrame, changed erroneous uses to use
SetRange
Change 3942560 by Andrew.Rodham
Pass by rvalue reference to appease error C2719 on Win32
('InChannels': formal parameter with requested alignment of 8 won't be aligned)
Change 3942697 by Andrew.Rodham
Newly Created Level Sequences and Actor Sequences now default to 24000 fps frame resolution (+/- ~24hrs range, supporting all
integer rates + 23.976)
Change 3942700 by Andrew.Rodham
Sequencer: Added legacy out-of-bounds errors for times that are not supported by the current legacy upgrade frame resolution
Change 3942989 by Max.Preussner
Core: Fixed circular queue count calculation
Change 3943538 by Max.Preussner
MediaAssets: Reverted workaround for procedural audio log spam in HTML5
(Actor component initialization cannot be skipped if the component is used in a level)
Change 3944071 by Max.Preussner
QAGame: Fixed Media Texture keeps last frame of Media when PIE ends
#jira UE-53360
Change 3944292 by Max.Chen
Sequencer: Added extra flags to ensure that asset initialization does not occur on template actor sequences
#jira UE-56113
Change 3944364 by Max.Chen
Sequencer: Prevent circular shot/master tracks.
Tested adding master -> child -> master as drag and drop cinematic shot tracks and sub tracks as well as through the + button.
#jira UE-56091
Change 3944422 by Max.Chen
Sequence Recorder: Disable transform recording if off.
#jira UE-56061
Change 3944745 by Andrew.Rodham
Sequencer: Key rendering fixes
- Fixed assert that occured when keys happened to reside on some times due to KeyTime + TimeOverlapThreshold - KeyTime being
slightly larger TimeOverlapThreshold
- Fixed keys sometimes being clipped when zoomed right in due to lack of half-frame offset
- Added missing documentation to MovieSceneTimeHelpers.h
#jira UE-56107
Change 3945231 by Andrew.Rodham
Sequencer: Reconstruct channel proxy on Serialize to catch all cases of undo/redo, PostLoad and duplication
#jira UE-56089
Change 3945301 by Andrew.Rodham
Sequencer: Added safety checks during initial sequence recording to guard against applying negative or 0-sized sequence ranges
#jira UE-56125
Change 3946627 by Max.Preussner
Fortnite: Fixed game crashes closing editor while in PIE - Pure virtual function being called
#jira UE-56144
[CL 3946896 by Max Chen in Main branch]
2018-03-14 22:09:33 -04:00
|
|
|
|
|
|
|
|
/** Clamp time range */
|
2022-11-29 09:25:35 -05:00
|
|
|
TAttribute< TRange<double> > ClampRange;
|
Copying //UE4/Dev-Sequencer to //UE4/Dev-Main (Source: //UE4/Dev-Sequencer @ 3946692)
#lockdown Nick.Penwarden
#rb none
============================
MAJOR FEATURES & CHANGES
============================
Change 3801826 by Max.Chen
PR #4304: Level Sequence crash fix - Guarded against dereferencing null componen. (Contributed by DSDambuster)
Change 3801828 by Max.Chen
PR #4302: Movie Scene Visibility Template unitialised variable, causing random . (Contributed by DSDambuster)
Change 3801837 by Max.Chen
Sequencer: Delay spawning/construction for convert to possessable. This fixes a bug where property values would be lost when
converting back and forth from possessable to spawnable.
#jira UE-52400
Change 3801841 by Max.Chen
Sequencer: Make spacer nodes not selectable.
PR #4194: Improvements to Sequencer (Contributed by projectgheist)
#jira UE-53117
#jira UE-52139
Change 3804183 by Max.Preussner
MediaAssets: Added missing lock in media sound component
Change 3805414 by Max.Preussner
MediaAssets: Setting valid GUID when initializing media texture resource
Change 3819578 by Max.Chen
PR #4370: When enabling the "MovieCapture", do not turn off the Stereo-3D display. (Contributed by yehaike)
#jira UE-53647
Change 3823414 by Max.Chen
Curve Editor: Lock down the first and last keys in the redundant keys removal range so that they're unaffected.
#jira UE-53591
Change 3826406 by Max.Chen
Sequencer: Move OnStartedPlaying() to within first update in UpdateTimeCursorPosition(). This fixes an issue where setting the
hud/player visibility was getting stomped on later.
#jira UE-52772
Change 3827044 by Max.Preussner
MediaAssets: Added sprite visualization to media sound component
#jira UE-53594
Change 3827988 by Max.Preussner
MediaPlayerAssets: Fixed Media Texture is not linked to Media Player when created together
#jira UE-53532
Change 3828506 by Max.Preussner
MediaPlayerEditor: Added attenuation visualizer for media sound components
#jira UE-53594
Change 3832590 by andrew.porter
EngineTest: Added a keep state check in Property Animation sequencer test
Change 3833053 by andrew.porter
EngineTest: Adding Hierarchical Bias test
Change 3835683 by andrew.porter
EngineTest: Adding UMG Animation screenshot test
Change 3836076 by Max.Chen
Sequencer: Fix audio volume and pitch multiplier deprecation.
Change 3836230 by andrew.porter
EngineTest: Adding Sequence Bone Position automation test
Change 3836347 by Max.Chen
Sequencer: Fixes to shot name parsing.
When a shot doesn't contain a shot number, assume, [ShotName]_[TakeNumber].
When duplicating a shot, put the new shot in the same path of the original shot, so that the take numbers will increment
properly.
#jira UE-51868
Change 3836552 by Max.Chen
Sequencer: Sub section now has a takes menu
Change 3838094 by Max.Chen
UMG: Fix template finish not getting called on stop. This fixes a bug where sections aren't restored when finished.
#jira UE-52285
Change 3838708 by Max.Chen
Sequencer: Add notification when the blend type is changed.
#jira UE-54046
Change 3840295 by Max.Chen
Sequencer: Fix copy/paste crash for lights
#jira UE-54084
Change 3840957 by Mike.Zyracki
Added Show Only Keyable and Show Only Animated to the filter list in the property editor.
Added IsPropertyAnimated to IDetailKeyframe Interface which already had support for showing properties which are keyable (which
is used for the key icon next to the properties.). Could have created another interface but then would have had to mimic the sequencer
binding, releasing also, so this seemed best way.
One issue still left is that custom built detail items currently don't store associated properties(usually) and so certain
properties, in particulalry transforms, won't show up as keyable or animated. Note this also shows up with the keyable icon not showing
up next to transform tracks, and other filters like Show Only Modified not working with transforms/customs. Not sure best way to tackle
this.
#jira UESEQ-328
Change 3841756 by Max.Chen
Sequencer: Fix unbound possessable components when pasting spawnables.
#jira UE-54104
Change 3843950 by andrew.porter
EngineTest: Renaming LevelStreaming tests/content to LevelVisibility
Change 3844082 by Mike.Zyracki
Missing file for animated filter in property editor.
When finding if a track is animated we need to find it but we can't easily induce the MovieTrack class for any particular
property. So we don't set a class for it and just search by it's ID and name.
#jira UESEQ-328
Change 3846902 by Max.Preussner
ImgMedia: Fixed image media player never finished initialization if loading failed
#jira UE-54247
Change 3849820 by Mike.Zyracki
Reassigning deleted widgets didn't work since the menu extender mechanism needs a valid UObject in order to perform an operation
on it. So to fix we replaced GetObjectBindingContextMenuExtender in WidgetBlueprint with new delegate mechanism
(OnBuildCustomContextMenuForGuid) that supports FGuid in addition to UObjects which is needed to handle re-binding deleted widgets. Note
that the default sequencer hacks this for replacing deleted actors in SequencerObjectBindingNode to check to see if a LevelSequence is
active. We could move to this mechanism there also.
#jira UE-53163
Change 3852211 by Max.Chen
UMG: Indicate name of the property that is not bound.
#jira UE-54350
Change 3854120 by Max.Chen
Sequencer: Fix sibling folders being allowed to have the same folder name.
#jira UE-54363
Change 3854627 by Max.Chen
Sequencer: Step to next/previous key should work for all tracks if there aren't any selected.
#jira UESEQ-391
Change 3855825 by andrew.porter
EngineTest: Adding animation blending automation test
Change 3855950 by andrew.porter
EngineTest: Adding correct expected valuues to animation blending test
Change 3856237 by Matt.Hoffman
UESEQ-336 - Sequencer Track Reordering
Adds the ability to re-order Master Tracks, Folders and Object Bindings within sequencer hierarchies (including UMG). Adds the
ability to do a one-off sorting of the content under the old sorting behavior if the user wants to reset their layout to how it was
under legacy behavior.
Modifies SequencerTrackNodes, SequencerFolderNodes and SequencerObjectBindingNodes to handle CanDrop/OnDrop for above, below and
ontop of.
Fixes a Slate Issue that forcibly expanded a TreeviewRow if an item handled OnDrop. Slate will now only forcibly expand the row
if the item says the drop happened ontop of the item, and not above or below it like it previously did.
Change 3856503 by andrew.porter
EngineTest: Adding automation test for using animation blueprint with blend multi node in sequencer
Change 3857875 by Max.Chen
Sequencer: Assign the sequence id after the template is compiled.
#jira UE-54462
Change 3858344 by Max.Chen
Sequencer: Prevent Goto and Transform boxes from overlapping by allowing them to be visible at the same time in an autosized
horizontal box. Also, added close button to the goto box.
PR #4425: Prevent Goto and Transform boxes from overlapping in Sequencer ... (Contributed by projectgheist)
#jira UE-54210
Change 3860566 by andrew.porter
MediaFrameworkTest: Set the option to index 0 for the audio and video track list by default
Change 3860654 by andrew.porter
EngineTest: Enabling Camera Cut + FOV test
Change 3860981 by andrew.porter
EngineTest: Updating skeletal mesh tests with a delay after set playback position
Change 3861256 by Max.Chen
Sequencer: Add all bindings if none selected.
#jira-54440
Change 3862154 by Andrew.Rodham
Added TimeManagement module
Change 3862424 by andrew.porter
EngineTest: Turned on the test Bone Positions with Blend Multi Node
Change 3862573 by andrew.porter
EngineTest: Adding test to compare bone positions in a sequence that is blending an animation that is using an AnimBP
Change 3865117 by Max.Chen
Sequencer: Stop auto scroll on mouse release of movement.
#jira UE-31212
Change 3865303 by Max.Chen
Sequencer: Add drag and drop transactions
#jira UE-54662
Change 3865304 by Max.Chen
Sequencer: Fix crash when an actor factory is not found.
Change 3865361 by Max.Chen
Sequencer: Don't change the camera/shot lock button when popping out of a sequence.
#jira UE-54665
Change 3865412 by Max.Chen
Sequencer: Determine whether a transform track is for a camera by using the spawned object or template
#jira UE-54666
Change 3865685 by Max.Chen
Sequencer: Clear autoscrub offset when stopping autoscroll
#jira UE-31212
Change 3865886 by Max.Chen
Sequence Recorder: Log an error if the number of frames changes while recording. This can happen if the skeleton changes while
recording.
#jira UE-48715
Change 3866925 by Andrew.Porter
MediaFrameworkTest: Changing the current PNG test video image sequence to 1024 x 576
Change 3867705 by andrew.porter
QAGame: Adding Audio Sort Sequence to dev folder
Change 3867890 by andrew.porter
QAGame: Adding a sequence for testing a sorting crash to my dev folder
Change 3872628 by Max.Chen
Movie Scene Capture: Split delay before warmup into split delay before shot warmup so that there's separate controls for when
the movie scene capture warmups up vs. shot boundaries.
Change 3873131 by Matt.Hoffman
UE-54732 - Crash reordering a folder with a track.
This was caused by folders being the only type of track to check if someone was putting a parent track into a child track.
Object Binding tracks and Tracks now check as well so that you can't use the above/below drop targets to add parents as children.
This also fixed a typo in the localization keys.
#jira UE-54732
Change 3873301 by Mike.Zyracki
Added ability to support continous euler angle changes when changing rotations, in particularly with the rotation gizmo's. To do
this we effectively added a form an of 'euler filter'(https://en.wikipedia.org/wiki/Euler_filter) to find the closest euler angle to the
current euler angle.
Three functions were added to FRotator to make this possible, one to get the euler angle that's has the same rotation as it, one
to get the difference between two euler angles via Manhattan distance and a third using the previous two to choose a Rotator value
that's closest to it. We then use these functions before calling UComponent::SetRelativeRotation to make sure we use the correct Euler
after the Quat conversion. We also no longer limit(bound) the euler angles to -180,180, which is obviously necessary to avoid flips.
I also changed how we caluclate yaw and roll when pitch is -90 or 90 to make it the standard approach of zeroing out roll and
just setting yaw. Main reasons are the previous implementation had precision issues so things like 180, 90, -180 would show up due to
numbers being nearly zero but negative,(this would break any smooth interpolations), and this facilitates having a 'gimbal' rotation
mode (like Maya, Blender etc..) if we ever want that also. If needed we could keep the previous implementation but would need to add
some FMath::IsNearlyZero checks, with less performance.
Note we only do this special filtering when applying delta's to actors or components in the editors, which then call
UComponent::SetRelativeRotationExact, which is a new function to foces the RelativeRotation to be equal to the new rotation. This allows
us to store un-nomalized Rotators at the cost that the RotationCache may be broken. We didn't change any of the other UComponent
functions that set rotations (via Quats or Transforms) so they will still be bounded and unwound.
In SetInternalWorldLocationAndRotation we only set the rotation if the rotation has changed, which fixes the rotation getting
changed and re-normalized if just translate happens.
In TransformTrackEditor, we correclty use the bUndwing flag and in MovieScene3DTransformSection there was an un-needed winding
check there, it will be unwound earlier if needed, which happens if Sequence Recording is happening. Max we should talk about what to do
about this .
Note the euler angle drag via the widget is still bound to 0-360. I think we should just unbound that now since the rotations
value are now unbound.
This review now includes fixes suggested by Zak.
#jira UE-UE-22228
Change 3873483 by Matt.Hoffman
Sequencer Tracks can now be inserted above the spacer at the bottom of the tree.
#jira UE-54706
Change 3873899 by Max.Chen
Sequencer: Add section selection throbbing
Change 3873908 by Max.Chen
Movie Scene Capture: Added logging per frame
Change 3873924 by Matt.Hoffman
Adds the ability to store Sequence Recorder setups into profiles that stay with the map and can be re-loaded later. Profiles
store the Actor Recordings so the settings for each actor should carry with them.
#jira UESEQ-339
Change 3874726 by Matt.Hoffman
Disable drag-and-drop targets on spacers that come between rows in Sequencer. This prevents extra drag/drop targets showing up
between each row.
#jira UE-54706
Change 3874862 by Matt.Hoffman
Audio Track no longer gets reordered when adding sub-audio tracks, as sub-tracks are no longer counted towards the sorting order
index when normalizing indexes.
#jira UE-54727
Change 3875905 by Matt.Hoffman
Disable Fade Track UI if a fade track already exists in the sequence.
#jira UESEQ-393
Change 3876163 by Max.Chen
Sequencer: Swap the camera object to the camera component's owner if it's not the same.
#jira UE-54874
Change 3876971 by Andrew.Porter
EngineTest: Moved Media Player Seek test to new folder. Also enabled the test with new ground truth image.
Change 3877040 by Max.Chen
Cine Camera: Split camera properties to two groups, "Camera Options" and "Camera Settings". The cine camera now hides properties
in the "Camera Settings" group so that properties like bConstrainAspectRatio (in the "Camera Options" group) can be visible.
#jira UE-54192
Change 3877763 by Max.Chen
Curve Editor: Fix curve changed on end drag so that only curves that had keys/tangents that were changed receive notification,
otherwise all loaded curves were getting notified that they were changed.
#jira UE-54951
Change 3878234 by Matt.Hoffman
Disable "Drop Below" targets for Sequencer Tree nodes to prevent a confusing UX issue where dropping underneath a Object Binding
Node puts it after the object binding node but the UI looks like it's inserting it inside the Object Binding node.
#jira UE-54743
Change 3879359 by Mike.Zyracki
If a track is inactive we dim it a bit which seems to be the UE4 way to show inactive or disabled state. We changed the active
logic so that all subtracks need to be inactive for the track to also be inactive(instead of all active for active). This conforms to
how the active state actually works, e.g if you have two sections and only one is active the track is still active above it.
#jira UESEQ-388
Change 3879462 by Max.Chen
Sequencer: Allow dragging onto a particular row which would move out any overlapping sections to make space for the newly
created section. Newly created sections are now selected and throbbed to draw attention to themselves.
#jira UE-54664
Change 3879464 by Max.Chen
Sequencer: Fixed overlapping ranges being inserted into the evaluation field during compilation
- The issue was that track segments that had been combined with adjacent segments (due to them being identical) would
potentially cause a subsequently compiled frame to overlap with a range that had already been inserted into the evaluation field.
- The insertion code previously asserted that only minor overlaps were catered for (due to fp rounding errors) and assumed
that a supplied range could not entirely contain any other range in the field.
- The solution is to supply the insertion time along with the range to know exactly where the data should live in the field,
and crop the range to the maximum allowable space between adjacent ranges.
#jira UE-54922
Change 3879590 by Matt.Hoffman
Items that are now added to the Sequencer via the "+Track" menu will be selected after being added.
Items can now be added inside of folders instead of just to the root level.
#jira UE-27397
Change 3879612 by Mike.Zyracki
Display Nodes with no children are always active.
#jira UESEQ-388
Change 3879730 by Matt.Hoffman
Sequence Recorder's actor recording groups now remove items from the group when removed via the UI.
#jira UESEQ-339
Change 3880256 by Mike.Zyracki
Fix issue with inactive display with folders and other track nodes.
#jira UESEQ-388
Change 3883491 by Max.Chen
Fix issue where tick is skipped due to last ticked pose isn't cleared after AnimInstance changes.
Copy from Release-4.19
#jira UE-51323
Change 3883603 by Max.Chen
Movie Scene Capture: Add option toggle disable screen percentage. By default this is on (no change in current behavior).
#jira UE-51898
Change 3885074 by Max.Preussner
MediaCompositing: Resetting media texture & freeing resource on section end; removed dead code
Change 3887220 by Max.Preussner
MediaCompositing: Defaulted media section duration to 1 sec (since we do not know the actual duration in most cases)
Change 3887478 by Matt.Hoffman
Sequences now show [Inactive] in their title bars when they're disabled. This helps communicate why a sequence isn't being
evaluated.
#jira UE-51469
Change 3888985 by Max.Chen
Movie Scene Capture: Clamp HDR Compression Quality between 0 and 1.
#jira UE-55136
Change 3893519 by Max.Chen
Sequence Recorder: Clarified tooltip for bRecordNearbySpawnedActors - spawned actors will still be recorded if they match the
ActorFilter.
#jira UE-55238
Change 3893546 by Max.Chen
Sequence Recorder: If a selected actor already has a recording, add a blank recording.
#jira UE-55239
Change 3894044 by Max.Preussner
MediaCompositing: Added support for seeking into a media section
Change 3894310 by andrew.porter
MediaFrameworkTest: Adding Img media sources for 1080 and 2160 ravent test content
Change 3894426 by Max.Preussner
MediaAssets: Letting media textures with AutoClear retain their clear color when player is reset
Change 3895717 by Max.Chen
Sequencer: Null checks to prevent crash when saving the default state of a spawnable
#jira UE-55304
Change 3897388 by Max.Chen
Sequencer: Don't update current time to be within the view range when stepping into a sequence.
#jira UE-55322
Change 3897452 by Max.Chen
Audio: Fix crash when trying to record audio without any active capture devices. Log warning if the number of input channels is
not 1 or 2.
#jira UE-55223
Change 3897619 by Max.Preussner
MediaCompositing: Removed commented out code
Change 3898072 by Max.Chen
Sequencer: Override the animation asset in the player state if it doesn't match the animation asset that's being evaluated.
#jira UE-55328
Change 3898272 by Max.Preussner
MediaPlayerEditor: Made slate brush constants static
Change 3898704 by Max.Chen
Sequencer: Skip if the binding id's sequence can't be found.
#jira UE-55337
Change 3899855 by Max.Preussner
MediaCompositingEditor: Added cache state visualization to media track
Change 3900300 by Max.Preussner
MediaCompositingEditor: Added loop indicators to media sections
Change 3900694 by Max.Preussner
ImfMedia: Looping cache only when player is looping
Change 3900892 by Max.Preussner
Stats: Added stats category for media framework
Change 3900954 by Max.Preussner
MediaCompositing: Don't evaluate at the end of media section
Change 3901348 by Max.Preussner
Core: Replaced TLruCache autos for better readability
Change 3901655 by Max.Preussner
ImgMedia: Added more perf stats to EXR reader
Change 3901972 by Max.Preussner
MediaAssets: Added getter for media player in media sound components
Change 3902233 by Max.Preussner
MediaAssets: Enabling media textures to receive samples right after player is assigned
Change 3902238 by Max.Preussner
MediaCompositing: Working around init/shutdown idiosyncracies in sequencer
Change 3904045 by Max.Chen
Sequencer: Fix copy/paste crash. Only process UMovieSceneCopyableBinding and objects that can be spawned by the movie scene
spawn register.
#jira UE-55314
Change 3905605 by Max.Chen
Sequencer: Restrict spawnables from being created if they have a ClassWithin that UMovieScene is not a child of.
#jira UE-55429
Change 3906550 by Max.Chen
Sequencer: Add media track icon
#jira UE-55480
Change 3907101 by Max.Chen
Sequence Recorder: Fix bugs related to not recording a level sequence. There were certain assumptions that creating a level
sequence meant that sequence recording was in progress. This is not always the case - the recorders can record animation assets and not
create a level sequence.
Changed the notion of IsRecording() to having at least one actor recording that is recording. Countdown timer, recording
displays, etc should function if IsRecording() and not based on whether a level sequence is created.
#jira UE-55485
Change 3907247 by Max.Chen
Sequence Recorder: Fix crash not removing PrepareToCleanseEditorObject delegate. Repros when opening sequence recorder, closing
it, and then opening or creating a level.
Change 3910343 by Max.Preussner
Core: Added async helper for executing functions on a given thread pool
Change 3910346 by Max.Preussner
ImgMedia: Added separate thread pools for loading/decoding and deleting image frames
Change 3910829 by Max.Preussner
Profiler: Increased visible range of profiler graph
Change 3910841 by Max.Preussner
MediaCompositing: Displaying asset name instead of full media source path in media section
Change 3910870 by Max.Preussner
ImgMedia: Using deallocation thread pool only in debug builds
Change 3919642 by Max.Chen
Sequence Recorder: Clarify active tooltip
#jira UE-55661
Change 3919660 by Max.Chen
Sequencer: Sequence template source signatures are now also compared to catch the case where a sub-sequence asset has been saved
but not modified
- The following sequence of events exposes this issue:
- Create a master sequence with a single shot that spawns a cube
- Add this sequence to a level and set it to auto-play
- Save everything and restart
- Resave just the inner shot asset without opening it
- PIE
- The inner shot never spawns its cube because its template was wiped on save, but its signature never changed. Since the
master sequence previously didn't check the template source signature, it ends up trying to evaluate an empty template.
#jira UE-55626
#jira UE-55490
Change 3921825 by Max.Chen
Sequencer: "Run Construction Script in Sequencer" is off by default for blueprints but on for Sequencer. This allows the content
author to switch it on for specific blueprints and sequencer will be default, run those with construction scripts enabled.
Change 3922232 by Max.Chen
Sequence Recorder: Reset countdelay on stop.
#jira UE-55755
Change 3922306 by Max.Chen
Sequence Recorder: Don't automatically mark transforms to be recorded by sequence recorder. Instead, log a warning if the user
toggled it off to warn that the resulting animation might not match gameplay.
#jira UE-55758
Change 3922912 by Max.Chen
Sequence Recorder: Fix refresh next sequence name
#jira UE-55757
Change 3927654 by Max.Chen
Movie Scene Capture: Added format mapping for the name of the current camera
#jira UE-55769
PR #4537
Change 3927658 by Max.Chen
Sequencer: Added fbx property mapping for "FocusDistance" to "FocusSettings.ManualFocusDistance"
#jira UE-55782
Change 3932022 by Max.Chen
Sequencer: Add import animation track section to next available row index.
#jira UE-55892
Change 3933919 by Max.Chen
Sequencer: Jump to playback start frame and not 0 to start playback for recording.
#jira UE-55933
Change 3934307 by Andrew.Rodham
Sequencer: Add template signature that is re-generated every time the base template is regenerated, which invalidates evaluation
fields
This fixes an issue where the same sequence is instantiated multiple times in a sequence.
If the source sequence was saved, its template would be wiped, which would invalidate the template ID
When an instance tries to evaluate the master template, it would only invalidate a range in the evaluation field that was the
hull of any invalid sub sequences overlapping the current time, potentially leaving invalid data in the evaluation field at positions
later (or earlier) on in the sequence
When the sub template was re-generated, it receives the same SequenceSignature as it had before (because the sequence hasn't
actually changed), which causes the stale evaluation field data to fail the IsDirty check (because the sequence is the same as it
thought, but the *template* has changed)
This has been addressed be adding a signature to templates themselves, and checking both the template signature and sequence
signature as a part of the IsDirty check. This ensures that we regenerate if either the template, or the sequence have changed.
#jira UE-55934
Change 3936327 by Andrew.Rodham
Sequencer: Removed increment when trimming right
UMovieSceneSection::TrimSection already explicity assigns an exclusive bound to the time passed in. The new behavior means we
can trim a section to the right, and insert another section without changing the time to create adjacent sections.
#jira UE-42652
Change 3936328 by Andrew.Rodham
Fixed KeyFrameManipulator assignment operators and copy/move constructors
- These types are potentially self-referential so cannot use default constructors/assignment
Change 3936330 by Andrew.Rodham
Converted UMGSequencePlayer to use frames internally
#jira UE-54878
Change 3936726 by Max.Chen
Sequencer: Set track node as the parent of the key area node. The key area switcher needs the object binding id from the parent
object binding node. Without this, the binding to the external value fails.
#jira UE-55931
Change 3936775 by Max.Chen
Sequencer: Should stop or loop should compare DurationFrames with Current Time from StartTime.
The bug is that if you set 30 warmup frames in movie rendering for a range of 0-100, the FrameRange will be starting at -30 and
have a duration of 130. Without this fix, the playback will continue until frame 130, rather than 100.
#jira UE-55933
Change 3936935 by Matt.Hoffman
Easing Curves are now represented in Play Rate resolution instead of internal resolution.
#jira UE-55937
Change 3937069 by Matt.Hoffman
Users can toggle if the is infinite on each side, limited by which tracks support infinite ranges.
#jira UE-55891
Change 3937516 by Max.Preussner
ImgMedia: Added support for single-threaded platforms
#jira UE-55986
Change 3937826 by Max.Preussner
MediaAssets: Disabling media sound components on HTML5 if AudioMixer is not enabled
Change 3937997 by Max.Chen
Curve Editor: Add Zoom to Fit Curves so that selected curves from Sequencer can be focused on. Tested that undo doesn't re-zoom.
#jira UE-55935
Change 3938000 by Max.Chen
Sequencer: Stop all sounds before generating audio waveforms.
#jira UE-55951
Change 3938376 by Max.Preussner
XGEController: Disabled XGE Controller in single-threaded apps to prevent crash
Change 3938444 by Max.Preussner
Core: Added async support for single-threaded applications
Change 3938445 by Max.Preussner
Networking: Added support for single-threaded applications in UDP socket sender/receiver
Change 3938447 by Max.Preussner
Messaging: Added support for single-threaded applications
Change 3939432 by Max.Chen
Sequence Recorder: Append command list to global level editor actions so that shortcuts are accessible in level editor.
#jira UE-55798
Change 3940229 by Andrew.Rodham
Added prospective display rate upgrade to UMovieScene::PostLoad
- There was previously some very odd behaviour that would assign the fixed frame interval only when a sub sequence was focused
in SSequencer. This meant that many sequences could have a frame interval of 0 set in the data.
- Under the old method of snap interval display this would have fallen back to getting the display interval from the sequencer
settings, but we no longer look at these.
- The USequencerSettings properties have been removed and in their place, a prospective data upgrade for sequences that have a
fixed frame interval old 0fps that sets the play rate to the previous defaults based off the old USequencerSettings defaults.
- This could end up 'changing' the display rate for sequences where the user has changed the snap interval in the settings for
a particular sequence editor, but there's not much we can do about that given we don't have access to the USequencerSettings classes in
UMovieScene
#jira UE-55919
Change 3940277 by Andrew.Rodham
Sequencer: Added ability to default frame resolutions and play rates for newly created actor sequences
Change 3940378 by Andrew.Rodham
Sequencer: Post move import dialog now defaults to the playback framerate of the sequence, and floors to frame numbers
Change 3940559 by Andrew.Rodham
Reinstated primed or recording sequence color
Change 3940642 by Max.Preussner
ImagePlate: Removed image plate media playback functionality
Change 3940843 by Max.Preussner
Core: Made TCircularQueue actually thread-safe; improved code comments
Change 3940860 by Max.Chen
Sequencer: Changed StructNameToKey to StructPathToKey
Previously, keying a PropertyPath of [RenderTransform][Shear][X] would get trimmed to X, which doesn't map to a channel name as
considered by Sequencer2dTransformTrackEditor. Instead, trim the resulting property path to [Shear][X] so that track editors can
determine the desired struct path and channels to key.
#jira UE-52966
Change 3941292 by Mike.Zyracki
Fix for trajectories out of range not showing up.
1) If we had no key data we would pop the time, so wouldn't get the section ranges.
2) Calculating of upper bound was wrong, checking against -1 and not key == num of keys when doing algo::lower_bound.
3) No need to do the Bck-- for the bakward iterators since we fixed #2. We start now from the upper bound correctly.
4) If we had no keys (at section start,end) we would incorrectly say we were any key type, so since we draw constant keys as
dashed we would do so incorrectly around section end points.
#jira UE-55929
Change 3941424 by Max.Chen
Curve Editor: Change Zoom to Fit to use TArrayView
Change 3941498 by Max.Preussner
Core: Added FMath::DivideAndRoundNearest function
Change 3942097 by Matt.Hoffman
Drop Frame Timecode Support for NTSC rates.
Change 3942104 by Matt.Hoffman
Sequence Recorder Group is no longer visible inside the World Outliner after using one.
#jira 55266
Change 3942107 by Max.Chen
Sequencer: Resurrect logic to find or extend an existing section when adding keys.
Change 3942330 by Max.Chen
Sequence Recorder: Better tooltip for default animation settings.
#jira UE-55636
Change 3942339 by Max.Chen
Sequence Recorder: Better tooltip for default animation settings.
#jira UE-55636
Change 3942507 by Andrew.Rodham
Sequencer: We no longer pad the time overlap threshold with a small number that is not scaled by the current zoom level
- The presence of this pad was causing keys that were far apart to be grouped when zoomed in a long way
Change 3942509 by Andrew.Rodham
Sequencer: Only pad total view range, rather than section range as well when retrieving keys to render
- This stops us from rendering keys that are within the view range, but outside the section range
Change 3942512 by Andrew.Rodham
Added transactions to some sequencer details customizations
Change 3942513 by Andrew.Rodham
Sequencer: Reinstated validation checks to UMovieSceneSection::SetStartFrame and SetEndFrame, changed erroneous uses to use
SetRange
Change 3942560 by Andrew.Rodham
Pass by rvalue reference to appease error C2719 on Win32
('InChannels': formal parameter with requested alignment of 8 won't be aligned)
Change 3942697 by Andrew.Rodham
Newly Created Level Sequences and Actor Sequences now default to 24000 fps frame resolution (+/- ~24hrs range, supporting all
integer rates + 23.976)
Change 3942700 by Andrew.Rodham
Sequencer: Added legacy out-of-bounds errors for times that are not supported by the current legacy upgrade frame resolution
Change 3942989 by Max.Preussner
Core: Fixed circular queue count calculation
Change 3943538 by Max.Preussner
MediaAssets: Reverted workaround for procedural audio log spam in HTML5
(Actor component initialization cannot be skipped if the component is used in a level)
Change 3944071 by Max.Preussner
QAGame: Fixed Media Texture keeps last frame of Media when PIE ends
#jira UE-53360
Change 3944292 by Max.Chen
Sequencer: Added extra flags to ensure that asset initialization does not occur on template actor sequences
#jira UE-56113
Change 3944364 by Max.Chen
Sequencer: Prevent circular shot/master tracks.
Tested adding master -> child -> master as drag and drop cinematic shot tracks and sub tracks as well as through the + button.
#jira UE-56091
Change 3944422 by Max.Chen
Sequence Recorder: Disable transform recording if off.
#jira UE-56061
Change 3944745 by Andrew.Rodham
Sequencer: Key rendering fixes
- Fixed assert that occured when keys happened to reside on some times due to KeyTime + TimeOverlapThreshold - KeyTime being
slightly larger TimeOverlapThreshold
- Fixed keys sometimes being clipped when zoomed right in due to lack of half-frame offset
- Added missing documentation to MovieSceneTimeHelpers.h
#jira UE-56107
Change 3945231 by Andrew.Rodham
Sequencer: Reconstruct channel proxy on Serialize to catch all cases of undo/redo, PostLoad and duplication
#jira UE-56089
Change 3945301 by Andrew.Rodham
Sequencer: Added safety checks during initial sequence recording to guard against applying negative or 0-sized sequence ranges
#jira UE-56125
Change 3946627 by Max.Preussner
Fortnite: Fixed game crashes closing editor while in PIE - Pure virtual function being called
#jira UE-56144
[CL 3946896 by Max Chen in Main branch]
2018-03-14 22:09:33 -04:00
|
|
|
|
|
|
|
|
/** Called when the view range changes */
|
|
|
|
|
FOnRangeChanged OnViewRangeChanged;
|
|
|
|
|
|
|
|
|
|
/** Attribute defining the time snap interval */
|
2022-11-29 09:25:35 -05:00
|
|
|
TAttribute<double> TimeSnapInterval;
|
Copying //UE4/Dev-Sequencer to //UE4/Dev-Main (Source: //UE4/Dev-Sequencer @ 3946692)
#lockdown Nick.Penwarden
#rb none
============================
MAJOR FEATURES & CHANGES
============================
Change 3801826 by Max.Chen
PR #4304: Level Sequence crash fix - Guarded against dereferencing null componen. (Contributed by DSDambuster)
Change 3801828 by Max.Chen
PR #4302: Movie Scene Visibility Template unitialised variable, causing random . (Contributed by DSDambuster)
Change 3801837 by Max.Chen
Sequencer: Delay spawning/construction for convert to possessable. This fixes a bug where property values would be lost when
converting back and forth from possessable to spawnable.
#jira UE-52400
Change 3801841 by Max.Chen
Sequencer: Make spacer nodes not selectable.
PR #4194: Improvements to Sequencer (Contributed by projectgheist)
#jira UE-53117
#jira UE-52139
Change 3804183 by Max.Preussner
MediaAssets: Added missing lock in media sound component
Change 3805414 by Max.Preussner
MediaAssets: Setting valid GUID when initializing media texture resource
Change 3819578 by Max.Chen
PR #4370: When enabling the "MovieCapture", do not turn off the Stereo-3D display. (Contributed by yehaike)
#jira UE-53647
Change 3823414 by Max.Chen
Curve Editor: Lock down the first and last keys in the redundant keys removal range so that they're unaffected.
#jira UE-53591
Change 3826406 by Max.Chen
Sequencer: Move OnStartedPlaying() to within first update in UpdateTimeCursorPosition(). This fixes an issue where setting the
hud/player visibility was getting stomped on later.
#jira UE-52772
Change 3827044 by Max.Preussner
MediaAssets: Added sprite visualization to media sound component
#jira UE-53594
Change 3827988 by Max.Preussner
MediaPlayerAssets: Fixed Media Texture is not linked to Media Player when created together
#jira UE-53532
Change 3828506 by Max.Preussner
MediaPlayerEditor: Added attenuation visualizer for media sound components
#jira UE-53594
Change 3832590 by andrew.porter
EngineTest: Added a keep state check in Property Animation sequencer test
Change 3833053 by andrew.porter
EngineTest: Adding Hierarchical Bias test
Change 3835683 by andrew.porter
EngineTest: Adding UMG Animation screenshot test
Change 3836076 by Max.Chen
Sequencer: Fix audio volume and pitch multiplier deprecation.
Change 3836230 by andrew.porter
EngineTest: Adding Sequence Bone Position automation test
Change 3836347 by Max.Chen
Sequencer: Fixes to shot name parsing.
When a shot doesn't contain a shot number, assume, [ShotName]_[TakeNumber].
When duplicating a shot, put the new shot in the same path of the original shot, so that the take numbers will increment
properly.
#jira UE-51868
Change 3836552 by Max.Chen
Sequencer: Sub section now has a takes menu
Change 3838094 by Max.Chen
UMG: Fix template finish not getting called on stop. This fixes a bug where sections aren't restored when finished.
#jira UE-52285
Change 3838708 by Max.Chen
Sequencer: Add notification when the blend type is changed.
#jira UE-54046
Change 3840295 by Max.Chen
Sequencer: Fix copy/paste crash for lights
#jira UE-54084
Change 3840957 by Mike.Zyracki
Added Show Only Keyable and Show Only Animated to the filter list in the property editor.
Added IsPropertyAnimated to IDetailKeyframe Interface which already had support for showing properties which are keyable (which
is used for the key icon next to the properties.). Could have created another interface but then would have had to mimic the sequencer
binding, releasing also, so this seemed best way.
One issue still left is that custom built detail items currently don't store associated properties(usually) and so certain
properties, in particulalry transforms, won't show up as keyable or animated. Note this also shows up with the keyable icon not showing
up next to transform tracks, and other filters like Show Only Modified not working with transforms/customs. Not sure best way to tackle
this.
#jira UESEQ-328
Change 3841756 by Max.Chen
Sequencer: Fix unbound possessable components when pasting spawnables.
#jira UE-54104
Change 3843950 by andrew.porter
EngineTest: Renaming LevelStreaming tests/content to LevelVisibility
Change 3844082 by Mike.Zyracki
Missing file for animated filter in property editor.
When finding if a track is animated we need to find it but we can't easily induce the MovieTrack class for any particular
property. So we don't set a class for it and just search by it's ID and name.
#jira UESEQ-328
Change 3846902 by Max.Preussner
ImgMedia: Fixed image media player never finished initialization if loading failed
#jira UE-54247
Change 3849820 by Mike.Zyracki
Reassigning deleted widgets didn't work since the menu extender mechanism needs a valid UObject in order to perform an operation
on it. So to fix we replaced GetObjectBindingContextMenuExtender in WidgetBlueprint with new delegate mechanism
(OnBuildCustomContextMenuForGuid) that supports FGuid in addition to UObjects which is needed to handle re-binding deleted widgets. Note
that the default sequencer hacks this for replacing deleted actors in SequencerObjectBindingNode to check to see if a LevelSequence is
active. We could move to this mechanism there also.
#jira UE-53163
Change 3852211 by Max.Chen
UMG: Indicate name of the property that is not bound.
#jira UE-54350
Change 3854120 by Max.Chen
Sequencer: Fix sibling folders being allowed to have the same folder name.
#jira UE-54363
Change 3854627 by Max.Chen
Sequencer: Step to next/previous key should work for all tracks if there aren't any selected.
#jira UESEQ-391
Change 3855825 by andrew.porter
EngineTest: Adding animation blending automation test
Change 3855950 by andrew.porter
EngineTest: Adding correct expected valuues to animation blending test
Change 3856237 by Matt.Hoffman
UESEQ-336 - Sequencer Track Reordering
Adds the ability to re-order Master Tracks, Folders and Object Bindings within sequencer hierarchies (including UMG). Adds the
ability to do a one-off sorting of the content under the old sorting behavior if the user wants to reset their layout to how it was
under legacy behavior.
Modifies SequencerTrackNodes, SequencerFolderNodes and SequencerObjectBindingNodes to handle CanDrop/OnDrop for above, below and
ontop of.
Fixes a Slate Issue that forcibly expanded a TreeviewRow if an item handled OnDrop. Slate will now only forcibly expand the row
if the item says the drop happened ontop of the item, and not above or below it like it previously did.
Change 3856503 by andrew.porter
EngineTest: Adding automation test for using animation blueprint with blend multi node in sequencer
Change 3857875 by Max.Chen
Sequencer: Assign the sequence id after the template is compiled.
#jira UE-54462
Change 3858344 by Max.Chen
Sequencer: Prevent Goto and Transform boxes from overlapping by allowing them to be visible at the same time in an autosized
horizontal box. Also, added close button to the goto box.
PR #4425: Prevent Goto and Transform boxes from overlapping in Sequencer ... (Contributed by projectgheist)
#jira UE-54210
Change 3860566 by andrew.porter
MediaFrameworkTest: Set the option to index 0 for the audio and video track list by default
Change 3860654 by andrew.porter
EngineTest: Enabling Camera Cut + FOV test
Change 3860981 by andrew.porter
EngineTest: Updating skeletal mesh tests with a delay after set playback position
Change 3861256 by Max.Chen
Sequencer: Add all bindings if none selected.
#jira-54440
Change 3862154 by Andrew.Rodham
Added TimeManagement module
Change 3862424 by andrew.porter
EngineTest: Turned on the test Bone Positions with Blend Multi Node
Change 3862573 by andrew.porter
EngineTest: Adding test to compare bone positions in a sequence that is blending an animation that is using an AnimBP
Change 3865117 by Max.Chen
Sequencer: Stop auto scroll on mouse release of movement.
#jira UE-31212
Change 3865303 by Max.Chen
Sequencer: Add drag and drop transactions
#jira UE-54662
Change 3865304 by Max.Chen
Sequencer: Fix crash when an actor factory is not found.
Change 3865361 by Max.Chen
Sequencer: Don't change the camera/shot lock button when popping out of a sequence.
#jira UE-54665
Change 3865412 by Max.Chen
Sequencer: Determine whether a transform track is for a camera by using the spawned object or template
#jira UE-54666
Change 3865685 by Max.Chen
Sequencer: Clear autoscrub offset when stopping autoscroll
#jira UE-31212
Change 3865886 by Max.Chen
Sequence Recorder: Log an error if the number of frames changes while recording. This can happen if the skeleton changes while
recording.
#jira UE-48715
Change 3866925 by Andrew.Porter
MediaFrameworkTest: Changing the current PNG test video image sequence to 1024 x 576
Change 3867705 by andrew.porter
QAGame: Adding Audio Sort Sequence to dev folder
Change 3867890 by andrew.porter
QAGame: Adding a sequence for testing a sorting crash to my dev folder
Change 3872628 by Max.Chen
Movie Scene Capture: Split delay before warmup into split delay before shot warmup so that there's separate controls for when
the movie scene capture warmups up vs. shot boundaries.
Change 3873131 by Matt.Hoffman
UE-54732 - Crash reordering a folder with a track.
This was caused by folders being the only type of track to check if someone was putting a parent track into a child track.
Object Binding tracks and Tracks now check as well so that you can't use the above/below drop targets to add parents as children.
This also fixed a typo in the localization keys.
#jira UE-54732
Change 3873301 by Mike.Zyracki
Added ability to support continous euler angle changes when changing rotations, in particularly with the rotation gizmo's. To do
this we effectively added a form an of 'euler filter'(https://en.wikipedia.org/wiki/Euler_filter) to find the closest euler angle to the
current euler angle.
Three functions were added to FRotator to make this possible, one to get the euler angle that's has the same rotation as it, one
to get the difference between two euler angles via Manhattan distance and a third using the previous two to choose a Rotator value
that's closest to it. We then use these functions before calling UComponent::SetRelativeRotation to make sure we use the correct Euler
after the Quat conversion. We also no longer limit(bound) the euler angles to -180,180, which is obviously necessary to avoid flips.
I also changed how we caluclate yaw and roll when pitch is -90 or 90 to make it the standard approach of zeroing out roll and
just setting yaw. Main reasons are the previous implementation had precision issues so things like 180, 90, -180 would show up due to
numbers being nearly zero but negative,(this would break any smooth interpolations), and this facilitates having a 'gimbal' rotation
mode (like Maya, Blender etc..) if we ever want that also. If needed we could keep the previous implementation but would need to add
some FMath::IsNearlyZero checks, with less performance.
Note we only do this special filtering when applying delta's to actors or components in the editors, which then call
UComponent::SetRelativeRotationExact, which is a new function to foces the RelativeRotation to be equal to the new rotation. This allows
us to store un-nomalized Rotators at the cost that the RotationCache may be broken. We didn't change any of the other UComponent
functions that set rotations (via Quats or Transforms) so they will still be bounded and unwound.
In SetInternalWorldLocationAndRotation we only set the rotation if the rotation has changed, which fixes the rotation getting
changed and re-normalized if just translate happens.
In TransformTrackEditor, we correclty use the bUndwing flag and in MovieScene3DTransformSection there was an un-needed winding
check there, it will be unwound earlier if needed, which happens if Sequence Recording is happening. Max we should talk about what to do
about this .
Note the euler angle drag via the widget is still bound to 0-360. I think we should just unbound that now since the rotations
value are now unbound.
This review now includes fixes suggested by Zak.
#jira UE-UE-22228
Change 3873483 by Matt.Hoffman
Sequencer Tracks can now be inserted above the spacer at the bottom of the tree.
#jira UE-54706
Change 3873899 by Max.Chen
Sequencer: Add section selection throbbing
Change 3873908 by Max.Chen
Movie Scene Capture: Added logging per frame
Change 3873924 by Matt.Hoffman
Adds the ability to store Sequence Recorder setups into profiles that stay with the map and can be re-loaded later. Profiles
store the Actor Recordings so the settings for each actor should carry with them.
#jira UESEQ-339
Change 3874726 by Matt.Hoffman
Disable drag-and-drop targets on spacers that come between rows in Sequencer. This prevents extra drag/drop targets showing up
between each row.
#jira UE-54706
Change 3874862 by Matt.Hoffman
Audio Track no longer gets reordered when adding sub-audio tracks, as sub-tracks are no longer counted towards the sorting order
index when normalizing indexes.
#jira UE-54727
Change 3875905 by Matt.Hoffman
Disable Fade Track UI if a fade track already exists in the sequence.
#jira UESEQ-393
Change 3876163 by Max.Chen
Sequencer: Swap the camera object to the camera component's owner if it's not the same.
#jira UE-54874
Change 3876971 by Andrew.Porter
EngineTest: Moved Media Player Seek test to new folder. Also enabled the test with new ground truth image.
Change 3877040 by Max.Chen
Cine Camera: Split camera properties to two groups, "Camera Options" and "Camera Settings". The cine camera now hides properties
in the "Camera Settings" group so that properties like bConstrainAspectRatio (in the "Camera Options" group) can be visible.
#jira UE-54192
Change 3877763 by Max.Chen
Curve Editor: Fix curve changed on end drag so that only curves that had keys/tangents that were changed receive notification,
otherwise all loaded curves were getting notified that they were changed.
#jira UE-54951
Change 3878234 by Matt.Hoffman
Disable "Drop Below" targets for Sequencer Tree nodes to prevent a confusing UX issue where dropping underneath a Object Binding
Node puts it after the object binding node but the UI looks like it's inserting it inside the Object Binding node.
#jira UE-54743
Change 3879359 by Mike.Zyracki
If a track is inactive we dim it a bit which seems to be the UE4 way to show inactive or disabled state. We changed the active
logic so that all subtracks need to be inactive for the track to also be inactive(instead of all active for active). This conforms to
how the active state actually works, e.g if you have two sections and only one is active the track is still active above it.
#jira UESEQ-388
Change 3879462 by Max.Chen
Sequencer: Allow dragging onto a particular row which would move out any overlapping sections to make space for the newly
created section. Newly created sections are now selected and throbbed to draw attention to themselves.
#jira UE-54664
Change 3879464 by Max.Chen
Sequencer: Fixed overlapping ranges being inserted into the evaluation field during compilation
- The issue was that track segments that had been combined with adjacent segments (due to them being identical) would
potentially cause a subsequently compiled frame to overlap with a range that had already been inserted into the evaluation field.
- The insertion code previously asserted that only minor overlaps were catered for (due to fp rounding errors) and assumed
that a supplied range could not entirely contain any other range in the field.
- The solution is to supply the insertion time along with the range to know exactly where the data should live in the field,
and crop the range to the maximum allowable space between adjacent ranges.
#jira UE-54922
Change 3879590 by Matt.Hoffman
Items that are now added to the Sequencer via the "+Track" menu will be selected after being added.
Items can now be added inside of folders instead of just to the root level.
#jira UE-27397
Change 3879612 by Mike.Zyracki
Display Nodes with no children are always active.
#jira UESEQ-388
Change 3879730 by Matt.Hoffman
Sequence Recorder's actor recording groups now remove items from the group when removed via the UI.
#jira UESEQ-339
Change 3880256 by Mike.Zyracki
Fix issue with inactive display with folders and other track nodes.
#jira UESEQ-388
Change 3883491 by Max.Chen
Fix issue where tick is skipped due to last ticked pose isn't cleared after AnimInstance changes.
Copy from Release-4.19
#jira UE-51323
Change 3883603 by Max.Chen
Movie Scene Capture: Add option toggle disable screen percentage. By default this is on (no change in current behavior).
#jira UE-51898
Change 3885074 by Max.Preussner
MediaCompositing: Resetting media texture & freeing resource on section end; removed dead code
Change 3887220 by Max.Preussner
MediaCompositing: Defaulted media section duration to 1 sec (since we do not know the actual duration in most cases)
Change 3887478 by Matt.Hoffman
Sequences now show [Inactive] in their title bars when they're disabled. This helps communicate why a sequence isn't being
evaluated.
#jira UE-51469
Change 3888985 by Max.Chen
Movie Scene Capture: Clamp HDR Compression Quality between 0 and 1.
#jira UE-55136
Change 3893519 by Max.Chen
Sequence Recorder: Clarified tooltip for bRecordNearbySpawnedActors - spawned actors will still be recorded if they match the
ActorFilter.
#jira UE-55238
Change 3893546 by Max.Chen
Sequence Recorder: If a selected actor already has a recording, add a blank recording.
#jira UE-55239
Change 3894044 by Max.Preussner
MediaCompositing: Added support for seeking into a media section
Change 3894310 by andrew.porter
MediaFrameworkTest: Adding Img media sources for 1080 and 2160 ravent test content
Change 3894426 by Max.Preussner
MediaAssets: Letting media textures with AutoClear retain their clear color when player is reset
Change 3895717 by Max.Chen
Sequencer: Null checks to prevent crash when saving the default state of a spawnable
#jira UE-55304
Change 3897388 by Max.Chen
Sequencer: Don't update current time to be within the view range when stepping into a sequence.
#jira UE-55322
Change 3897452 by Max.Chen
Audio: Fix crash when trying to record audio without any active capture devices. Log warning if the number of input channels is
not 1 or 2.
#jira UE-55223
Change 3897619 by Max.Preussner
MediaCompositing: Removed commented out code
Change 3898072 by Max.Chen
Sequencer: Override the animation asset in the player state if it doesn't match the animation asset that's being evaluated.
#jira UE-55328
Change 3898272 by Max.Preussner
MediaPlayerEditor: Made slate brush constants static
Change 3898704 by Max.Chen
Sequencer: Skip if the binding id's sequence can't be found.
#jira UE-55337
Change 3899855 by Max.Preussner
MediaCompositingEditor: Added cache state visualization to media track
Change 3900300 by Max.Preussner
MediaCompositingEditor: Added loop indicators to media sections
Change 3900694 by Max.Preussner
ImfMedia: Looping cache only when player is looping
Change 3900892 by Max.Preussner
Stats: Added stats category for media framework
Change 3900954 by Max.Preussner
MediaCompositing: Don't evaluate at the end of media section
Change 3901348 by Max.Preussner
Core: Replaced TLruCache autos for better readability
Change 3901655 by Max.Preussner
ImgMedia: Added more perf stats to EXR reader
Change 3901972 by Max.Preussner
MediaAssets: Added getter for media player in media sound components
Change 3902233 by Max.Preussner
MediaAssets: Enabling media textures to receive samples right after player is assigned
Change 3902238 by Max.Preussner
MediaCompositing: Working around init/shutdown idiosyncracies in sequencer
Change 3904045 by Max.Chen
Sequencer: Fix copy/paste crash. Only process UMovieSceneCopyableBinding and objects that can be spawned by the movie scene
spawn register.
#jira UE-55314
Change 3905605 by Max.Chen
Sequencer: Restrict spawnables from being created if they have a ClassWithin that UMovieScene is not a child of.
#jira UE-55429
Change 3906550 by Max.Chen
Sequencer: Add media track icon
#jira UE-55480
Change 3907101 by Max.Chen
Sequence Recorder: Fix bugs related to not recording a level sequence. There were certain assumptions that creating a level
sequence meant that sequence recording was in progress. This is not always the case - the recorders can record animation assets and not
create a level sequence.
Changed the notion of IsRecording() to having at least one actor recording that is recording. Countdown timer, recording
displays, etc should function if IsRecording() and not based on whether a level sequence is created.
#jira UE-55485
Change 3907247 by Max.Chen
Sequence Recorder: Fix crash not removing PrepareToCleanseEditorObject delegate. Repros when opening sequence recorder, closing
it, and then opening or creating a level.
Change 3910343 by Max.Preussner
Core: Added async helper for executing functions on a given thread pool
Change 3910346 by Max.Preussner
ImgMedia: Added separate thread pools for loading/decoding and deleting image frames
Change 3910829 by Max.Preussner
Profiler: Increased visible range of profiler graph
Change 3910841 by Max.Preussner
MediaCompositing: Displaying asset name instead of full media source path in media section
Change 3910870 by Max.Preussner
ImgMedia: Using deallocation thread pool only in debug builds
Change 3919642 by Max.Chen
Sequence Recorder: Clarify active tooltip
#jira UE-55661
Change 3919660 by Max.Chen
Sequencer: Sequence template source signatures are now also compared to catch the case where a sub-sequence asset has been saved
but not modified
- The following sequence of events exposes this issue:
- Create a master sequence with a single shot that spawns a cube
- Add this sequence to a level and set it to auto-play
- Save everything and restart
- Resave just the inner shot asset without opening it
- PIE
- The inner shot never spawns its cube because its template was wiped on save, but its signature never changed. Since the
master sequence previously didn't check the template source signature, it ends up trying to evaluate an empty template.
#jira UE-55626
#jira UE-55490
Change 3921825 by Max.Chen
Sequencer: "Run Construction Script in Sequencer" is off by default for blueprints but on for Sequencer. This allows the content
author to switch it on for specific blueprints and sequencer will be default, run those with construction scripts enabled.
Change 3922232 by Max.Chen
Sequence Recorder: Reset countdelay on stop.
#jira UE-55755
Change 3922306 by Max.Chen
Sequence Recorder: Don't automatically mark transforms to be recorded by sequence recorder. Instead, log a warning if the user
toggled it off to warn that the resulting animation might not match gameplay.
#jira UE-55758
Change 3922912 by Max.Chen
Sequence Recorder: Fix refresh next sequence name
#jira UE-55757
Change 3927654 by Max.Chen
Movie Scene Capture: Added format mapping for the name of the current camera
#jira UE-55769
PR #4537
Change 3927658 by Max.Chen
Sequencer: Added fbx property mapping for "FocusDistance" to "FocusSettings.ManualFocusDistance"
#jira UE-55782
Change 3932022 by Max.Chen
Sequencer: Add import animation track section to next available row index.
#jira UE-55892
Change 3933919 by Max.Chen
Sequencer: Jump to playback start frame and not 0 to start playback for recording.
#jira UE-55933
Change 3934307 by Andrew.Rodham
Sequencer: Add template signature that is re-generated every time the base template is regenerated, which invalidates evaluation
fields
This fixes an issue where the same sequence is instantiated multiple times in a sequence.
If the source sequence was saved, its template would be wiped, which would invalidate the template ID
When an instance tries to evaluate the master template, it would only invalidate a range in the evaluation field that was the
hull of any invalid sub sequences overlapping the current time, potentially leaving invalid data in the evaluation field at positions
later (or earlier) on in the sequence
When the sub template was re-generated, it receives the same SequenceSignature as it had before (because the sequence hasn't
actually changed), which causes the stale evaluation field data to fail the IsDirty check (because the sequence is the same as it
thought, but the *template* has changed)
This has been addressed be adding a signature to templates themselves, and checking both the template signature and sequence
signature as a part of the IsDirty check. This ensures that we regenerate if either the template, or the sequence have changed.
#jira UE-55934
Change 3936327 by Andrew.Rodham
Sequencer: Removed increment when trimming right
UMovieSceneSection::TrimSection already explicity assigns an exclusive bound to the time passed in. The new behavior means we
can trim a section to the right, and insert another section without changing the time to create adjacent sections.
#jira UE-42652
Change 3936328 by Andrew.Rodham
Fixed KeyFrameManipulator assignment operators and copy/move constructors
- These types are potentially self-referential so cannot use default constructors/assignment
Change 3936330 by Andrew.Rodham
Converted UMGSequencePlayer to use frames internally
#jira UE-54878
Change 3936726 by Max.Chen
Sequencer: Set track node as the parent of the key area node. The key area switcher needs the object binding id from the parent
object binding node. Without this, the binding to the external value fails.
#jira UE-55931
Change 3936775 by Max.Chen
Sequencer: Should stop or loop should compare DurationFrames with Current Time from StartTime.
The bug is that if you set 30 warmup frames in movie rendering for a range of 0-100, the FrameRange will be starting at -30 and
have a duration of 130. Without this fix, the playback will continue until frame 130, rather than 100.
#jira UE-55933
Change 3936935 by Matt.Hoffman
Easing Curves are now represented in Play Rate resolution instead of internal resolution.
#jira UE-55937
Change 3937069 by Matt.Hoffman
Users can toggle if the is infinite on each side, limited by which tracks support infinite ranges.
#jira UE-55891
Change 3937516 by Max.Preussner
ImgMedia: Added support for single-threaded platforms
#jira UE-55986
Change 3937826 by Max.Preussner
MediaAssets: Disabling media sound components on HTML5 if AudioMixer is not enabled
Change 3937997 by Max.Chen
Curve Editor: Add Zoom to Fit Curves so that selected curves from Sequencer can be focused on. Tested that undo doesn't re-zoom.
#jira UE-55935
Change 3938000 by Max.Chen
Sequencer: Stop all sounds before generating audio waveforms.
#jira UE-55951
Change 3938376 by Max.Preussner
XGEController: Disabled XGE Controller in single-threaded apps to prevent crash
Change 3938444 by Max.Preussner
Core: Added async support for single-threaded applications
Change 3938445 by Max.Preussner
Networking: Added support for single-threaded applications in UDP socket sender/receiver
Change 3938447 by Max.Preussner
Messaging: Added support for single-threaded applications
Change 3939432 by Max.Chen
Sequence Recorder: Append command list to global level editor actions so that shortcuts are accessible in level editor.
#jira UE-55798
Change 3940229 by Andrew.Rodham
Added prospective display rate upgrade to UMovieScene::PostLoad
- There was previously some very odd behaviour that would assign the fixed frame interval only when a sub sequence was focused
in SSequencer. This meant that many sequences could have a frame interval of 0 set in the data.
- Under the old method of snap interval display this would have fallen back to getting the display interval from the sequencer
settings, but we no longer look at these.
- The USequencerSettings properties have been removed and in their place, a prospective data upgrade for sequences that have a
fixed frame interval old 0fps that sets the play rate to the previous defaults based off the old USequencerSettings defaults.
- This could end up 'changing' the display rate for sequences where the user has changed the snap interval in the settings for
a particular sequence editor, but there's not much we can do about that given we don't have access to the USequencerSettings classes in
UMovieScene
#jira UE-55919
Change 3940277 by Andrew.Rodham
Sequencer: Added ability to default frame resolutions and play rates for newly created actor sequences
Change 3940378 by Andrew.Rodham
Sequencer: Post move import dialog now defaults to the playback framerate of the sequence, and floors to frame numbers
Change 3940559 by Andrew.Rodham
Reinstated primed or recording sequence color
Change 3940642 by Max.Preussner
ImagePlate: Removed image plate media playback functionality
Change 3940843 by Max.Preussner
Core: Made TCircularQueue actually thread-safe; improved code comments
Change 3940860 by Max.Chen
Sequencer: Changed StructNameToKey to StructPathToKey
Previously, keying a PropertyPath of [RenderTransform][Shear][X] would get trimmed to X, which doesn't map to a channel name as
considered by Sequencer2dTransformTrackEditor. Instead, trim the resulting property path to [Shear][X] so that track editors can
determine the desired struct path and channels to key.
#jira UE-52966
Change 3941292 by Mike.Zyracki
Fix for trajectories out of range not showing up.
1) If we had no key data we would pop the time, so wouldn't get the section ranges.
2) Calculating of upper bound was wrong, checking against -1 and not key == num of keys when doing algo::lower_bound.
3) No need to do the Bck-- for the bakward iterators since we fixed #2. We start now from the upper bound correctly.
4) If we had no keys (at section start,end) we would incorrectly say we were any key type, so since we draw constant keys as
dashed we would do so incorrectly around section end points.
#jira UE-55929
Change 3941424 by Max.Chen
Curve Editor: Change Zoom to Fit to use TArrayView
Change 3941498 by Max.Preussner
Core: Added FMath::DivideAndRoundNearest function
Change 3942097 by Matt.Hoffman
Drop Frame Timecode Support for NTSC rates.
Change 3942104 by Matt.Hoffman
Sequence Recorder Group is no longer visible inside the World Outliner after using one.
#jira 55266
Change 3942107 by Max.Chen
Sequencer: Resurrect logic to find or extend an existing section when adding keys.
Change 3942330 by Max.Chen
Sequence Recorder: Better tooltip for default animation settings.
#jira UE-55636
Change 3942339 by Max.Chen
Sequence Recorder: Better tooltip for default animation settings.
#jira UE-55636
Change 3942507 by Andrew.Rodham
Sequencer: We no longer pad the time overlap threshold with a small number that is not scaled by the current zoom level
- The presence of this pad was causing keys that were far apart to be grouped when zoomed in a long way
Change 3942509 by Andrew.Rodham
Sequencer: Only pad total view range, rather than section range as well when retrieving keys to render
- This stops us from rendering keys that are within the view range, but outside the section range
Change 3942512 by Andrew.Rodham
Added transactions to some sequencer details customizations
Change 3942513 by Andrew.Rodham
Sequencer: Reinstated validation checks to UMovieSceneSection::SetStartFrame and SetEndFrame, changed erroneous uses to use
SetRange
Change 3942560 by Andrew.Rodham
Pass by rvalue reference to appease error C2719 on Win32
('InChannels': formal parameter with requested alignment of 8 won't be aligned)
Change 3942697 by Andrew.Rodham
Newly Created Level Sequences and Actor Sequences now default to 24000 fps frame resolution (+/- ~24hrs range, supporting all
integer rates + 23.976)
Change 3942700 by Andrew.Rodham
Sequencer: Added legacy out-of-bounds errors for times that are not supported by the current legacy upgrade frame resolution
Change 3942989 by Max.Preussner
Core: Fixed circular queue count calculation
Change 3943538 by Max.Preussner
MediaAssets: Reverted workaround for procedural audio log spam in HTML5
(Actor component initialization cannot be skipped if the component is used in a level)
Change 3944071 by Max.Preussner
QAGame: Fixed Media Texture keeps last frame of Media when PIE ends
#jira UE-53360
Change 3944292 by Max.Chen
Sequencer: Added extra flags to ensure that asset initialization does not occur on template actor sequences
#jira UE-56113
Change 3944364 by Max.Chen
Sequencer: Prevent circular shot/master tracks.
Tested adding master -> child -> master as drag and drop cinematic shot tracks and sub tracks as well as through the + button.
#jira UE-56091
Change 3944422 by Max.Chen
Sequence Recorder: Disable transform recording if off.
#jira UE-56061
Change 3944745 by Andrew.Rodham
Sequencer: Key rendering fixes
- Fixed assert that occured when keys happened to reside on some times due to KeyTime + TimeOverlapThreshold - KeyTime being
slightly larger TimeOverlapThreshold
- Fixed keys sometimes being clipped when zoomed right in due to lack of half-frame offset
- Added missing documentation to MovieSceneTimeHelpers.h
#jira UE-56107
Change 3945231 by Andrew.Rodham
Sequencer: Reconstruct channel proxy on Serialize to catch all cases of undo/redo, PostLoad and duplication
#jira UE-56089
Change 3945301 by Andrew.Rodham
Sequencer: Added safety checks during initial sequence recording to guard against applying negative or 0-sized sequence ranges
#jira UE-56125
Change 3946627 by Max.Preussner
Fortnite: Fixed game crashes closing editor while in PIE - Pure virtual function being called
#jira UE-56144
[CL 3946896 by Max Chen in Main branch]
2018-03-14 22:09:33 -04:00
|
|
|
|
|
|
|
|
/** If we are allowed to zoom */
|
|
|
|
|
bool AllowZoom;
|
2014-11-19 07:43:07 -05:00
|
|
|
|
|
|
|
|
/** Cursor range for data like histogram graphs, etc. */
|
|
|
|
|
TAttribute< float > CursorSize;
|
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
|
* A time slider controller for sequencer
|
|
|
|
|
* Draws and manages time data for a Sequencer
|
|
|
|
|
*/
|
Copying //UE4/Dev-Sequencer to //UE4/Dev-Main (Source: //UE4/Dev-Sequencer @ 3946692)
#lockdown Nick.Penwarden
#rb none
============================
MAJOR FEATURES & CHANGES
============================
Change 3801826 by Max.Chen
PR #4304: Level Sequence crash fix - Guarded against dereferencing null componen. (Contributed by DSDambuster)
Change 3801828 by Max.Chen
PR #4302: Movie Scene Visibility Template unitialised variable, causing random . (Contributed by DSDambuster)
Change 3801837 by Max.Chen
Sequencer: Delay spawning/construction for convert to possessable. This fixes a bug where property values would be lost when
converting back and forth from possessable to spawnable.
#jira UE-52400
Change 3801841 by Max.Chen
Sequencer: Make spacer nodes not selectable.
PR #4194: Improvements to Sequencer (Contributed by projectgheist)
#jira UE-53117
#jira UE-52139
Change 3804183 by Max.Preussner
MediaAssets: Added missing lock in media sound component
Change 3805414 by Max.Preussner
MediaAssets: Setting valid GUID when initializing media texture resource
Change 3819578 by Max.Chen
PR #4370: When enabling the "MovieCapture", do not turn off the Stereo-3D display. (Contributed by yehaike)
#jira UE-53647
Change 3823414 by Max.Chen
Curve Editor: Lock down the first and last keys in the redundant keys removal range so that they're unaffected.
#jira UE-53591
Change 3826406 by Max.Chen
Sequencer: Move OnStartedPlaying() to within first update in UpdateTimeCursorPosition(). This fixes an issue where setting the
hud/player visibility was getting stomped on later.
#jira UE-52772
Change 3827044 by Max.Preussner
MediaAssets: Added sprite visualization to media sound component
#jira UE-53594
Change 3827988 by Max.Preussner
MediaPlayerAssets: Fixed Media Texture is not linked to Media Player when created together
#jira UE-53532
Change 3828506 by Max.Preussner
MediaPlayerEditor: Added attenuation visualizer for media sound components
#jira UE-53594
Change 3832590 by andrew.porter
EngineTest: Added a keep state check in Property Animation sequencer test
Change 3833053 by andrew.porter
EngineTest: Adding Hierarchical Bias test
Change 3835683 by andrew.porter
EngineTest: Adding UMG Animation screenshot test
Change 3836076 by Max.Chen
Sequencer: Fix audio volume and pitch multiplier deprecation.
Change 3836230 by andrew.porter
EngineTest: Adding Sequence Bone Position automation test
Change 3836347 by Max.Chen
Sequencer: Fixes to shot name parsing.
When a shot doesn't contain a shot number, assume, [ShotName]_[TakeNumber].
When duplicating a shot, put the new shot in the same path of the original shot, so that the take numbers will increment
properly.
#jira UE-51868
Change 3836552 by Max.Chen
Sequencer: Sub section now has a takes menu
Change 3838094 by Max.Chen
UMG: Fix template finish not getting called on stop. This fixes a bug where sections aren't restored when finished.
#jira UE-52285
Change 3838708 by Max.Chen
Sequencer: Add notification when the blend type is changed.
#jira UE-54046
Change 3840295 by Max.Chen
Sequencer: Fix copy/paste crash for lights
#jira UE-54084
Change 3840957 by Mike.Zyracki
Added Show Only Keyable and Show Only Animated to the filter list in the property editor.
Added IsPropertyAnimated to IDetailKeyframe Interface which already had support for showing properties which are keyable (which
is used for the key icon next to the properties.). Could have created another interface but then would have had to mimic the sequencer
binding, releasing also, so this seemed best way.
One issue still left is that custom built detail items currently don't store associated properties(usually) and so certain
properties, in particulalry transforms, won't show up as keyable or animated. Note this also shows up with the keyable icon not showing
up next to transform tracks, and other filters like Show Only Modified not working with transforms/customs. Not sure best way to tackle
this.
#jira UESEQ-328
Change 3841756 by Max.Chen
Sequencer: Fix unbound possessable components when pasting spawnables.
#jira UE-54104
Change 3843950 by andrew.porter
EngineTest: Renaming LevelStreaming tests/content to LevelVisibility
Change 3844082 by Mike.Zyracki
Missing file for animated filter in property editor.
When finding if a track is animated we need to find it but we can't easily induce the MovieTrack class for any particular
property. So we don't set a class for it and just search by it's ID and name.
#jira UESEQ-328
Change 3846902 by Max.Preussner
ImgMedia: Fixed image media player never finished initialization if loading failed
#jira UE-54247
Change 3849820 by Mike.Zyracki
Reassigning deleted widgets didn't work since the menu extender mechanism needs a valid UObject in order to perform an operation
on it. So to fix we replaced GetObjectBindingContextMenuExtender in WidgetBlueprint with new delegate mechanism
(OnBuildCustomContextMenuForGuid) that supports FGuid in addition to UObjects which is needed to handle re-binding deleted widgets. Note
that the default sequencer hacks this for replacing deleted actors in SequencerObjectBindingNode to check to see if a LevelSequence is
active. We could move to this mechanism there also.
#jira UE-53163
Change 3852211 by Max.Chen
UMG: Indicate name of the property that is not bound.
#jira UE-54350
Change 3854120 by Max.Chen
Sequencer: Fix sibling folders being allowed to have the same folder name.
#jira UE-54363
Change 3854627 by Max.Chen
Sequencer: Step to next/previous key should work for all tracks if there aren't any selected.
#jira UESEQ-391
Change 3855825 by andrew.porter
EngineTest: Adding animation blending automation test
Change 3855950 by andrew.porter
EngineTest: Adding correct expected valuues to animation blending test
Change 3856237 by Matt.Hoffman
UESEQ-336 - Sequencer Track Reordering
Adds the ability to re-order Master Tracks, Folders and Object Bindings within sequencer hierarchies (including UMG). Adds the
ability to do a one-off sorting of the content under the old sorting behavior if the user wants to reset their layout to how it was
under legacy behavior.
Modifies SequencerTrackNodes, SequencerFolderNodes and SequencerObjectBindingNodes to handle CanDrop/OnDrop for above, below and
ontop of.
Fixes a Slate Issue that forcibly expanded a TreeviewRow if an item handled OnDrop. Slate will now only forcibly expand the row
if the item says the drop happened ontop of the item, and not above or below it like it previously did.
Change 3856503 by andrew.porter
EngineTest: Adding automation test for using animation blueprint with blend multi node in sequencer
Change 3857875 by Max.Chen
Sequencer: Assign the sequence id after the template is compiled.
#jira UE-54462
Change 3858344 by Max.Chen
Sequencer: Prevent Goto and Transform boxes from overlapping by allowing them to be visible at the same time in an autosized
horizontal box. Also, added close button to the goto box.
PR #4425: Prevent Goto and Transform boxes from overlapping in Sequencer ... (Contributed by projectgheist)
#jira UE-54210
Change 3860566 by andrew.porter
MediaFrameworkTest: Set the option to index 0 for the audio and video track list by default
Change 3860654 by andrew.porter
EngineTest: Enabling Camera Cut + FOV test
Change 3860981 by andrew.porter
EngineTest: Updating skeletal mesh tests with a delay after set playback position
Change 3861256 by Max.Chen
Sequencer: Add all bindings if none selected.
#jira-54440
Change 3862154 by Andrew.Rodham
Added TimeManagement module
Change 3862424 by andrew.porter
EngineTest: Turned on the test Bone Positions with Blend Multi Node
Change 3862573 by andrew.porter
EngineTest: Adding test to compare bone positions in a sequence that is blending an animation that is using an AnimBP
Change 3865117 by Max.Chen
Sequencer: Stop auto scroll on mouse release of movement.
#jira UE-31212
Change 3865303 by Max.Chen
Sequencer: Add drag and drop transactions
#jira UE-54662
Change 3865304 by Max.Chen
Sequencer: Fix crash when an actor factory is not found.
Change 3865361 by Max.Chen
Sequencer: Don't change the camera/shot lock button when popping out of a sequence.
#jira UE-54665
Change 3865412 by Max.Chen
Sequencer: Determine whether a transform track is for a camera by using the spawned object or template
#jira UE-54666
Change 3865685 by Max.Chen
Sequencer: Clear autoscrub offset when stopping autoscroll
#jira UE-31212
Change 3865886 by Max.Chen
Sequence Recorder: Log an error if the number of frames changes while recording. This can happen if the skeleton changes while
recording.
#jira UE-48715
Change 3866925 by Andrew.Porter
MediaFrameworkTest: Changing the current PNG test video image sequence to 1024 x 576
Change 3867705 by andrew.porter
QAGame: Adding Audio Sort Sequence to dev folder
Change 3867890 by andrew.porter
QAGame: Adding a sequence for testing a sorting crash to my dev folder
Change 3872628 by Max.Chen
Movie Scene Capture: Split delay before warmup into split delay before shot warmup so that there's separate controls for when
the movie scene capture warmups up vs. shot boundaries.
Change 3873131 by Matt.Hoffman
UE-54732 - Crash reordering a folder with a track.
This was caused by folders being the only type of track to check if someone was putting a parent track into a child track.
Object Binding tracks and Tracks now check as well so that you can't use the above/below drop targets to add parents as children.
This also fixed a typo in the localization keys.
#jira UE-54732
Change 3873301 by Mike.Zyracki
Added ability to support continous euler angle changes when changing rotations, in particularly with the rotation gizmo's. To do
this we effectively added a form an of 'euler filter'(https://en.wikipedia.org/wiki/Euler_filter) to find the closest euler angle to the
current euler angle.
Three functions were added to FRotator to make this possible, one to get the euler angle that's has the same rotation as it, one
to get the difference between two euler angles via Manhattan distance and a third using the previous two to choose a Rotator value
that's closest to it. We then use these functions before calling UComponent::SetRelativeRotation to make sure we use the correct Euler
after the Quat conversion. We also no longer limit(bound) the euler angles to -180,180, which is obviously necessary to avoid flips.
I also changed how we caluclate yaw and roll when pitch is -90 or 90 to make it the standard approach of zeroing out roll and
just setting yaw. Main reasons are the previous implementation had precision issues so things like 180, 90, -180 would show up due to
numbers being nearly zero but negative,(this would break any smooth interpolations), and this facilitates having a 'gimbal' rotation
mode (like Maya, Blender etc..) if we ever want that also. If needed we could keep the previous implementation but would need to add
some FMath::IsNearlyZero checks, with less performance.
Note we only do this special filtering when applying delta's to actors or components in the editors, which then call
UComponent::SetRelativeRotationExact, which is a new function to foces the RelativeRotation to be equal to the new rotation. This allows
us to store un-nomalized Rotators at the cost that the RotationCache may be broken. We didn't change any of the other UComponent
functions that set rotations (via Quats or Transforms) so they will still be bounded and unwound.
In SetInternalWorldLocationAndRotation we only set the rotation if the rotation has changed, which fixes the rotation getting
changed and re-normalized if just translate happens.
In TransformTrackEditor, we correclty use the bUndwing flag and in MovieScene3DTransformSection there was an un-needed winding
check there, it will be unwound earlier if needed, which happens if Sequence Recording is happening. Max we should talk about what to do
about this .
Note the euler angle drag via the widget is still bound to 0-360. I think we should just unbound that now since the rotations
value are now unbound.
This review now includes fixes suggested by Zak.
#jira UE-UE-22228
Change 3873483 by Matt.Hoffman
Sequencer Tracks can now be inserted above the spacer at the bottom of the tree.
#jira UE-54706
Change 3873899 by Max.Chen
Sequencer: Add section selection throbbing
Change 3873908 by Max.Chen
Movie Scene Capture: Added logging per frame
Change 3873924 by Matt.Hoffman
Adds the ability to store Sequence Recorder setups into profiles that stay with the map and can be re-loaded later. Profiles
store the Actor Recordings so the settings for each actor should carry with them.
#jira UESEQ-339
Change 3874726 by Matt.Hoffman
Disable drag-and-drop targets on spacers that come between rows in Sequencer. This prevents extra drag/drop targets showing up
between each row.
#jira UE-54706
Change 3874862 by Matt.Hoffman
Audio Track no longer gets reordered when adding sub-audio tracks, as sub-tracks are no longer counted towards the sorting order
index when normalizing indexes.
#jira UE-54727
Change 3875905 by Matt.Hoffman
Disable Fade Track UI if a fade track already exists in the sequence.
#jira UESEQ-393
Change 3876163 by Max.Chen
Sequencer: Swap the camera object to the camera component's owner if it's not the same.
#jira UE-54874
Change 3876971 by Andrew.Porter
EngineTest: Moved Media Player Seek test to new folder. Also enabled the test with new ground truth image.
Change 3877040 by Max.Chen
Cine Camera: Split camera properties to two groups, "Camera Options" and "Camera Settings". The cine camera now hides properties
in the "Camera Settings" group so that properties like bConstrainAspectRatio (in the "Camera Options" group) can be visible.
#jira UE-54192
Change 3877763 by Max.Chen
Curve Editor: Fix curve changed on end drag so that only curves that had keys/tangents that were changed receive notification,
otherwise all loaded curves were getting notified that they were changed.
#jira UE-54951
Change 3878234 by Matt.Hoffman
Disable "Drop Below" targets for Sequencer Tree nodes to prevent a confusing UX issue where dropping underneath a Object Binding
Node puts it after the object binding node but the UI looks like it's inserting it inside the Object Binding node.
#jira UE-54743
Change 3879359 by Mike.Zyracki
If a track is inactive we dim it a bit which seems to be the UE4 way to show inactive or disabled state. We changed the active
logic so that all subtracks need to be inactive for the track to also be inactive(instead of all active for active). This conforms to
how the active state actually works, e.g if you have two sections and only one is active the track is still active above it.
#jira UESEQ-388
Change 3879462 by Max.Chen
Sequencer: Allow dragging onto a particular row which would move out any overlapping sections to make space for the newly
created section. Newly created sections are now selected and throbbed to draw attention to themselves.
#jira UE-54664
Change 3879464 by Max.Chen
Sequencer: Fixed overlapping ranges being inserted into the evaluation field during compilation
- The issue was that track segments that had been combined with adjacent segments (due to them being identical) would
potentially cause a subsequently compiled frame to overlap with a range that had already been inserted into the evaluation field.
- The insertion code previously asserted that only minor overlaps were catered for (due to fp rounding errors) and assumed
that a supplied range could not entirely contain any other range in the field.
- The solution is to supply the insertion time along with the range to know exactly where the data should live in the field,
and crop the range to the maximum allowable space between adjacent ranges.
#jira UE-54922
Change 3879590 by Matt.Hoffman
Items that are now added to the Sequencer via the "+Track" menu will be selected after being added.
Items can now be added inside of folders instead of just to the root level.
#jira UE-27397
Change 3879612 by Mike.Zyracki
Display Nodes with no children are always active.
#jira UESEQ-388
Change 3879730 by Matt.Hoffman
Sequence Recorder's actor recording groups now remove items from the group when removed via the UI.
#jira UESEQ-339
Change 3880256 by Mike.Zyracki
Fix issue with inactive display with folders and other track nodes.
#jira UESEQ-388
Change 3883491 by Max.Chen
Fix issue where tick is skipped due to last ticked pose isn't cleared after AnimInstance changes.
Copy from Release-4.19
#jira UE-51323
Change 3883603 by Max.Chen
Movie Scene Capture: Add option toggle disable screen percentage. By default this is on (no change in current behavior).
#jira UE-51898
Change 3885074 by Max.Preussner
MediaCompositing: Resetting media texture & freeing resource on section end; removed dead code
Change 3887220 by Max.Preussner
MediaCompositing: Defaulted media section duration to 1 sec (since we do not know the actual duration in most cases)
Change 3887478 by Matt.Hoffman
Sequences now show [Inactive] in their title bars when they're disabled. This helps communicate why a sequence isn't being
evaluated.
#jira UE-51469
Change 3888985 by Max.Chen
Movie Scene Capture: Clamp HDR Compression Quality between 0 and 1.
#jira UE-55136
Change 3893519 by Max.Chen
Sequence Recorder: Clarified tooltip for bRecordNearbySpawnedActors - spawned actors will still be recorded if they match the
ActorFilter.
#jira UE-55238
Change 3893546 by Max.Chen
Sequence Recorder: If a selected actor already has a recording, add a blank recording.
#jira UE-55239
Change 3894044 by Max.Preussner
MediaCompositing: Added support for seeking into a media section
Change 3894310 by andrew.porter
MediaFrameworkTest: Adding Img media sources for 1080 and 2160 ravent test content
Change 3894426 by Max.Preussner
MediaAssets: Letting media textures with AutoClear retain their clear color when player is reset
Change 3895717 by Max.Chen
Sequencer: Null checks to prevent crash when saving the default state of a spawnable
#jira UE-55304
Change 3897388 by Max.Chen
Sequencer: Don't update current time to be within the view range when stepping into a sequence.
#jira UE-55322
Change 3897452 by Max.Chen
Audio: Fix crash when trying to record audio without any active capture devices. Log warning if the number of input channels is
not 1 or 2.
#jira UE-55223
Change 3897619 by Max.Preussner
MediaCompositing: Removed commented out code
Change 3898072 by Max.Chen
Sequencer: Override the animation asset in the player state if it doesn't match the animation asset that's being evaluated.
#jira UE-55328
Change 3898272 by Max.Preussner
MediaPlayerEditor: Made slate brush constants static
Change 3898704 by Max.Chen
Sequencer: Skip if the binding id's sequence can't be found.
#jira UE-55337
Change 3899855 by Max.Preussner
MediaCompositingEditor: Added cache state visualization to media track
Change 3900300 by Max.Preussner
MediaCompositingEditor: Added loop indicators to media sections
Change 3900694 by Max.Preussner
ImfMedia: Looping cache only when player is looping
Change 3900892 by Max.Preussner
Stats: Added stats category for media framework
Change 3900954 by Max.Preussner
MediaCompositing: Don't evaluate at the end of media section
Change 3901348 by Max.Preussner
Core: Replaced TLruCache autos for better readability
Change 3901655 by Max.Preussner
ImgMedia: Added more perf stats to EXR reader
Change 3901972 by Max.Preussner
MediaAssets: Added getter for media player in media sound components
Change 3902233 by Max.Preussner
MediaAssets: Enabling media textures to receive samples right after player is assigned
Change 3902238 by Max.Preussner
MediaCompositing: Working around init/shutdown idiosyncracies in sequencer
Change 3904045 by Max.Chen
Sequencer: Fix copy/paste crash. Only process UMovieSceneCopyableBinding and objects that can be spawned by the movie scene
spawn register.
#jira UE-55314
Change 3905605 by Max.Chen
Sequencer: Restrict spawnables from being created if they have a ClassWithin that UMovieScene is not a child of.
#jira UE-55429
Change 3906550 by Max.Chen
Sequencer: Add media track icon
#jira UE-55480
Change 3907101 by Max.Chen
Sequence Recorder: Fix bugs related to not recording a level sequence. There were certain assumptions that creating a level
sequence meant that sequence recording was in progress. This is not always the case - the recorders can record animation assets and not
create a level sequence.
Changed the notion of IsRecording() to having at least one actor recording that is recording. Countdown timer, recording
displays, etc should function if IsRecording() and not based on whether a level sequence is created.
#jira UE-55485
Change 3907247 by Max.Chen
Sequence Recorder: Fix crash not removing PrepareToCleanseEditorObject delegate. Repros when opening sequence recorder, closing
it, and then opening or creating a level.
Change 3910343 by Max.Preussner
Core: Added async helper for executing functions on a given thread pool
Change 3910346 by Max.Preussner
ImgMedia: Added separate thread pools for loading/decoding and deleting image frames
Change 3910829 by Max.Preussner
Profiler: Increased visible range of profiler graph
Change 3910841 by Max.Preussner
MediaCompositing: Displaying asset name instead of full media source path in media section
Change 3910870 by Max.Preussner
ImgMedia: Using deallocation thread pool only in debug builds
Change 3919642 by Max.Chen
Sequence Recorder: Clarify active tooltip
#jira UE-55661
Change 3919660 by Max.Chen
Sequencer: Sequence template source signatures are now also compared to catch the case where a sub-sequence asset has been saved
but not modified
- The following sequence of events exposes this issue:
- Create a master sequence with a single shot that spawns a cube
- Add this sequence to a level and set it to auto-play
- Save everything and restart
- Resave just the inner shot asset without opening it
- PIE
- The inner shot never spawns its cube because its template was wiped on save, but its signature never changed. Since the
master sequence previously didn't check the template source signature, it ends up trying to evaluate an empty template.
#jira UE-55626
#jira UE-55490
Change 3921825 by Max.Chen
Sequencer: "Run Construction Script in Sequencer" is off by default for blueprints but on for Sequencer. This allows the content
author to switch it on for specific blueprints and sequencer will be default, run those with construction scripts enabled.
Change 3922232 by Max.Chen
Sequence Recorder: Reset countdelay on stop.
#jira UE-55755
Change 3922306 by Max.Chen
Sequence Recorder: Don't automatically mark transforms to be recorded by sequence recorder. Instead, log a warning if the user
toggled it off to warn that the resulting animation might not match gameplay.
#jira UE-55758
Change 3922912 by Max.Chen
Sequence Recorder: Fix refresh next sequence name
#jira UE-55757
Change 3927654 by Max.Chen
Movie Scene Capture: Added format mapping for the name of the current camera
#jira UE-55769
PR #4537
Change 3927658 by Max.Chen
Sequencer: Added fbx property mapping for "FocusDistance" to "FocusSettings.ManualFocusDistance"
#jira UE-55782
Change 3932022 by Max.Chen
Sequencer: Add import animation track section to next available row index.
#jira UE-55892
Change 3933919 by Max.Chen
Sequencer: Jump to playback start frame and not 0 to start playback for recording.
#jira UE-55933
Change 3934307 by Andrew.Rodham
Sequencer: Add template signature that is re-generated every time the base template is regenerated, which invalidates evaluation
fields
This fixes an issue where the same sequence is instantiated multiple times in a sequence.
If the source sequence was saved, its template would be wiped, which would invalidate the template ID
When an instance tries to evaluate the master template, it would only invalidate a range in the evaluation field that was the
hull of any invalid sub sequences overlapping the current time, potentially leaving invalid data in the evaluation field at positions
later (or earlier) on in the sequence
When the sub template was re-generated, it receives the same SequenceSignature as it had before (because the sequence hasn't
actually changed), which causes the stale evaluation field data to fail the IsDirty check (because the sequence is the same as it
thought, but the *template* has changed)
This has been addressed be adding a signature to templates themselves, and checking both the template signature and sequence
signature as a part of the IsDirty check. This ensures that we regenerate if either the template, or the sequence have changed.
#jira UE-55934
Change 3936327 by Andrew.Rodham
Sequencer: Removed increment when trimming right
UMovieSceneSection::TrimSection already explicity assigns an exclusive bound to the time passed in. The new behavior means we
can trim a section to the right, and insert another section without changing the time to create adjacent sections.
#jira UE-42652
Change 3936328 by Andrew.Rodham
Fixed KeyFrameManipulator assignment operators and copy/move constructors
- These types are potentially self-referential so cannot use default constructors/assignment
Change 3936330 by Andrew.Rodham
Converted UMGSequencePlayer to use frames internally
#jira UE-54878
Change 3936726 by Max.Chen
Sequencer: Set track node as the parent of the key area node. The key area switcher needs the object binding id from the parent
object binding node. Without this, the binding to the external value fails.
#jira UE-55931
Change 3936775 by Max.Chen
Sequencer: Should stop or loop should compare DurationFrames with Current Time from StartTime.
The bug is that if you set 30 warmup frames in movie rendering for a range of 0-100, the FrameRange will be starting at -30 and
have a duration of 130. Without this fix, the playback will continue until frame 130, rather than 100.
#jira UE-55933
Change 3936935 by Matt.Hoffman
Easing Curves are now represented in Play Rate resolution instead of internal resolution.
#jira UE-55937
Change 3937069 by Matt.Hoffman
Users can toggle if the is infinite on each side, limited by which tracks support infinite ranges.
#jira UE-55891
Change 3937516 by Max.Preussner
ImgMedia: Added support for single-threaded platforms
#jira UE-55986
Change 3937826 by Max.Preussner
MediaAssets: Disabling media sound components on HTML5 if AudioMixer is not enabled
Change 3937997 by Max.Chen
Curve Editor: Add Zoom to Fit Curves so that selected curves from Sequencer can be focused on. Tested that undo doesn't re-zoom.
#jira UE-55935
Change 3938000 by Max.Chen
Sequencer: Stop all sounds before generating audio waveforms.
#jira UE-55951
Change 3938376 by Max.Preussner
XGEController: Disabled XGE Controller in single-threaded apps to prevent crash
Change 3938444 by Max.Preussner
Core: Added async support for single-threaded applications
Change 3938445 by Max.Preussner
Networking: Added support for single-threaded applications in UDP socket sender/receiver
Change 3938447 by Max.Preussner
Messaging: Added support for single-threaded applications
Change 3939432 by Max.Chen
Sequence Recorder: Append command list to global level editor actions so that shortcuts are accessible in level editor.
#jira UE-55798
Change 3940229 by Andrew.Rodham
Added prospective display rate upgrade to UMovieScene::PostLoad
- There was previously some very odd behaviour that would assign the fixed frame interval only when a sub sequence was focused
in SSequencer. This meant that many sequences could have a frame interval of 0 set in the data.
- Under the old method of snap interval display this would have fallen back to getting the display interval from the sequencer
settings, but we no longer look at these.
- The USequencerSettings properties have been removed and in their place, a prospective data upgrade for sequences that have a
fixed frame interval old 0fps that sets the play rate to the previous defaults based off the old USequencerSettings defaults.
- This could end up 'changing' the display rate for sequences where the user has changed the snap interval in the settings for
a particular sequence editor, but there's not much we can do about that given we don't have access to the USequencerSettings classes in
UMovieScene
#jira UE-55919
Change 3940277 by Andrew.Rodham
Sequencer: Added ability to default frame resolutions and play rates for newly created actor sequences
Change 3940378 by Andrew.Rodham
Sequencer: Post move import dialog now defaults to the playback framerate of the sequence, and floors to frame numbers
Change 3940559 by Andrew.Rodham
Reinstated primed or recording sequence color
Change 3940642 by Max.Preussner
ImagePlate: Removed image plate media playback functionality
Change 3940843 by Max.Preussner
Core: Made TCircularQueue actually thread-safe; improved code comments
Change 3940860 by Max.Chen
Sequencer: Changed StructNameToKey to StructPathToKey
Previously, keying a PropertyPath of [RenderTransform][Shear][X] would get trimmed to X, which doesn't map to a channel name as
considered by Sequencer2dTransformTrackEditor. Instead, trim the resulting property path to [Shear][X] so that track editors can
determine the desired struct path and channels to key.
#jira UE-52966
Change 3941292 by Mike.Zyracki
Fix for trajectories out of range not showing up.
1) If we had no key data we would pop the time, so wouldn't get the section ranges.
2) Calculating of upper bound was wrong, checking against -1 and not key == num of keys when doing algo::lower_bound.
3) No need to do the Bck-- for the bakward iterators since we fixed #2. We start now from the upper bound correctly.
4) If we had no keys (at section start,end) we would incorrectly say we were any key type, so since we draw constant keys as
dashed we would do so incorrectly around section end points.
#jira UE-55929
Change 3941424 by Max.Chen
Curve Editor: Change Zoom to Fit to use TArrayView
Change 3941498 by Max.Preussner
Core: Added FMath::DivideAndRoundNearest function
Change 3942097 by Matt.Hoffman
Drop Frame Timecode Support for NTSC rates.
Change 3942104 by Matt.Hoffman
Sequence Recorder Group is no longer visible inside the World Outliner after using one.
#jira 55266
Change 3942107 by Max.Chen
Sequencer: Resurrect logic to find or extend an existing section when adding keys.
Change 3942330 by Max.Chen
Sequence Recorder: Better tooltip for default animation settings.
#jira UE-55636
Change 3942339 by Max.Chen
Sequence Recorder: Better tooltip for default animation settings.
#jira UE-55636
Change 3942507 by Andrew.Rodham
Sequencer: We no longer pad the time overlap threshold with a small number that is not scaled by the current zoom level
- The presence of this pad was causing keys that were far apart to be grouped when zoomed in a long way
Change 3942509 by Andrew.Rodham
Sequencer: Only pad total view range, rather than section range as well when retrieving keys to render
- This stops us from rendering keys that are within the view range, but outside the section range
Change 3942512 by Andrew.Rodham
Added transactions to some sequencer details customizations
Change 3942513 by Andrew.Rodham
Sequencer: Reinstated validation checks to UMovieSceneSection::SetStartFrame and SetEndFrame, changed erroneous uses to use
SetRange
Change 3942560 by Andrew.Rodham
Pass by rvalue reference to appease error C2719 on Win32
('InChannels': formal parameter with requested alignment of 8 won't be aligned)
Change 3942697 by Andrew.Rodham
Newly Created Level Sequences and Actor Sequences now default to 24000 fps frame resolution (+/- ~24hrs range, supporting all
integer rates + 23.976)
Change 3942700 by Andrew.Rodham
Sequencer: Added legacy out-of-bounds errors for times that are not supported by the current legacy upgrade frame resolution
Change 3942989 by Max.Preussner
Core: Fixed circular queue count calculation
Change 3943538 by Max.Preussner
MediaAssets: Reverted workaround for procedural audio log spam in HTML5
(Actor component initialization cannot be skipped if the component is used in a level)
Change 3944071 by Max.Preussner
QAGame: Fixed Media Texture keeps last frame of Media when PIE ends
#jira UE-53360
Change 3944292 by Max.Chen
Sequencer: Added extra flags to ensure that asset initialization does not occur on template actor sequences
#jira UE-56113
Change 3944364 by Max.Chen
Sequencer: Prevent circular shot/master tracks.
Tested adding master -> child -> master as drag and drop cinematic shot tracks and sub tracks as well as through the + button.
#jira UE-56091
Change 3944422 by Max.Chen
Sequence Recorder: Disable transform recording if off.
#jira UE-56061
Change 3944745 by Andrew.Rodham
Sequencer: Key rendering fixes
- Fixed assert that occured when keys happened to reside on some times due to KeyTime + TimeOverlapThreshold - KeyTime being
slightly larger TimeOverlapThreshold
- Fixed keys sometimes being clipped when zoomed right in due to lack of half-frame offset
- Added missing documentation to MovieSceneTimeHelpers.h
#jira UE-56107
Change 3945231 by Andrew.Rodham
Sequencer: Reconstruct channel proxy on Serialize to catch all cases of undo/redo, PostLoad and duplication
#jira UE-56089
Change 3945301 by Andrew.Rodham
Sequencer: Added safety checks during initial sequence recording to guard against applying negative or 0-sized sequence ranges
#jira UE-56125
Change 3946627 by Max.Preussner
Fortnite: Fixed game crashes closing editor while in PIE - Pure virtual function being called
#jira UE-56144
[CL 3946896 by Max Chen in Main branch]
2018-03-14 22:09:33 -04:00
|
|
|
class FVisualLoggerTimeSliderController
|
2014-11-19 07:43:07 -05:00
|
|
|
{
|
|
|
|
|
public:
|
2015-01-29 19:21:24 -05:00
|
|
|
FVisualLoggerTimeSliderController(const FVisualLoggerTimeSliderArgs& InArgs);
|
Copying //UE4/Dev-Build to //UE4/Dev-Main (Source: //UE4/Dev-Build @ 3104200)
#lockdown Nick.Penwarden
#rb none
==========================
MAJOR FEATURES + CHANGES
==========================
Change 3096076 on 2016/08/22 by Matthew.Griffin
Fixes for building with -nosharedPCH
Added nodes for building with -nosharedPCH and -noPCH but not using them by default as they take so much longer than NonUnity and there are still errors with -noPCH
Change 3097064 on 2016/08/22 by Ben.Marsh
Core: Refactoring OutputDevice.h, OutputDevices.h, FeedbackDevice.h, CallbackDevice.h into one-class per file, and files named after their classes.
Change 3097102 on 2016/08/22 by Ben.Marsh
Core: Move log macros and related functionality into the Logging folder.
Change 3097240 on 2016/08/22 by Ben.Marsh
Core: Move FCommandLine into its own header.
Change 3097258 on 2016/08/22 by Ben.Marsh
Core: Move FFileHelper into its own header.
Change 3097279 on 2016/08/22 by Ben.Marsh
Core: Split FArchive derived classes into separate headers per class.
Change 3097742 on 2016/08/23 by Ben.Marsh
UnrealGameSync: Add the -r5 parameter to P4 sync command lines, to retry syncs on poor connections before failing.
Change 3099283 on 2016/08/24 by Ben.Marsh
Core: Move math functions which are dependent on multiple class definitions into individual class headers. This forces an include order, but allows us to include individual math classes separately. Would ideally split out the FMath class into a Math namespace and declare/implement things like intersection tests and interpolation routines in separate headers.
Change 3099417 on 2016/08/24 by Ben.Marsh
CoreUObject: Separating out UObject archive classes into separate headers.
Change 3099544 on 2016/08/24 by Ben.Marsh
CoreUObject: Rename UTextProperty.h/cpp to TextProperty.h/cpp
Change 3099678 on 2016/08/24 by Ben.Marsh
CoreUObject: Rename ObjectBase.h to ObjectMacros.h to avoid ambiguiity with UObjectBase.h, and move Interface.h/cpp into the UObject folder.
Change 3099951 on 2016/08/24 by Ben.Marsh
Core: Split out ThreadingBase into class-per-file headers.
Change 3102385 on 2016/08/26 by Matthew.Griffin
First round of fixes from attempting to compile Editor in Monolithic mode
Changed multiple DetermineOptimalSpacing free functions to be members of their respective classes
Changed duplicate FScopedTempFile classes to be named for their respective source control types (Git & SVN)
Export Declaration of LogUnrealAudioDevice extern instead of defining it in multiple modules
Changed duplicate FDiffResultItem struct to FTreeDiffResultItem
Added FORCEINLINE to FFeaturedClasses functions in .inl file
Change 3102728 on 2016/08/26 by Ben.Marsh
Core: Move threading classes from ThreadingBase.h into separate headers, and globals into CoreGlobals.h.
Change 3102850 on 2016/08/26 by Ben.Marsh
Core: Move FCriticalSection into its own file (CriticalSection.h and platform-specific versions).
Change 3102877 on 2016/08/26 by Ben.Marsh
Core: Move definitions of GLog, GError, GWarn into CoreGlobals.h
Change 3102898 on 2016/08/26 by Ben.Marsh
Core: Move supporting assert functionality (the FDebug class) into AssertionMacros.h to remove circular header dependencies.
Change 3102956 on 2016/08/26 by Ben.Marsh
Core: Move FExec into its own header (Misc/Exec.h)
Change 3102961 on 2016/08/26 by Ben.Marsh
Core: Fix matrix functions referencing the forceinline'd FMatrix constructor before it's declared.
Change 3102982 on 2016/08/26 by Ben.Marsh
Core: Move FMessageDialog into its own header (Misc/MessageDialog.h)
Change 3103008 on 2016/08/26 by Ben.Marsh
Core: Move definition of LowLevelFatalError into AssertionMacros.h.
Change 3103040 on 2016/08/26 by Ben.Marsh
Core: Move FError::Throwf (only enabled for UHT) into its own header in CoreUObject.
Change 3103057 on 2016/08/26 by Ben.Marsh
Core: Move FMsg function definitions into the LogMacros.h header, where it's primarily used from.
Change 3103102 on 2016/08/26 by Ben.Marsh
Core: Make the LogMacros.h header standalone. Untangles a few header dependencies necessary to include log macros early on. Global Core log channels are now defined in CoreGlobals.h
Change 3103160 on 2016/08/26 by Ben.Marsh
CoreUObject: Separate Linker.h into LinkerLoad.h, LinkerSave.h, PackageFileSummary.h, ObjectResource.h (matching existing cpp files).
Change 3103265 on 2016/08/26 by Ben.Marsh
Core: Split FScriptArray, TMRUArray, TTransArray, TIndirectArray into separate headers.
Change 3103642 on 2016/08/26 by Ben.Marsh
Core: Remove reference to FMath function from allocator, to avoid unnecessarily bringing in math library.
[CL 3104315 by Ben Marsh in Main branch]
2016-08-29 10:27:24 -04:00
|
|
|
|
|
|
|
|
/**
|
|
|
|
|
* Determines the optimal spacing between tick marks in the slider for a given pixel density
|
|
|
|
|
* Increments until a minimum amount of slate units specified by MinTick is reached
|
|
|
|
|
*
|
|
|
|
|
* @param InPixelsPerInput The density of pixels between each input
|
|
|
|
|
* @param MinTick The minimum slate units per tick allowed
|
|
|
|
|
* @param MinTickSpacing The minimum tick spacing in time units allowed
|
|
|
|
|
* @return the optimal spacing in time units
|
|
|
|
|
*/
|
2022-11-29 09:25:35 -05:00
|
|
|
double DetermineOptimalSpacing(double InPixelsPerInput, uint32 MinTick, float MinTickSpacing) const;
|
2015-01-15 06:19:24 -05:00
|
|
|
void SetTimesliderArgs(const FVisualLoggerTimeSliderArgs& InArgs);
|
2014-11-19 07:43:07 -05:00
|
|
|
|
Copying //UE4/Dev-Sequencer to //UE4/Dev-Main (Source: //UE4/Dev-Sequencer @ 3946692)
#lockdown Nick.Penwarden
#rb none
============================
MAJOR FEATURES & CHANGES
============================
Change 3801826 by Max.Chen
PR #4304: Level Sequence crash fix - Guarded against dereferencing null componen. (Contributed by DSDambuster)
Change 3801828 by Max.Chen
PR #4302: Movie Scene Visibility Template unitialised variable, causing random . (Contributed by DSDambuster)
Change 3801837 by Max.Chen
Sequencer: Delay spawning/construction for convert to possessable. This fixes a bug where property values would be lost when
converting back and forth from possessable to spawnable.
#jira UE-52400
Change 3801841 by Max.Chen
Sequencer: Make spacer nodes not selectable.
PR #4194: Improvements to Sequencer (Contributed by projectgheist)
#jira UE-53117
#jira UE-52139
Change 3804183 by Max.Preussner
MediaAssets: Added missing lock in media sound component
Change 3805414 by Max.Preussner
MediaAssets: Setting valid GUID when initializing media texture resource
Change 3819578 by Max.Chen
PR #4370: When enabling the "MovieCapture", do not turn off the Stereo-3D display. (Contributed by yehaike)
#jira UE-53647
Change 3823414 by Max.Chen
Curve Editor: Lock down the first and last keys in the redundant keys removal range so that they're unaffected.
#jira UE-53591
Change 3826406 by Max.Chen
Sequencer: Move OnStartedPlaying() to within first update in UpdateTimeCursorPosition(). This fixes an issue where setting the
hud/player visibility was getting stomped on later.
#jira UE-52772
Change 3827044 by Max.Preussner
MediaAssets: Added sprite visualization to media sound component
#jira UE-53594
Change 3827988 by Max.Preussner
MediaPlayerAssets: Fixed Media Texture is not linked to Media Player when created together
#jira UE-53532
Change 3828506 by Max.Preussner
MediaPlayerEditor: Added attenuation visualizer for media sound components
#jira UE-53594
Change 3832590 by andrew.porter
EngineTest: Added a keep state check in Property Animation sequencer test
Change 3833053 by andrew.porter
EngineTest: Adding Hierarchical Bias test
Change 3835683 by andrew.porter
EngineTest: Adding UMG Animation screenshot test
Change 3836076 by Max.Chen
Sequencer: Fix audio volume and pitch multiplier deprecation.
Change 3836230 by andrew.porter
EngineTest: Adding Sequence Bone Position automation test
Change 3836347 by Max.Chen
Sequencer: Fixes to shot name parsing.
When a shot doesn't contain a shot number, assume, [ShotName]_[TakeNumber].
When duplicating a shot, put the new shot in the same path of the original shot, so that the take numbers will increment
properly.
#jira UE-51868
Change 3836552 by Max.Chen
Sequencer: Sub section now has a takes menu
Change 3838094 by Max.Chen
UMG: Fix template finish not getting called on stop. This fixes a bug where sections aren't restored when finished.
#jira UE-52285
Change 3838708 by Max.Chen
Sequencer: Add notification when the blend type is changed.
#jira UE-54046
Change 3840295 by Max.Chen
Sequencer: Fix copy/paste crash for lights
#jira UE-54084
Change 3840957 by Mike.Zyracki
Added Show Only Keyable and Show Only Animated to the filter list in the property editor.
Added IsPropertyAnimated to IDetailKeyframe Interface which already had support for showing properties which are keyable (which
is used for the key icon next to the properties.). Could have created another interface but then would have had to mimic the sequencer
binding, releasing also, so this seemed best way.
One issue still left is that custom built detail items currently don't store associated properties(usually) and so certain
properties, in particulalry transforms, won't show up as keyable or animated. Note this also shows up with the keyable icon not showing
up next to transform tracks, and other filters like Show Only Modified not working with transforms/customs. Not sure best way to tackle
this.
#jira UESEQ-328
Change 3841756 by Max.Chen
Sequencer: Fix unbound possessable components when pasting spawnables.
#jira UE-54104
Change 3843950 by andrew.porter
EngineTest: Renaming LevelStreaming tests/content to LevelVisibility
Change 3844082 by Mike.Zyracki
Missing file for animated filter in property editor.
When finding if a track is animated we need to find it but we can't easily induce the MovieTrack class for any particular
property. So we don't set a class for it and just search by it's ID and name.
#jira UESEQ-328
Change 3846902 by Max.Preussner
ImgMedia: Fixed image media player never finished initialization if loading failed
#jira UE-54247
Change 3849820 by Mike.Zyracki
Reassigning deleted widgets didn't work since the menu extender mechanism needs a valid UObject in order to perform an operation
on it. So to fix we replaced GetObjectBindingContextMenuExtender in WidgetBlueprint with new delegate mechanism
(OnBuildCustomContextMenuForGuid) that supports FGuid in addition to UObjects which is needed to handle re-binding deleted widgets. Note
that the default sequencer hacks this for replacing deleted actors in SequencerObjectBindingNode to check to see if a LevelSequence is
active. We could move to this mechanism there also.
#jira UE-53163
Change 3852211 by Max.Chen
UMG: Indicate name of the property that is not bound.
#jira UE-54350
Change 3854120 by Max.Chen
Sequencer: Fix sibling folders being allowed to have the same folder name.
#jira UE-54363
Change 3854627 by Max.Chen
Sequencer: Step to next/previous key should work for all tracks if there aren't any selected.
#jira UESEQ-391
Change 3855825 by andrew.porter
EngineTest: Adding animation blending automation test
Change 3855950 by andrew.porter
EngineTest: Adding correct expected valuues to animation blending test
Change 3856237 by Matt.Hoffman
UESEQ-336 - Sequencer Track Reordering
Adds the ability to re-order Master Tracks, Folders and Object Bindings within sequencer hierarchies (including UMG). Adds the
ability to do a one-off sorting of the content under the old sorting behavior if the user wants to reset their layout to how it was
under legacy behavior.
Modifies SequencerTrackNodes, SequencerFolderNodes and SequencerObjectBindingNodes to handle CanDrop/OnDrop for above, below and
ontop of.
Fixes a Slate Issue that forcibly expanded a TreeviewRow if an item handled OnDrop. Slate will now only forcibly expand the row
if the item says the drop happened ontop of the item, and not above or below it like it previously did.
Change 3856503 by andrew.porter
EngineTest: Adding automation test for using animation blueprint with blend multi node in sequencer
Change 3857875 by Max.Chen
Sequencer: Assign the sequence id after the template is compiled.
#jira UE-54462
Change 3858344 by Max.Chen
Sequencer: Prevent Goto and Transform boxes from overlapping by allowing them to be visible at the same time in an autosized
horizontal box. Also, added close button to the goto box.
PR #4425: Prevent Goto and Transform boxes from overlapping in Sequencer ... (Contributed by projectgheist)
#jira UE-54210
Change 3860566 by andrew.porter
MediaFrameworkTest: Set the option to index 0 for the audio and video track list by default
Change 3860654 by andrew.porter
EngineTest: Enabling Camera Cut + FOV test
Change 3860981 by andrew.porter
EngineTest: Updating skeletal mesh tests with a delay after set playback position
Change 3861256 by Max.Chen
Sequencer: Add all bindings if none selected.
#jira-54440
Change 3862154 by Andrew.Rodham
Added TimeManagement module
Change 3862424 by andrew.porter
EngineTest: Turned on the test Bone Positions with Blend Multi Node
Change 3862573 by andrew.porter
EngineTest: Adding test to compare bone positions in a sequence that is blending an animation that is using an AnimBP
Change 3865117 by Max.Chen
Sequencer: Stop auto scroll on mouse release of movement.
#jira UE-31212
Change 3865303 by Max.Chen
Sequencer: Add drag and drop transactions
#jira UE-54662
Change 3865304 by Max.Chen
Sequencer: Fix crash when an actor factory is not found.
Change 3865361 by Max.Chen
Sequencer: Don't change the camera/shot lock button when popping out of a sequence.
#jira UE-54665
Change 3865412 by Max.Chen
Sequencer: Determine whether a transform track is for a camera by using the spawned object or template
#jira UE-54666
Change 3865685 by Max.Chen
Sequencer: Clear autoscrub offset when stopping autoscroll
#jira UE-31212
Change 3865886 by Max.Chen
Sequence Recorder: Log an error if the number of frames changes while recording. This can happen if the skeleton changes while
recording.
#jira UE-48715
Change 3866925 by Andrew.Porter
MediaFrameworkTest: Changing the current PNG test video image sequence to 1024 x 576
Change 3867705 by andrew.porter
QAGame: Adding Audio Sort Sequence to dev folder
Change 3867890 by andrew.porter
QAGame: Adding a sequence for testing a sorting crash to my dev folder
Change 3872628 by Max.Chen
Movie Scene Capture: Split delay before warmup into split delay before shot warmup so that there's separate controls for when
the movie scene capture warmups up vs. shot boundaries.
Change 3873131 by Matt.Hoffman
UE-54732 - Crash reordering a folder with a track.
This was caused by folders being the only type of track to check if someone was putting a parent track into a child track.
Object Binding tracks and Tracks now check as well so that you can't use the above/below drop targets to add parents as children.
This also fixed a typo in the localization keys.
#jira UE-54732
Change 3873301 by Mike.Zyracki
Added ability to support continous euler angle changes when changing rotations, in particularly with the rotation gizmo's. To do
this we effectively added a form an of 'euler filter'(https://en.wikipedia.org/wiki/Euler_filter) to find the closest euler angle to the
current euler angle.
Three functions were added to FRotator to make this possible, one to get the euler angle that's has the same rotation as it, one
to get the difference between two euler angles via Manhattan distance and a third using the previous two to choose a Rotator value
that's closest to it. We then use these functions before calling UComponent::SetRelativeRotation to make sure we use the correct Euler
after the Quat conversion. We also no longer limit(bound) the euler angles to -180,180, which is obviously necessary to avoid flips.
I also changed how we caluclate yaw and roll when pitch is -90 or 90 to make it the standard approach of zeroing out roll and
just setting yaw. Main reasons are the previous implementation had precision issues so things like 180, 90, -180 would show up due to
numbers being nearly zero but negative,(this would break any smooth interpolations), and this facilitates having a 'gimbal' rotation
mode (like Maya, Blender etc..) if we ever want that also. If needed we could keep the previous implementation but would need to add
some FMath::IsNearlyZero checks, with less performance.
Note we only do this special filtering when applying delta's to actors or components in the editors, which then call
UComponent::SetRelativeRotationExact, which is a new function to foces the RelativeRotation to be equal to the new rotation. This allows
us to store un-nomalized Rotators at the cost that the RotationCache may be broken. We didn't change any of the other UComponent
functions that set rotations (via Quats or Transforms) so they will still be bounded and unwound.
In SetInternalWorldLocationAndRotation we only set the rotation if the rotation has changed, which fixes the rotation getting
changed and re-normalized if just translate happens.
In TransformTrackEditor, we correclty use the bUndwing flag and in MovieScene3DTransformSection there was an un-needed winding
check there, it will be unwound earlier if needed, which happens if Sequence Recording is happening. Max we should talk about what to do
about this .
Note the euler angle drag via the widget is still bound to 0-360. I think we should just unbound that now since the rotations
value are now unbound.
This review now includes fixes suggested by Zak.
#jira UE-UE-22228
Change 3873483 by Matt.Hoffman
Sequencer Tracks can now be inserted above the spacer at the bottom of the tree.
#jira UE-54706
Change 3873899 by Max.Chen
Sequencer: Add section selection throbbing
Change 3873908 by Max.Chen
Movie Scene Capture: Added logging per frame
Change 3873924 by Matt.Hoffman
Adds the ability to store Sequence Recorder setups into profiles that stay with the map and can be re-loaded later. Profiles
store the Actor Recordings so the settings for each actor should carry with them.
#jira UESEQ-339
Change 3874726 by Matt.Hoffman
Disable drag-and-drop targets on spacers that come between rows in Sequencer. This prevents extra drag/drop targets showing up
between each row.
#jira UE-54706
Change 3874862 by Matt.Hoffman
Audio Track no longer gets reordered when adding sub-audio tracks, as sub-tracks are no longer counted towards the sorting order
index when normalizing indexes.
#jira UE-54727
Change 3875905 by Matt.Hoffman
Disable Fade Track UI if a fade track already exists in the sequence.
#jira UESEQ-393
Change 3876163 by Max.Chen
Sequencer: Swap the camera object to the camera component's owner if it's not the same.
#jira UE-54874
Change 3876971 by Andrew.Porter
EngineTest: Moved Media Player Seek test to new folder. Also enabled the test with new ground truth image.
Change 3877040 by Max.Chen
Cine Camera: Split camera properties to two groups, "Camera Options" and "Camera Settings". The cine camera now hides properties
in the "Camera Settings" group so that properties like bConstrainAspectRatio (in the "Camera Options" group) can be visible.
#jira UE-54192
Change 3877763 by Max.Chen
Curve Editor: Fix curve changed on end drag so that only curves that had keys/tangents that were changed receive notification,
otherwise all loaded curves were getting notified that they were changed.
#jira UE-54951
Change 3878234 by Matt.Hoffman
Disable "Drop Below" targets for Sequencer Tree nodes to prevent a confusing UX issue where dropping underneath a Object Binding
Node puts it after the object binding node but the UI looks like it's inserting it inside the Object Binding node.
#jira UE-54743
Change 3879359 by Mike.Zyracki
If a track is inactive we dim it a bit which seems to be the UE4 way to show inactive or disabled state. We changed the active
logic so that all subtracks need to be inactive for the track to also be inactive(instead of all active for active). This conforms to
how the active state actually works, e.g if you have two sections and only one is active the track is still active above it.
#jira UESEQ-388
Change 3879462 by Max.Chen
Sequencer: Allow dragging onto a particular row which would move out any overlapping sections to make space for the newly
created section. Newly created sections are now selected and throbbed to draw attention to themselves.
#jira UE-54664
Change 3879464 by Max.Chen
Sequencer: Fixed overlapping ranges being inserted into the evaluation field during compilation
- The issue was that track segments that had been combined with adjacent segments (due to them being identical) would
potentially cause a subsequently compiled frame to overlap with a range that had already been inserted into the evaluation field.
- The insertion code previously asserted that only minor overlaps were catered for (due to fp rounding errors) and assumed
that a supplied range could not entirely contain any other range in the field.
- The solution is to supply the insertion time along with the range to know exactly where the data should live in the field,
and crop the range to the maximum allowable space between adjacent ranges.
#jira UE-54922
Change 3879590 by Matt.Hoffman
Items that are now added to the Sequencer via the "+Track" menu will be selected after being added.
Items can now be added inside of folders instead of just to the root level.
#jira UE-27397
Change 3879612 by Mike.Zyracki
Display Nodes with no children are always active.
#jira UESEQ-388
Change 3879730 by Matt.Hoffman
Sequence Recorder's actor recording groups now remove items from the group when removed via the UI.
#jira UESEQ-339
Change 3880256 by Mike.Zyracki
Fix issue with inactive display with folders and other track nodes.
#jira UESEQ-388
Change 3883491 by Max.Chen
Fix issue where tick is skipped due to last ticked pose isn't cleared after AnimInstance changes.
Copy from Release-4.19
#jira UE-51323
Change 3883603 by Max.Chen
Movie Scene Capture: Add option toggle disable screen percentage. By default this is on (no change in current behavior).
#jira UE-51898
Change 3885074 by Max.Preussner
MediaCompositing: Resetting media texture & freeing resource on section end; removed dead code
Change 3887220 by Max.Preussner
MediaCompositing: Defaulted media section duration to 1 sec (since we do not know the actual duration in most cases)
Change 3887478 by Matt.Hoffman
Sequences now show [Inactive] in their title bars when they're disabled. This helps communicate why a sequence isn't being
evaluated.
#jira UE-51469
Change 3888985 by Max.Chen
Movie Scene Capture: Clamp HDR Compression Quality between 0 and 1.
#jira UE-55136
Change 3893519 by Max.Chen
Sequence Recorder: Clarified tooltip for bRecordNearbySpawnedActors - spawned actors will still be recorded if they match the
ActorFilter.
#jira UE-55238
Change 3893546 by Max.Chen
Sequence Recorder: If a selected actor already has a recording, add a blank recording.
#jira UE-55239
Change 3894044 by Max.Preussner
MediaCompositing: Added support for seeking into a media section
Change 3894310 by andrew.porter
MediaFrameworkTest: Adding Img media sources for 1080 and 2160 ravent test content
Change 3894426 by Max.Preussner
MediaAssets: Letting media textures with AutoClear retain their clear color when player is reset
Change 3895717 by Max.Chen
Sequencer: Null checks to prevent crash when saving the default state of a spawnable
#jira UE-55304
Change 3897388 by Max.Chen
Sequencer: Don't update current time to be within the view range when stepping into a sequence.
#jira UE-55322
Change 3897452 by Max.Chen
Audio: Fix crash when trying to record audio without any active capture devices. Log warning if the number of input channels is
not 1 or 2.
#jira UE-55223
Change 3897619 by Max.Preussner
MediaCompositing: Removed commented out code
Change 3898072 by Max.Chen
Sequencer: Override the animation asset in the player state if it doesn't match the animation asset that's being evaluated.
#jira UE-55328
Change 3898272 by Max.Preussner
MediaPlayerEditor: Made slate brush constants static
Change 3898704 by Max.Chen
Sequencer: Skip if the binding id's sequence can't be found.
#jira UE-55337
Change 3899855 by Max.Preussner
MediaCompositingEditor: Added cache state visualization to media track
Change 3900300 by Max.Preussner
MediaCompositingEditor: Added loop indicators to media sections
Change 3900694 by Max.Preussner
ImfMedia: Looping cache only when player is looping
Change 3900892 by Max.Preussner
Stats: Added stats category for media framework
Change 3900954 by Max.Preussner
MediaCompositing: Don't evaluate at the end of media section
Change 3901348 by Max.Preussner
Core: Replaced TLruCache autos for better readability
Change 3901655 by Max.Preussner
ImgMedia: Added more perf stats to EXR reader
Change 3901972 by Max.Preussner
MediaAssets: Added getter for media player in media sound components
Change 3902233 by Max.Preussner
MediaAssets: Enabling media textures to receive samples right after player is assigned
Change 3902238 by Max.Preussner
MediaCompositing: Working around init/shutdown idiosyncracies in sequencer
Change 3904045 by Max.Chen
Sequencer: Fix copy/paste crash. Only process UMovieSceneCopyableBinding and objects that can be spawned by the movie scene
spawn register.
#jira UE-55314
Change 3905605 by Max.Chen
Sequencer: Restrict spawnables from being created if they have a ClassWithin that UMovieScene is not a child of.
#jira UE-55429
Change 3906550 by Max.Chen
Sequencer: Add media track icon
#jira UE-55480
Change 3907101 by Max.Chen
Sequence Recorder: Fix bugs related to not recording a level sequence. There were certain assumptions that creating a level
sequence meant that sequence recording was in progress. This is not always the case - the recorders can record animation assets and not
create a level sequence.
Changed the notion of IsRecording() to having at least one actor recording that is recording. Countdown timer, recording
displays, etc should function if IsRecording() and not based on whether a level sequence is created.
#jira UE-55485
Change 3907247 by Max.Chen
Sequence Recorder: Fix crash not removing PrepareToCleanseEditorObject delegate. Repros when opening sequence recorder, closing
it, and then opening or creating a level.
Change 3910343 by Max.Preussner
Core: Added async helper for executing functions on a given thread pool
Change 3910346 by Max.Preussner
ImgMedia: Added separate thread pools for loading/decoding and deleting image frames
Change 3910829 by Max.Preussner
Profiler: Increased visible range of profiler graph
Change 3910841 by Max.Preussner
MediaCompositing: Displaying asset name instead of full media source path in media section
Change 3910870 by Max.Preussner
ImgMedia: Using deallocation thread pool only in debug builds
Change 3919642 by Max.Chen
Sequence Recorder: Clarify active tooltip
#jira UE-55661
Change 3919660 by Max.Chen
Sequencer: Sequence template source signatures are now also compared to catch the case where a sub-sequence asset has been saved
but not modified
- The following sequence of events exposes this issue:
- Create a master sequence with a single shot that spawns a cube
- Add this sequence to a level and set it to auto-play
- Save everything and restart
- Resave just the inner shot asset without opening it
- PIE
- The inner shot never spawns its cube because its template was wiped on save, but its signature never changed. Since the
master sequence previously didn't check the template source signature, it ends up trying to evaluate an empty template.
#jira UE-55626
#jira UE-55490
Change 3921825 by Max.Chen
Sequencer: "Run Construction Script in Sequencer" is off by default for blueprints but on for Sequencer. This allows the content
author to switch it on for specific blueprints and sequencer will be default, run those with construction scripts enabled.
Change 3922232 by Max.Chen
Sequence Recorder: Reset countdelay on stop.
#jira UE-55755
Change 3922306 by Max.Chen
Sequence Recorder: Don't automatically mark transforms to be recorded by sequence recorder. Instead, log a warning if the user
toggled it off to warn that the resulting animation might not match gameplay.
#jira UE-55758
Change 3922912 by Max.Chen
Sequence Recorder: Fix refresh next sequence name
#jira UE-55757
Change 3927654 by Max.Chen
Movie Scene Capture: Added format mapping for the name of the current camera
#jira UE-55769
PR #4537
Change 3927658 by Max.Chen
Sequencer: Added fbx property mapping for "FocusDistance" to "FocusSettings.ManualFocusDistance"
#jira UE-55782
Change 3932022 by Max.Chen
Sequencer: Add import animation track section to next available row index.
#jira UE-55892
Change 3933919 by Max.Chen
Sequencer: Jump to playback start frame and not 0 to start playback for recording.
#jira UE-55933
Change 3934307 by Andrew.Rodham
Sequencer: Add template signature that is re-generated every time the base template is regenerated, which invalidates evaluation
fields
This fixes an issue where the same sequence is instantiated multiple times in a sequence.
If the source sequence was saved, its template would be wiped, which would invalidate the template ID
When an instance tries to evaluate the master template, it would only invalidate a range in the evaluation field that was the
hull of any invalid sub sequences overlapping the current time, potentially leaving invalid data in the evaluation field at positions
later (or earlier) on in the sequence
When the sub template was re-generated, it receives the same SequenceSignature as it had before (because the sequence hasn't
actually changed), which causes the stale evaluation field data to fail the IsDirty check (because the sequence is the same as it
thought, but the *template* has changed)
This has been addressed be adding a signature to templates themselves, and checking both the template signature and sequence
signature as a part of the IsDirty check. This ensures that we regenerate if either the template, or the sequence have changed.
#jira UE-55934
Change 3936327 by Andrew.Rodham
Sequencer: Removed increment when trimming right
UMovieSceneSection::TrimSection already explicity assigns an exclusive bound to the time passed in. The new behavior means we
can trim a section to the right, and insert another section without changing the time to create adjacent sections.
#jira UE-42652
Change 3936328 by Andrew.Rodham
Fixed KeyFrameManipulator assignment operators and copy/move constructors
- These types are potentially self-referential so cannot use default constructors/assignment
Change 3936330 by Andrew.Rodham
Converted UMGSequencePlayer to use frames internally
#jira UE-54878
Change 3936726 by Max.Chen
Sequencer: Set track node as the parent of the key area node. The key area switcher needs the object binding id from the parent
object binding node. Without this, the binding to the external value fails.
#jira UE-55931
Change 3936775 by Max.Chen
Sequencer: Should stop or loop should compare DurationFrames with Current Time from StartTime.
The bug is that if you set 30 warmup frames in movie rendering for a range of 0-100, the FrameRange will be starting at -30 and
have a duration of 130. Without this fix, the playback will continue until frame 130, rather than 100.
#jira UE-55933
Change 3936935 by Matt.Hoffman
Easing Curves are now represented in Play Rate resolution instead of internal resolution.
#jira UE-55937
Change 3937069 by Matt.Hoffman
Users can toggle if the is infinite on each side, limited by which tracks support infinite ranges.
#jira UE-55891
Change 3937516 by Max.Preussner
ImgMedia: Added support for single-threaded platforms
#jira UE-55986
Change 3937826 by Max.Preussner
MediaAssets: Disabling media sound components on HTML5 if AudioMixer is not enabled
Change 3937997 by Max.Chen
Curve Editor: Add Zoom to Fit Curves so that selected curves from Sequencer can be focused on. Tested that undo doesn't re-zoom.
#jira UE-55935
Change 3938000 by Max.Chen
Sequencer: Stop all sounds before generating audio waveforms.
#jira UE-55951
Change 3938376 by Max.Preussner
XGEController: Disabled XGE Controller in single-threaded apps to prevent crash
Change 3938444 by Max.Preussner
Core: Added async support for single-threaded applications
Change 3938445 by Max.Preussner
Networking: Added support for single-threaded applications in UDP socket sender/receiver
Change 3938447 by Max.Preussner
Messaging: Added support for single-threaded applications
Change 3939432 by Max.Chen
Sequence Recorder: Append command list to global level editor actions so that shortcuts are accessible in level editor.
#jira UE-55798
Change 3940229 by Andrew.Rodham
Added prospective display rate upgrade to UMovieScene::PostLoad
- There was previously some very odd behaviour that would assign the fixed frame interval only when a sub sequence was focused
in SSequencer. This meant that many sequences could have a frame interval of 0 set in the data.
- Under the old method of snap interval display this would have fallen back to getting the display interval from the sequencer
settings, but we no longer look at these.
- The USequencerSettings properties have been removed and in their place, a prospective data upgrade for sequences that have a
fixed frame interval old 0fps that sets the play rate to the previous defaults based off the old USequencerSettings defaults.
- This could end up 'changing' the display rate for sequences where the user has changed the snap interval in the settings for
a particular sequence editor, but there's not much we can do about that given we don't have access to the USequencerSettings classes in
UMovieScene
#jira UE-55919
Change 3940277 by Andrew.Rodham
Sequencer: Added ability to default frame resolutions and play rates for newly created actor sequences
Change 3940378 by Andrew.Rodham
Sequencer: Post move import dialog now defaults to the playback framerate of the sequence, and floors to frame numbers
Change 3940559 by Andrew.Rodham
Reinstated primed or recording sequence color
Change 3940642 by Max.Preussner
ImagePlate: Removed image plate media playback functionality
Change 3940843 by Max.Preussner
Core: Made TCircularQueue actually thread-safe; improved code comments
Change 3940860 by Max.Chen
Sequencer: Changed StructNameToKey to StructPathToKey
Previously, keying a PropertyPath of [RenderTransform][Shear][X] would get trimmed to X, which doesn't map to a channel name as
considered by Sequencer2dTransformTrackEditor. Instead, trim the resulting property path to [Shear][X] so that track editors can
determine the desired struct path and channels to key.
#jira UE-52966
Change 3941292 by Mike.Zyracki
Fix for trajectories out of range not showing up.
1) If we had no key data we would pop the time, so wouldn't get the section ranges.
2) Calculating of upper bound was wrong, checking against -1 and not key == num of keys when doing algo::lower_bound.
3) No need to do the Bck-- for the bakward iterators since we fixed #2. We start now from the upper bound correctly.
4) If we had no keys (at section start,end) we would incorrectly say we were any key type, so since we draw constant keys as
dashed we would do so incorrectly around section end points.
#jira UE-55929
Change 3941424 by Max.Chen
Curve Editor: Change Zoom to Fit to use TArrayView
Change 3941498 by Max.Preussner
Core: Added FMath::DivideAndRoundNearest function
Change 3942097 by Matt.Hoffman
Drop Frame Timecode Support for NTSC rates.
Change 3942104 by Matt.Hoffman
Sequence Recorder Group is no longer visible inside the World Outliner after using one.
#jira 55266
Change 3942107 by Max.Chen
Sequencer: Resurrect logic to find or extend an existing section when adding keys.
Change 3942330 by Max.Chen
Sequence Recorder: Better tooltip for default animation settings.
#jira UE-55636
Change 3942339 by Max.Chen
Sequence Recorder: Better tooltip for default animation settings.
#jira UE-55636
Change 3942507 by Andrew.Rodham
Sequencer: We no longer pad the time overlap threshold with a small number that is not scaled by the current zoom level
- The presence of this pad was causing keys that were far apart to be grouped when zoomed in a long way
Change 3942509 by Andrew.Rodham
Sequencer: Only pad total view range, rather than section range as well when retrieving keys to render
- This stops us from rendering keys that are within the view range, but outside the section range
Change 3942512 by Andrew.Rodham
Added transactions to some sequencer details customizations
Change 3942513 by Andrew.Rodham
Sequencer: Reinstated validation checks to UMovieSceneSection::SetStartFrame and SetEndFrame, changed erroneous uses to use
SetRange
Change 3942560 by Andrew.Rodham
Pass by rvalue reference to appease error C2719 on Win32
('InChannels': formal parameter with requested alignment of 8 won't be aligned)
Change 3942697 by Andrew.Rodham
Newly Created Level Sequences and Actor Sequences now default to 24000 fps frame resolution (+/- ~24hrs range, supporting all
integer rates + 23.976)
Change 3942700 by Andrew.Rodham
Sequencer: Added legacy out-of-bounds errors for times that are not supported by the current legacy upgrade frame resolution
Change 3942989 by Max.Preussner
Core: Fixed circular queue count calculation
Change 3943538 by Max.Preussner
MediaAssets: Reverted workaround for procedural audio log spam in HTML5
(Actor component initialization cannot be skipped if the component is used in a level)
Change 3944071 by Max.Preussner
QAGame: Fixed Media Texture keeps last frame of Media when PIE ends
#jira UE-53360
Change 3944292 by Max.Chen
Sequencer: Added extra flags to ensure that asset initialization does not occur on template actor sequences
#jira UE-56113
Change 3944364 by Max.Chen
Sequencer: Prevent circular shot/master tracks.
Tested adding master -> child -> master as drag and drop cinematic shot tracks and sub tracks as well as through the + button.
#jira UE-56091
Change 3944422 by Max.Chen
Sequence Recorder: Disable transform recording if off.
#jira UE-56061
Change 3944745 by Andrew.Rodham
Sequencer: Key rendering fixes
- Fixed assert that occured when keys happened to reside on some times due to KeyTime + TimeOverlapThreshold - KeyTime being
slightly larger TimeOverlapThreshold
- Fixed keys sometimes being clipped when zoomed right in due to lack of half-frame offset
- Added missing documentation to MovieSceneTimeHelpers.h
#jira UE-56107
Change 3945231 by Andrew.Rodham
Sequencer: Reconstruct channel proxy on Serialize to catch all cases of undo/redo, PostLoad and duplication
#jira UE-56089
Change 3945301 by Andrew.Rodham
Sequencer: Added safety checks during initial sequence recording to guard against applying negative or 0-sized sequence ranges
#jira UE-56125
Change 3946627 by Max.Preussner
Fortnite: Fixed game crashes closing editor while in PIE - Pure virtual function being called
#jira UE-56144
[CL 3946896 by Max Chen in Main branch]
2018-03-14 22:09:33 -04:00
|
|
|
int32 OnPaintTimeSlider( bool bMirrorLabels, const FGeometry& AllottedGeometry, const FSlateRect& MyCullingRect, FSlateWindowElementList& OutDrawElements, int32 LayerId, const FWidgetStyle& InWidgetStyle, bool bParentEnabled ) const;
|
|
|
|
|
FReply OnMouseButtonDown( SWidget& WidgetOwner, const FGeometry& MyGeometry, const FPointerEvent& MouseEvent );
|
|
|
|
|
FReply OnMouseButtonUp( SWidget& WidgetOwner, const FGeometry& MyGeometry, const FPointerEvent& MouseEvent );
|
|
|
|
|
FReply OnMouseMove( SWidget& WidgetOwner, const FGeometry& MyGeometry, const FPointerEvent& MouseEvent );
|
|
|
|
|
FReply OnMouseWheel( SWidget& WidgetOwner, const FGeometry& MyGeometry, const FPointerEvent& MouseEvent );
|
|
|
|
|
FCursorReply OnCursorQuery( TSharedRef<const SWidget> WidgetOwner, const FGeometry& MyGeometry, const FPointerEvent& CursorEvent) const { return FCursorReply::Unhandled(); }
|
2014-11-19 07:43:07 -05:00
|
|
|
|
|
|
|
|
/**
|
|
|
|
|
* Draws major tick lines in the section view
|
|
|
|
|
*/
|
Copying //UE4/Dev-Editor to //UE4/Dev-Main (Source: //UE4/Dev-Editor @ 3497164)
#lockdown Nick.Penwarden
#rb none
=====================================
MAJOR FEATURES + CHANGES
=====================================
Change 3433074 by Matt.Kuhlenschmidt
Fix crash when clicking on certian tutorial blueprints.
#jira UE-44593
Change 3433075 by Matt.Kuhlenschmidt
Remove hittest grid log spam. The underlying problem causing this has been fixed
Change 3433077 by Matt.Kuhlenschmidt
Fix lighting becoming unbuilt when mesh painting
#jira UE-44837
Change 3433081 by Matt.Kuhlenschmidt
PR #3553: Crashfix for static array properties (Contributed by Pierdek)
Change 3433104 by Alexis.Matte
Make sure re-import skeletal mesh follow the import morph option
#jira UE-42846
Change 3434825 by Matt.Kuhlenschmidt
Fix crash when GC happens while the vr editor radial menu is open.
Change 3434831 by Matt.Kuhlenschmidt
Added missing file
Change 3434868 by Shaun.Kime
If you have a reroute node between a Material Function texture input and its usage, the parent material will fail to resolve the reroute node.
#jira ue-44670
Change 3434998 by Alexis.Matte
Meshes editors material/section panel are now fully transactional
- Staticmesh editor: section material slot, section cast shadow, section collision, material slot instance, material slot name
- Skeletal mesh editor: material slot instance, material slot name
Also fix some transaction description
#jira UE-44462
Change 3435195 by Jamie.Dale
Fixed incorrect handling of some LTR scripts that require shaping
These scripts need to go through HarfBuzz, and this also fixes a case where HarfBuzz wasn't applying font scale correctly.
#jira UE-44767
Change 3435199 by Jamie.Dale
Fixed some crashes/artifacts with bidirectional text
It was possible for a line to compute an incorrect range, which could cause crashes or other highlighting issues. The highlighting logic has also been updated as the old code didn't handle all bidirectional cases correctly.
Change 3435200 by Jamie.Dale
Fixed a grapheme cluster metrics issue in the font editor viewport
The viewport also now respects the default shaping method CVar.
Change 3435771 by Alexis.Matte
Fix degenerated bounds calculation for skeletalmesh when the skeleton is remove from a re-import
(PhysicAsset API change, adding 1 function)
#jira UE-44609
Change 3436856 by Jamie.Dale
Added some missing Unicode block ranges
Change 3436914 by Jamie.Dale
Adding some missing combining character ranges to the text shaper
Change 3436923 by Alexis.Matte
PR #3463: Get bounds for all triangles, not just the first one. WedgeIndex was . (Contributed by DaveC79)
#jira UE-43764
Change 3436948 by Jamie.Dale
Updated the Portal to use the predefined Unicode block ranges
Change 3436961 by Max.Chen
Sequencer: Show camera shake/anim track menus even if there aren't any assets.
Change 3437244 by Max.Chen
Sequencer: Clear locked cameras when releasing Sequencer.
#jira UE-44967
Change 3437515 by Arciel.Rekman
UBT: improvements for LocalExecutor.
- Larger number of parallel jobs on 16GB+ machines.
- Use WaitForExit() instead of polling.
- Tested on Linux and Mac.
Change 3437629 by Matt.Kuhlenschmidt
Improve asset import data display in static and skeletal meshes
Change 3438047 by Arciel.Rekman
Fix overlapping ranges being passed to memcpy().
Change 3438822 by Yannick.Lange
ViewportInteraction: Move gizmo handle files to make them private.
Change 3438906 by Matt.Kuhlenschmidt
PR #3556: Git Plugin: fix new option "init Git LFS" that make assets read-only (master/UE4.17) (Contributed by SRombauts)
Change 3438907 by Matt.Kuhlenschmidt
PR #3565: add -quality option to buildlighing commandlet (Contributed by kayama-shift)
Change 3438908 by Matt.Kuhlenschmidt
PR #3558: UE-44862: Always update SColorPicker color on OK button (Contributed by projectgheist)
Change 3439393 by Matt.Kuhlenschmidt
Force highest LOD for highres screenshots
Change 3439819 by Matt.Kuhlenschmidt
Turned FAssetData into a struct for some upcoming script exposure of FAssetData
Change 3439949 by Arciel.Rekman
Fixed selection logic for the UE4_LINUX_USE_LIBCXX environment variable.
- Allows disabling libc++ by setting the variable to 0.
- Pull request #3576 contributed by jared-improbable.
Change 3441078 by Jamie.Dale
The culture/language/locale console commands are now available in all build configs
Change 3441109 by Jamie.Dale
Text containing surrogate pairs now runs through HarfBuzz when shaping in Auto mode
This is needed as the kerning-only shaping code assumes that everything is within the BMP
Change 3441275 by Matt.Kuhlenschmidt
Disable spinning on location and scale. These dont work because we have no notion of infinite spinning
Change 3442748 by Yannick.Lange
ViewportInteraction: Remove unused console variables.
Change 3442775 by James.Golding
Add support for editing MaterialFunctions to MaterialEditingLibrary
Pull Material recompile/update code into UMaterialEditingLibrary::RecompileMaterial
Pull MaterialFunction update code into UMaterialEditingLibrary::UpdateMaterialFunction util
Move RebuildMaterialInstanceEditors to UMaterialEditingLibrary
Added test content for Material/MaterialFunction editing
Add needed BlueprintReadWrite to expressions (constants, function input/output)
Expose UMaterialExpressionMaterialFunctionCall::SetMaterialFunction to BP, rename old func (which takes old function) to SetMaterialFunctionEx, also expose GetInputNameWithType
Change 3442779 by James.Golding
Fix header order
Change 3442817 by Yannick.Lange
ViewportInteraction: Add can execute checks for level editor commands.
Change 3443038 by Michael.Dupuis
#jira UE-43377: When you select a foliage actor we will move all instance contained in it to the new level as we can't move a foliage actor
Only permit moving foliage instance if there is some selected
Change 3443855 by Michael.Dupuis
#jira UE-44885: Unregister from PerModuleDataObjects when the object is destroyed
Change 3446096 by Max.Chen
Sequencer: Add OnFinished() event when a level sequence completes playback
#jira UE-45173
Change 3446097 by Max.Chen
Sequencer: Evaluate one last time before the sequence is torn down and reset
#jira UE-45174
Change 3446242 by Jamie.Dale
Fixed caret not appearing in empty text layouts
Caret selections have no range, and therefore have no width
Change 3446361 by Matt.Kuhlenschmidt
Fix WITH_EDITOR only functions causing generated code compile errors when the all functions on the class are WITH_EDITOR
Change 3446457 by Alexis.Matte
Polish the speed tree import dialog
#jira UE-44963
Change 3446946 by Michael.Trepka
Modified FWindowsWindow::GetRestoredDimensions to return correct window position for normal windows for which GetWindowPlacement returns position in workspace coordinates
#jira UE-37934
Change 3447543 by Arciel.Rekman
Reduce VMAs on Linux.
- Trades off increased address space (VIRT in terms of ps/htop) for smaller number of distinct mappings (VMAs, virtual memory areas).
This decreases possibility to run into vm.max_map_count limit on Linux.
- Tested on Linux and Mac.
Change 3448468 by Arciel.Rekman
Fix race condition during creation of GMalloc.
- On Mac GMalloc can be created on two different thread that are racing with each other - app's main thread and a system thread.
Change 3449012 by Max.Chen
Sequencer: Add time to transform, color and vector key structs so that key times are editable from the key editors.
#jira UE-45089
Change 3449018 by Max.Chen
Sequencer: Add OnCameraCut event that fires when there is a camera cut.
#jira UE-45137
Change 3449195 by Max.Chen
Sequencer: Add setting for limit scrubbing to playback range.
#jira UE-43502
Change 3449198 by Max.Chen
Sequencer: Reorder hierarchical bias so that group priority takes precedence.
Change 3449217 by Max.Chen
Sequencer: Add setting to activate realtime viewports when in sequencer.
Change 3449219 by Max.Chen
Sequencer: Focus on search boxes when opened.
Change 3449238 by Max.Chen
Sequencer: Assign actor should replace the actor itself after it has updated all the components. Also, replace components be fullname rather than by class.
Change 3449239 by Max.Chen
Sequencer: Fix offsets when moving multiple sections. Dragging should be clamped to the bounds that any of the selected sections hits against the unselected sections.
Change 3449241 by Max.Chen
Sequencer: Restore section selection after full tree rebuild.
Change 3449279 by Max.Chen
Sequencer: Set movie scene capture frames only when not using custom frames. This allows the user entered frame numbers to persist in config, rather than overwriting them when doing a "Render Shot"
Change 3449280 by Max.Chen
Sequencer: Spawn in the persistent level. Otherwise, they get spawned into whatever sublevel is current.
#jira UE-44552
Change 3449294 by Max.Chen
Sequencer: Null check for sequencer ed mode crash.
Change 3449297 by Max.Chen
Sequencer: Fix delay in sliding values. Mark changed when sliding values. Mark refresh immediately when committing values since OnValueChanged will be called and needs to have the correct value that was refreshed immediately.
#jira UE-42866
Change 3449542 by Max.Chen
Sequencer: Fix scrubber hit testing so that the time scrubber is really favored over the playback ranges.
#jira UE-44569
Change 3451507 by Matt.Kuhlenschmidt
Fix extra slate uv coords not functioning on ES2
Change 3451510 by Matt.Kuhlenschmidt
PR #3595: Fixed wrong colour for level status (Contributed by ronve)
Change 3451529 by Alexis.Matte
fbx scene importer: Make sure we set INVALID_UNIQUE_ID to node that has no attribute.
#jira UE-34410
Change 3451611 by Yannick.Lange
ViewportInteraction: Dragging gizmo without second pass for snapped calculations.
Change 3452134 by Jamie.Dale
Fixed constant font cache flushing if a widget had no font set
Change 3452239 by Jamie.Dale
Fixed constant font measure flushing if a widget had no font set
Change 3452243 by Jamie.Dale
Removed deprecated code for creating fonts from bulk data
Change 3452277 by Jamie.Dale
The concept of "stale" composite fonts is now editor-only
Change 3452358 by Alexis.Matte
Fbx scene importer: Do not remove existing attribute reference from the blueprint if the reimport of the associate mesh attribute is not tick.
#jira UE-45232
Change 3452678 by Max.Chen
Sequencer: Fix crash on export if there's no shot data.
Change 3453057 by Matt.Kuhlenschmidt
Exposed asset exporting to script
Change 3453782 by Andrew.Rodham
Sequencer: Fixed deterministic cooking issues with movie scene data
- Movie scene signatures are now initialized in PostInitProperties
- A warning is now presented when attempting to cook old data that was never serialized with a signature.
- Removed redundant legacy data upgrade logic that could dirty level sequences on load.
#jira UE-44912
Change 3453788 by Yannick.Lange
ViewportInteraction: Custom scene proxy for gizmo handles.
Change 3453938 by Max.Chen
Sequencer: Hotkeys (shift , and shift .) to step to next/previous shot
#jira UE-45119
Change 3454058 by Michael.Dupuis
Fixed StaticAnalysis
Change 3454077 by Max.Chen
Sequencer: Fix not saving the pre-animated track value when creating a track/key.
On pre object change, broadcast property change so that a track or key can be created. That track/key needs to be evaluated immediately so that the pre-animated state can be saved properly. This is done now with RefreshAllImmediately and is only called when a track has been created. Also, added a return value for OnKeyProperty, so that it's known what changed in particular (ie. track created, track modified, etc)
Also, fixed transform keying so that if a transform track already exists for the object or the scene component, the existing track is used.
#jira UE-45130
Change 3454108 by Nick.Darnell
UMG - Fixing the WIC to properly record cursor delta so that scrollbars work.
Change 3454109 by Jamie.Dale
Cache the text layout source info in non-shipping builds so you can inspect it in the debugger
Change 3454202 by Matt.Kuhlenschmidt
Fix bogus error message about the number of usable texture coordinates on ES2 when compiling a UI domain material
Change 3454390 by Yannick.Lange
Fix creating a plugin in a C++ project opens a second instance of Visual Studio. Use SourceCodeAccessor to open solution when necessary.
#jira UE-45035
Change 3454564 by Matt.Kuhlenschmidt
#rnx Fix deprecation warnings
Change 3455471 by Yannick.Lange
ViewportInteraction: Fix entering and exiting VR Mode disables gizmo in desktop editor viewport.
#jira UE-44965
Change 3456183 by Max.Chen
Sequencer: Auto key, auto track refactor.
Auto key - create a key when the property changes and there's an existing track.
Auto track - create a track when the property changes. This is only exposed in the level sequence editor.
All - create a key and a track when the property changes. This is only exposed in VR Editor.
None - do nothing.
#jira UE-43469
Change 3456349 by Andrew.Rodham
Sequencer: Only perform legacy signature checks on instances, and only where signatures match the CDO
Change 3456678 by Alexis.Matte
Allow to add null level instance override material via the advance material array. But still limit the override material number to the mesh material number.
#jira UE-45306
Change 3456945 by Max.Chen
UMG: Add restore state to 2d transform section.
#jira UE-45372
Change 3457196 by Arciel.Rekman
Linux: serialize allocations from the memory pool.
Change 3458434 by Max.Chen
Sequencer: Remove obsolete set tick prerequites functions.
Change 3458671 by James.Golding
Added MIC editing support to MaterialEditingLibrary
Fix static analysis warning
Change 3458888 by Matt.Kuhlenschmidt
PR #3615: More detailed log messages for debugging warnings/errors (Contributed by projectgheist)
Change 3458893 by Matt.Kuhlenschmidt
PR #3583: UE-44960: Delta value wasn't being used (Contributed by projectgheist)
Change 3458895 by Matt.Kuhlenschmidt
Fix typo
Change 3458902 by Matt.Kuhlenschmidt
PR #3607: Improved InputKeySelector functionality (Contributed by projectgheist)
Change 3458917 by Matt.Kuhlenschmidt
Fix crash with invalid object properties in the class picker
#jira UE-39000
Change 3458939 by Matt.Kuhlenschmidt
Fix compile error
Change 3458984 by andrew.porter
QAGame: Initial check in of sequencer smoke test map
Change 3459510 by Matt.Kuhlenschmidt
Fixed ensure when deleting a map that contains build data which also happens to be the currently loaded map.
#jira UE-45052
Change 3460985 by Max.Chen
Sequencer: Snap play time to keys now allows scrubbing between keys and snaps to key times within a certain screenspace tolerance.
#jira UE-45090
Change 3461698 by Arciel.Rekman
Avoid using ARRAY_COUNT in Vulkan.
- Sometimes those arrays can have no extensions whatsoever, and it is illegal to declare a 0 element C array.
Change 3462053 by Max.Chen
Sequencer: Show sequencer spawnables in the world outliner and add the icon overlay for spawnables.
#jira UE-43470
Change 3462139 by Max.Chen
Property Editor: Add objects to FPropertyAndParent
Change 3462202 by Arciel.Rekman
Fix FSocket::Recv() blocking with Peek when there's no data.
Change 3462253 by Nick.Darnell
Slate - New Clipping System
Clipping is now a stateful choice made during composition of the slate hierarchy. Previously every widget got to respect or modify the clipping rect on an as needed basis. The problem was that clipping was only allowed in the layout space of the widget, and it wasn't possible to properly clip elements with render transforms. The new system permits all kinds of transforms on any widget, and they will all be clipped correctly. It tries to use Scissor Rects as they are much cheaper, but will switch over to stenciling if need be to represent a complicated masking structure with several rotated clipping rects all needed to be combined together.
Here are the new clipping states a widget can have, almost all widgets are set to No. Only change it from No if your widget actually needs to clip, generally speaking most widgets don't need to clip.
/**
* This widget does not clip children, it and all children inherit the clipping area of the last widget that clipped.
*/
Inherit,
/**
* This widget clips content the bounds of this widget. It intersects those bounds with any previous clipping area.
*/
ClipToBounds,
/**
* This widget clips to its bounds. It does NOT intersect with any existing clipping geometry, it pushes a new clipping
* state. Effectively allowing it to render outside the bounds of hierarchy that does clip.
*
* NOTE: This will NOT allow you ignore the clipping zone that is set to [Yes - Always].
*/
ClipToBoundsWithoutIntersecting UMETA(DisplayName = "Yes - Without Intersecting (Advanced)"),
/**
* This widget clips to its bounds. It intersects those bounds with any previous clipping area.
*
* NOTE: This clipping area can NOT be ignored, it will always clip children. Useful for hard barriers
* in the UI where you never want animations or other effects to break this region.
*/
ClipToBoundsAlways UMETA(DisplayName = "Yes - Always (Advanced)"),
/**
* This widget clips to its bounds when it's Desired Size is larger than the allocated geometry
* the widget is given. If that occurs, it behaves like [Yes].
*
* NOTE: This mode was primarily added for Text, which is often placed into containers that eventually
* are resized to not be able to support the length of the text. So rather than needing to tag every
* container that could contain text with [Yes], which would result in almost no batching, this mode
* was added to dynamically adjust the clipping if needed. The reason not every panel is set to OnDemand,
* is because not every panel returns a Desired Size that matches what it plans to render at.
*/
OnDemand UMETA(DisplayName = "On Demand (Advanced)")
- Large API Change -
All FSlateDrawElement::Make_____ calls have been deprecated that involved passing in a clipping rect. You no longer should are passed a Clipping rect via OnPaint. You are still passed a rect, but this rect represents a Culling Rect, which is valuable if you need to just out right not paint things the user can't possibly see.
If you were previously trying to determine if you should cull widgets, by doing something like this,
if ( FSlateRect::DoRectanglesIntersect(MyClippingRect, CurWidget.Geometry.GetRenderBoundingRect()) )
That's no longer a good option since there are ways for widgets to ignore the culling bounds. You should convert anything like above to the one below,
if (!SWidget::IsWidgetCulled(MyCullingRect, CurWidget))
To assist in debugging efforts, there are several new debugging console flags in Slate,
Slate.ShowClipping 1 - Controls whether we should render a clipping zone outline. Yellow = Axis Scissor Rect Clipping (cheap). Red = Stencil Clipping (expensive).
Slate.DebugCulling 1 - Disables pushing clipping or stencil rects to the GPU, but continues to intersect culling rects, so that you can tell if a widget is properly culling children it can't possibly draw.
Slate.ShowTextDebugging 1 - Show debugging painting for text rendering.
I've added a new Experimental Feathering Option, it adds AA geometry around the outside of Box and Image brushes.
Slate.Feathering 1
If you're using RenderDoc or something similar, you can now enable render events for slate, so that you can better grok how we're batching and changing states for each UI render pass.
Slate.EnableDrawEvents 1
#jira UE-4659
#rn
Change 3462714 by Nick.Darnell
Fixing a few more compiler issues with the clipping changes.
Change 3462726 by Max.Chen
Switch OnEditStructChildContentsChanged to use FObjectWriter instead of FMemoryWriter which supports serializeing UObjects. This fixes a crash when adding actor array elements to a user defined event struct.
#jira UE-45431
Change 3462801 by Nick.Darnell
Adding a UMG dependency to EngineTestBuild.
Change 3462914 by Max.Chen
Sequencer: Fix regression where spawnables aren't getting saved. Caused by 3407138
#jira UE-30007
#jira UE-39003
Change 3462946 by Nick.Darnell
Automation - Tweaking the UI automation tests converting them over to use the new UI Screenshot automation test.
Automation - Adding a blur widget test.
Change 3462987 by Matt.Kuhlenschmidt
Back out changelist 3458893
Change 3464774 by Matt.Kuhlenschmidt
PR #3629: Bugfix: Missing small icon in Project Launcher profile editor (Contributed by aarmbruster)
Change 3464785 by Nick.Darnell
Fixing some clipping stuff in the editor.
Change 3464830 by andrew.porter
QAGame: Second pass on sequencer smoke test map
Change 3464902 by Nick.Darnell
Loading - Adding some additional checks to the the loading code to ensure we're on the main thread. Additionally adding a fix from UDN that prevents deadlocks in the rare case a user hits Alt+Tab in a fullscreen game while in a hard loading screen.
Change 3464988 by Max.Chen
Sequencer: Add attenuation settings for attached audio components.
#jira UE-33080
Change 3465024 by Nick.Darnell
MoviePlayer - Impoving the playback mode displaynames.
Change 3465074 by Arciel.Rekman
Fix shadowing issues of GraphicsPSOInit.
Change 3465097 by Matt.Kuhlenschmidt
Some refactoring of the details panel
Exposed new methods of adding a struct on scope to a details panel and have it work properly with customizations. The scruct on scope has a "fake" ustructproperty that allows the details panel to show the whole struct not just an individual property.
Refactored the API for adding rows to details panels to make it more consistent\
AddChildCustomBuilder->AddCustomBuilder
AddChildGroup->AddGroup
AddChildContent->AddCustomRow
AddChildPropert->AddProperty
AddChildStructure->AddExternalStructureProperty
AddStructure->AddAllExternalStructureProperties
AddExternalProperty->AddExternalObjectProperty or AddExternalStructureProperty
Change 3465186 by Max.Chen
Sequencer: Save the BindingID in the pre animated token producer so that it can be destroyed properly. This fixes a bug where the default state of a spawnable isn't saved.
#jira UE-43780
Change 3465315 by Matt.Kuhlenschmidt
Fix Fortnite and Orion details panel customization warnings
Change 3465424 by Nick.Darnell
Automation - Moving the step for setting the link to the automation reports to be set before we start the engine.
Change 3465488 by Nick.Darnell
Automation - Forcing textures to load before taking screenshot, so that the scene gets another opportunity to render before we render with Slate. This should fix the Blur UI Test.
Change 3466277 by Arciel.Rekman
Linux: fix window drift when dragging (UE-40380).
- Change by Cengiz Terzibas.
Change 3466370 by Nick.Darnell
UMG - Fixing the colors for the resize handle in the designer.
Change 3466372 by Nick.Darnell
UMG - Fixing the ruler ticks sometimes not being drawn.
Change 3466374 by Nick.Darnell
UMG - Fixing the designer showing multiple options for sequencer.
Change 3466377 by Nick.Darnell
UMG - Cleaning up some clipping bits.
Change 3467025 by Andrew.Rodham
Re-saving assets that contain legacy (<4.15) movie scene data to remove deterministic cook warning.
If conflicts arise during merging of these assets, please ignore the changes made in dev-editor, and accept game-side changes.
(CIS step 62283298, jobId 7773146)
(CIS step 62283297, jobId 7773146)
Change 3467099 by Max.Chen
Fix GetObjectPropertyClass ensure logic. This was returning UObject::StaticClass when valid.
Change 3467172 by Max.Chen
Sequencer: Evaluation optimizations. Also, fixes subsequences not getting expired, leaving dangling spawnables.
#jira UE-43690
Change 3467192 by Matt.Kuhlenschmidt
Fix transactions getting stuck in the color grading controls. This prevents PIE from working properly and causes shutdown crashes
#jira UE-45527
Change 3467251 by Yannick.Lange
ViewportInteraction: Fix scale and rotation snap while dragging with two lasers.
#jira UE-43489
Change 3467331 by Matt.Kuhlenschmidt
Fix D3D shader compiler hard coding shader path and not giving proper warnings when it cannot find the shaders
Change 3467335 by Matt.Kuhlenschmidt
Remove DarkStyle attribute from SNumericEntryBox and allow a spin box style to be passed to it.
Change 3467558 by Max.Chen
Scene Outliner: Generic support to add default columns to a scene outliner.
Change 3467565 by Jamie.Dale
Removing old screenshot data for test
Change 3467589 by Nick.Darnell
Editor - Random cleanup.
Change 3467596 by Nick.Darnell
Progress Bar - Exposing Border Padding to UMG.
Change 3467600 by Nick.Darnell
Slate - Adjusting the rendering of the splitter, previously it could be off by a pixel or two, which becomes more apparent now with the clipping changes.
Change 3467601 by Max.Chen
Property Editor: Fix static analysis warning
Change 3467662 by Nick.Darnell
Automation - Fixing a bug with the screenshot comparison tool not replacing (removing) the old screenshot data.
Change 3467674 by Max.Chen
Property Editor: Fix static analysis warning
Change 3467737 by Max.Chen
Sequencer: Added OnMovieSceneBindingsChanged delegate
Change 3468053 by tim.gautier
QAGame: Updating Editor Smoke Map
- Updated landscapes into Stations for testing
- Added Foliage Sublevel
Change 3468194 by Arciel.Rekman
Linux: fix problems communicating with various STL-using libs.
- Stop hiding global new/delete signatures.
- Disable CEF3 since this change uncovers the problem with libcef.so not built to use bundled libpng.
Change 3468678 by Max.Chen
Sequencer: Set "Sequencer Actor" tag before setting the actor label so that the outliner refreshes after the actor has the tag.
Change 3469314 by tim.gautier
QAGame: Added Painted Foliage / Spline section to EditorSmoke map
Change 3469377 by Nick.Darnell
Slate - Fixing some warnings in a couple of sample games due to the clipping changes.
#rnx
Change 3469767 by Max.Chen
Sequencer: Outliner column and sequencer binding data
#jira UE-43470
Change 3469974 by Arciel.Rekman
Fix code projects not working in Linux installed build.
Change 3470082 by Nick.Darnell
Slate - The GetRenderer() call on SlateApplication no longer returns a SharedPtr, rather than convert it to a thread safe ptr, going to just make accessing it a raw ptr return, so it can be safely referenced on the game thread while being used on the slate loading thread.
Change 3470174 by Nick.Darnell
Slate - Get the last widget in a widget path utility.
Change 3470176 by Nick.Darnell
UMG - User Widgets now have an easy way to know if they're part of or have been removed from the focused widget path, which is handy for doing effects.
Change 3470261 by Nick.Darnell
Slate - The GetRenderer() call on SlateApplication no longer returns a SharedPtr, rather than convert it to a thread safe ptr, going to just make accessing it a raw ptr return, so it can be safely referenced on the game thread while being used on the slate loading thread.
Change 3470286 by Max.Chen
Sequencer: Scene Component's HiddenInGame now goes through the VisibilityTrack and the visibility template.
Change 3470366 by Nick.Darnell
Slate - We now version focus per user, that way during focus events, we can safely abort focus events and state transitions if someone interrrupts the active focus event with something new.
Change 3470649 by Matt.Kuhlenschmidt
Fix deprecation warnings
Change 3470695 by Matt.Kuhlenschmidt
Fixed typo
#jira UE-45580
Change 3470721 by Matt.Kuhlenschmidt
Fix static analysis
Change 3471254 by Michael.Dupuis
#jira UE-42952: Keep occlusion result per view
Change 3471287 by Nick.Darnell
UMG - Render Focus Rule now defaults to never.
Change 3471291 by Nick.Darnell
Slate - Fixing FSlateRenderer* change fallout.
Change 3471299 by Nick.Darnell
Slate - Fixing FSlateRenderer* change.
Change 3471323 by Nick.Darnell
Automation - Fixing automation and Static Analysis warning.
Change 3471413 by andrew.porter
QAGame: Added test content for anim blending and material parameteres to sequencer smoke level
Change 3471649 by Max.Chen
Sequencer: Modify the track when adding animation
#jira UE-45618
Change 3471659 by Matt.Kuhlenschmidt
Added a way to check if a movie is playing from the engine.
Prevented viewport redraws for canvas loading screens if a slate based loading movie is playing
Change 3471734 by Matt.Kuhlenschmidt
Added basic material hookup to USD. Similar to FBX it will find materials based on rules specified by the user in the import settings
Change 3472176 by Nick.Darnell
UMG - Improving the display of the +Track menu in sequencer for UMG. Renamed it from +Add, which is repetitve to +Track. Additionally, the dropdown now shows the currently selected widgets, as well as a submenu containing all the 'important' widgets, so we no longer populate that list with a ton of irrelevant widgets that are just Buton_1 - N, which is pointless in showing people, they'll never guess which is the right button.
Change 3472740 by Max.Chen
Sequencer: Add GetThisFrameMetaData accessor
Change 3472748 by Max.Chen
Sequencer: Added OnBeginScrubbing and OnEndScrubbing event delegates
Change 3472753 by Max.Chen
Sequencer: Add EMovieSceneDataChangeType parameter to OnMovieSceneDataChanged delegate
Change 3472870 by Nick.Darnell
Clipping - Fixing the deprecated tip for scissor rect boxes to be correct. Removing it's usage from UT.
Change 3473340 by Max.Chen
Scene Outliner: Add ability to register additional filters
Change 3473348 by Max.Chen
Details View: Make ForceRefresh virtual. Added accessors to delegates (ie. GetIsPropertyReadOnlyDelegate)
Change 3473441 by Max.Chen
Sequencer: Autokey Refactor Part 2.
Autokey is now a single toggleable state.
Allow Edits Mode has 3 states:
Allow All Edits - Allow any edits to occur, some of which may produce tracks/keys or modify default properties.
Allow Sequencer Edits Only - All edits will produce either a track or a key.
Allow Level Edits Only - Properties in the details panel will be disabled if they have a track.
#jira UE-45229
Change 3473670 by Nick.Darnell
Modules - The module manager no longer returns sharedptrs to IModuleInterfaces, this was the source of rare hard to track down crashes due to a shared ptr reference leak when GetModule was called on non-main threads. We now store a TUniquePtr internally, and only lease out raw pointers.
#rn
Change 3473711 by Nick.Darnell
Disabling the ensure in the module manager.
Change 3473747 by Max.Chen
Sequencer: Fix tooltip
Change 3474091 by Jamie.Dale
Added a warning when cooking a UFontFace that is outered to a UFont asset
These cause issues with iterative COTF, and should be split off into their own assets (as the UI has been asking people to do for several versions)
Change 3475052 by Yannick.Lange
VR Editor: Fix Crash when quitting the editor with VR Mode enabled. VR Editor was being enabled when saving the map on closing the editor.
#jira UE-45415
Change 3475054 by Yannick.Lange
Fix crash when adding a camera to the world in VR Mode the second time. The slate application did not reset when stop dragging in VR Mode, so the second time when starting to drag a camera out of the UI it would already by in a dragging state.
#jira UE-45574
Change 3475263 by Nick.Darnell
Fixing some additional cases of IModuleInteface SharedPtr usage.
Change 3475268 by Max.Chen
Sequencer: Set jumped state when looping playback. This fixes an issue where audio doesn't stop and restart when looped.
#jira UE-45654
Change 3475269 by Max.Chen
Scene Outliner: Additional filters should only apply to actor browsing mode
Change 3475407 by Nick.Darnell
Fixing some clipping / module shared ptr changes in the launcher code.
Change 3475542 by Max.Chen
Sequencer: Update thumbnail and section highlighting to use new clipping behavior.
#jira UE-45692
#jira UE-45689
Change 3475743 by Michael.Dupuis
#jira UE-45183: When updating phyx region take into account simple collision mip
Change 3475949 by Arciel.Rekman
Remove PhysX deoptimization (no longer needed).
- OR-24947 has been closed three months ago.
Change 3476022 by Michael.Dupuis
#jira UE-45560: Make sure we're not going out of range
Change 3476063 by Michael.Dupuis
#jira UE-45562: Do not try to unregister from static mesh if no static mesh is specified for the component
Change 3476168 by Michael.Trepka
Added handling of directory symlinks to FApplePlatformFile::IterateDirectory
#jira UE-43704
Change 3476172 by Nick.Darnell
Fixing a Imoduleinterface change.
Change 3476183 by Jamie.Dale
Exposing GoTo/ScrollTo to single-line editable text for API parity with multi-line editable text
Change 3476385 by Arciel.Rekman
Linux: handle symlinks when iterating directories.
Change 3476522 by Michael.Trepka
Solved a problem with Mac FMallocTBB::Malloc() returning nullptr for 0 bytes allocations, which is inconsistent with other platforms. On Mac we always scalable_aligned_malloc, which behaves differently than scalable_malloc, so for 0 bytes requests we allocate sizeof(size_t), which is exactly what scalable_malloc does internally in such case.
Change 3476806 by Nick.Darnell
UMG - Focus the designer after dropping a widget onto the surface.
Change 3476809 by Nick.Darnell
Curve Editor - Enable Clipping on the curve editor.
Change 3477475 by Nick.Darnell
Fixing a module interface shared ptr usage in UT.
Change 3477553 by Yannick.Lange
VR Editor: Removed AssetEditorPanelID and replaced it with TabManagerPanelID. A panel for AssetEditorPanelID was never created making it impossible to open an asset editor.
Change 3477734 by Yannick.Lange
VR Editor: Fix Warning: SetRelativeScale3D : Invalid Scale entered (X=inf Y=inf Z=inf). Resetting to 1.f. warning when adding CineCameraActor to World from Modes Panel. Make sure to not divide by zero when there is no boundary scale.
#jira UE-44933
Change 3477761 by Jamie.Dale
Some improvements to avoid loading the native .locres files twice when we don't need to
Change 3477780 by Nick.Darnell
PR #3250: Return correct VirtualUserIndex (Contributed by projectgheist)
Change 3477786 by Nick.Darnell
PR #3650: Changed TestNull to accept const pointers. (Contributed by e-agaubatz)
Change 3477795 by Nick.Darnell
PR #2844: UE-36936: Don't stretch container for Plugin Image (Contributed by projectgheist)
Change 3478092 by Nick.Darnell
PR #2341: Optional Middle Mouse Button panning in Graph Editor (Contributed by flipswitchingmonkey)
Engine Edit - Made some small changes to the enum type, and some naming.
Change 3478450 by Nick.Darnell
Fixing some uninitialized variable errors.
Change 3479827 by Andrew.Rodham
Sequencer: Addressed serialization issues with some struct types
Change 3479874 by Jamie.Dale
Fixed "NativeGameLanguage" not being used correctly during localization initialization
Change 3480012 by Andrew.Rodham
Sequencer: Fixed loading tagged properties as native for track identifiers
#jira UE-45823
Change 3480337 by Alexis.Matte
Fix morph target crash missing some valid index check
Change 3480804 by Alexis.Matte
Fix crash with ColorGradingMode custom detail
#jira UE-45638
Change 3480892 by Andrew.Rodham
Sequencer: Ensure that movie scene sequences know about the editor object version
#jira UE-45842
Change 3481073 by Nick.Darnell
Fix the shader compiler error from main in Slate.
Change 3481303 by Nick.Darnell
UMG - Fixing a bug with the drag handle not working correctly in HDPI mode.
Change 3481308 by Nick.Darnell
Slate - Tweaking the IsWidgetCulled logic to consider both the layout and rendering bounds. If we do this, we get a much more desireable outcome for people that want to animate widgets and such and plan to have temporary animations to move the widget offscreen, but want the layout bounds to anchor that widget in the visible frame so that it animates even when normally it would be culled b/c the render transform and therefore the renderbounds moved it completely outside the culling rect.
Change 3481629 by Max.Chen
Sequencer: Add Level Sequence Actor as an output for CreateLevelSequencePlayer()
#jira UE-45785
Change 3481899 by Yannick.Lange
VR Editor: Added debug modetoggle command with an event that is broadcasted whenever this happens. Currently this is used to show all the floating UIs of the UI system to debug without HMD using VREd.ForceVRMode.
Change 3481984 by Michael.Dupuis
#jira UE-45845: always validate if we have a static mesh before trying to access it as user can decide to not assign one and use the tools
Change 3482047 by Nick.Darnell
Slate - Adding some comments to IsWidgetCulled.
Change 3482110 by Nick.Darnell
Slate - IsWidgetCulled is no longer static and is now called IsChildWidgetCulled.
Change 3482136 by Jamie.Dale
The CamelCase break iterator now treats digits around character tokens as part of the identifier
Change 3482138 by Michael.Dupuis
#jira UE-45854: Properly unregister during undo operation
Change 3482150 by Michael.Dupuis
#jira UE-45845 : Add missing nullcheck for GetStaticMesh
Change 3482153 by Nick.Darnell
Slate - IsWidgetCulled is no longer static and is now called IsChildWidgetCulled.
Change 3482180 by Nick.Darnell
UMG - Widget Components do not need to define a widget class to be rendererd, they can have native slate widgets only. This was a regression from main.
Change 3482273 by Nick.Darnell
UMG - Tweaking some more things about the widget component box outline.
Change 3482308 by Alexis.Matte
Fixing morph target smooth group support. Do not call FillSkeletalMeshImportData more then once on FbxNode since this fonction is doing some conversion and change the FbxNode, applying those conversion twice do not return the same faces smooth group.
#jira UE-45696
Change 3482327 by Nick.Darnell
UMG - More tweaks to the WidgetComponent so both shows the box outline, but works in game and VR editor.
Change 3482705 by Andrew.Rodham
Resaving assets that contain legacy data to suppress CIS warnings.
- If conflicts arise in these assets, please take game-side changes and ignore these.
Change 3484245 by Max.Chen
Sequencer: Evaluate on end scrub. This fixes a bug where audio doesn't evaluate in a stopped position at the end of scrubbing, causing it to not stop all sounds. This fixes a bug introduced from 3365018 where evaluate on end scrub was removed.
#jira UE-45905
Change 3484263 by Max.Chen
Sequencer: Fix crash on forcing refresh of details panel on release.
#jira UE-45911
Change 3484431 by Andrew.Rodham
Resaving assets that contain legacy data to suppress CIS warnings.
- If conflicts arise in these assets, please take game-side changes and ignore these.
Change 3484474 by Alexis.Matte
Fix the morph target animation curve name matching.
#jira UE-20294
Change 3484475 by Alexis.Matte
When removing a LOD, make sure we remove all morph target data associate to the LOD.
Change 3484489 by Nick.Darnell
PR #3668: UE-45908: Cache debug line locations when performing a LineTraceMulti (Contributed by projectgheist)
#jira UE-45908
Change 3484692 by Nick.Darnell
Slate - Reverting a change from a game stream. All Arranged Children don't need to allocated 42 to begin with. Do need to initialize WidgetPaths better.
Change 3484703 by Nick.Darnell
Player Input - Making the input event loop for players obey EKeys::NUM_TOUCH_KEYS, rather than being set to Touch10, as the maximum touch input amount, to make supporting greater than 10 touches easier. Also making the seeding of keys use EKeys::NUM_TOUCH_KEYS.
#jira UE-43213
Change 3484918 by Jamie.Dale
Fixed font measuring regression with RTL text
RTL applies the character count to the next glyph, so it shouldn't process the end of the loop (this was how the older code used to work).
Change 3485718 by Nick.Darnell
Editor - Removing Super Search & User Feedback button.
Change 3485719 by Nick.Darnell
Portal - Removing SuperSearch.
Change 3485751 by Matt.Kuhlenschmidt
Fix crash accessing platformer game menu if the menu is open during a console based load
#jira UE-45950
Change 3486047 by Arciel.Rekman
Linux: add OpenEXR implementation (UE-40270).
#jira UE-40270
Change 3486467 by Max.Chen
Sequencer: Reset max tick rate when destroyed.
#jira UE-45956
Change 3486477 by Max.Chen
Sequencer: Refresh outliner when column is removed.
#jira UE-45891
Change 3486667 by Andrew.Rodham
Added missing include
Change 3486724 by Andrew.Rodham
Sequencer: Fixed curves with no default value, and no keys being evaluated and applied to properties
- Also fixed an edge case where a zero (but non-animated) channel could be applied to a final transform
Change 3486730 by Alexis.Matte
In the Auto-Reimport options, hide the mout point only for the default /Game/ folder
#UE-45684
Change 3486749 by Alexis.Matte
Make sure the parent window of the monitor directory browse folder is set properly
#jira UE-45682
Change 3486805 by Matt.Kuhlenschmidt
Additional safety against invalid objects being accessed by slate
Change 3486848 by Alexis.Matte
Make sure Monitor folder feature support root mount point map folder
During auto import, give priority to asset import factory over the scene import factory
#jira UE-45691
Change 3486879 by Andrew.Rodham
Removing obsolete QA assets
Change 3486950 by Nick.Darnell
PR #2281: Scrollbar missing features and SScrollbar fixes (Contributed by SNikon)
Review - made some adjustments from the original.
Change 3486954 by Nick.Darnell
Slate - Moving the STableViewBase over to the FOverscroll class, rather than it's own clone.
Change 3486967 by Nick.Darnell
Slate - Fixing some HDPI calculations for fitting new windows on screen, it was using the unscaled size of the widgets for fitting, when it needed to scale them up.
Change 3486970 by Andrew.Rodham
Sequencer: Delay mouse capture until drag for sequencer time slider
- Fixes context menus not opening as a result of mouse capture being taken on mouse down
#jira UE-45937
Change 3486984 by Andrew.Rodham
Sequencer: Improved blending type iconography
Change 3486996 by Nick.Darnell
UMG - Adding a way for games to opt-out of the slow widget path, to completely prevent them from being cooked.
UMG - The movie data is no longer cloned for each new instance that inhabits. It now keeps a reference to the now publically accessible movie scene data on the class instead.
Change 3487070 by Andrew.Rodham
Sequencer: Added graphics for key areas that represent empty space
Change 3487195 by Andrew.Rodham
Sequencer: Changed evaluation groups to always flush implicitly
- Due to the latent nature of blended token types, it's no longer safe to rely solely on execution token order between tracks
- This fixes an issue where events set in the PostEvaluation stage were executed before blended token actuation
Change 3487322 by Nick.Darnell
PR #2457: Add .gitdeps.xml-files for plugins support (Contributed by bozaro)
Change 3487363 by Nick.Darnell
PR #2481: Fix for packing of a project with users plugins (Contributed by yatagarasu25)
Change 3487439 by Nick.Darnell
PR #2642: Changed private to protected in SVirtualJoystick.h (Contributed by Skylonxe)
Change 3487500 by Arciel.Rekman
Removed LinuxNativeDialogs.
- No longer used; has been superceded by SlateDialogs since UE 4.8 (2 years ago).
Change 3487630 by Lauren.Ridge
Don't create Landscape Info Maps for Editor Preview Worlds or thumbnail worlds
#jira UE-44885
Change 3487864 by Matt.Kuhlenschmidt
Exposed the asset registry to blueprints and script. Works in editor scripts and runtime scripts
AssetRegistry is now a UInterface object.
Blueprint users can access various asset registry methods using the asset registry interface (via GetAssetRegistry) and various static helpers in the AssetRegistryHelpers object
C++ users should still continue to use IAssetRegistry.
Change 3487879 by Matt.Kuhlenschmidt
Renamed asset tools uobject helper to UAssetToolsHelpers
Change 3487926 by Lauren.Ridge
Fixing reset to default not showing up for custom widgets
#jira UE-44164
Change 3488184 by Matt.Kuhlenschmidt
PR #3656: Make References/Referencers List copyable (Contributed by user37337)
#jira UE-45763
Change 3488240 by Matt.Kuhlenschmidt
Fix compiler issue
Change 3488350 by Lauren.Ridge
Landscape info map transactional state is based on its world's transactional state
#jira UE-44885
#jira UE-46019
Change 3488412 by Matt.Kuhlenschmidt
Fix reset to default showing up in two different places for some customizations
Change 3488413 by Matt.Kuhlenschmidt
Fix slate font customization
Change 3488414 by Matt.Kuhlenschmidt
Fix slate font customization
Change 3488415 by Matt.Kuhlenschmidt
Missed file
Change 3488565 by Arciel.Rekman
Add pretty printers for gdb (UETOOL-1171).
- Committing shelf by Cengiz.Terzibas, with some modifications.
#jira UETOOL-1171
Change 3489094 by Nick.Darnell
Slate - The Slate RHI Renderer now caches the TextureLODGroups so that it can properly lookup the filtering of different texture groups that are set to Default, instead of a particular filter override on a texture.
Engine/Rendering - Simplifying some of the setup logic in TextureLODSettings so that code is shared for setting them up properly after loading from a config file.
Change 3489095 by Nick.Darnell
PR #2699: GameViewportClient - Added a method to allow setting the viewport cur. (Contributed by rfenner)
Review - Fixed spacing.
Change 3489108 by Matt.Kuhlenschmidt
Fix deprecation warning
Change 3489120 by Nick.Darnell
PR #3478: Fix possible UComboBoxString crash (Contributed by nakosung)
Change 3489147 by Andrew.Rodham
Sequencer: Adding return value to function to appease static analysis
- This function is never compiled, and if it is, it won't compile, but static analysis doesn't know that
Change 3489264 by Nick.Darnell
Testing - Finishing the thought behind an enum comment.
Change 3489265 by Nick.Darnell
PR #2750: UE-35164: Button padding (Contributed by projectgheist)
Change 3489267 by Nick.Darnell
PR #3645: UE-45464: Handle SSlider mouse interaction more accurately (Contributed by projectgheist)
Change 3489632 by Arciel.Rekman
Correctness changes to MallocPoisonProxy.
- Missing forwarding functions added. Incorrect comment removed.
- Change by Steve.Robb, doing here so it is in 4.17.
Change 3489689 by Arciel.Rekman
More MallocPoisonProxy changes I missed in previous CL.
Change 3489751 by Matt.Kuhlenschmidt
Moved editor performance settings out of per-project settings so they can be shared across projects
Change 3489837 by Lauren.Ridge
Keyboard shortcut for entering/leaving VR Mode is now Alt+V
Change 3491082 by Arciel.Rekman
Linux: better fix for the crash due to name collision (UE-46040).
- Put classes in Sequencer module into Sequencer namespace instead of SceneOutliner namespace.
- Undid change in the SceneOutliner module.
#jira UE-46040
Change 3491096 by Arciel.Rekman
Fix UAT compilation on the newest mono.
Change 3491240 by Max.Chen
Sequencer: Disable key button when allow level edits only is on.
#jira UE-46060
Change 3491406 by Yannick.Lange
Fix editor crashes when opening a project that includes a plugin with more than two custom Volume classes. This issue was caused because registering show volume commands is based on finding volume classes. Finding these classes at multiple times resulted in a mismatch of the returned array of volume classes because modules/plugins were still being loaded.
#jira UE-45806
Change 3491559 by Alexis.Matte
Make sure we use the good preview mesh when doing a preview
#jira UE-45963
Change 3491563 by Alexis.Matte
Fix crash with staticmesh editor LodLevel selection
Change 3491564 by Nick.Darnell
UMG - Fixing an offset with the grab handles in HDPI mode.
Change 3491595 by Nick.Darnell
Editor - Fixing a clipping artifact in the pin type dropdown in the blueprint editor.
Change 3491604 by Nick.Darnell
Back out changelist 3489265
Change 3491615 by Arciel.Rekman
Added malloc replay proxy (Linux only for now).
- Allows to dump malloc callstream (without regard to threads) and replay later to study the behavior of different mallocs and/or repro problems.
Change 3491684 by Arciel.Rekman
Added FMalloc functions I missed.
- Also moved function bodies into the .cpp file, this does not make a difference in performance in this case.
Change 3491692 by Matt.Kuhlenschmidt
Some minor fixes to the static mesh editor
- Fix UV combo button looking non-standard on the toolbar
- Fix a few combo buttons in the details panel looking too big.
Change 3491702 by Arciel.Rekman
Do not compile replay proxy-specific code when not used.
Change 3491717 by Michael.Dupuis
#jira UE-35083:
The component is now the owner of the PerInstanceRenderData instead of the proxy
Add an Update path to only update specified instances range
Always call BuildTreeIfOutdated so we have a standard code path to make sure static mesh are fully loaded before trying to build the tree
Moved the Instance Buffer aysnc to the base class, as it's not related to UHierarchicalInstancedStaticMeshComponent
Expose a new property to decide if we require dynamic instance buffer
Change 3491758 by Matt.Kuhlenschmidt
Fix crash on static mesh editor shutdown
Change 3491873 by Cody.Albert
Fixed clipping issue in Sequencer curve editor
#rnx
Change 3491956 by Matt.Kuhlenschmidt
Fix crash opening the Previewing sub-menu in the level editor settings menu
#jira UE-46095
Change 3492046 by Jamie.Dale
Fixing some font cooking warnings by splitting out font faces from their font assets
#jira UE-45843
Change 3492076 by Jamie.Dale
Fixing some font cooking warnings by splitting out font faces from their font assets
#jira UE-45843
Change 3492165 by Jamie.Dale
Fixing some font cooking warnings by splitting out font faces from their font assets
#jira UE-45843
Change 3492222 by Jamie.Dale
Fixing some font cooking warnings by splitting out font faces from their font assets
#jira UE-45843
Change 3492274 by Michael.Dupuis
#jira UE-46105: Fixed Clang warning
Change 3492338 by andrew.porter
QAGame: Testing ensure when submitting
Change 3492371 by Nick.Darnell
UMG - Reverting the animation sharing, cossed GLEO regressions in cooking. Will look for a better solution.
Change 3492462 by Matt.Kuhlenschmidt
Fix ensure checking in files through perforce
Change 3492491 by Jamie.Dale
Fixing some font cooking warnings by splitting out font faces from their font assets
#jira UE-45843
Change 3492505 by Jamie.Dale
Fixing some font cooking warnings by splitting out font faces from their font assets
#jira UE-45843
Change 3492517 by Jamie.Dale
The package localization ID is no longer used at all at runtime, and is now truly editor-only
This should have always been the case, but it was leaked into manifest/archives/PO files in 4.14, and while 4.15 removed it from PO files it was still present in the manifest/archives. This change removes it entirely (unless gathering editor-only data, and even then the PO file will still collapse the entries together for translation), and the deprecated 4.14 export behavior will now produce an error if you attempt to use it.
After taking this change you'll need to run a gather, import, and compile of your LocRes files to update your game localization to use the new localization IDs.
Change 3492630 by Nick.Darnell
UMG - Removing some extra cleanup code that's probably overkill and is causing a crash for uses of "Within" in class meta.
#jira UE-46124
Change 3492692 by Matt.Kuhlenschmidt
Fix drop shadows inheriting the outline color of the font. The outline should still appear but not have a different outline color from fill color
Change 3492714 by Matt.Kuhlenschmidt
Added outline with drop shadow to font automation test
Change 3492737 by Matt.Kuhlenschmidt
Fix linux
Change 3492992 by tim.gautier
Resaving Ocean Widget Blueprints / Sequences to resolve Legacy Sequence Data warnings
#jira UE-46132
Change 3493089 by Jamie.Dale
Ensure that the composite font of a font asset is flushed when the font object is GC'd
Change 3493322 by Jamie.Dale
Fixing null crash
#jira UE-45758
Change 3494467 by Andrew.Rodham
Fix Xbox warning
Change 3494852 by tim.gautier
QAGame: Changed streaming method of QA-EditorSmoke-Landscape to Always Loaded
Change 3494853 by Nick.Darnell
Another attempt at fixing the automation blueprint SA warning.
Change 3494896 by Arciel.Rekman
Fix possible null pointer access during Vulkan init.
- May fix static analysis warnings in UE-46142, although warnings seem to be referring to something else.
#jira UE-46142
Change 3494987 by Jamie.Dale
Fixing some font cooking warnings by splitting out font faces from their font assets
#jira UE-45843
Change 3495010 by Matt.Kuhlenschmidt
Adding additional logging to track down html5 issue
Change 3495212 by Michael.Dupuis
#jira UE-46143: Properly init the InstanceRenderData during the cooking phase (required by fortnite)
Change 3495536 by Jamie.Dale
Updating UGameEngine to call its Super::PreExit after performing its own teardown
This prevents UEngine cleaning up resources that UGameEngine still needs.
#jira UE-46159
Change 3495551 by Arciel.Rekman
Another attempt to fix analyzer problem (UE-46142).
Change 3495794 by Jamie.Dale
Fixing some font cooking warnings by splitting out font faces from their font assets
#jira UE-45843
Change 3495905 by Matt.Kuhlenschmidt
Fix USD crash when importing a meshwith no material
[CL 3499771 by Matt Kuhlenschmidt in Main branch]
2017-06-19 20:27:30 -04:00
|
|
|
int32 OnPaintSectionView( const FGeometry& AllottedGeometry, const FSlateRect& MyCullingRect, FSlateWindowElementList& OutDrawElements, int32 LayerId, bool bEnabled, bool bDisplayTickLines, bool bDisplayScrubPosition ) const;
|
2014-11-19 07:43:07 -05:00
|
|
|
FVisualLoggerTimeSliderArgs& GetTimeSliderArgs() { return TimeSliderArgs; }
|
|
|
|
|
/**
|
|
|
|
|
* Call this method when the user's interaction has changed the scrub position
|
|
|
|
|
*
|
|
|
|
|
* @param NewValue Value resulting from the user's interaction
|
|
|
|
|
* @param bIsScrubbing True if done via scrubbing, false if just releasing scrubbing
|
|
|
|
|
*/
|
2022-11-29 09:25:35 -05:00
|
|
|
void CommitScrubPosition(double NewValue, bool bIsScrubbing );
|
2014-11-19 07:43:07 -05:00
|
|
|
|
2014-12-10 09:22:32 -05:00
|
|
|
void SetExternalScrollbar(TSharedRef<SScrollBar> Scrollbar);
|
2022-11-29 09:25:35 -05:00
|
|
|
void SetTimeRange(double MinValue, double MaxValue);
|
|
|
|
|
void SetClampRange(double MinValue, double MaxValue);
|
2014-12-10 09:22:32 -05:00
|
|
|
bool IsPanning() { return bPanning; }
|
|
|
|
|
|
2022-11-29 09:25:35 -05:00
|
|
|
double GetTimeAtCursorPosition(const FGeometry& MyGeometry, const FPointerEvent& MouseEvent) const;
|
2014-11-19 07:43:07 -05:00
|
|
|
private:
|
Copying //UE4/Dev-Editor to //UE4/Dev-Main (Source: //UE4/Dev-Editor @ 3807299)
#lockdown Nick.Penwarden
#rb none
============================
MAJOR FEATURES & CHANGES
============================
Change 3528776 by Yannick.Lange
Allow thumbnails to be captured from a viewport always.
#jira UE-45392
Change 3564359 by Yannick.Lange
Back out part of changelist 3528776: Revert allowing thumbnails to be captured from a viewport to fix UE-47827 & UE-47785.
#jira UE-47785, UE-47827
Change 3740671 by Matt.Kuhlenschmidt
Make the font editor canvas respect dpi scale
Change 3740810 by Josh.Engebretson
PR #4138: Log GenerateProjectFiles to file when using UVS (Contributed by projectgheist)
#jira UE-51358
Change 3740939 by Cody.Albert
Fixing some #ifdefs that should be #ifs
Change 3741089 by Alexis.Matte
Make sure bImportBoneTracks is set to true when importing into level
#jira UE-51999
Change 3741101 by Alexis.Matte
Fix the import material search
#jira UE-51857
Change 3741690 by Jamie.Dale
Guard against an invalid index in SLocalizationCommandletExecutor::Tick
#jira UE-52067
Change 3741710 by Jamie.Dale
Made a static variable also const
Change 3741724 by Michael.Dupuis
Added missing shader cache
Change 3742037 by Lauren.Ridge
Details panels can now "own" a color picker so a different details panel refreshing doesn't close it. Also fixed refreshing state of the graph after changing texture or color parameter values
Change 3742250 by Matt.Kuhlenschmidt
PR #4185: Output Log Filter tooltip shows %s instead of category. (Contributed by LordNed)
Change 3742308 by Lauren.Ridge
Adding axis input to the material editor's viewport client
Change 3742380 by Matt.Kuhlenschmidt
USD importer improvements
- USD now stores source file information for reimports
- Fixed bug where no geometry would be imported if an exporter had set a time code even without animated data
- Prevent a crash if a mesh doesnt have enough valid data to be imported
Change 3742536 by Matt.Kuhlenschmidt
Remove usd wrapper test project
Change 3743564 by Alexis.Matte
Fix skeletal mesh screen size auto set value when importing a LOD
#test none
#jira UE-52100
Change 3743582 by Lauren.Ridge
Fixing non-desktop compiles
Change 3743598 by Lauren.Ridge
Fixing shadowed variable by renaming the global color picker weak ptr variable.
Change 3743636 by Lauren.Ridge
Creating a new parameter immediately allows naming
Change 3743855 by Michael.Dupuis
Added missing shader from cache
Change 3744277 by Lauren.Ridge
Don't show empty Global group if it only contained the material layer param.
Change 3744330 by Lauren.Ridge
Clarifying "no parameter" text
Change 3744529 by Lauren.Ridge
Making Save to Child and Save To Sibling buttons work for material layer params, show on material layer param panel
Change 3744668 by Chris.Bunner
Added shared layer input collection asset, a list of float/texture redirectors that allow setting globally in a material graph then retrieving within layer/blend graphs.
Added output for number of unique shaders generated by a particular material instance.
Show instruction counts when working on a material layer.
Relaxed restrictions on material layers, base MA input is now optional.
#jira UETOOL-1271, UETOOL-1278, UETOOL-1279
Change 3744669 by Chris.Bunner
Added automated test for material layers, layer/blend instances and shared inputs.
Change 3744754 by Laz.Matech
Adding localization data to QAGame for the Realtime Preview localization test.
#jira none
Change 3744860 by Michael.Dupuis
#jira UE-52049 : Do not update random stream in most case, only when adding new instances, or filling from built data
Change 3744965 by Chris.Bunner
Rebuilt lighting in automated test map and updated reflection capture screenshot.
Change 3746015 by Michael.Dupuis
#jira UE-52090: Added missing shader for forward rendering
Change 3746038 by Michael.Dupuis
#jira UE-51494: Make sure index is valid for this instance as instances from template and instance could mismatch due to in level changes
Change 3746076 by Michael.Dupuis
Removed unused code
Change 3746998 by Tim.Gautier
QAGame: - Renamed UMG_RealtimePreview > UMG_InEditorPreview
- Moved UMG_InEditorPreview into UMG > Localization, setting up for future Localization tests
Change 3747206 by Arciel.Rekman
Linux: make UI scale more coarse to prevent unnecessary scaling (UE-52086).
- Monitors whose physical dimensions fall in range of 80-110 DPI should still have scale=1.0.
(Edigrating CL 3740942 from Release-4.18 to Dev-Editor)
Change 3747211 by Arciel.Rekman
Make failure to launch SCW more apparent to the user (UE-47263).
- Fixes frequent crash on Linux.
(Merging 3747070 from Release-4.18 to Dev-Editor)
Change 3747726 by Tim.Gautier
QAGame: Resubmitting updated Loc files
Change 3747872 by Tim.Gautier
QAGame: Resubmitting compiled Loc assets
Change 3748118 by Lauren.Ridge
Adding help text to the material layers preview tab
Change 3748398 by Lauren.Ridge
Fixing tooltips for the material layer read-only preview
Change 3748565 by Arciel.Rekman
Linux: fix RHIs settings being wrong when removed via project properties (UE-51203).
- This was a deeper issue with config system than just Linux RHIs.
- This is a better fix than one submitted to 4.18 branch in CL 3747086.
Change 3749441 by Matt.Kuhlenschmidt
PR #4201: Fix a typo in a comment. (Contributed by dneelyep)
Change 3749442 by Matt.Kuhlenschmidt
PR #4195: Incorrect specifier used for FText::Format (Contributed by projectgheist)
Change 3749496 by Matt.Kuhlenschmidt
Fix static analysis
Change 3749805 by Lauren.Ridge
Fixing reset to default on MaterialLayerParam in base material
Change 3749838 by Lauren.Ridge
Also correctly resetting names and layer states
Change 3750442 by Mieszko.Zielinski
Added a safety check which addresses the crash #UE4
Note that this is a temp fix. A proper fix is making sure ConvexShapeIndices doesn't contain any duplicates and will be inplemented in Dev-Framework.
#jira UE-52123
Change 3752266 by Arciel.Rekman
OpenGL: remove PLATFORM_WINDOWS exceptions.
- Discrepancy in behavior between Windows and Linux OpenGL is unhelpful for bug reproducibility.
- VAB bug should have been fixed long ago (on both platforms).
Change 3752929 by Arciel.Rekman
Linux: avoid crashing on unknown drivers.
- See https://answers.unrealengine.com/questions/724100/crashes-on-startup-after-first-run.html
- Checks in IsDeviceIntel() and such fail if the drivers were not detected.
Change 3753254 by Michael.Dupuis
Added missing shader for shader cache
Change 3753426 by Michael.Dupuis
#jira UE-5751: Added the possibility to change material instance exposed params at runtime using a MID for texture, vector and scalar for 1 component or all components
Change 3753440 by Alexis.Matte
Fix fbx scene importer morph target import crash
#jira UE-52255
Change 3753457 by Michael.Dupuis
build fix
Change 3753700 by Chris.Bunner
Make GetSharedInput preview fallback always available in editor as this should handle previews, thumbnails and other editor-only cases.
Refactor to remove duplicate code in material translator.
Material layer expressions are required for client load, fixes cooked builds using layer instances in the base material layer stack.
Change 3754760 by Chris.Bunner
Tidying up EngineTest/ShaderModels map.
Change 3754765 by Arciel.Rekman
Avoid placing tooltip windows under the cursor (UE-12288).
- Fixes inability to use some corners of the screen on Linux (the tooltips there aren't click-through).
Change 3754788 by Matt.Kuhlenschmidt
Fix details panel crash after compiling blueprints that have edit conditon properties
Change 3754933 by Christina.TempelaarL
Fixed typo in heightLerp (transistion->transition).
#jira UE-46736
Change 3754946 by Cody.Albert
Update loading movie code to properly calculate delta time when throttled at 60fps
Change 3755059 by Jamie.Dale
Fixed game preview language not updating in realtime while PIE was enabled
#jira UE-52209
Change 3755130 by Jamie.Dale
Fixed game preview language not updating from native when switching between preview languages
#jira UE-52348
Change 3755664 by Michael.Dupuis
Fixed compile warning
Change 3755714 by Yannick.Lange
Always allow capturing thumbnails from viewport.
This also hides the thumbnail editing UI when a thumbnail was captured from a viewport.
Change 3755944 by Alexis.Matte
Fix crash when importing morph target with "built in" tangent option
#jira UE-52319
Change 3756109 by Christina.TempelaarL
fixed FBX importer Import Textures tooltip, UMaterial -> Material in tooltip text
#jira UE-48389
Change 3756169 by Jamie.Dale
Added plural form pattern to SContentBrowser::GetPathText
Change 3756493 by Laz.Matech
Updating Localization content to further test InEditor Preview Language in UMG
#jira none
Change 3758336 by Alexis.Matte
Fix a crash when importing morph target there was a unsync between some buffer depending on the import options
#jira UE-52319
Change 3758947 by Jamie.Dale
Fixed cursor position regression in search boxes
This was caused by a call to SetText that was added in CL# 3627864
This caused the text to update as it was changed, which made the cursor jump to the end of the text and made it impossible to type in the middle of a search term.
This was done as a bound FText value had been passed to the InitalText of SSearchBox, which made the text resolution behave strangely. InitalText should always be a value, and SSearchBox now resolves any bindings during its constructor.
#jira UE-48874
Change 3759000 by Laz.Matech
Submitting the .PO file for CL 3756493
#jira none
Change 3759480 by Matt.Kuhlenschmidt
Safe guard against brush details crash
#jira UE-52278
Change 3759665 by Matt.Kuhlenschmidt
PR #4214: UE-52249: Use valid PreviewShadowsIndicatorMaterialName (Contributed by projectgheist)
Change 3761211 by Matt.Kuhlenschmidt
Remove the restriction that a level must be writable to be locked/unlocked.
Fixed duplicate icons being used by the level browser
Change 3761304 by Chris.Bunner
MaterialAttributeLayers graph node BaseMA input is no longer required.
Note: Requires "Use Preview Value" set to true on inputs.
Change 3761307 by Chris.Bunner
New material layers and blends will have "Use Preview Value" set to true by default to avoid the need for connected inputs - Missed file on previous commit.
Change 3761357 by Chris.Bunner
Renamed material shared input enum.
Change 3761419 by Chris.Bunner
Updating material layers automated test assets after recent changes.
Reverted some naming changes so existing screenshot tests can be reused.
Change 3762058 by tim.gautier
QAGame: Adding Material Layer assets for testing (Content/Materials/LayerFunction)
Change 3763328 by Matt.Kuhlenschmidt
Fix Slate warning at editor startup
Change 3763354 by Alexis.Matte
Fix skeletal mesh material assign when reducing a LOD that was import from a file using simplygon reduction
#jira UE-52505
Change 3763501 by Matt.Kuhlenschmidt
Prevent shared asset thumbnail pools from having their resources forcefully released when they are in use. ReleaseResources is now private and only called on destruction of the pool
Change 3763574 by Matt.Kuhlenschmidt
Fix slate material box brushes not being keyed off image size
#jira UE-40219
Change 3763678 by Jamie.Dale
Disable realtime level editor viewport if running under remote desktop
This makes the main editor window much more responsive by default under remote desktop
Change 3763679 by Jamie.Dale
Added asset caching metrics for the loc gather
Change 3763693 by Matt.Kuhlenschmidt
Changed the code that activates the actor details tab when selection changes to a flash. There are simply too many things that change the selection and steal focus away from a tab being used
#jira UE-51754
Change 3763826 by Michael.Dupuis
Fixed Fortnite cooking crash
Change 3763864 by Harrison.Moore
Adding New Default 'LayerBlend' assets
Change 3764028 by Christina.TempelaarL
#jira UE-47695 Auto LOD bug
Moved the sections dropdown to the LOD Picker category and modified Custom cb behavior, based on suggestions from charlie.
Change 3764031 by Christina.TempelaarL
#jira UE-47695 Auto LOD in StaticMeshViewer
moved LOD combo widget to LOD picker category and hide custom checkboxes until custom checked.
Change 3764076 by tim.gautier
QAGame: Submitting UMG_Multitouch_test for initial Multitouch testing
Change 3764263 by Matt.Kuhlenschmidt
Fix the floor mesh thumbnail
Change 3764284 by Chris.Bunner
Removing some asserts for cases that can validly fail and are already handled.
Change 3764372 by Matt.Kuhlenschmidt
PR #4196: Show edit icons in editor (Contributed by projectgheist)
Change 3764388 by Chris.Bunner
Fixing logic for material, function and instance updating active materials and instances and their editors.
Change 3764674 by Harrison.Moore
test materials added, Blend updates
Change 3764681 by Harrison.Moore
Adding HMtest map
Change 3766238 by Chris.Bunner
Material layer callers need to let their internal material function calls update their inputs/outputs.
Change 3766556 by Jamie.Dale
Fixed crashes that could happen if some of the data table panels were closed
We now always create the underlying widgets, even if they're currently hidden from view
#jira UE-52552
Change 3767753 by Chris.Bunner
When rebuilding a material function instance editor we must re-create and re-apply the proxies as the expressions have likely changed. Take care to maintain local parameter changes as these have not been saved yet.
Change 3768719 by Michael.Dupuis
#jira UE-52521: Prevent possible crash if a segment have no point or invalid point
Change 3769157 by Jamie.Dale
Fixed incorrect text selection if selecting via double click beyond the bounds of the line
It would previously select the second to last word, rather than the last word
#jira UE-51609
Change 3769159 by Harrison.Moore
Belica Test update, New layer blends updated with texture type fix.
Change 3769205 by Jamie.Dale
Fixed Windows file save dialog not appending the correct extension when there were multiple options available
#jira UE-52180
Change 3769220 by Harrison.Moore
Layer blend tweaks
Change 3769292 by Jamie.Dale
Removing redundant code
Applying the correct package ID, only to then strip it off again is rather pointless
Change 3769479 by Arciel.Rekman
UBT: Use response files for compiler when compiling for Linux.
- Some command lines are too long when cross-compiling on Windows.
Change 3769920 by Arciel.Rekman
Linux: convert yet another initialization crash to a user-friendly message (UE-52457).
#jira UE-52457
Change 3771055 by Alexis.Matte
Make sure we set the Used by morph target material flag to material use by the morphtarget instead of all skinned mesh component
Use the morph vertex factory only for section that has active morph target
#jira UE-51483
Change 3771135 by Michael.Dupuis
Fixed fortnite cooking
Change 3773054 by Yannick.Lange
Avoid loading viewport interaction assets when starting the editor.
Change 3774184 by Arciel.Rekman
Linux: disabled some gdb visualizers until the issue is fixed.
- CL 3773942 by CengizT.
Change 3774303 by Matt.Kuhlenschmidt
Pull requests to fix various typos
Change 3774305 by Matt.Kuhlenschmidt
PR #4237: Visual Studio Repeatedly Opens (UE-51608) (Contributed by LordNed)
#jira UE-51608
Change 3774701 by Arciel.Rekman
OpenGL: fix ARB callback errors when hitting Build Lighting.
- Merged from 4.18 shelf.
Change 3775812 by Matt.Kuhlenschmidt
Fix One-off crash undo-ing while working with Material Params / Material Functions
#jira UE-52680
Change 3775849 by Matt.Kuhlenschmidt
More info for UE-52610
Change 3775850 by Matt.Kuhlenschmidt
Guard against mesh paint crashes
#jira UE-52618
Change 3775904 by Matt.Kuhlenschmidt
Added logging to track down window shutdown issues
Change 3775913 by Matt.Kuhlenschmidt
Pull requests for typos
#jira UE-52751, UE-52748
Change 3776676 by Jamie.Dale
Fixed being able to insert tabs into spin boxes with units
#jira UE-52776
Change 3777006 by Michael.Trepka
Process Mac windowDidBecomeMain and windowDidResignMain notifications immediately instead of deferring them. This solves issues with Slate code that closes and immediately opens new menu windows. Previously closing a window would schedule menu parent's activation event that could be processed after another menu's creation, making it immediately disappear.
#jira UE-52145
Change 3777170 by Arciel.Rekman
Linux: use Xft.dpi (most desktop environments expose their scale through that) as a DPI value (UE-52086, UE-52766).
- Change by Brandon.Schaefer.
- Limitation: no per-monitor DPI.
(Edigrating CL 3776509 //UE4/Release-4.18/... to //UE4/Dev-Editor/...)
Change 3777292 by Arciel.Rekman
Linux: fix symbol collision causing problems with AMD drivers (UE-51843).
- We cannot have elf_end() hidden, because libcuda.so calls elf_end from libnvidia-fatbinaryloader.so and this breaks linking monolithic binaries ("hidden symbol referenced in DSO").
- We cannot have elf_end() visible, because of a name collision with a different libelf used by AMD drivers.
- The only possible workaround is to have elf_end() renamed.
(Edigrating CL 3777242 from //UE4/Release-4.18/... to //UE4/Dev-Editor/...)
Change 3777686 by Joe.Conley
Blueprint editor variable type tooltips: fix case mismatch that was preventing type name to be displayed properly in soft object/class reference tooltips.
Change 3778180 by Jamie.Dale
Avoid a crash if a regex pattern or matcher outlive ICU during shutdown
#jira UE-52770
Change 3778182 by Jamie.Dale
Avoid a crash if a break iterator outlives ICU during shutdown
Change 3778368 by Jamie.Dale
Added missing pragma once
Change 3778560 by Matt.Kuhlenschmidt
Prevent non-shared DDC notification from triggering for epic internal builds
Change 3778709 by Lauren.Ridge
Copying 4.18.2 array reordering propagating to children fix (originally 3778547)
Change 3779205 by Lauren.Ridge
Duplicating 3776649 to fix a crash on compile due to partial GC of a widget.
#jira UE-52260
Change 3779217 by Brandon.Schaefer
GitHub #3678 Fix Setup.sh handling of special characters in PNG path
#jira UE-46103
Change 3779341 by Brandon.Schaefer
GitHub #3012 Use elemtry OS versions to set the ubuntu versions for depencies
#jira UE-39364
Change 3780274 by Joe.Conley
DataTables: Add documentation tooltips showing type information to header columns
Change 3780840 by Alexis.Matte
Do a re-import when user re-import LOD 0
Prevent importing more then MAX_SKELETAL_MESH_LODS
#jira UE-52373
Change 3781067 by Arciel.Rekman
Linux: fix OSSSteam cross-compilation (and CIS).
- Broken by previous change that put compile-time arguments into response file and bulk-replaced \ with /, which affected things like Definitions.Add("STEAM_SDK_VER_PATH=TEXT(\"Steam" + SteamVersion + "\")");
Change 3781110 by Christina.TempelaarL
#jira UE-47695 moved Static Mesh Editor LOD menu from tools to viewport tool bar
Change 3781531 by Christina.TempelaarL
#jira UE-47695 added LOD menu to Static Mesh Editor viewport
Change 3781663 by Alexis.Matte
Fix for cancel export fbx when previewing animation sequence export
#jira UE-49743
Change 3782007 by Jamie.Dale
Improved the ability to lockdown available game languages
In addition to the previous "DisabledCultures" array, you can now add an array of "EnabledCultures" (using the same per-build config filters) to explicitly list the cultures that are allowed to be used in your build (if the list is empty, then everything is allowed unless otherwise disabled).
This also stops the game from attempting to fallback to the native language if the native language has been disabled (we will fallback to the first available language instead).
Change 3782122 by Jordan.Walker
test assets for material layers
Change 3782131 by Joe.Graf
Added support for IOS and TVOS targets when generating CMake files on Mac
Change 3782218 by Christina.TempelaarL
fixing include paths and capitalization causing build errors.
Change 3783171 by Michael.Dupuis
Added the possibility to override default LOD rules for visible primitive and whole scene shadow casting primitive
Added the possibility to store Custom data per view for the frame duration
Change 3783172 by Michael.Dupuis
#jira UE-35097 : Refactored landscape rendering logic to improve general performance while using new custom data and custom lod feature
Exposed many new settings to control component using sub sections rendering, tessellated component, shadow should be include into tessellation, tessellation falloff based on camera location
Changed how LOD distribution is done to be in screen size instead of distance.
Give the possibility to have a different distribution for LOD0 vs the other one.
Change 3783174 by Michael.Dupuis
missing file to landscape refactor
Change 3783315 by Lauren.Ridge
Changing a parameter in the Material Parameter Panel now dirties the material correctly.
Changing a layer parameter in the Material Instance Editor now refreshes the details panel as well.
Change 3783374 by Chris.Bunner
Adding MaterialSharedInputCollection to hidden list when MaterialLayers disabled.
Change 3783617 by Chris.Bunner
Added a Channel Mask material expression parameter. Wraps up a vector parameter and dot product with a single channel selection interface, internally a regular vector parameter.
Fixed GetSharedInput failing to return the preview texture in the Function Instance editor.
Change 3783676 by Lauren.Ridge
Adding access to a material function instance's parent in the Material Instance Editor
Change 3783751 by Michael.Trepka
PR #4248: Fixed C++ std in generated Xcode project to match rest of engine (C++14) (Contributed by Bo98)
Change 3783971 by Brandon.Schaefer
Rename/Move all deploy/Deploy folder/files into AlembicDeploy. Due to case sensitivity on linux, need to maintain the correct case.
#jira UE-37631
Change 3783992 by Michael.Dupuis
#jira UE-35097: Remove tessellation on editor tools
Fixed a case where tessellation multiplier at 0 would cause the component to not be visible
Fixed minor tessellation falloff calculation error
Change 3784502 by Chris.Bunner
Restored missing bool setter.
Coding standards fix.
Change 3784614 by Arciel.Rekman
Linux: better error message when running out of inotify watches (UE-50459).
#jira UE-50459
Change 3784620 by Chris.Bunner
Updated LayerBlend_TextureMask to use new ChannelMask parameter.
Change 3784725 by Lauren.Ridge
Fixing groups not sorting correctly
Change 3785645 by Chris.Bunner
Non-editor compile fix.
Change 3785666 by Arciel.Rekman
Linux: restore ability to use Wayland instead of X11.
- SDL libs recompiled and Wayland version is set to lower one to be compatible with the compositor shipped on Ubuntu 16.04 LTS
- Change by Anthony.Bills.
Change 3785708 by Arciel.Rekman
Linux: implement voice capture using SDL (non-server only) (UE-51298).
- Based on pull request #4131 by mkirzinger.
Change 3785878 by Arciel.Rekman
UBT: add VSCode to default generators on Linux.
Change 3786058 by Arciel.Rekman
Do not add dependencies on other RHIs for servers (UE-48894).
- Pull request #3944 contributed by pfoote.
#jira UE-48894
Change 3786845 by Arciel.Rekman
Code changes to make gcc support easier (UE-51978).
- Contributed by a licensee (pull request #4181 by tomwardio "Collection of fixes to allow UE4 to be compiled by GCC on Linux").
Change 3786871 by Matt.Kuhlenschmidt
Fix static analysis
Change 3786883 by Matt.Kuhlenschmidt
Fix HTML5
Change 3786923 by Matt.Kuhlenschmidt
Fix engine layer blend asset referencing game content. This is not allowed
#jira UE-52888
Change 3786927 by Brandon.Schaefer
Linux: Alembic support
#jira: UE-37631
Change 3786994 by Arciel.Rekman
Remove support for /-prefixed switches (UE-47429).
- They collide with absolute file paths on Mac/Linux and a source of inconsistencies between platforms.
#jira UE-47429
Change 3787032 by Michael.Trepka
Initial support for building and running Niagara on Mac
Change 3787035 by Brandon.Schaefer
GitHub #4166 Undef GL entrypoint macros after use
#jira UE-51663
Change 3787144 by Lauren.Ridge
Fixing material parameter group association resetting after undo
#jira UE-52514
Change 3787839 by Jordan.Walker
updated engine level layer blends to not include game content
switched them to use Chris B's new mask selection node
Change 3787967 by Lauren.Ridge
Fix for broken layer groups, related crash
Change 3787991 by Lauren.Ridge
Fixing thumbnails for material function instances, resolving not being able to delete new function instances
#jira UE-52967
Change 3788226 by Michael.Trepka
Fixed a deadlock when closing Mac CrashReportClient which resulted from changes in CL 3777006
#jira UE-53002
Change 3788557 by Brandon.Schaefer
Fix shadow compiler warnings around our includes
Change 3789700 by Lauren.Ridge
Experimental setting for turning on Material Layers - off by default.
Change 3789703 by Jamie.Dale
Harden the LocMeta and LocRes loading to prevent loading files that are too new
Change 3789706 by Jamie.Dale
Added localization ID to the package summary
This will allow the localization gatherer to query it without having to load the entire package
Change 3789708 by Jamie.Dale
Added a way to display and reset the package localization ID via the Content Browser
Change 3789709 by Jamie.Dale
Added warning for duplicate package localization IDs when gathering asset localization
Change 3789713 by Jamie.Dale
Special case zero-width space in the text shaper to avoid fonts rendering the fallback glyph
Change 3789736 by Christina.TempelaarL
Fixed recently-introduced StaticMeshEditor bug - changing LOD dropdown menu selection was not changing LOD sections category.
Change 3789853 by Chris.Bunner
Material instances should return overridden values when the caller is requesting the default, not leaving the request to fall through to the base material.
#jira UE-52796
Change 3790185 by Brandon.Schaefer
Add better error handling when using new SDK for linux on windows.
#jira UE-50527
Change 3790195 by Jamie.Dale
Fixed line-ending inconsistency when retrieving rich-text
We were using LINE_TERMINATOR when getting the offsets, but \n when getting the text
Change 3790473 by Chris.Bunner
When finding expression by GUID, only return FunctionCall result if expression was found. Fixes cases where searched-for expression is after a FunctionCall in the expressions list.
#jira UE-52729
Change 3790650 by Arciel.Rekman
UBT: Linux: print build details first before refusing to build.
- Tweak to the previous feature that we forgot.
Change 3790681 by Arciel.Rekman
UBT: Linux: tweaks to wording (SDK -> toolchain).
Change 3791459 by Brandon.Schaefer
Linux: libcurl rebuild for version 7.57
#jira OGS-870
Change 3791533 by Arciel.Rekman
Better error messaging when UMB is unusable (UE-50658).
- Should be replaced by a better fix, but merging this workaround in case the better fix will not be done in time for 4.19.
(Edigrating CL 3789387, 3789787 from Release-4.18 to Dev-Editor)
Change 3791885 by Matt.Kuhlenschmidt
Fix static analysis
#jira UE-53097
Change 3791910 by Brandon.Schaefer
Fix for not using proper libraries on x86_64 for libcurl
#jira OGS-870
Change 3792017 by Jamie.Dale
Fixed a conflict between the path settings and favorite settings
Change 3792022 by Jamie.Dale
Fixed a crash that could happen when performing ARO on the property chains of a struct
#jira UE-52999
Change 3792025 by Jamie.Dale
Changed package summary localization ID to be versioned by the object version to avoid changing data in unversioned cooked assets
Change 3792066 by Michael.Dupuis
#jira UE-5751: Fixed possible crash when using dynamic matrial instance
Added missing shaders for landscape when using tessellation
Change 3792718 by Arciel.Rekman
OpenGL: bringing back Windows workarounds to unblock copy-up (UE-52534).
#jira UE-52534
Change 3793018 by Mike.Erwin
new glTF importer plugin
Import StaticMesh, Material, and Texture assets from the Khronos glTF 2.0 format. Text (.gltf) and binary (.glb) files are supported.
Limitations:
- There is no options UI. All assets from the file are imported.
- The glTF format can describe animation and whole scenes, but the initial version of this plugin does not attempt either.
- Data encoded as Base64 data URI is not supported. This is uncommon but is part of the glTF spec.
#jira: UE-50695
Change 3793626 by Matt.Kuhlenschmidt
Logging for HTML5 issue
Change 3794034 by Matt.Kuhlenschmidt
Fix CIS
Change 3794271 by Michael.Dupuis
#jira UE-53133: Fxed shadow calculation when using non whole scene shadow
Change 3794273 by Chris.Bunner
Function call material nodes should be created with no outputs by default.
#jira UE-53127, UE-53128, UE-52616
Change 3794334 by Lina.Halper
- Fix animation reinitializing when just setting new animation with single node
- Deprecated GetScalarParameterDefault and replace that with GetScalarParameterDefaultValue
#jira: UE-52796
Change 3794338 by Michael.Dupuis
Fixed lod visual popping when texture mip used for landscape is not ready
Change 3794350 by Mike.Erwin
Fix glTF importer header includes.
Build was failing on Linux.
Change 3794357 by Michael.Dupuis
#jira UE-53166: buildfix: removed phase 2 landscape optim leftover...
Change 3794549 by Michael.Dupuis
#jira UE-53166 : fixed compile error
Change 3794755 by Matt.Kuhlenschmidt
Fix automation warning
Change 3794910 by Lina.Halper
Change material default value to be red to keep the behavior same.
- Previous code was getting default value of parent, which was wrong, but now since we're grabbing correct value, it's not doing what it meant to do. Changed content to keep same value as parent as default.
Change 3795296 by Mike.Erwin
glTF: fix Linux build errors
A variable was being shadowed.
The other errors are due to an obscure corner of the C++ spec which clang enforces.
https://stackoverflow.com/questions/21900237/do-i-really-need-to-implement-user-provided-constructor-for-const-objects
#jira UE-53204
Change 3797313 by Chris.Bunner
Re-built lighting in Rendering/ShaderModels automated test map and updated failing screenshots.
#jira UE-53198
Change 3803962 by Jamie.Dale
Fixed struct instances not comparing against the correct default values when gathering for localization
Change 3804771 by Michael.Dupuis
Back out changelist 3783171
Change 3804772 by Michael.Dupuis
Back out changelist 3783172
Change 3805258 by Michael.Dupuis
Added missing shader cache for landscape
Change 3806105 by Matt.Kuhlenschmidt
Disable harware benchmarking during automation tests, commandlets, and on the build machine
Change 3806438 by Michael.Dupuis
#jira UE-53228: Fixed rendering path of new landscape optim when using GDoInitViewsLightingAfterPrepass(used in Orion)
Change 3806577 by Matt.Kuhlenschmidt
Change plugin uploading to crash reporter to only do so in editor builds
Change 3806588 by Michael.Dupuis
Remove temp test version in landscape version
Change 3806900 by Jamie.Dale
Fixed 'inconsistent DLL linkage' error when using older versions of Python 2.7
#jira UE-53353
Change 3807125 by Jamie.Dale
Fixed UBT warning after Dev-Core merge
Change 3807299 by tim.gautier
QAGame: Checking in test asset M_LandscapeMaterial_Foliage, quicker repro for UE-53442
[CL 3807911 by Matt Kuhlenschmidt in Main branch]
2017-12-14 10:07:13 -05:00
|
|
|
// forward declared as class members to prevent name collision with similar types defined in other units
|
|
|
|
|
struct FScrubRangeToScreen;
|
|
|
|
|
struct FDrawTickArgs;
|
2014-11-19 07:43:07 -05:00
|
|
|
|
|
|
|
|
/**
|
|
|
|
|
* Draws time tick marks
|
|
|
|
|
*
|
|
|
|
|
* @param OutDrawElements List to add draw elements to
|
|
|
|
|
* @param RangeToScreen Time range to screen space converter
|
|
|
|
|
* @param InArgs Parameters for drawing the tick lines
|
|
|
|
|
*/
|
Copying //UE4/Dev-Editor to //UE4/Dev-Main (Source: //UE4/Dev-Editor @ 3807299)
#lockdown Nick.Penwarden
#rb none
============================
MAJOR FEATURES & CHANGES
============================
Change 3528776 by Yannick.Lange
Allow thumbnails to be captured from a viewport always.
#jira UE-45392
Change 3564359 by Yannick.Lange
Back out part of changelist 3528776: Revert allowing thumbnails to be captured from a viewport to fix UE-47827 & UE-47785.
#jira UE-47785, UE-47827
Change 3740671 by Matt.Kuhlenschmidt
Make the font editor canvas respect dpi scale
Change 3740810 by Josh.Engebretson
PR #4138: Log GenerateProjectFiles to file when using UVS (Contributed by projectgheist)
#jira UE-51358
Change 3740939 by Cody.Albert
Fixing some #ifdefs that should be #ifs
Change 3741089 by Alexis.Matte
Make sure bImportBoneTracks is set to true when importing into level
#jira UE-51999
Change 3741101 by Alexis.Matte
Fix the import material search
#jira UE-51857
Change 3741690 by Jamie.Dale
Guard against an invalid index in SLocalizationCommandletExecutor::Tick
#jira UE-52067
Change 3741710 by Jamie.Dale
Made a static variable also const
Change 3741724 by Michael.Dupuis
Added missing shader cache
Change 3742037 by Lauren.Ridge
Details panels can now "own" a color picker so a different details panel refreshing doesn't close it. Also fixed refreshing state of the graph after changing texture or color parameter values
Change 3742250 by Matt.Kuhlenschmidt
PR #4185: Output Log Filter tooltip shows %s instead of category. (Contributed by LordNed)
Change 3742308 by Lauren.Ridge
Adding axis input to the material editor's viewport client
Change 3742380 by Matt.Kuhlenschmidt
USD importer improvements
- USD now stores source file information for reimports
- Fixed bug where no geometry would be imported if an exporter had set a time code even without animated data
- Prevent a crash if a mesh doesnt have enough valid data to be imported
Change 3742536 by Matt.Kuhlenschmidt
Remove usd wrapper test project
Change 3743564 by Alexis.Matte
Fix skeletal mesh screen size auto set value when importing a LOD
#test none
#jira UE-52100
Change 3743582 by Lauren.Ridge
Fixing non-desktop compiles
Change 3743598 by Lauren.Ridge
Fixing shadowed variable by renaming the global color picker weak ptr variable.
Change 3743636 by Lauren.Ridge
Creating a new parameter immediately allows naming
Change 3743855 by Michael.Dupuis
Added missing shader from cache
Change 3744277 by Lauren.Ridge
Don't show empty Global group if it only contained the material layer param.
Change 3744330 by Lauren.Ridge
Clarifying "no parameter" text
Change 3744529 by Lauren.Ridge
Making Save to Child and Save To Sibling buttons work for material layer params, show on material layer param panel
Change 3744668 by Chris.Bunner
Added shared layer input collection asset, a list of float/texture redirectors that allow setting globally in a material graph then retrieving within layer/blend graphs.
Added output for number of unique shaders generated by a particular material instance.
Show instruction counts when working on a material layer.
Relaxed restrictions on material layers, base MA input is now optional.
#jira UETOOL-1271, UETOOL-1278, UETOOL-1279
Change 3744669 by Chris.Bunner
Added automated test for material layers, layer/blend instances and shared inputs.
Change 3744754 by Laz.Matech
Adding localization data to QAGame for the Realtime Preview localization test.
#jira none
Change 3744860 by Michael.Dupuis
#jira UE-52049 : Do not update random stream in most case, only when adding new instances, or filling from built data
Change 3744965 by Chris.Bunner
Rebuilt lighting in automated test map and updated reflection capture screenshot.
Change 3746015 by Michael.Dupuis
#jira UE-52090: Added missing shader for forward rendering
Change 3746038 by Michael.Dupuis
#jira UE-51494: Make sure index is valid for this instance as instances from template and instance could mismatch due to in level changes
Change 3746076 by Michael.Dupuis
Removed unused code
Change 3746998 by Tim.Gautier
QAGame: - Renamed UMG_RealtimePreview > UMG_InEditorPreview
- Moved UMG_InEditorPreview into UMG > Localization, setting up for future Localization tests
Change 3747206 by Arciel.Rekman
Linux: make UI scale more coarse to prevent unnecessary scaling (UE-52086).
- Monitors whose physical dimensions fall in range of 80-110 DPI should still have scale=1.0.
(Edigrating CL 3740942 from Release-4.18 to Dev-Editor)
Change 3747211 by Arciel.Rekman
Make failure to launch SCW more apparent to the user (UE-47263).
- Fixes frequent crash on Linux.
(Merging 3747070 from Release-4.18 to Dev-Editor)
Change 3747726 by Tim.Gautier
QAGame: Resubmitting updated Loc files
Change 3747872 by Tim.Gautier
QAGame: Resubmitting compiled Loc assets
Change 3748118 by Lauren.Ridge
Adding help text to the material layers preview tab
Change 3748398 by Lauren.Ridge
Fixing tooltips for the material layer read-only preview
Change 3748565 by Arciel.Rekman
Linux: fix RHIs settings being wrong when removed via project properties (UE-51203).
- This was a deeper issue with config system than just Linux RHIs.
- This is a better fix than one submitted to 4.18 branch in CL 3747086.
Change 3749441 by Matt.Kuhlenschmidt
PR #4201: Fix a typo in a comment. (Contributed by dneelyep)
Change 3749442 by Matt.Kuhlenschmidt
PR #4195: Incorrect specifier used for FText::Format (Contributed by projectgheist)
Change 3749496 by Matt.Kuhlenschmidt
Fix static analysis
Change 3749805 by Lauren.Ridge
Fixing reset to default on MaterialLayerParam in base material
Change 3749838 by Lauren.Ridge
Also correctly resetting names and layer states
Change 3750442 by Mieszko.Zielinski
Added a safety check which addresses the crash #UE4
Note that this is a temp fix. A proper fix is making sure ConvexShapeIndices doesn't contain any duplicates and will be inplemented in Dev-Framework.
#jira UE-52123
Change 3752266 by Arciel.Rekman
OpenGL: remove PLATFORM_WINDOWS exceptions.
- Discrepancy in behavior between Windows and Linux OpenGL is unhelpful for bug reproducibility.
- VAB bug should have been fixed long ago (on both platforms).
Change 3752929 by Arciel.Rekman
Linux: avoid crashing on unknown drivers.
- See https://answers.unrealengine.com/questions/724100/crashes-on-startup-after-first-run.html
- Checks in IsDeviceIntel() and such fail if the drivers were not detected.
Change 3753254 by Michael.Dupuis
Added missing shader for shader cache
Change 3753426 by Michael.Dupuis
#jira UE-5751: Added the possibility to change material instance exposed params at runtime using a MID for texture, vector and scalar for 1 component or all components
Change 3753440 by Alexis.Matte
Fix fbx scene importer morph target import crash
#jira UE-52255
Change 3753457 by Michael.Dupuis
build fix
Change 3753700 by Chris.Bunner
Make GetSharedInput preview fallback always available in editor as this should handle previews, thumbnails and other editor-only cases.
Refactor to remove duplicate code in material translator.
Material layer expressions are required for client load, fixes cooked builds using layer instances in the base material layer stack.
Change 3754760 by Chris.Bunner
Tidying up EngineTest/ShaderModels map.
Change 3754765 by Arciel.Rekman
Avoid placing tooltip windows under the cursor (UE-12288).
- Fixes inability to use some corners of the screen on Linux (the tooltips there aren't click-through).
Change 3754788 by Matt.Kuhlenschmidt
Fix details panel crash after compiling blueprints that have edit conditon properties
Change 3754933 by Christina.TempelaarL
Fixed typo in heightLerp (transistion->transition).
#jira UE-46736
Change 3754946 by Cody.Albert
Update loading movie code to properly calculate delta time when throttled at 60fps
Change 3755059 by Jamie.Dale
Fixed game preview language not updating in realtime while PIE was enabled
#jira UE-52209
Change 3755130 by Jamie.Dale
Fixed game preview language not updating from native when switching between preview languages
#jira UE-52348
Change 3755664 by Michael.Dupuis
Fixed compile warning
Change 3755714 by Yannick.Lange
Always allow capturing thumbnails from viewport.
This also hides the thumbnail editing UI when a thumbnail was captured from a viewport.
Change 3755944 by Alexis.Matte
Fix crash when importing morph target with "built in" tangent option
#jira UE-52319
Change 3756109 by Christina.TempelaarL
fixed FBX importer Import Textures tooltip, UMaterial -> Material in tooltip text
#jira UE-48389
Change 3756169 by Jamie.Dale
Added plural form pattern to SContentBrowser::GetPathText
Change 3756493 by Laz.Matech
Updating Localization content to further test InEditor Preview Language in UMG
#jira none
Change 3758336 by Alexis.Matte
Fix a crash when importing morph target there was a unsync between some buffer depending on the import options
#jira UE-52319
Change 3758947 by Jamie.Dale
Fixed cursor position regression in search boxes
This was caused by a call to SetText that was added in CL# 3627864
This caused the text to update as it was changed, which made the cursor jump to the end of the text and made it impossible to type in the middle of a search term.
This was done as a bound FText value had been passed to the InitalText of SSearchBox, which made the text resolution behave strangely. InitalText should always be a value, and SSearchBox now resolves any bindings during its constructor.
#jira UE-48874
Change 3759000 by Laz.Matech
Submitting the .PO file for CL 3756493
#jira none
Change 3759480 by Matt.Kuhlenschmidt
Safe guard against brush details crash
#jira UE-52278
Change 3759665 by Matt.Kuhlenschmidt
PR #4214: UE-52249: Use valid PreviewShadowsIndicatorMaterialName (Contributed by projectgheist)
Change 3761211 by Matt.Kuhlenschmidt
Remove the restriction that a level must be writable to be locked/unlocked.
Fixed duplicate icons being used by the level browser
Change 3761304 by Chris.Bunner
MaterialAttributeLayers graph node BaseMA input is no longer required.
Note: Requires "Use Preview Value" set to true on inputs.
Change 3761307 by Chris.Bunner
New material layers and blends will have "Use Preview Value" set to true by default to avoid the need for connected inputs - Missed file on previous commit.
Change 3761357 by Chris.Bunner
Renamed material shared input enum.
Change 3761419 by Chris.Bunner
Updating material layers automated test assets after recent changes.
Reverted some naming changes so existing screenshot tests can be reused.
Change 3762058 by tim.gautier
QAGame: Adding Material Layer assets for testing (Content/Materials/LayerFunction)
Change 3763328 by Matt.Kuhlenschmidt
Fix Slate warning at editor startup
Change 3763354 by Alexis.Matte
Fix skeletal mesh material assign when reducing a LOD that was import from a file using simplygon reduction
#jira UE-52505
Change 3763501 by Matt.Kuhlenschmidt
Prevent shared asset thumbnail pools from having their resources forcefully released when they are in use. ReleaseResources is now private and only called on destruction of the pool
Change 3763574 by Matt.Kuhlenschmidt
Fix slate material box brushes not being keyed off image size
#jira UE-40219
Change 3763678 by Jamie.Dale
Disable realtime level editor viewport if running under remote desktop
This makes the main editor window much more responsive by default under remote desktop
Change 3763679 by Jamie.Dale
Added asset caching metrics for the loc gather
Change 3763693 by Matt.Kuhlenschmidt
Changed the code that activates the actor details tab when selection changes to a flash. There are simply too many things that change the selection and steal focus away from a tab being used
#jira UE-51754
Change 3763826 by Michael.Dupuis
Fixed Fortnite cooking crash
Change 3763864 by Harrison.Moore
Adding New Default 'LayerBlend' assets
Change 3764028 by Christina.TempelaarL
#jira UE-47695 Auto LOD bug
Moved the sections dropdown to the LOD Picker category and modified Custom cb behavior, based on suggestions from charlie.
Change 3764031 by Christina.TempelaarL
#jira UE-47695 Auto LOD in StaticMeshViewer
moved LOD combo widget to LOD picker category and hide custom checkboxes until custom checked.
Change 3764076 by tim.gautier
QAGame: Submitting UMG_Multitouch_test for initial Multitouch testing
Change 3764263 by Matt.Kuhlenschmidt
Fix the floor mesh thumbnail
Change 3764284 by Chris.Bunner
Removing some asserts for cases that can validly fail and are already handled.
Change 3764372 by Matt.Kuhlenschmidt
PR #4196: Show edit icons in editor (Contributed by projectgheist)
Change 3764388 by Chris.Bunner
Fixing logic for material, function and instance updating active materials and instances and their editors.
Change 3764674 by Harrison.Moore
test materials added, Blend updates
Change 3764681 by Harrison.Moore
Adding HMtest map
Change 3766238 by Chris.Bunner
Material layer callers need to let their internal material function calls update their inputs/outputs.
Change 3766556 by Jamie.Dale
Fixed crashes that could happen if some of the data table panels were closed
We now always create the underlying widgets, even if they're currently hidden from view
#jira UE-52552
Change 3767753 by Chris.Bunner
When rebuilding a material function instance editor we must re-create and re-apply the proxies as the expressions have likely changed. Take care to maintain local parameter changes as these have not been saved yet.
Change 3768719 by Michael.Dupuis
#jira UE-52521: Prevent possible crash if a segment have no point or invalid point
Change 3769157 by Jamie.Dale
Fixed incorrect text selection if selecting via double click beyond the bounds of the line
It would previously select the second to last word, rather than the last word
#jira UE-51609
Change 3769159 by Harrison.Moore
Belica Test update, New layer blends updated with texture type fix.
Change 3769205 by Jamie.Dale
Fixed Windows file save dialog not appending the correct extension when there were multiple options available
#jira UE-52180
Change 3769220 by Harrison.Moore
Layer blend tweaks
Change 3769292 by Jamie.Dale
Removing redundant code
Applying the correct package ID, only to then strip it off again is rather pointless
Change 3769479 by Arciel.Rekman
UBT: Use response files for compiler when compiling for Linux.
- Some command lines are too long when cross-compiling on Windows.
Change 3769920 by Arciel.Rekman
Linux: convert yet another initialization crash to a user-friendly message (UE-52457).
#jira UE-52457
Change 3771055 by Alexis.Matte
Make sure we set the Used by morph target material flag to material use by the morphtarget instead of all skinned mesh component
Use the morph vertex factory only for section that has active morph target
#jira UE-51483
Change 3771135 by Michael.Dupuis
Fixed fortnite cooking
Change 3773054 by Yannick.Lange
Avoid loading viewport interaction assets when starting the editor.
Change 3774184 by Arciel.Rekman
Linux: disabled some gdb visualizers until the issue is fixed.
- CL 3773942 by CengizT.
Change 3774303 by Matt.Kuhlenschmidt
Pull requests to fix various typos
Change 3774305 by Matt.Kuhlenschmidt
PR #4237: Visual Studio Repeatedly Opens (UE-51608) (Contributed by LordNed)
#jira UE-51608
Change 3774701 by Arciel.Rekman
OpenGL: fix ARB callback errors when hitting Build Lighting.
- Merged from 4.18 shelf.
Change 3775812 by Matt.Kuhlenschmidt
Fix One-off crash undo-ing while working with Material Params / Material Functions
#jira UE-52680
Change 3775849 by Matt.Kuhlenschmidt
More info for UE-52610
Change 3775850 by Matt.Kuhlenschmidt
Guard against mesh paint crashes
#jira UE-52618
Change 3775904 by Matt.Kuhlenschmidt
Added logging to track down window shutdown issues
Change 3775913 by Matt.Kuhlenschmidt
Pull requests for typos
#jira UE-52751, UE-52748
Change 3776676 by Jamie.Dale
Fixed being able to insert tabs into spin boxes with units
#jira UE-52776
Change 3777006 by Michael.Trepka
Process Mac windowDidBecomeMain and windowDidResignMain notifications immediately instead of deferring them. This solves issues with Slate code that closes and immediately opens new menu windows. Previously closing a window would schedule menu parent's activation event that could be processed after another menu's creation, making it immediately disappear.
#jira UE-52145
Change 3777170 by Arciel.Rekman
Linux: use Xft.dpi (most desktop environments expose their scale through that) as a DPI value (UE-52086, UE-52766).
- Change by Brandon.Schaefer.
- Limitation: no per-monitor DPI.
(Edigrating CL 3776509 //UE4/Release-4.18/... to //UE4/Dev-Editor/...)
Change 3777292 by Arciel.Rekman
Linux: fix symbol collision causing problems with AMD drivers (UE-51843).
- We cannot have elf_end() hidden, because libcuda.so calls elf_end from libnvidia-fatbinaryloader.so and this breaks linking monolithic binaries ("hidden symbol referenced in DSO").
- We cannot have elf_end() visible, because of a name collision with a different libelf used by AMD drivers.
- The only possible workaround is to have elf_end() renamed.
(Edigrating CL 3777242 from //UE4/Release-4.18/... to //UE4/Dev-Editor/...)
Change 3777686 by Joe.Conley
Blueprint editor variable type tooltips: fix case mismatch that was preventing type name to be displayed properly in soft object/class reference tooltips.
Change 3778180 by Jamie.Dale
Avoid a crash if a regex pattern or matcher outlive ICU during shutdown
#jira UE-52770
Change 3778182 by Jamie.Dale
Avoid a crash if a break iterator outlives ICU during shutdown
Change 3778368 by Jamie.Dale
Added missing pragma once
Change 3778560 by Matt.Kuhlenschmidt
Prevent non-shared DDC notification from triggering for epic internal builds
Change 3778709 by Lauren.Ridge
Copying 4.18.2 array reordering propagating to children fix (originally 3778547)
Change 3779205 by Lauren.Ridge
Duplicating 3776649 to fix a crash on compile due to partial GC of a widget.
#jira UE-52260
Change 3779217 by Brandon.Schaefer
GitHub #3678 Fix Setup.sh handling of special characters in PNG path
#jira UE-46103
Change 3779341 by Brandon.Schaefer
GitHub #3012 Use elemtry OS versions to set the ubuntu versions for depencies
#jira UE-39364
Change 3780274 by Joe.Conley
DataTables: Add documentation tooltips showing type information to header columns
Change 3780840 by Alexis.Matte
Do a re-import when user re-import LOD 0
Prevent importing more then MAX_SKELETAL_MESH_LODS
#jira UE-52373
Change 3781067 by Arciel.Rekman
Linux: fix OSSSteam cross-compilation (and CIS).
- Broken by previous change that put compile-time arguments into response file and bulk-replaced \ with /, which affected things like Definitions.Add("STEAM_SDK_VER_PATH=TEXT(\"Steam" + SteamVersion + "\")");
Change 3781110 by Christina.TempelaarL
#jira UE-47695 moved Static Mesh Editor LOD menu from tools to viewport tool bar
Change 3781531 by Christina.TempelaarL
#jira UE-47695 added LOD menu to Static Mesh Editor viewport
Change 3781663 by Alexis.Matte
Fix for cancel export fbx when previewing animation sequence export
#jira UE-49743
Change 3782007 by Jamie.Dale
Improved the ability to lockdown available game languages
In addition to the previous "DisabledCultures" array, you can now add an array of "EnabledCultures" (using the same per-build config filters) to explicitly list the cultures that are allowed to be used in your build (if the list is empty, then everything is allowed unless otherwise disabled).
This also stops the game from attempting to fallback to the native language if the native language has been disabled (we will fallback to the first available language instead).
Change 3782122 by Jordan.Walker
test assets for material layers
Change 3782131 by Joe.Graf
Added support for IOS and TVOS targets when generating CMake files on Mac
Change 3782218 by Christina.TempelaarL
fixing include paths and capitalization causing build errors.
Change 3783171 by Michael.Dupuis
Added the possibility to override default LOD rules for visible primitive and whole scene shadow casting primitive
Added the possibility to store Custom data per view for the frame duration
Change 3783172 by Michael.Dupuis
#jira UE-35097 : Refactored landscape rendering logic to improve general performance while using new custom data and custom lod feature
Exposed many new settings to control component using sub sections rendering, tessellated component, shadow should be include into tessellation, tessellation falloff based on camera location
Changed how LOD distribution is done to be in screen size instead of distance.
Give the possibility to have a different distribution for LOD0 vs the other one.
Change 3783174 by Michael.Dupuis
missing file to landscape refactor
Change 3783315 by Lauren.Ridge
Changing a parameter in the Material Parameter Panel now dirties the material correctly.
Changing a layer parameter in the Material Instance Editor now refreshes the details panel as well.
Change 3783374 by Chris.Bunner
Adding MaterialSharedInputCollection to hidden list when MaterialLayers disabled.
Change 3783617 by Chris.Bunner
Added a Channel Mask material expression parameter. Wraps up a vector parameter and dot product with a single channel selection interface, internally a regular vector parameter.
Fixed GetSharedInput failing to return the preview texture in the Function Instance editor.
Change 3783676 by Lauren.Ridge
Adding access to a material function instance's parent in the Material Instance Editor
Change 3783751 by Michael.Trepka
PR #4248: Fixed C++ std in generated Xcode project to match rest of engine (C++14) (Contributed by Bo98)
Change 3783971 by Brandon.Schaefer
Rename/Move all deploy/Deploy folder/files into AlembicDeploy. Due to case sensitivity on linux, need to maintain the correct case.
#jira UE-37631
Change 3783992 by Michael.Dupuis
#jira UE-35097: Remove tessellation on editor tools
Fixed a case where tessellation multiplier at 0 would cause the component to not be visible
Fixed minor tessellation falloff calculation error
Change 3784502 by Chris.Bunner
Restored missing bool setter.
Coding standards fix.
Change 3784614 by Arciel.Rekman
Linux: better error message when running out of inotify watches (UE-50459).
#jira UE-50459
Change 3784620 by Chris.Bunner
Updated LayerBlend_TextureMask to use new ChannelMask parameter.
Change 3784725 by Lauren.Ridge
Fixing groups not sorting correctly
Change 3785645 by Chris.Bunner
Non-editor compile fix.
Change 3785666 by Arciel.Rekman
Linux: restore ability to use Wayland instead of X11.
- SDL libs recompiled and Wayland version is set to lower one to be compatible with the compositor shipped on Ubuntu 16.04 LTS
- Change by Anthony.Bills.
Change 3785708 by Arciel.Rekman
Linux: implement voice capture using SDL (non-server only) (UE-51298).
- Based on pull request #4131 by mkirzinger.
Change 3785878 by Arciel.Rekman
UBT: add VSCode to default generators on Linux.
Change 3786058 by Arciel.Rekman
Do not add dependencies on other RHIs for servers (UE-48894).
- Pull request #3944 contributed by pfoote.
#jira UE-48894
Change 3786845 by Arciel.Rekman
Code changes to make gcc support easier (UE-51978).
- Contributed by a licensee (pull request #4181 by tomwardio "Collection of fixes to allow UE4 to be compiled by GCC on Linux").
Change 3786871 by Matt.Kuhlenschmidt
Fix static analysis
Change 3786883 by Matt.Kuhlenschmidt
Fix HTML5
Change 3786923 by Matt.Kuhlenschmidt
Fix engine layer blend asset referencing game content. This is not allowed
#jira UE-52888
Change 3786927 by Brandon.Schaefer
Linux: Alembic support
#jira: UE-37631
Change 3786994 by Arciel.Rekman
Remove support for /-prefixed switches (UE-47429).
- They collide with absolute file paths on Mac/Linux and a source of inconsistencies between platforms.
#jira UE-47429
Change 3787032 by Michael.Trepka
Initial support for building and running Niagara on Mac
Change 3787035 by Brandon.Schaefer
GitHub #4166 Undef GL entrypoint macros after use
#jira UE-51663
Change 3787144 by Lauren.Ridge
Fixing material parameter group association resetting after undo
#jira UE-52514
Change 3787839 by Jordan.Walker
updated engine level layer blends to not include game content
switched them to use Chris B's new mask selection node
Change 3787967 by Lauren.Ridge
Fix for broken layer groups, related crash
Change 3787991 by Lauren.Ridge
Fixing thumbnails for material function instances, resolving not being able to delete new function instances
#jira UE-52967
Change 3788226 by Michael.Trepka
Fixed a deadlock when closing Mac CrashReportClient which resulted from changes in CL 3777006
#jira UE-53002
Change 3788557 by Brandon.Schaefer
Fix shadow compiler warnings around our includes
Change 3789700 by Lauren.Ridge
Experimental setting for turning on Material Layers - off by default.
Change 3789703 by Jamie.Dale
Harden the LocMeta and LocRes loading to prevent loading files that are too new
Change 3789706 by Jamie.Dale
Added localization ID to the package summary
This will allow the localization gatherer to query it without having to load the entire package
Change 3789708 by Jamie.Dale
Added a way to display and reset the package localization ID via the Content Browser
Change 3789709 by Jamie.Dale
Added warning for duplicate package localization IDs when gathering asset localization
Change 3789713 by Jamie.Dale
Special case zero-width space in the text shaper to avoid fonts rendering the fallback glyph
Change 3789736 by Christina.TempelaarL
Fixed recently-introduced StaticMeshEditor bug - changing LOD dropdown menu selection was not changing LOD sections category.
Change 3789853 by Chris.Bunner
Material instances should return overridden values when the caller is requesting the default, not leaving the request to fall through to the base material.
#jira UE-52796
Change 3790185 by Brandon.Schaefer
Add better error handling when using new SDK for linux on windows.
#jira UE-50527
Change 3790195 by Jamie.Dale
Fixed line-ending inconsistency when retrieving rich-text
We were using LINE_TERMINATOR when getting the offsets, but \n when getting the text
Change 3790473 by Chris.Bunner
When finding expression by GUID, only return FunctionCall result if expression was found. Fixes cases where searched-for expression is after a FunctionCall in the expressions list.
#jira UE-52729
Change 3790650 by Arciel.Rekman
UBT: Linux: print build details first before refusing to build.
- Tweak to the previous feature that we forgot.
Change 3790681 by Arciel.Rekman
UBT: Linux: tweaks to wording (SDK -> toolchain).
Change 3791459 by Brandon.Schaefer
Linux: libcurl rebuild for version 7.57
#jira OGS-870
Change 3791533 by Arciel.Rekman
Better error messaging when UMB is unusable (UE-50658).
- Should be replaced by a better fix, but merging this workaround in case the better fix will not be done in time for 4.19.
(Edigrating CL 3789387, 3789787 from Release-4.18 to Dev-Editor)
Change 3791885 by Matt.Kuhlenschmidt
Fix static analysis
#jira UE-53097
Change 3791910 by Brandon.Schaefer
Fix for not using proper libraries on x86_64 for libcurl
#jira OGS-870
Change 3792017 by Jamie.Dale
Fixed a conflict between the path settings and favorite settings
Change 3792022 by Jamie.Dale
Fixed a crash that could happen when performing ARO on the property chains of a struct
#jira UE-52999
Change 3792025 by Jamie.Dale
Changed package summary localization ID to be versioned by the object version to avoid changing data in unversioned cooked assets
Change 3792066 by Michael.Dupuis
#jira UE-5751: Fixed possible crash when using dynamic matrial instance
Added missing shaders for landscape when using tessellation
Change 3792718 by Arciel.Rekman
OpenGL: bringing back Windows workarounds to unblock copy-up (UE-52534).
#jira UE-52534
Change 3793018 by Mike.Erwin
new glTF importer plugin
Import StaticMesh, Material, and Texture assets from the Khronos glTF 2.0 format. Text (.gltf) and binary (.glb) files are supported.
Limitations:
- There is no options UI. All assets from the file are imported.
- The glTF format can describe animation and whole scenes, but the initial version of this plugin does not attempt either.
- Data encoded as Base64 data URI is not supported. This is uncommon but is part of the glTF spec.
#jira: UE-50695
Change 3793626 by Matt.Kuhlenschmidt
Logging for HTML5 issue
Change 3794034 by Matt.Kuhlenschmidt
Fix CIS
Change 3794271 by Michael.Dupuis
#jira UE-53133: Fxed shadow calculation when using non whole scene shadow
Change 3794273 by Chris.Bunner
Function call material nodes should be created with no outputs by default.
#jira UE-53127, UE-53128, UE-52616
Change 3794334 by Lina.Halper
- Fix animation reinitializing when just setting new animation with single node
- Deprecated GetScalarParameterDefault and replace that with GetScalarParameterDefaultValue
#jira: UE-52796
Change 3794338 by Michael.Dupuis
Fixed lod visual popping when texture mip used for landscape is not ready
Change 3794350 by Mike.Erwin
Fix glTF importer header includes.
Build was failing on Linux.
Change 3794357 by Michael.Dupuis
#jira UE-53166: buildfix: removed phase 2 landscape optim leftover...
Change 3794549 by Michael.Dupuis
#jira UE-53166 : fixed compile error
Change 3794755 by Matt.Kuhlenschmidt
Fix automation warning
Change 3794910 by Lina.Halper
Change material default value to be red to keep the behavior same.
- Previous code was getting default value of parent, which was wrong, but now since we're grabbing correct value, it's not doing what it meant to do. Changed content to keep same value as parent as default.
Change 3795296 by Mike.Erwin
glTF: fix Linux build errors
A variable was being shadowed.
The other errors are due to an obscure corner of the C++ spec which clang enforces.
https://stackoverflow.com/questions/21900237/do-i-really-need-to-implement-user-provided-constructor-for-const-objects
#jira UE-53204
Change 3797313 by Chris.Bunner
Re-built lighting in Rendering/ShaderModels automated test map and updated failing screenshots.
#jira UE-53198
Change 3803962 by Jamie.Dale
Fixed struct instances not comparing against the correct default values when gathering for localization
Change 3804771 by Michael.Dupuis
Back out changelist 3783171
Change 3804772 by Michael.Dupuis
Back out changelist 3783172
Change 3805258 by Michael.Dupuis
Added missing shader cache for landscape
Change 3806105 by Matt.Kuhlenschmidt
Disable harware benchmarking during automation tests, commandlets, and on the build machine
Change 3806438 by Michael.Dupuis
#jira UE-53228: Fixed rendering path of new landscape optim when using GDoInitViewsLightingAfterPrepass(used in Orion)
Change 3806577 by Matt.Kuhlenschmidt
Change plugin uploading to crash reporter to only do so in editor builds
Change 3806588 by Michael.Dupuis
Remove temp test version in landscape version
Change 3806900 by Jamie.Dale
Fixed 'inconsistent DLL linkage' error when using older versions of Python 2.7
#jira UE-53353
Change 3807125 by Jamie.Dale
Fixed UBT warning after Dev-Core merge
Change 3807299 by tim.gautier
QAGame: Checking in test asset M_LandscapeMaterial_Foliage, quicker repro for UE-53442
[CL 3807911 by Matt Kuhlenschmidt in Main branch]
2017-12-14 10:07:13 -05:00
|
|
|
void DrawTicks( FSlateWindowElementList& OutDrawElements, const FScrubRangeToScreen& RangeToScreen, FDrawTickArgs& InArgs ) const;
|
2014-12-10 09:22:32 -05:00
|
|
|
void HorizontalScrollBar_OnUserScrolled(float ScrollOffset);
|
2014-11-19 07:43:07 -05:00
|
|
|
private:
|
|
|
|
|
FVisualLoggerTimeSliderArgs TimeSliderArgs;
|
|
|
|
|
/** Brush for drawing an upwards facing scrub handle */
|
|
|
|
|
const FSlateBrush* ScrubHandleUp;
|
|
|
|
|
/** Brush for drawing a downwards facing scrub handle */
|
|
|
|
|
const FSlateBrush* ScrubHandleDown;
|
|
|
|
|
/** Brush for drawing cursor background to visualize corsor size */
|
|
|
|
|
const FSlateBrush* CursorBackground;
|
|
|
|
|
/** Total mouse delta during dragging **/
|
2022-11-29 09:25:35 -05:00
|
|
|
double DistanceDragged;
|
2014-11-19 07:43:07 -05:00
|
|
|
/** If we are dragging the scrubber */
|
|
|
|
|
bool bDraggingScrubber;
|
|
|
|
|
/** If we are currently panning the panel */
|
|
|
|
|
bool bPanning;
|
2014-12-10 09:22:32 -05:00
|
|
|
/***/
|
|
|
|
|
TSharedPtr<SScrollBar> Scrollbar;
|
2023-01-17 12:22:04 -05:00
|
|
|
FVector2f SoftwareCursorPosition;
|
2014-11-19 07:43:07 -05:00
|
|
|
};
|