Commit Graph

64 Commits

Author SHA1 Message Date
Max Chen
0167d4ea0f Sequencer: MVVM2 branch and Layer Bars
Copying //Tasks/UE5/Dev-SequencerMVVM2 to Main (//UE5/Main) @20364093

#preflight 628866dfb94f739b152c1e29
#preflight 628866e4585e8f793ee80943
#rb ludovic.chabant, andrew.rodham
#fyi ludovic.chabant, andrew.rodham, andrew.porter
#jira UE-105322

[CL 20364493 by Max Chen in ue5-main branch]
2022-05-25 10:39:33 -04:00
Lauren Barnes
6248f8d412 Replacing legacy EditorStyle calls with AppStyle
#preflight 6272a74d2f6d177be3c6fdda
#rb Matt.Kuhlenschmidt

#ROBOMERGE-OWNER: Lauren.Barnes
#ROBOMERGE-AUTHOR: lauren.barnes
#ROBOMERGE-SOURCE: CL 20057269 via CL 20070159 via CL 20072035 via CL 20072203
#ROBOMERGE-BOT: UE5 (Release-Engine-Staging -> Main) (v943-19904690)
#ROBOMERGE-CONFLICT from-shelf

[CL 20105363 by Lauren Barnes in ue5-main branch]
2022-05-09 13:12:28 -04:00
max chen
bf7eb82263 Sequencer/Valkyrie: Track class permissions for what tracks can be added to movie scene.
Event Track and ConsoleVariable Track are disabled. Spawn Track is also disabled, which means you can't create spawnables in Valkyrie

Added FIsTrackClassAllowed to MovieScene which is bound in MovieSceneToolsModule to look at the class viewer rules.
Fix logic in MediaTrackEditor and LiveLinkPropertyTrackEditor which was always returning Supported for level sequences.

#preflight 6270563191629533ec2b6f79
#rb andrew.rodham

#ROBOMERGE-OWNER: max.chen
#ROBOMERGE-AUTHOR: max.chen
#ROBOMERGE-SOURCE: CL 20031346 via CL 20033139 via CL 20033318 via CL 20033325
#ROBOMERGE-BOT: UE5 (Release-Engine-Staging -> Main) (v943-19904690)

[CL 20035188 by max chen in ue5-main branch]
2022-05-03 19:50:52 -04:00
Mike Zyracki
49541ddc4c Sequencer: Linked Anim Sequences: When duplicating level sequences we also duplicate the linked anim sequence. Also added some BP/Python functions for creating linked anim sequences
#jira UE-149027
#jira UE-149731
#preflight 62607aa6de50cd99bbbab57c
#rb max.chen

[CL 19851796 by Mike Zyracki in ue5-main branch]
2022-04-21 13:12:26 -04:00
jimmy smith
929ebcd8d7 Fix spamming of Triggers by adding new Track type
#jira UE-138615
#rb rob.gay Ludovic.Chabant
#preflight 6216753437178b0175b2317f


#ROBOMERGE-AUTHOR: jimmy.smith
#ROBOMERGE-SOURCE: CL 19095469 via CL 19096552 via CL 19097708 via CL 19098551 via CL 19105431
#ROBOMERGE-BOT: UE5 (Release-Engine-Staging -> Main) (v921-19075845)

[CL 19147043 by jimmy smith in ue5-main branch]
2022-02-25 09:59:46 -05:00
max chen
e8b516997d Sequencer: Console variable track
#jira UE-132512
[FYI] andrew.rodham
#rb max.chen, matt.hoffman
#preflight 61f2d3e6801201ab3861943e

#ROBOMERGE-AUTHOR: max.chen
#ROBOMERGE-SOURCE: CL 18755112 in //UE5/Release-5.0/... via CL 18755119 via CL 18757588
#ROBOMERGE-BOT: UE5 (Release-Engine-Test -> Main) (v903-18687472)

[CL 18758553 by max chen in ue5-main branch]
2022-01-27 14:37:04 -05:00
aurel cordonnier
a12d56ff31 Merge from Release-Engine-Staging @ 17791557 to Release-Engine-Test
This represents UE4/Main @17774255, Release-5.0 @17791557 and Dev-PerfTest @17789485

[CL 17794212 by aurel cordonnier in ue5-release-engine-test branch]
2021-10-12 21:21:22 -04:00
zousar shaker
836bd0854d Automated search-and-replace pass to change uses of UE_TRANSITIONAL_OBJECT_PTR(Type) to TObjectPtr<Type>.
There were two instance of the type being incorrect and they were manually fixed.

#rb none

#ROBOMERGE-AUTHOR: zousar.shaker
#ROBOMERGE-SOURCE: CL 17472048 in //UE5/Main/...
#ROBOMERGE-BOT: STARSHIP (Main -> Release-Engine-Test) (v870-17433530)

[CL 17472069 by zousar shaker in ue5-release-engine-test branch]
2021-09-09 10:07:44 -04:00
ludovic chabant
92075f84a6 Sequencer: Large world coordinates support
- Add support for double precision channels, curves, evaluation, blending, and all other runtime infrastructure.
- Note that, as usual for now, double channels load and save float values.
- Editor side also gains some new track editors for these new types, with some workarounds to correctly recognize between float and double vectors.
- Transform tracks are now operating entirely in doubles.
- Float recomposing APIs for keying tracks in the editor are now using doubles, and have been renamed to "value recomposing".

#rb max.chen
#preflight 6123f6d9e7a3070001ff37ed

#ROBOMERGE-SOURCE: CL 17278174 in //UE5/Main/...
#ROBOMERGE-BOT: STARSHIP (Main -> Release-Engine-Test) (v858-17259218)

[CL 17278198 by ludovic chabant in ue5-release-engine-test branch]
2021-08-23 18:26:59 -04:00
andrew rodham
7de603bba9 Sequencer: Add a track for controlling data layers
- Data Layer sections can be assigned any number of data layers for World Partition worlds, and can be instructed to Load, Unload or Activate layers.
  - Pre-rolled data layer sections that are set to Activate will automatically preload data layers without making them visible

#jira UE-116691
#preflight 60c903b72da784000156f28b
#rb Ludovic.Chabant, JeanFrancois.Dube

#ROBOMERGE-SOURCE: CL 16688434 in //UE5/Main/...
#ROBOMERGE-BOT: STARSHIP (Main -> Release-Engine-Test) (v835-16672529)

[CL 16688449 by andrew rodham in ue5-release-engine-test branch]
2021-06-16 10:42:51 -04:00
Jamie Dale
d424d1ae98 Deprecated UEditorEngine::OnObjectsReplaced in favor of FCoreUObjectDelegates::OnObjectsReplaced
Also removed the UEditorEngine::BroadcastBlueprintCompiled that took a map of objects, as nothing calls it

#rb Brooke.Hubert

[CL 15402078 by Jamie Dale in ue5-main branch]
2021-02-13 14:49:21 -04:00
Mike Zyracki
b78751c454 Control Rig: Sequencer: When baking to an aim sequence, CR Components don't tick, so we now listen to the post evaluate event and broadcast an event that the control rig track editor listens to and so we then upate/tick.
#jira UE-107418

[CL 15289448 by Mike Zyracki in ue5-main branch]
2021-02-02 23:14:10 -04:00
Zousar Shaker
fc2ad21a5e Prototype Wrapped Object Pointers (ObjectHandle/ObjectPtr)
Call-site changes for non-scalar wrapped object pointer upgrades in Engine + Shootergame

#rb devin.doucette

[CL 14996467 by Zousar Shaker in ue5-main branch]
2021-01-05 19:16:25 -04:00
Marcus Wassmer
3b81cf8201 Merging using //UE5/Main_to_//UE5/Release-Engine-Staging @14384769
autoresolved files
#rb none

[CL 14384911 by Marcus Wassmer in ue5-main branch]
2020-09-24 00:43:27 -04:00
Marc Audy
7379fa99c5 Merging //UE5/Release-Engine-Staging to Main (//UE5/Main) @ 14229157
[CL 14233282 by Marc Audy in ue5-main branch]
2020-09-01 14:07:48 -04:00
Marc Audy
a7c9001a94 Merging //UE5/Release-Engine-Staging to Main (//UE5/Main) @ 14075166
#rb
#rnx

[CL 14075271 by Marc Audy in ue5-main branch]
2020-08-11 01:36:57 -04:00
ludovic chabant
6b2ca49ec9 Sequencer: improvements to camera shake source tracks.
Add a second track so that there are 2 ways to start and preview camera shakes: a "controlled" track where sections control when the shake starts and stops, and a "trigger" track which is a "fire-and-forget" way to trigger shakes.
Moved all the shake previewing into a separate class so that both tracks can use it.

Controlled shakes track improvements:
- Handle blending camera shakes out.
- Show a marker for the end of the shake if it has a duration, for when the section is longer than that.
- Show shake intensity curve if the shake has blend in/out times.
- Give new sections an appropriate length based on their shake's duration.

#rb max.chen
#jira UE-89420
#jira UE-89421


#ROBOMERGE-SOURCE: CL 11938191 via CL 11943265 via CL 11943542 via CL 11943870
#ROBOMERGE-BOT: (v656-11643781)

[CL 11946435 by ludovic chabant in Main branch]
2020-03-05 13:46:17 -05:00
ludovic chabant
4817e388f8 Sequencer: Add dedicated track for playing camera shakes on a camera shake source component.
This allows us to have a place to write editor-only code that will preview the shake while working in sequencer.

#rb max.chen


#ROBOMERGE-SOURCE: CL 11567964 via CL 11567968
#ROBOMERGE-BOT: (v654-11333218)

[CL 11567975 by ludovic chabant in Main branch]
2020-02-20 13:42:45 -05:00
ryan durand
627baf970a Updating copyright for Engine Editor.
#rnx
#rb none


#ROBOMERGE-SOURCE: CL 10869241 via CL 10869527 via CL 10869904
#ROBOMERGE-BOT: (v613-10869866)

[CL 10870586 by ryan durand in Main branch]
2019-12-26 15:33:43 -05:00
andrew rodham
77a0f0be4d Sequencer: Change generated event entry points to use blueprint extensions to make preloading explicit
#jira UE-83415
#rb Max.Chen, Matt.Hoffman, Dan.OConnor

#ROBOMERGE-SOURCE: CL 10120555 in //UE4/Release-4.24/...
#ROBOMERGE-BOT: RELEASE (Release-4.24 -> Main) (v587-10111126)

[CL 10120558 by andrew rodham in Main branch]
2019-11-12 21:52:54 -05:00
Chris Gagnon
8ab0638182 Copying //UE4/Dev-Editor to Dev-Main (//UE4/Dev-Main) for 4.24
#rb none

[CL 9325047 by Chris Gagnon in Main branch]
2019-10-01 20:41:42 -04:00
Chris Gagnon
2e87118a18 Copying //UE4/Dev-Editor to Dev-Main (//UE4/Dev-Main) Interim 4.24.
#rb none

[CL 8614014 by Chris Gagnon in Main branch]
2019-09-10 11:35:20 -04:00
matt hoffman
5fc20eb45d This is a significant overhaul to the Curve Editor used by Sequencer which adds a plugin-based architecture and extensibility. New tools and toolbar buttons can be added to all usages of the curve editor via user plugins, and the different views for data can be created modularly so new implementations of the editor can register their own way of drawing their data and the tools should just work. Additionally, you can now write your own filters to operate on curve editor data for custom implementations of smoothing, key generation, etc.
The curve editor supports three view types by default - an absolute view (default, matches old behavior), a stacked view and a normalized view. Stacked views draw each curve separately (so non-overlapping) and normalized against their own min/max values. The normalized view draws all curves overlapping with each one normalized against its own min/max values.

A tree view has been added to help effectively manage large numbers of curves. Selecting curves in the treeview controls which curves are visible in the view area. The treeview also supports pinning curves. These pinned curves will always be visible regardless of your selection in the tree view.

A transform tool and a retiming tool have been implemented (via a plugin) which is enabled by default. The transform tool allows you to do a marquee selection of keys and then translate and scale the positions of these keys. The retiming tool allows you to create a 1 dimensional lattice to adjust the timing of your keys with a linear falloff between each lattice point. These tools work across multiple views at the same time which is especially useful if you are representing one dimensional data (such as event keys) in a view, as it allows you to adjust this data at the same time as your animation curves. A smoothing filter has been implemented (via a plugin) to allow running highpass and lowpass filters on your keys.

Opening the curve editor in Sequencer/UMG now creates a separate dockable tab which can be resized and docked as desired. A time slider has been added to the Curve Editor which is synchronized to the playback time in Sequencer. This allows you to scrub time in the curve editor without having to find the Sequencer window and adjust time there while looking at your keys and previewing your animation in the viewport at the same time.

Rudimentary support has been added for saving and later restoring a set of curves in your current session. This allows you to do a rudimentary copy/paste of entire curves but can also be useful for saving a curve, making adjustments to it and then deciding you want to go back - simply reapply the saved curve! Each curve added supports an intention name (such as "Location.X" or "FieldOfView"), and these intention names will be used when trying to apply curves. This allows you to reliably take all of the curves of a transform on one object and apply them to another object (and ensure that Location.X gets applied to the new Location.X, etc.) this can be helpful if you have a mixed set of curves buffered (such as a location and a field of view). In the event that no curves match by intention you can store and apply a single curve at a time from any intention to any other intention.

The Curve Asset editors (float, vector and color curve assets) have been changed to use the new editor. They support the same treeviews, filtering and tools that the Sequencer editor does. In addition, the Color Curve asset editor adds an additional view which provides a 1 dimensional gradient editor as an easier way to visualize and edit colors instead of the channels individually.


#rb Max.Chen, Andrew.Rodham


#ROBOMERGE-SOURCE: CL 6631811 via CL 6633746
#ROBOMERGE-BOT: (vundefined-6620334)

[CL 6633863 by matt hoffman in Main branch]
2019-05-24 14:42:05 -04:00
Chris Gagnon
1dd3e0189f Merging //UE4/Dev-Main to Dev-Editor (//UE4/Dev-Editor)
#rb none

[CL 4730305 by Chris Gagnon in Dev-Editor branch]
2019-01-15 18:47:22 -05:00
Francis Hurteau
57c677da93 Copying //UE4/Dev-Enterprise@4705006 to Dev-Main (//UE4/Dev-Main)
#rb none
#lockdown Nick.Penwarden

[CL 4705151 by Francis Hurteau in Main branch]
2019-01-10 17:26:53 -05:00