2016-12-08 08:52:44 -05:00
// Copyright 1998-2017 Epic Games, Inc. All Rights Reserved.
2014-03-14 14:13:41 -04:00
# include "SLevelEditor.h"
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 "Framework/MultiBox/MultiBoxExtender.h"
# include "Framework/Docking/LayoutService.h"
# include "EditorModeRegistry.h"
# include "EdMode.h"
# include "Engine/Selection.h"
# include "Misc/MessageDialog.h"
# include "Modules/ModuleManager.h"
# include "Styling/SlateStyleRegistry.h"
# include "Framework/Application/SlateApplication.h"
# include "Widgets/Layout/SBorder.h"
# include "Widgets/Layout/SBox.h"
# include "EditorStyleSet.h"
# include "Editor/EditorPerProjectUserSettings.h"
# include "Editor/UnrealEdEngine.h"
# include "Settings/EditorExperimentalSettings.h"
# include "LevelEditorViewport.h"
# include "EditorModes.h"
# include "UnrealEdGlobals.h"
# include "LevelEditor.h"
# include "LevelEditorMenu.h"
# include "IDetailsView.h"
2014-03-14 14:13:41 -04:00
# include "LevelEditorActions.h"
# include "LevelEditorModesActions.h"
2014-04-23 17:50:29 -04:00
# include "LevelEditorContextMenu.h"
2014-03-14 14:13:41 -04:00
# include "LevelEditorToolBar.h"
# include "SLevelEditorToolBox.h"
# include "SLevelEditorModeContent.h"
# include "SLevelEditorBuildAndSubmit.h"
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 "Kismet2/DebuggerCommands.h"
# include "SceneOutlinerPublicTypes.h"
# include "SceneOutlinerModule.h"
2014-03-14 14:13:41 -04:00
# include "Editor/Layers/Public/LayersModule.h"
# include "Editor/WorldBrowser/Public/WorldBrowserModule.h"
# include "Toolkits/ToolkitManager.h"
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 "PropertyEditorModule.h"
# include "Interfaces/IMainFrameModule.h"
# include "Editor/WorkspaceMenuStructure/Public/WorkspaceMenuStructure.h"
2014-03-14 14:13:41 -04:00
# include "Editor/WorkspaceMenuStructure/Public/WorkspaceMenuStructureModule.h"
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 "StatsViewerModule.h"
# include "Widgets/SToolTip.h"
2014-03-14 14:13:41 -04:00
# include "IDocumentation.h"
2014-09-05 07:39:52 -04:00
# include "TutorialMetaData.h"
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 "Widgets/Docking/SDockTab.h"
2015-01-30 10:16:55 -05:00
# include "SActorDetails.h"
2015-04-10 03:30:54 -04:00
# include "GameFramework/WorldSettings.h"
Copying //UE4/Dev-Sequencer to //UE4/Dev-Main (Source: //UE4/Dev-Sequencer @ 3237992)
#lockdown Nick.Penwarden
#rb none
==========================
MAJOR FEATURES + CHANGES
==========================
Change 3136778 on 2016/09/22 by Max.Preussner
Merged Dev-Main to Dev-Sequencer
Change 3179199 on 2016/10/29 by Max.Chen
Sequencer: Fade only oin the current player context, not on all worlds.
Copy from Release-4.14. Copied fix to FadeTrackInstance to FadeTemplate.
#jira UE-37939
Change 3179340 on 2016/10/29 by Max.Preussner
PS4Media: Fixed audio track dropping first frame
Change 3180391 on 2016/10/31 by Max.Preussner
UdpMessaging: nulling out message processor in destructor
Change 3180459 on 2016/10/31 by Max.Chen
Sequencer: Fix copy/paste crash in UMG.
Change 3180607 on 2016/10/31 by Andrew.Rodham
UMG: Fixed parent bindings not being adhered to correctly. Fixed slot widgets that get recreated not having their object bindings updated.
#jira UE-38021
#jira UE-38018
Change 3181405 on 2016/11/01 by Lina.Halper
#ANIM/SEQUCNER: sequencer animation blending support including additive
- created multiway blend node - extension of two way blend
- created anim sequencer instance to be used in sequencer for blending multiple animations and additives
- hooked up to sequencer track players
- renamed AnimationNode_TwoWay to AnimNode_TwoWay to be consistent with other node names.
- Make sure you can't choose montage when selecting animation in Sequencer
- Fixed Anim BP playing with multi group montages
#code review: Max.Chen
Change 3181870 on 2016/11/01 by Andrew.Rodham
Sequencer: Made sequence pointers stored in sequence template instances weak object ptrs
- We can't guarantee the lifetime of the objects here
#jira UE-38051
Change 3182851 on 2016/11/02 by Andrew.Rodham
Sequencer: Assert that a GetScriptStructImpl has been overridden correctly on templates
Change 3182852 on 2016/11/02 by Andrew.Rodham
Sequencer: Added 'Restore Animated State' command (CTRL+R) and button to sequencer toolbar
Change 3183161 on 2016/11/02 by Max.Preussner
Media: Added supported file extensions & URL schemes
Change 3183476 on 2016/11/02 by Max.Preussner
Merged Dev-Main to Dev-Sequencer
Change 3185181 on 2016/11/03 by Max.Chen
Sequencer: Refactor general options button menu into play options and select options. Add Select Sections in Selection Range and Select All in Selection Range.
Fix issues with convert to spawanble and convert to possessable. Convert to possessable now deletes the spawn track so that it's not left lying around, which when deleted would end up deleting the converted possessable actor.
#jira UE-37854
Change 3185184 on 2016/11/03 by Max.Chen
Sequencer: Add hotkey to toggle camera cut track lock/unlock camera.
Change 3185409 on 2016/11/03 by Max.Chen
Sequencer: Fix crash in skeletal mesh section drawing.
#jira UE-38090
Change 3185444 on 2016/11/03 by Max.Chen
UMG: Expose label browser for UMG
Change 3185662 on 2016/11/03 by Max.Chen
Sequencer: Paste track fixes.
- Loosen restrictions on paste track destination. This allows the paste to operate on spawnables and on properties that don't have an explicit Set function.
- Allow pasting onto all types of tracks, not just property tracks.
- Fix when pasting the copied tracks onto multiple objects.
Tested pasting transform tracks from possessable to spawnables.
Tested pasting skeletal animation tracks from spawnable to possessables.
#jira UETOOL-1206
Change 3185920 on 2016/11/03 by Andrew.Porter
Adding test content for multiple audio video tracks.
Change 3186404 on 2016/11/03 by Max.Preussner
Merged Dev-Main to Dev-Sequencer
Change 3187957 on 2016/11/04 by Max.Preussner
MediaAssets: Exposed CanPlaySource in BP
Change 3187988 on 2016/11/05 by Max.Preussner
Fixed documentation
Change 3188035 on 2016/11/05 by Max.Chen
Sequencer: Show camera name in cinematic viewport.
#jira UE-28115
Change 3188603 on 2016/11/07 by Max.Preussner
WmfMedia: Added missing nullptr check
Change 3188788 on 2016/11/07 by Max.Preussner
MediaPlayerEditor: Removed property buttons from PlatformMediaSource customization (UE-37948)
#jira UE-37948
Change 3188808 on 2016/11/07 by Max.Preussner
MediaAssets: Moved media player implementation into reusable class
Also moved overlay text handling into separate asset.
Change 3188919 on 2016/11/07 by Max.Preussner
Media: Changed the handling of invalid media and media that failed to open (UE-38014)
#jira UE-38014
Change 3189112 on 2016/11/07 by Max.Preussner
WmfMedia: Added rudimentary H.265 HEVC support for Windows 10 (UE-38324)
#jira UE-38324
Change 3189376 on 2016/11/07 by Max.Preussner
WmfMedia: Removed Windows specific code from factory module
Change 3189381 on 2016/11/07 by Max.Preussner
Atrac9Audio: Fixed log category
Change 3189497 on 2016/11/07 by Max.Preussner
Media: Added binary sinks support
Change 3189666 on 2016/11/07 by Max.Chen
Curve Editor: Add option to show time in frame numbers
#jira UE-27210
Change 3190339 on 2016/11/08 by Max.Preussner
MediaAssets: Removed SetDesiredPlayerName since the field is public
Change 3190342 on 2016/11/08 by Andrew.Porter
Adding sequencer test content for animation blueprint
Change 3190398 on 2016/11/08 by Max.Preussner
Media: Renamed binary tracks to metadata tracks
Change 3190458 on 2016/11/08 by andrew.porter
Updating Skeleton with new slots.
Change 3191167 on 2016/11/08 by Max.Chen
Sequencer: Fix crash in validating paste tracks buffer. Validate the tracks instead of actually pasting into temp.
#jira UE-38353
Change 3191336 on 2016/11/09 by Andrew.Rodham
Slate: Added the ability to set and retrieve a host tab manager from a details view
Change 3191338 on 2016/11/09 by Andrew.Rodham
Editor: Added the ability to extend default layouts
- FLayoutExtender can be used to provide basic tab layout extensions on default themes.
- This can be used by external plugins to inject tabs to other interfaces where necessary.
- Currently this is supported by the blueprint editor's unified component layout, and the level editor layout.
Change 3191346 on 2016/11/09 by Andrew.Rodham
Sequencer: Added new (experimental) ActorSequence module and editor
- Sequences can now be added to actors via the UActorSequenceComponent.
- An embedded sequencer will appear on details panels, with the option to break it out into a tab.
- Separated common playback elements from ULevelSequencePlayer into UMovieSceneSequencePlayer, from which specific players can derive.
- The majority of level editorintegration with sequencer has been separated out into a separate singleton class that can manage multiple sequencers.
- All movie scene data now defaults to instanced, such that it can be duplicated and instanced correctly.
- Added read-only mode for sequencer which is used for actor sequence components that come from a blueprint archetype to prevent erroneous editing.
Change 3191387 on 2016/11/09 by Andrew.Rodham
Orion: Fixed deprecation warnings
Change 3191388 on 2016/11/09 by Andrew.Rodham
Orion: Added dependency on MovieScene module
Change 3191403 on 2016/11/09 by Andrew.Rodham
Sequencer: Fix initialization order warning
Change 3191428 on 2016/11/09 by Andrew.Rodham
Sequencer: Added missing include
Change 3191510 on 2016/11/09 by Andrew.Rodham
Header include fixes
Change 3191599 on 2016/11/09 by Max.Chen
Sequencer: Add option to lock the playback range per movie scene. The toggle is stored as editor only and should be a saved value so that it can persist as the asset is passed from user to user.
#jira UE-34677
Change 3191664 on 2016/11/09 by Andrew.Rodham
Sequencer: Ensure keyframe handlers are only added once
Change 3192373 on 2016/11/09 by Max.Preussner
MediaAssets: Fixed regression: playlists no longer open
Change 3192408 on 2016/11/09 by Max.Preussner
MediaAssets: Fixed OpenPlaylistIndex crashing
Change 3192878 on 2016/11/09 by Max.Chen
Camera Rig: Fix log spam trying to unregister component.
#jira UE-38435
Change 3192989 on 2016/11/10 by Andrew.Rodham
Slate: Added constructor to appease old VS2013 compiler warning about non-constructible type
Change 3192991 on 2016/11/10 by Andrew.Rodham
Sequencer: Moved lambda out-of-line to fix static analysis warning
Change 3193420 on 2016/11/10 by Max.Preussner
MediaAssets: Replaced CopyToResolveTarget with new TransitionTarget API
Change 3193478 on 2016/11/10 by Max.Chen
Sequencer: Moved Fix Actor References back under the General Options menu.
Change 3193870 on 2016/11/10 by Max.Preussner
MediaPlayerEditor: Removed additional buttons in per-platform overrides (UE-37948)
#jira UE-37948
Change 3193873 on 2016/11/10 by Lina.Halper
- Sequencer fix with anim instance reinit
- Fixed TMap issue with memory by changing to pointer from ref.
#code review: Max.Chen
Change 3194184 on 2016/11/10 by Max.Chen
Sequencer: Only expand section when setting keys when there are keys. Otherwise if you set the default value while the time position is outside of the section range, the section will expand, which seems undesirable.
Change 3194187 on 2016/11/10 by Max.Chen
Sequencer: Backwards compatibility if a track no longer supports multiple rows, its sections are split to other duplicate tracks.
Change 3194191 on 2016/11/10 by Max.Chen
Sequencer: Add audio volume and pitch curves.
#jira UE-30009
Change 3194256 on 2016/11/10 by Max.Chen
Merging //UE4/Dev-Main to Dev-Sequencer (//UE4/Dev-Sequencer)
Change 3194282 on 2016/11/10 by Max.Chen
Movie Capture: Add some frame rate bounds. Max frame rate for recording is 200. Min is 1.
#jira UE-38502
Change 3194355 on 2016/11/11 by Max.Chen
Sequencer: Minimum handle size for time slider scrubber.
#jira UE-34676
Change 3194767 on 2016/11/11 by Max.Chen
Sequencer: Mark duplicated tracks as changed so that their template gets regenerated.
Change 3195094 on 2016/11/11 by Max.Preussner
Media: Removing game thread dependencies
This change removes game thread dependencies from all media players so that we can use the media framework for startup movies where the game thread is block while loading the Engine. The players now have two new methods, TickPlayer and TickVideo, which need to be called from the external code that owns the players. On the Engine side, this is taken care of by UMediaPlayer, which calls TickPlayer from the game thread and TickVideo from the render thread. In startup movies, this will be taken care of by a special thread.
AvfMedia: This change does not fully remove game thread dependencies in AvfMediaPlayer yet. There are some async callbacks scheduled to execute on the game thread that need to be refactored. The execution of these events should be performed in TickPlayer instead.
All platform owners, please review these changes for your platform and make sure that everything still works. I have not had time to test all platforms yet.
Change 3195396 on 2016/11/11 by Max.Preussner
AvfMedia: Removed remaining game thread dependencies
Change 3195670 on 2016/11/11 by Max.Preussner
MediaUtils: Renamed function
Change 3195690 on 2016/11/11 by Max.Preussner
MediaAssets: MediaPlayerBase instance is now a field instead of pointer.
Change 3195802 on 2016/11/11 by Max.Preussner
Media: Removed UMediaPlayer::GetNativePlayer
Change 3195843 on 2016/11/11 by Max.Preussner
Kismet: Fixed non-unity
Change 3195851 on 2016/11/11 by Max.Preussner
Fixed typo.
Change 3195854 on 2016/11/11 by Max.Preussner
MediaUtils: Added missing forward declaration
Change 3195937 on 2016/11/11 by Max.Chen
Media: CIS Fix
Change 3196120 on 2016/11/13 by Max.Chen
Sequencer: Weight curve for skeletal animation section.
Changed skeletal template evaluation so that it works with multiple animation tracks. The shared track clears all the weights, the section gathers up all the data, and the shared track evaluates the data. Otherwise, the multiple track evaluations would conflict with each other in setting states back and forth.
#jira UE-38374, UEFW-128
Change 3196265 on 2016/11/13 by Max.Chen
Sequencer: Fix audio waveforms so that they're regenrated when audio start time is changed.
#jira UE-38543
Change 3196421 on 2016/11/14 by Andrew.Rodham
Sequencer: Fixed modified tracks not being written to the transaction buffer when replacing object bindings
#jira UE-38423
Change 3197131 on 2016/11/14 by Max.Chen
Sequencer: Null checks.
#jira UE-38570, UE-38593
Change 3197209 on 2016/11/14 by Max.Chen
Cine Camera: Reset focus smoothing interpolation on PostEditChangeProperty. This fixes an issue where if you enable focus smoothing, the manual focus distance that is input isn't used since the interpolation happens from the last current focus distance.
#jira UE-27055
Change 3198691 on 2016/11/15 by Max.Chen
Sequence Recorder: Optimize record transforms by setting all the keyframes at once. Also, added option to toggle removing redundant keyframes from the recorded tracks.
#jira UE-38489
Change 3198711 on 2016/11/15 by andrew.porter
Adding test content for MEdia Framework Track Switching.
Change 3199174 on 2016/11/15 by Lina.Halper
Sequencer backward compatibility fix with root motion
Make sure you could remove root motion fine
#jira : UE-38591
Change 3199260 on 2016/11/15 by tim.gautier
Updated QA-Media_TrackSwitch - changed Trigger Collision to only detect overlap from PlayerPawn
Change 3199663 on 2016/11/15 by Max.Chen
Anim Sequencer: Fix deprecation warning for bCanUseParallelUpdateAnimation. Updated to use bUseMultiThreadedAnimationUpdate.
Change 3199727 on 2016/11/15 by Max.Chen
Matinee to Level Sequence: Set default scale when converting matinee move tracks to sequencer.
#jira UE-38688
Change 3199847 on 2016/11/16 by Max.Chen
Sequencer: Add menu option to reduce keys of all sections in the current level sequence
Change 3200351 on 2016/11/16 by Max.Chen
Level Editor/Sequencer: Fixes to allow for component keyframing. The transform track operates on the components that changed, not the actor. The level editor viewport broadcasts begin/end movement on the components that changed.
#jira UE-38649, UE-38646
Change 3200474 on 2016/11/16 by Max.Chen
Sequencer: Move reduce keys to section context menu.
Change 3200888 on 2016/11/16 by Max.Chen
Sequencer: Clamp skeletal animation evaluation remapping of time to section bounds. This is necessary when evaluating nearest is enabled and the time is beyond the section bounds.
Also, set the shared track template to have higher priority so that it always clears/initializes weights before each section's template adds section params for evaluation.
Change 3201633 on 2016/11/17 by Max.Chen
Matinee to Level Sequence: Fix matinee 3d scale track conversion to level sequence.
Also, added paste matinee vector track to sequencer's vector track.
#jira UE-38688
Change 3202458 on 2016/11/17 by Max.Chen
Sequencer: Fix track editor commands getting unregistered when switching from one level sequence to another. The sequence of events is: track editor commands get bound when a level sequence is edited. When switching to another level sequence, the existing track editor is released after the new one is registered, causing the commands to ultimately get unbound.
#jira UE-38693
Change 3202606 on 2016/11/17 by Max.Chen
Actor Sequence: Null check in CanPossessObject for a component's owner.
#jira UE-38514
Change 3203522 on 2016/11/17 by Max.Chen
Sequencer: Audio start time deprecated in favor of start offset which is an offset into the audio clip. Also, limit the start offset to positive values since you can just crop into the audio clip by dragging the section's start time.
Audio track no longer supports multiple rows (should have been checked in along with the audio volume and pitch multiplier curves).
#jira UE-38549, UE-38554, UE-38547
Change 3203863 on 2016/11/18 by Andrew.Rodham
Engine: Ensure that world settings actor is considered by network object list when sorting the actor list for a level
Change 3203865 on 2016/11/18 by Andrew.Rodham
Sequencer: Fixed play rate track interaction between servers and clients
- The logic for evaluation was previously flawed (it would only run in editor builds). Play rate is now only evaluated on servers and standalone clients, with the time dilation being replicated to network clients.
Change 3203900 on 2016/11/18 by Andrew.Rodham
Sequencer: Changed CreateLevelSequencePlayer to create a transient level sequence actor
#jira UE-37277
Change 3205038 on 2016/11/18 by Max.Preussner
Slate: Corrected comment
Change 3205046 on 2016/11/18 by Max.Preussner
WmfMedia: Added missing nullptr check
#jira UE-38825
Change 3205073 on 2016/11/18 by Max.Chen
Sequencer: Fix audio upgrade case when start time is 0.
Change 3205277 on 2016/11/19 by Max.Preussner
Merging //UE4/Dev-Main to Dev-Sequencer (//UE4/Dev-Sequencer)
Please take a look at SequencerEdMode.cpp and Sequencer.cpp. I ended up accepting latest Dev-Sequencer, which seemed to be the right thing to do.
Change 3205465 on 2016/11/20 by Max.Preussner
MovieScene: Fixed non-unity build
Change 3205467 on 2016/11/20 by Max.Preussner
Engine: Fixed spelling
Change 3206264 on 2016/11/21 by Max.Preussner
Kismet: Added missing forward declaration
Change 3206493 on 2016/11/21 by Max.Preussner
PS4Media: Added remaining changes for removing game thread dependencies
Change 3206512 on 2016/11/21 by Andrew.Porter
Adding test content to QAGame for Sequencer animation weight blending.
Change 3206529 on 2016/11/21 by Lina.Halper
Fixed anim notifes to work in Sequencer Instance
- Give proper delta in editor preview
- Make sure not to recreate AnimInstance
#jira: UE-38849
#code review:Max.Chen
Change 3206552 on 2016/11/21 by Max.Preussner
QAGame: Enabled looping by default
Change 3207462 on 2016/11/22 by andrew.porter
QAGame: updating QA-Sequencer with changes to animation blending test cases
Change 3207499 on 2016/11/22 by tim.gautier
Added Streaming Sources, added Streaming Source options for BP_MediaPlayer. Specified Media Option Categories with BP_MediaPlayer to clean up details panel.
#jira none
Change 3207571 on 2016/11/22 by Max.Chen
Curve Editor: Expose curve editor settings to Editor Preferences.
#jira UE-38907
Change 3207690 on 2016/11/22 by Max.Chen
Sequencer: Speculative crash fix for switching UMG animations.
#jira UE-29333
Change 3207744 on 2016/11/22 by tim.gautier
Removed unnecessary nodes from BP_MediaPlayer. Created a variable visible in the Details Panel to allow the user to specify a URL to Stream media without specifying a Source in-editor.
#jira none
Change 3207935 on 2016/11/22 by Max.Chen
Sequencer: Temporary fix for skeletal animation track scrubbing. Verified that anim notifies still fire when playing and scrubbing.
#jira UE-38964
Change 3207938 on 2016/11/22 by Max.Chen
Sequence Recorder: Set reduce keys back to true so that there's no change in current behavior. This should be toggled off for performance reasons but in general is nice to have reduced keys.
Change 3207950 on 2016/11/22 by Lina.Halper
- Fixed so that mesh space additive won't show up in sequencer
- Added warning if you change type later or existing ones
#jira: UE-38062?
Change 3208278 on 2016/11/22 by andrew.porter
QAGame: Adjusting level blueprint for test case.
Change 3208285 on 2016/11/22 by andrew.porter
QAGame: adding SequencerBP animation blueprint.
Change 3208538 on 2016/11/23 by Max.Chen
Actor Sequence: Fix plugin filename.
Change 3208916 on 2016/11/23 by Max.Chen
Sequencer: Fix material parameter initialization so that the value is retrieved from the material instance and not the parent material.
#jira UE-34317
Change 3208924 on 2016/11/23 by Max.Chen
Save As: Cancel should not save over the existing asset. It should just return.
Change 3208939 on 2016/11/23 by andrew.porter
QAGame: reset some content back to its default state for testing
Change 3209053 on 2016/11/23 by Max.Chen
Sequencer: Ensure the section id is unique.
Change 3209161 on 2016/11/23 by Max.Chen
Save As: Follow up fix for cancelling save as.
Change 3210540 on 2016/11/26 by Max.Preussner
WmfMedia: Reworked fallback stride calculations to fix issues with some exotic video formats
Change 3210546 on 2016/11/26 by Max.Preussner
WmfMedia: Fixed NV12 vertical buffer alignment
Change 3211567 on 2016/11/28 by Max.Preussner
Merging //UE4/Dev-Main to Dev-Sequencer (//UE4/Dev-Sequencer)
Step 1 of 2
Change 3212408 on 2016/11/28 by Max.Preussner
Fixed fallout from Dev-Main merge
Change 3212456 on 2016/11/28 by Max.Preussner
ActorSequenceEditor: Removed monolithic header dependencies
Change 3212562 on 2016/11/28 by Max.Preussner
ActorSequenceEditor: Removed monolithic header usage
Change 3212649 on 2016/11/28 by Max.Chen
Fix CIS
Change 3212671 on 2016/11/28 by Max.Chen
Sequencer: Add option to restore to the pre animated state.
#jira UE-38862
#2953
Change 3212672 on 2016/11/28 by Max.Chen
Sequencer: Select object binding node corresponding to selected components and vice versa (select components in level when object binding node is selected)
Change 3212673 on 2016/11/28 by Max.Chen
Sequencer: Follow-up fix for component keyframing - key area needs to be updated by component.
#jira UE-38649
Change 3212676 on 2016/11/28 by Max.Chen
Level Editor: PostEditMove should only be called on the actor if it is moved.
#jira UE-38646
Change 3212688 on 2016/11/29 by Max.Chen
Sequencer: Force refresh event parameters customization when struct contents change but not a full refresh when struct child contents change.
#jira UE-39094
Change 3212831 on 2016/11/29 by Andrew.Rodham
Disabled ActorSequenceEditor plugin by default while it's experimental
Change 3213219 on 2016/11/29 by Max.Preussner
AvfMedia: Added missing include
Change 3213333 on 2016/11/29 by Andrew.Rodham
Sequencer: Added the ability to override bindings when playing back a level sequence on a level sequence actor
#jira UETOOL-746
Change 3213905 on 2016/11/29 by Max.Preussner
More IWYU fixes for macOS
Change 3214203 on 2016/11/29 by Michael.Gay
Some demo files to test Sequencer timing.
Change 3214205 on 2016/11/29 by Max.Preussner
More IWYU fixes for macOS
Change 3214548 on 2016/11/29 by Max.Preussner
More IWYU fixes for macOS
Change 3214564 on 2016/11/29 by Max.Preussner
More IWYU fixes
Change 3214567 on 2016/11/29 by Max.Chen
More IWYU fixes for Win32
Change 3214573 on 2016/11/29 by Max.Preussner
More IWYU fixes
Change 3214576 on 2016/11/29 by Max.Preussner
More IWYU fixes
Change 3214621 on 2016/11/30 by Max.Preussner
Atrac9Decoder: Fixed log category declaration
Change 3214630 on 2016/11/30 by Max.Preussner
More IWYU fixes
Change 3214747 on 2016/11/30 by Andrew.Rodham
Sequencer: Fixed shadow variable
Change 3214957 on 2016/11/30 by Andrew.Rodham
Core: Changed Algo::Find to use TElementType
- This allows it to support c style arrays
Change 3215127 on 2016/11/30 by Andrew.Rodham
Sequencer: Made burn-in options and init settings instanced
- This ensures they work correctly when defined on archetypes and blueprints
#jira UE-38645
Change 3215754 on 2016/11/30 by Max.Chen
Sequencer: Fix skeletal animation track evaluating tracks in the wrong time space. Cache the evalulation time and weight value in each section's template and then execute with those values in the shared track's template.
#jira UE-39145
Change 3216603 on 2016/12/01 by Max.Chen
Sequencer: Set audio volume/pitch only if changed.
Change 3216613 on 2016/12/01 by Max.Chen
Sequencer: Add component selector when there are multiple components that have sockets. This fixes a crash when there are multiple components to attach to.
#jira UE-39167
Change 3217175 on 2016/12/01 by Max.Chen
Sequencer: Set skeletal animation track evaluation to be upper bound exclusive. This gives better behavior when two clips butt up against each other since the sections would overlap in time and evaluation would normalize they weighted contribution of each.
#jira UE-37184
Change 3217292 on 2016/12/01 by Max.Chen
Sequencer: Rework upgrading track rows to include overlapping sections. For skeletal animation sections, set weight values based on the evaluation bounds since there was no blending prior to 4.15.
Change 3217860 on 2016/12/01 by Max.Preussner
Media: Fall-through for media options
Change 3217965 on 2016/12/01 by Max.Preussner
MediaAssets: Renamed media option name
Change 3218470 on 2016/12/01 by Max.Chen
Sequencer: Fix start time deprecation value so that negative values are supported.
#jira UE-39259
Change 3218473 on 2016/12/01 by Max.Chen
Sequencer: Fix crash if start seq length is negative.
Change 3219021 on 2016/12/02 by Max.Chen
Sequencer: Add multiply and divide to transform box.
Change 3219374 on 2016/12/02 by Max.Chen
Sequencer: Teleport simulating components when moving them through the transform track. This fixes bugs with recording simulating actors (ie. vehicle game) where recorded actors don't playback with the recorded positions and there are warnings about attempting to move a fully simulated skeletal mesh.
#jira UE-38442, UE-38444, UE-38852
Change 3219638 on 2016/12/02 by Max.Preussner
Projects: Fixed error message
Change 3220584 on 2016/12/03 by Andrew.Rodham
Sequencer: Blueprint generated classes are now always removed from level sequences on load in the editor
- This ensures that old (and perhaps corrupt) BP generated classes are destroyed
#jira UE-39173
Change 3220585 on 2016/12/03 by Andrew.Rodham
Editor: Fix EditInstanceOnly properties that aren't variables on the generated class being editable in blueprints
Change 3220973 on 2016/12/04 by Max.Chen
Fix CIS
Change 3222833 on 2016/12/05 by Max.Chen
Sequencer: Fixed some recorded components not being generated.
#jira UE-34289
Change 3224450 on 2016/12/06 by Max.Chen
Sequencer: Fix convert spawnable to posessable. Logic for setting the parent was mistakenly removed in runtime eval.
#jira UE-39419
Change 3225301 on 2016/12/07 by Max.Preussner
AvfMedia: Added settings class
Change 3225304 on 2016/12/07 by Max.Preussner
Fixed typo
Change 3225723 on 2016/12/07 by Max.Preussner
Fixed typo.
Change 3225871 on 2016/12/07 by Max.Preussner
Forgot to check in
Change 3225932 on 2016/12/07 by Max.Preussner
Added missing header
Change 3226266 on 2016/12/07 by Max.Preussner
Media: Fixed various module dependencies
Change 3226451 on 2016/12/07 by Max.Preussner
Include fixes
Change 3226455 on 2016/12/07 by Max.Preussner
LevelSequence: Added missing include
Change 3227135 on 2016/12/08 by Max.Preussner
Merging //UE4/Dev-Main to Dev-Sequencer (//UE4/Dev-Sequencer)
Change 3227143 on 2016/12/08 by Max.Preussner
LevelSequencer: Added missing header
Change 3227731 on 2016/12/08 by Max.Preussner
LevelSequencer: Added missing include
Change 3228222 on 2016/12/08 by Max.Preussner
UBT: Fixed delay load library support for remote compilation to macOS
Change 3228266 on 2016/12/08 by Max.Preussner
PluginBrowser: Added missing includes
Change 3228755 on 2016/12/09 by Andrew.Rodham
Sequencer: Fixed copy-paste of event keys
- Also added a key-value iterator to TCurveInterface (both const and non-const)
#jira UE-39526
Change 3228777 on 2016/12/09 by Luke.Thatcher
[PLATFORM] [PS4] [!] Reimplement fixes from Fortnite for PS4 media framework in //UE4/Dev-Sequencer.
Based on Original CL 3227137
- Event callback from AvPlayer was enqueing the processing of events over to the player thread, so the "State" member of FPS4MediaPlayer doesn't get updated until the following frame. This breaks cases with multiple calls to SetRate within a single frame.
- Removed time check in FPS4MediavideoSampler::Tick. There are cases where the time check failed, even when a new frame was available from the AvPlayer libs. The video sampler now always calls sceAvPlayerGetVideoDataEx. This returns immediately if no frame data is available.
- FPS4MediaPlayer::Seek was failing if the video is in a playing/paused state. We now restart the stream if a seek command occurs after the video has stopped (e.g. due to EOF reached).
- Shared a single critical section between the FPS4MediaTracks, FPS4MediaVideoSampler and FPS4MediaPlayer objects. Fixes deadlocks between the decoder/player threads where each will be waiting on each others' critical section.
[~] Enabled debug warnings from AvPlayer library in non-shipping builds.
[~] Changed log levels of UE_LOGs to match their severity.
-------------------------
[!] Also, fixed rendering artifacts on videos using a cropping rectangle
- e.g. 1080p videos are actually decoded as 1920x1088, with an extra 8 pixels height, which contained garbage.
- We determine the final media texture size as the size of the cropping rectangle, and use modified UVs during the YCbCr->RGB converstion shader to do the mapping.
Change 3228793 on 2016/12/09 by Andrew.Rodham
Sequencer: Edits to actor sequences now correctly mark their parent blueprints for compilation
#jira UE-38723
Change 3228877 on 2016/12/09 by Luke.Thatcher
[PLATFORM] [PS4] [!] Fix track switching issues in PS4 media player.
- Sony's AvPlayer library does not support switching tracks (audio or video) on-the-fly after a stream has begun playback.
- The higher level UMediaPlayer enables track 0 automatically, which would be committed to the AvPlayer, and therefore lock out other streams.
- Actual track selection is now deferred until the stream is started, after which changing tracks is prohibited.
- Tracks must be selected before calling SetRate for the first time.
#jira UE-37225
Change 3229501 on 2016/12/09 by Max.Preussner
Media: Better display names for media player plug-ins
Change 3229515 on 2016/12/09 by Max.Preussner
MediaPlayerEditor: Sorting player plug-ins alphabetically; consistent display in both media player editor and media source customization
Change 3229716 on 2016/12/09 by andrew.porter
Adding PlayRate sequence to my dev folder
Change 3230554 on 2016/12/12 by Andrew.Rodham
Back out changelist 3220584
- Currently this causes actor instances to fail to load because they are instanced of dead classes. Need to think of a more robust solution here.
#jira UE-39398
Change 3230922 on 2016/12/12 by Max.Preussner
Merging //UE4/Dev-Main to Dev-Sequencer (//UE4/Dev-Sequencer)
Change 3232059 on 2016/12/12 by Max.Preussner
MediaUtils: Better error message for when no suitable media player plug-in was found
Change 3232097 on 2016/12/13 by Max.Preussner
Switch: Temp fix for borked folder name on case-sensitive platforms
Change 3232100 on 2016/12/13 by Max.Preussner
MediaAssets: Split up UMediaSource into UBaseMediaSource
Also added color space related properties
Change 3232101 on 2016/12/13 by Max.Preussner
Media: Started to implement support for color spaces
Change 3232119 on 2016/12/13 by Max.Preussner
MediaAssets: Fixed buffer not recreated if color space changed
Change 3232799 on 2016/12/13 by Max.Preussner
PS4Media: Fixed build
#jira UE-39706
Change 3233170 on 2016/12/13 by Max.Preussner
Merging //UE4/Dev-Main to Dev-Sequencer (//UE4/Dev-Sequencer)
Change 3233250 on 2016/12/13 by Max.Preussner
MediaPlayerEditor: Added separator in track menu
Change 3233309 on 2016/12/13 by andrew.porter
QAGame: Edited text render actors in QA-Media_TrackSwitch
Change 3233439 on 2016/12/13 by Chris.Babcock
Standardize Android media track DisplayName
Change 3233817 on 2016/12/13 by Chris.Babcock
Fix virtual keyboard EditableTextBox update when comitted text matches current text from change updates
#jira UE-39424
#ue4
#mobile
Change 3234421 on 2016/12/14 by Andrew.Rodham
Sequencer: Fixed nullptr crash
Change 3234423 on 2016/12/14 by Andrew.Rodham
Sequencer: Fixed incorrect copying of base-class from compiler rules
Change 3234429 on 2016/12/14 by Andrew.Rodham
Sequencer: Fixed empty space not being added between the last and penultimate segments when required
#jira UE-39442
Change 3234635 on 2016/12/14 by Max.Preussner
MediaAssets: Exposed UTexture properties in UMediaTexture
Change 3234681 on 2016/12/14 by Max.Preussner
MediaAssets: Made MediaTextureResources support -onethread
Change 3234878 on 2016/12/14 by Andrew.Rodham
Sequencer: Fixed crash with "Evaluate Sub Sequences in Isolation" enabled
- This occurred when there were tracks at the root level of the sub sequence, because it would incorrectly hash in the parent ID, rather than just using it directly
Change 3234901 on 2016/12/14 by Max.Preussner
MediaPlayerEditor: Detail customization improvements
Change 3235275 on 2016/12/14 by Chris.Babcock
Fix WMF stream ordering to match other players
#jira UE-39703
#ue4
#mediaframework
Change 3235390 on 2016/12/14 by Max.Preussner
DesktopPlatform: Added IniPlatformName to FPlatformInfo; fixed up indentation
Change 3235402 on 2016/12/14 by Max.Preussner
MediaAssets: Fixed platform player name overrides ignored in packaged builds (UE-39771)
#jira UE-39771
Change 3235667 on 2016/12/14 by Max.Preussner
Media: Moved enums into separate header file, so they can be shared
Change 3235984 on 2016/12/14 by Max.Preussner
Back out changelist 3235667
Change 3236040 on 2016/12/14 by Max.Preussner
Core: Added modulus operator to FTimespan
Change 3236139 on 2016/12/15 by Max.Preussner
Core: Added FTimespan::IsZero
Change 3236527 on 2016/12/15 by Max.Preussner
Fixed initialization order
Change 3237101 on 2016/12/15 by Andrew.Rodham
Sequencer: Skeletal animation and audio tracks now support multiple rows again.
- In practice there were too many edge-cases to account for whilst considering backwards compatability
- The impossible scenario was 2 sections on different rows, but evaluating nearest section - this cannot be represented as separate tracks.
- Reorganised animation runtime template to use execution tokens rather than ::Initialize to ensure that animation operates correctly on the first frame for spawned objects
#jira UE-39442
#jira UE-39725
Change 3237213 on 2016/12/15 by Andrew.Rodham
Sequencer: Fixed crash when setting event key properties
#jira UE-39347
Change 3237255 on 2016/12/15 by Chris.Babcock
Fix Multi with ETC2 and PVRTC selecting ES3.0 instead of 2.0
#jira UE-39839
#ue4
#android
Change 3237294 on 2016/12/15 by Andrew.Rodham
Sequencer: Fixed shadowed variable warnings
Change 3237366 on 2016/12/15 by Max.Preussner
Media: Removed color space changes; we'll do these in material graphs instead
Change 3237436 on 2016/12/15 by Andrew.Rodham
Sequencer: Fixed montages not being stopped for specific animation slots when animation sections were no longer evaluated
#jira UE-39847
Change 3237458 on 2016/12/15 by Andrew.Rodham
Sequencer: Always force regeneration of templates when PIE to eliminate the posibility of combining stale data
Change 3237516 on 2016/12/15 by Max.Preussner
Media: Attempting to fix Crash in fortnite just before exiting onboarding (UE-39841)
#jira UE-39841
Change 3237532 on 2016/12/15 by Max.Preussner
Added missing scope lock
Change 3237991 on 2016/12/16 by Max.Preussner
PS4Media: Fixed build
[CL 3238204 by Max Preussner in Main branch]
2016-12-16 11:17:44 -05:00
# include "LayoutExtender.h"
2015-08-10 06:18:37 -04:00
# include "HierarchicalLODOutlinerModule.h"
2015-01-26 19:12:24 -05:00
2014-03-14 14:13:41 -04:00
static const FName LevelEditorBuildAndSubmitTab ( " LevelEditorBuildAndSubmit " ) ;
static const FName LevelEditorStatsViewerTab ( " LevelEditorStatsViewer " ) ;
static const FName MainFrameModuleName ( " MainFrame " ) ;
static const FName LevelEditorModuleName ( " LevelEditor " ) ;
2014-05-14 02:16:14 -04:00
static const FName WorldBrowserHierarchyTab ( " WorldBrowserHierarchy " ) ;
static const FName WorldBrowserDetailsTab ( " WorldBrowserDetails " ) ;
static const FName WorldBrowserCompositionTab ( " WorldBrowserComposition " ) ;
2014-03-14 14:13:41 -04:00
2014-04-23 19:04:54 -04:00
2014-03-14 14:13:41 -04:00
namespace LevelEditorConstants
{
/** The size of the thumbnail pool */
const int32 ThumbnailPoolSize = 32 ;
}
SLevelEditor : : SLevelEditor ( )
: World ( NULL )
{
const bool bAreRealTimeThumbnailsAllowed = false ;
ThumbnailPool = MakeShareable ( new FAssetThumbnailPool ( LevelEditorConstants : : ThumbnailPoolSize , bAreRealTimeThumbnailsAllowed ) ) ;
}
void SLevelEditor : : BindCommands ( )
{
LevelEditorCommands = MakeShareable ( new FUICommandList ) ;
const FLevelEditorCommands & Actions = FLevelEditorCommands : : Get ( ) ;
// Map UI commands to delegates that are executed when the command is handled by a keybinding or menu
FLevelEditorModule & LevelEditorModule = FModuleManager : : GetModuleChecked < FLevelEditorModule > ( LevelEditorModuleName ) ;
// Append the list of the level editor commands for this instance with the global list of commands for all instances.
LevelEditorCommands - > Append ( LevelEditorModule . GetGlobalLevelEditorActions ( ) ) ;
// Append the list of global PlayWorld commands
LevelEditorCommands - > Append ( FPlayWorldCommands : : GlobalPlayWorldActions . ToSharedRef ( ) ) ;
LevelEditorCommands - > MapAction (
Actions . EditAssetNoConfirmMultiple ,
FExecuteAction : : CreateStatic ( & FLevelEditorActionCallbacks : : EditAsset_Clicked , EToolkitMode : : Standalone , TWeakPtr < SLevelEditor > ( SharedThis ( this ) ) , false ) ) ;
LevelEditorCommands - > MapAction (
Actions . EditAsset ,
FExecuteAction : : CreateStatic ( & FLevelEditorActionCallbacks : : EditAsset_Clicked , EToolkitMode : : Standalone , TWeakPtr < SLevelEditor > ( SharedThis ( this ) ) , true ) ) ;
2014-09-16 10:40:34 -04:00
LevelEditorCommands - > MapAction (
Actions . CheckOutProjectSettingsConfig ,
FExecuteAction : : CreateStatic ( & FLevelEditorActionCallbacks : : CheckOutProjectSettingsConfig ) ) ;
2014-03-14 14:13:41 -04:00
LevelEditorCommands - > MapAction (
Actions . OpenLevelBlueprint ,
FExecuteAction : : CreateStatic < TWeakPtr < SLevelEditor > > ( & FLevelEditorActionCallbacks : : OpenLevelBlueprint , SharedThis ( this ) ) ) ;
LevelEditorCommands - > MapAction (
2015-02-16 08:24:55 -05:00
Actions . CreateBlankBlueprintClass ,
FExecuteAction : : CreateStatic ( & FLevelEditorActionCallbacks : : CreateBlankBlueprintClass ) ) ;
LevelEditorCommands - > MapAction (
Actions . ConvertSelectionToBlueprintViaHarvest ,
FExecuteAction : : CreateStatic ( & FLevelEditorActionCallbacks : : HarvestSelectedActorsIntoBlueprintClass ) ,
FCanExecuteAction : : CreateStatic ( & FLevelEditorActionCallbacks : : CanHarvestSelectedActorsIntoBlueprintClass ) ) ;
LevelEditorCommands - > MapAction (
Actions . ConvertSelectionToBlueprintViaSubclass ,
FExecuteAction : : CreateStatic ( & FLevelEditorActionCallbacks : : SubclassSelectedActorIntoBlueprintClass ) ,
FCanExecuteAction : : CreateStatic ( & FLevelEditorActionCallbacks : : CanSubclassSelectedActorIntoBlueprintClass ) ) ;
2014-03-14 14:13:41 -04:00
LevelEditorCommands - > MapAction (
Actions . OpenContentBrowser ,
FExecuteAction : : CreateStatic ( & FLevelEditorActionCallbacks : : OpenContentBrowser ) ) ;
LevelEditorCommands - > MapAction (
Actions . OpenMarketplace ,
FExecuteAction : : CreateStatic ( & FLevelEditorActionCallbacks : : OpenMarketplace ) ) ;
2016-03-11 17:29:00 -05:00
LevelEditorCommands - > MapAction (
Actions . ToggleVR ,
2016-04-06 09:43:41 -04:00
FExecuteAction : : CreateStatic ( & FLevelEditorActionCallbacks : : ToggleVR ) ,
FCanExecuteAction : : CreateStatic ( & FLevelEditorActionCallbacks : : ToggleVR_CanExecute ) ,
2017-03-09 16:53:09 -05:00
FIsActionChecked : : CreateStatic ( & FLevelEditorActionCallbacks : : ToggleVR_IsChecked ) ) ;
2016-03-11 17:29:00 -05:00
2014-03-14 14:13:41 -04:00
LevelEditorCommands - > MapAction (
Actions . WorldProperties ,
FExecuteAction : : CreateStatic < TWeakPtr < SLevelEditor > > ( & FLevelEditorActionCallbacks : : OnShowWorldProperties , SharedThis ( this ) ) ) ;
LevelEditorCommands - > MapAction (
Actions . FocusAllViewportsToSelection ,
FExecuteAction : : CreateStatic ( & FLevelEditorActionCallbacks : : ExecuteExecCommand , FString ( TEXT ( " CAMERA ALIGN " ) ) )
) ;
}
void SLevelEditor : : Construct ( const SLevelEditor : : FArguments & InArgs )
{
2014-06-17 07:35:57 -04:00
// Important: We use raw bindings here because we are releasing our binding in our destructor (where a weak pointer would be invalid)
// It's imperative that our delegate is removed in the destructor for the level editor module to play nicely with reloading.
2014-03-14 14:13:41 -04:00
2014-06-17 07:35:57 -04:00
FLevelEditorModule & LevelEditorModule = FModuleManager : : GetModuleChecked < FLevelEditorModule > ( LevelEditorModuleName ) ;
LevelEditorModule . OnNotificationBarChanged ( ) . AddRaw ( this , & SLevelEditor : : ConstructNotificationBar ) ;
GetMutableDefault < UEditorExperimentalSettings > ( ) - > OnSettingChanged ( ) . AddRaw ( this , & SLevelEditor : : HandleExperimentalSettingChanged ) ;
2014-03-14 14:13:41 -04:00
BindCommands ( ) ;
// We need to register when modes list changes so that we can refresh the auto generated commands.
2014-06-18 10:16:16 -04:00
FEditorModeRegistry : : Get ( ) . OnRegisteredModesChanged ( ) . AddRaw ( this , & SLevelEditor : : RefreshEditorModeCommands ) ;
2014-03-14 14:13:41 -04:00
// @todo This is a hack to get this working for now. This won't work with multiple worlds
GEditor - > GetEditorWorldContext ( true ) . AddRef ( World ) ;
2014-06-17 07:35:57 -04:00
FEditorDelegates : : MapChange . AddRaw ( this , & SLevelEditor : : HandleEditorMapChange ) ;
2014-03-14 14:13:41 -04:00
HandleEditorMapChange ( MapChangeEventFlags : : NewMap ) ;
}
void SLevelEditor : : Initialize ( const TSharedRef < SDockTab > & OwnerTab , const TSharedRef < SWindow > & OwnerWindow )
{
// Bind the level editor tab's label to the currently loaded level name string in the main frame
OwnerTab - > SetLabel ( TAttribute < FText > ( this , & SLevelEditor : : GetTabTitle ) ) ;
2015-01-06 13:49:19 -05:00
FLevelEditorModule & LevelEditorModule = FModuleManager : : GetModuleChecked < FLevelEditorModule > ( LevelEditorModuleName ) ;
LevelEditorModule . OnActorSelectionChanged ( ) . AddSP ( this , & SLevelEditor : : OnActorSelectionChanged ) ;
2014-03-14 14:13:41 -04:00
TSharedRef < SWidget > Widget2 = RestoreContentArea ( OwnerTab , OwnerWindow ) ;
TSharedRef < SWidget > Widget1 = FLevelEditorMenu : : MakeLevelEditorMenu ( LevelEditorCommands , SharedThis ( this ) ) ;
ChildSlot
[
SNew ( SVerticalBox )
+ SVerticalBox : : Slot ( )
. AutoHeight ( )
[
SNew ( SOverlay )
+ SOverlay : : Slot ( )
[
2014-08-05 09:04:35 -04:00
SNew ( SBox )
2014-09-05 07:39:52 -04:00
. AddMetaData < FTagMetaData > ( FTagMetaData ( TEXT ( " MainMenu " ) ) )
2014-03-14 14:13:41 -04:00
[
Widget1
]
]
2014-07-23 09:04:48 -04:00
// For platforms without a global menu bar we can put the perf. tools in the editor window's menu bar
# if !PLATFORM_MAC
2014-03-14 14:13:41 -04:00
+ SOverlay : : Slot ( )
. HAlign ( HAlign_Right )
[
2014-08-05 09:04:35 -04:00
SAssignNew ( NotificationBarBox , SHorizontalBox )
2014-09-05 07:39:52 -04:00
. AddMetaData < FTagMetaData > ( FTagMetaData ( TEXT ( " PerformanceTools " ) ) )
2014-03-14 14:13:41 -04:00
]
2014-07-23 09:04:48 -04:00
# endif
2014-03-14 14:13:41 -04:00
]
2015-01-21 10:55:23 -05:00
# if PLATFORM_MAC
// Without the in-window menu bar, we need some space between the tab bar and tab contents
+ SVerticalBox : : Slot ( )
. AutoHeight ( )
[
SNew ( SBox )
. HeightOverride ( 1.0f )
]
# endif
2014-03-14 14:13:41 -04:00
+ SVerticalBox : : Slot ( )
. FillHeight ( 1.0f )
[
Widget2
]
] ;
2014-07-23 09:04:48 -04:00
// For OS X we need to put it into the window's title bar since there's no per-window menu bar
2014-08-05 09:04:35 -04:00
# if PLATFORM_MAC
OwnerTab - > SetRightContent (
2014-07-23 09:04:48 -04:00
SAssignNew ( NotificationBarBox , SHorizontalBox )
2014-09-05 07:39:52 -04:00
. AddMetaData < FTagMetaData > ( FTagMetaData ( TEXT ( " PerformanceTools " ) ) )
2014-08-05 09:04:35 -04:00
) ;
2014-07-23 09:04:48 -04:00
# endif
2014-03-14 14:13:41 -04:00
ConstructNotificationBar ( ) ;
OnLayoutHasChanged ( ) ;
}
void SLevelEditor : : ConstructNotificationBar ( )
{
NotificationBarBox - > ClearChildren ( ) ;
2014-04-23 19:04:54 -04:00
// level editor commands
2014-03-14 14:13:41 -04:00
NotificationBarBox - > AddSlot ( )
2014-04-23 19:04:54 -04:00
. AutoWidth ( )
. Padding ( 5.0f , 0.0f , 0.0f , 0.0f )
[
FLevelEditorMenu : : MakeNotificationBar ( LevelEditorCommands , SharedThis ( this ) )
] ;
// developer tools
const IMainFrameModule & MainFrameModule = FModuleManager : : GetModuleChecked < IMainFrameModule > ( MainFrameModuleName ) ;
NotificationBarBox - > AddSlot ( )
. AutoWidth ( )
. Padding ( 5.0f , 0.0f , 0.0f , 0.0f )
[
MainFrameModule . MakeDeveloperTools ( )
] ;
2014-03-14 14:13:41 -04:00
}
SLevelEditor : : ~ SLevelEditor ( )
{
// We're going away now, so make sure all toolkits that are hosted within this level editor are shut down
FToolkitManager : : Get ( ) . OnToolkitHostDestroyed ( this ) ;
HostedToolkits . Reset ( ) ;
FLevelEditorModule & LevelEditorModule = FModuleManager : : GetModuleChecked < FLevelEditorModule > ( LevelEditorModuleName ) ;
LevelEditorModule . OnNotificationBarChanged ( ) . RemoveAll ( this ) ;
GetMutableDefault < UEditorExperimentalSettings > ( ) - > OnSettingChanged ( ) . RemoveAll ( this ) ;
2015-04-20 10:12:55 -04:00
GetMutableDefault < UEditorPerProjectUserSettings > ( ) - > OnUserSettingChanged ( ) . RemoveAll ( this ) ;
2014-06-18 10:16:16 -04:00
FEditorModeRegistry : : Get ( ) . OnRegisteredModesChanged ( ) . RemoveAll ( this ) ;
2014-03-14 14:13:41 -04:00
FEditorDelegates : : MapChange . RemoveAll ( this ) ;
GEditor - > GetEditorWorldContext ( true ) . RemoveRef ( World ) ;
}
FText SLevelEditor : : GetTabTitle ( ) const
{
const IMainFrameModule & MainFrameModule = FModuleManager : : GetModuleChecked < IMainFrameModule > ( MainFrameModuleName ) ;
const bool bIncludeGameName = false ;
2014-07-23 09:04:48 -04:00
const bool bDirtyState = World & & World - > GetCurrentLevel ( ) - > GetOutermost ( ) - > IsDirty ( ) ;
2014-03-14 14:13:41 -04:00
FFormatNamedArguments Args ;
Args . Add ( TEXT ( " LevelName " ) , FText : : FromString ( MainFrameModule . GetLoadedLevelName ( ) ) ) ;
Args . Add ( TEXT ( " DirtyState " ) , bDirtyState ? FText : : FromString ( TEXT ( " * " ) ) : FText : : GetEmpty ( ) ) ;
return FText : : Format ( NSLOCTEXT ( " LevelEditor " , " TabTitleSpacer " , " {LevelName}{DirtyState} " ) , Args ) ;
}
bool SLevelEditor : : HasActivePlayInEditorViewport ( ) const
{
// Search through all current viewport layouts
for ( int32 TabIndex = 0 ; TabIndex < ViewportTabs . Num ( ) ; + + TabIndex )
{
TWeakPtr < FLevelViewportTabContent > ViewportTab = ViewportTabs [ TabIndex ] ;
if ( ViewportTab . IsValid ( ) )
{
// Get all the viewports in the layout
2016-02-08 13:35:28 -05:00
const TMap < FName , TSharedPtr < IViewportLayoutEntity > > * LevelViewports = ViewportTab . Pin ( ) - > GetViewports ( ) ;
2014-03-14 14:13:41 -04:00
if ( LevelViewports ! = NULL )
{
// Search for a viewport with a pie session
2016-02-08 13:35:28 -05:00
for ( auto & Pair : * LevelViewports )
2014-03-14 14:13:41 -04:00
{
2016-02-08 13:35:28 -05:00
if ( Pair . Value - > IsPlayInEditorViewportActive ( ) )
2014-03-14 14:13:41 -04:00
{
return true ;
}
}
}
}
}
2016-03-11 17:29:00 -05:00
// Also check standalone viewports
for ( const TWeakPtr < SLevelViewport > & StandaloneViewportWeakPtr : StandaloneViewports )
{
const TSharedPtr < SLevelViewport > Viewport = StandaloneViewportWeakPtr . Pin ( ) ;
if ( Viewport . IsValid ( ) )
{
if ( Viewport - > IsPlayInEditorViewportActive ( ) )
{
return true ;
}
}
}
2014-03-14 14:13:41 -04:00
return false ;
}
TSharedPtr < SLevelViewport > SLevelEditor : : GetActiveViewport ( )
{
// The first visible viewport
TSharedPtr < SLevelViewport > FirstVisibleViewport ;
// Search through all current viewport tabs
for ( int32 TabIndex = 0 ; TabIndex < ViewportTabs . Num ( ) ; + + TabIndex )
{
TSharedPtr < FLevelViewportTabContent > ViewportTab = ViewportTabs [ TabIndex ] . Pin ( ) ;
if ( ViewportTab . IsValid ( ) )
{
// Only check the viewports in the tab if its visible
if ( ViewportTab - > IsVisible ( ) )
{
2016-02-08 13:35:28 -05:00
const TMap < FName , TSharedPtr < IViewportLayoutEntity > > * LevelViewports = ViewportTab - > GetViewports ( ) ;
2014-03-14 14:13:41 -04:00
if ( LevelViewports ! = NULL )
{
2016-02-08 13:35:28 -05:00
for ( auto & Pair : * LevelViewports )
2014-03-14 14:13:41 -04:00
{
2016-02-08 13:35:28 -05:00
TSharedPtr < SLevelViewport > Viewport = Pair . Value - > AsLevelViewport ( ) ;
if ( Viewport . IsValid ( ) & & Viewport - > IsInForegroundTab ( ) )
2014-03-14 14:13:41 -04:00
{
if ( & Viewport - > GetLevelViewportClient ( ) = = GCurrentLevelEditingViewportClient )
{
// If the viewport is visible and is also the current level editing viewport client
// return it as the active viewport
return Viewport ;
}
else if ( ! FirstVisibleViewport . IsValid ( ) )
{
// If there is no current first visible viewport set it now
// We will return this viewport if the current level editing viewport client is not visible
FirstVisibleViewport = Viewport ;
}
}
}
}
}
}
}
2016-03-11 17:29:00 -05:00
// Also check standalone viewports
for ( const TWeakPtr < SLevelViewport > & StandaloneViewportWeakPtr : StandaloneViewports )
{
const TSharedPtr < SLevelViewport > Viewport = StandaloneViewportWeakPtr . Pin ( ) ;
if ( Viewport . IsValid ( ) )
{
if ( & Viewport - > GetLevelViewportClient ( ) = = GCurrentLevelEditingViewportClient )
{
// If the viewport is visible and is also the current level editing viewport client
// return it as the active viewport
return Viewport ;
}
else if ( ! FirstVisibleViewport . IsValid ( ) )
{
// If there is no current first visible viewport set it now
// We will return this viewport if the current level editing viewport client is not visible
FirstVisibleViewport = Viewport ;
}
}
}
2014-03-14 14:13:41 -04:00
// Return the first visible viewport if we found one. This can be null if we didn't find any visible viewports
return FirstVisibleViewport ;
}
TSharedRef < SWidget > SLevelEditor : : GetParentWidget ( )
{
return AsShared ( ) ;
}
void SLevelEditor : : BringToFront ( )
{
FLevelEditorModule & LevelEditorModule = FModuleManager : : GetModuleChecked < FLevelEditorModule > ( LevelEditorModuleName ) ;
TSharedPtr < SDockTab > LevelEditorTab = LevelEditorModule . GetLevelEditorInstanceTab ( ) . Pin ( ) ;
TSharedPtr < FTabManager > LevelEditorTabManager = LevelEditorModule . GetLevelEditorTabManager ( ) ;
if ( LevelEditorTabManager . IsValid ( ) & & LevelEditorTab . IsValid ( ) )
{
LevelEditorTabManager - > DrawAttention ( LevelEditorTab . ToSharedRef ( ) ) ;
}
}
TSharedRef < SDockTabStack > SLevelEditor : : GetTabSpot ( const EToolkitTabSpot : : Type TabSpot )
{
ensureMsgf ( false , TEXT ( " Unimplemented " ) ) ;
return TSharedPtr < SDockTabStack > ( ) . ToSharedRef ( ) ;
}
void SLevelEditor : : OnToolkitHostingStarted ( const TSharedRef < class IToolkit > & Toolkit )
{
// @todo toolkit minor: We should consider only allowing a single toolkit for a specific asset editor type hosted
// at once. OR, we allow multiple to be hosted, but we only show tabs for one at a time (fast switching.)
// Otherwise, it's going to be a huge cluster trying to distinguish tabs for different assets of the same type
// of editor
TSharedPtr < FTabManager > LevelEditorTabManager = GetTabManager ( ) ;
HostedToolkits . Add ( Toolkit ) ;
Toolkit - > RegisterTabSpawners ( LevelEditorTabManager . ToSharedRef ( ) ) ;
// @todo toolkit minor: We should clean out old invalid array entries from time to time
// Tell all of the toolkit area widgets about the new toolkit
for ( auto ToolBoxIt = ToolBoxTabs . CreateIterator ( ) ; ToolBoxIt ; + + ToolBoxIt )
{
if ( ToolBoxIt - > IsValid ( ) )
{
ToolBoxIt - > Pin ( ) - > OnToolkitHostingStarted ( Toolkit ) ;
}
}
// Tell all of the toolkit area widgets about the new toolkit
for ( auto ToolBoxIt = ModesTabs . CreateIterator ( ) ; ToolBoxIt ; + + ToolBoxIt )
{
if ( ToolBoxIt - > IsValid ( ) )
{
ToolBoxIt - > Pin ( ) - > OnToolkitHostingStarted ( Toolkit ) ;
}
}
}
void SLevelEditor : : OnToolkitHostingFinished ( const TSharedRef < class IToolkit > & Toolkit )
{
TSharedPtr < FTabManager > LevelEditorTabManager = GetTabManager ( ) ;
Toolkit - > UnregisterTabSpawners ( LevelEditorTabManager . ToSharedRef ( ) ) ;
// Tell all of the toolkit area widgets that our toolkit was removed
for ( auto ToolBoxIt = ToolBoxTabs . CreateIterator ( ) ; ToolBoxIt ; + + ToolBoxIt )
{
if ( ToolBoxIt - > IsValid ( ) )
{
ToolBoxIt - > Pin ( ) - > OnToolkitHostingFinished ( Toolkit ) ;
}
}
// Tell all of the toolkit area widgets that our toolkit was removed
for ( auto ToolBoxIt = ModesTabs . CreateIterator ( ) ; ToolBoxIt ; + + ToolBoxIt )
{
if ( ToolBoxIt - > IsValid ( ) )
{
ToolBoxIt - > Pin ( ) - > OnToolkitHostingFinished ( Toolkit ) ;
}
}
HostedToolkits . Remove ( Toolkit ) ;
// @todo toolkit minor: If user clicks X on all opened world-centric toolkit tabs, should we exit that toolkit automatically?
// Feel 50/50 about this. It's totally valid to use the "Save" menu even after closing tabs, etc. Plus, you can spawn the tabs back up using the tab area down-down menu.
}
Copying //UE4/Dev-Framework to //UE4/Dev-Main (Source: //UE4/Dev-Framework @ 3293188)
#rb none
#lockdown Nick.Penwarden
==========================
MAJOR FEATURES + CHANGES
==========================
Change 3203880 on 2016/11/18 by Ori.Cohen
Copying //UE4/Dev-Physics-Upgrade to Dev-Framework (//UE4/Dev-Framework)
Change 3207429 on 2016/11/22 by Marc.Audy
Merging //UE4/Dev-Main to Dev-Framework (//UE4/Dev-Framework) @ 3207285
Change 3252627 on 2017/01/10 by Lukasz.Furman
removed duplicated entries from visual logger shape rendering
#ue4
Change 3252675 on 2017/01/10 by Ori.Cohen
Add support for tagged memory regions (Copying //Tasks/UE4/Dev-ImmediateModePhysics to Dev-Framework (//UE4/Dev-Framework))
Change 3252686 on 2017/01/10 by Ori.Cohen
Refactor BodySetup to make it easier to reuse shape creation (Copying //Tasks/UE4/Dev-ImmediateModePhysics to Dev-Framework (//UE4/Dev-Framework))
Change 3252833 on 2017/01/10 by Ori.Cohen
Refactor constraint so that it can be used for external solvers. (Copying //Tasks/UE4/Dev-ImmediateModePhysics to Dev-Framework (//UE4/Dev-Framework))
Change 3252887 on 2017/01/10 by Dan.Reynolds
Increased modes to include:
Harmonic minor
Melodic minor (going up)
Pentatonic (Major)
Pentatonic (minor)
Whole Tone
Diminished (WH)
and Blues
Change 3252895 on 2017/01/10 by Aaron.McLeran
update to music utilities.
Change 3253060 on 2017/01/10 by Aaron.McLeran
Updates to synthesis plugin and some new features to DSP objects
Change 3253061 on 2017/01/10 by Aaron.McLeran
Updates to music maps
Change 3253078 on 2017/01/10 by Aaron.McLeran
Removing pragma optimization code accidentally checked in
Change 3253110 on 2017/01/10 by Ori.Cohen
First iteration of immediate mode ragdoll node (Copying //Tasks/UE4/Dev-ImmediateModePhysics to Dev-Framework (//UE4/Dev-Framework))
Change 3253315 on 2017/01/10 by Aaron.McLeran
Fixing a few bugs in DSP objects
- Added a new types file EpicSynth1 and EpicSynth1 component can share enums
Change 3253577 on 2017/01/11 by Aaron.McLeran
Checking in updates to assets for music -- celestial manager for rotating objects like planets, new ambient map
Change 3254052 on 2017/01/11 by Ori.Cohen
Fix build.
Change 3254059 on 2017/01/11 by Ori.Cohen
Turn off html5 trying to build apex.
Change 3254095 on 2017/01/11 by Ori.Cohen
Fix build
Change 3254200 on 2017/01/11 by Jon.Nabozny
Make vectorized FTransform Accumulate (with blend) and AccumulateWithAdditive (with blend) consistent with the non-vectorized version and comments.
#JIRA UE-40469
Change 3254334 on 2017/01/11 by Marc.Audy
Put in missing virtual
Change 3254397 on 2017/01/11 by dan.reynolds
Updates to OtonOkeMap
Change 3254410 on 2017/01/11 by Marc.Audy
Cleanup autos
Change 3254420 on 2017/01/11 by Marc.Audy
PR #3110: Add missing IsInAudioThread check (Contributed by projectgheist)
Modified somewhat, but based on what PR indicated as a problem.
#jira UE-40369
Change 3254423 on 2017/01/11 by Marc.Audy
Optimize GetDefaultSubobjectByName and GetDefaultSubobjects
Remove autos
Change 3254826 on 2017/01/11 by Aaron.McLeran
Bringing optimizations to dev-framework
Change 3254831 on 2017/01/11 by dan.reynolds
Modified MidiSynthTestBP to use Program Change events to pull a Preset from a Preset Bank--added a Data Blueprint Object ES1Bank_Default (containing Preset arrays) with children classes for different classifications of Presets.
Change 3254833 on 2017/01/11 by dan.reynolds
Updating MidiSynthTestBP's default SynthPreset pan value.
Change 3254851 on 2017/01/11 by dan.reynolds
Updating ES1Bank_Bass
Updating OtonOkeMap
Change 3254854 on 2017/01/11 by Aaron.McLeran
Some fixups for pan modulation
Change 3255682 on 2017/01/12 by aaron.mcleran
Turning the bass down a bit on OtonOkeMap
Change 3255721 on 2017/01/12 by Marc.Audy
Fix spelling error
Change 3255790 on 2017/01/12 by Marc.Audy
Copying //UE4/Dev-Physics-Upgrade to Dev-Framework (//UE4/Dev-Framework)
Change 3256263 on 2017/01/12 by Ori.Cohen
Refactor immediate mode api to take PxD6Joint and PxRigidActor instead.
Change 3256288 on 2017/01/12 by Ori.Cohen
Undo constraint refactor as we found a way around it and it made the code much harder to read/debug
Change 3256360 on 2017/01/12 by Ori.Cohen
Make sure physx actors passed into immediate mode are done so with proper locks (can probably improve this in the case where the actor is not even in the scene)
Change 3256846 on 2017/01/13 by Marc.Audy
Deprecate FBox/FBox2D int32 constructor because it makes no sense if you pass in a non 0 value. Use ForceInit instead.
Change 3256954 on 2017/01/13 by Marc.Audy
Fix missed fixup of deprecated constructor use
Change 3257167 on 2017/01/13 by Jon.Nabozny
Fix check in FBodyInstance::SetCollisionEnabled.
Create convenience methods for HasPhysics and HasQuery.
#jira UE-39633
Change 3257181 on 2017/01/13 by Zak.Parrish
Adding input map and some testing content to Xenakis
Change 3257183 on 2017/01/13 by Mieszko.Zielinski
Implemented an improved navigation projection BP function that retrieves both projected locaiton as well as a boolean indicating if the projection succeeded #UE4
Also, did similar changes to GetRandomReachablePointInRadius and GetRandomPointInNavigableRadius
#jira UE-40368
Change 3257211 on 2017/01/13 by Jon.Nabozny
Fix CIS issue caused by 3257167.
Change 3257220 on 2017/01/13 by Marc.Audy
Additional FBox constructor deprecation fixups
Change 3257236 on 2017/01/13 by zak.parrish
Fixed error on Xenakis input pawn
Change 3257242 on 2017/01/13 by zak.parrish
Update to InputListener
Change 3257273 on 2017/01/13 by Marc.Audy
No reason to pass simple types by reference
Change 3257418 on 2017/01/13 by Ori.Cohen
Attempt to turn android physx libs back to static libs.
Change 3257445 on 2017/01/13 by Ori.Cohen
Turn android libs back to OBJ and removed unreal side linking as it seems we are now just merging into a single physx lib
Change 3257903 on 2017/01/14 by Aaron.McLeran
Additions to synth module and updates to dsp objects
- Adding ability to create arbitrary modular patches from modulating sources to modulation destinations
- DSP objects define their default depths but patches can override
- Creating new SynthesisEditor module for synthesis plugin so we can create synthesis preset assets
- Adding a preset bank type so we can store a bank of presets (aka factory presets)
Change 3258179 on 2017/01/15 by Seth.Weedin
Duplicating input test map for some FX work
Change 3258181 on 2017/01/15 by Seth.Weedin
Modify skybox in test map to be dark and spooky
Change 3258183 on 2017/01/15 by aaron.johnson
substituted classes, changed wind speed and adjusted level lighting
Change 3258190 on 2017/01/15 by aaron.johnson
substituted triplet pawn and motion controller classes, enabled grabbing animations
Change 3258191 on 2017/01/15 by Aaron.McLeran
Getting source effects working for GDC demo
- Added new synthesis editor module to create instances of user-created source effects
- Added code to do source effects
- Modified old design to a newer, more simpler design for calling into client code to set parameters. No longer using the complex struct reflection design and instead just pass in the uobject preset the user created. They'll then cast it to the type that has the actual settings.
- Tweaks and fixes to existing dsp objects to get source effects working
- Modified existing engine code to allow for playing out source effect tails
- Only supporting mono and stereo assets for source effect processing. Multi-channel effect processing is overly complex for this feature though we may extend the capabilities in the future.
- Fixed issue of pitching with stereo delay effect on setting first interpolated param
- Moving synth/dsp stuff in synthesis plugins into appropriate public/private folders in plugin/module
- Deleting some cruft files no longer needed
Change 3258201 on 2017/01/15 by Seth.Weedin
C++ and BP classes for managing grid cells. Initial grid mapping tests. #rb none
Change 3258206 on 2017/01/15 by aaron.johnson
map push, triplets interface created, debug widget placed in level
Change 3258222 on 2017/01/15 by Aaron.McLeran
Fixing crash when there's a null entry in the source effect chain
Fixed some zippering introduced by applying volume twice.
Change 3258225 on 2017/01/15 by aaron.johnson
Interface changes, pawn output values wip
Change 3258228 on 2017/01/15 by aaron.johnson
Pawn should be outputting all correct values for Tripletsinterface
Change 3258242 on 2017/01/15 by Stanley.Hayes
Edge lights and Spherical Density Materials
Change 3258251 on 2017/01/16 by Seth.Weedin
More progress on grid FX. Add curve strength modifiers, begin hooking up interaction. #rb none
Change 3258284 on 2017/01/16 by Aaron.McLeran
Fixing CIS build error
Surprised that MSVC allows that...
Change 3258525 on 2017/01/16 by Mieszko.Zielinski
Made UGameplayTask::ResourceOverlapPolicy configurable via ini files #UE4
Change 3258537 on 2017/01/16 by Lukasz.Furman
fixed duplicated & undo operations not updating navigation area in nav link proxy and nav link component
#ue4
Change 3258595 on 2017/01/16 by Marc.Audy
Fix static analysis warning
Change 3259364 on 2017/01/16 by Mieszko.Zielinski
BTTask_RotateToFaceBBEntry comment spelling fix #UE4
#jira UE-40669
Change 3259683 on 2017/01/16 by dan.reynolds
Updated Preset Bank System implemented in MidiSynthTestBP and 4 Preset Banks have been started
Change 3260244 on 2017/01/17 by Lina.Halper
#anim
- optimize layer blend node to not create mask weights in run-time but in compile time.
#code review: Martin.Wilson
Change 3260617 on 2017/01/17 by Ori.Cohen
Immediate mode spawns its own actors.
Change 3260701 on 2017/01/17 by Ori.Cohen
Don't bother blending physics with animation when physics is QueryOnly
Change 3260796 on 2017/01/17 by Ori.Cohen
EndPhysics tick will no longer be scheduled if QueryOnly is used on a ragdoll.
Change 3261207 on 2017/01/17 by Ori.Cohen
First iteration of contact enabling/disabling for immediate mode.
Change 3262010 on 2017/01/18 by Marc.Audy
Remove some autos
Change 3262525 on 2017/01/18 by Lina.Halper
Fix crash with required bones index not using property indexing
#jira: UE-40786
Change 3263658 on 2017/01/19 by Martin.Wilson
Add AnimTechDemo to dev-framework (base third person + feng mao)
Change 3263684 on 2017/01/19 by Lina.Halper
#anim : layer node - fix allocation change I made by mistake
Change 3264523 on 2017/01/19 by Ori.Cohen
Immediate mode can now add static geometry it finds in the world. Also improve contact gen by caching iteration order
Change 3264701 on 2017/01/19 by Ori.Cohen
Make it so that immediate mode ragdolls collide with the ground in persona.This is a bit of an editor only hack which allows immediate mode to find non-static actors
Change 3264980 on 2017/01/19 by Ori.Cohen
Make sure physics asset collision disabled works in immediate mode.
Change 3265011 on 2017/01/19 by Ori.Cohen
Added the ability to override physics asset for immediate mode
Change 3265030 on 2017/01/19 by Ori.Cohen
Added override gravity for immediate mode.
Change 3265650 on 2017/01/20 by Benn.Gallagher
NvCloth Source
Change 3265652 on 2017/01/20 by Benn.Gallagher
NvCloth Lib
#rnx
Change 3265653 on 2017/01/20 by Benn.Gallagher
NvCloth Bin
#rnx
Change 3266195 on 2017/01/20 by Danny.Bouimad
Initial ClothTest Assets for NCloth Before and after comparison TM-MultiClothTest (Under Maps>Framework>Cloth)
Change 3266377 on 2017/01/20 by Marc.Audy
Ensure that OrphanedDataOnly and TrashClass blueprint generated classes are correctly considered a blueprint class for disregard for GC purposes.
Change 3267873 on 2017/01/23 by Jon.Nabozny
Fix SceneProxy shadowing in UGeometryCacheComponent.
Change 3268025 on 2017/01/23 by Benn.Gallagher
IWYU change, platform PCH generation seemed to hide this one.
Change 3268026 on 2017/01/23 by Benn.Gallagher
Fixed LOCTEXT_NAMESPACE being inconsistently scoped in an #if block
#rnx
Change 3268630 on 2017/01/23 by Zak.Parrish
Updating to add MIGS shooter content, as well as audio interaction Blueprints
Change 3268663 on 2017/01/23 by Ori.Cohen
Ragdoll animnode uses raw physics asset pointer to ensure it makes a hard reference.
Change 3268811 on 2017/01/23 by Ori.Cohen
Added component space sim for immediate mode
Change 3269369 on 2017/01/24 by Benn.Gallagher
Copying //Tasks/UE4/Dev-UEFW-11-NewClothingPipeline to Dev-Framework (//UE4/Dev-Framework)
Replaced clothing with new simulation framework
Change 3269417 on 2017/01/24 by danny.bouimad
Minor Update to cloth map for test
Change 3269420 on 2017/01/24 by Benn.Gallagher
Removed APEX simulation from clothing framework (used in testing, not fully complete)
Change 3269421 on 2017/01/24 by danny.bouimad
Small tweaks
Change 3269515 on 2017/01/24 by Lukasz.Furman
enabled gameplay debugger's OnSelectionChanged event support for both PIE and SIE modes
fixed GameplayAbility debugger's category not using IAbilitySystemInterface
#ue4
Change 3269595 on 2017/01/24 by mason.seay
Break apart physics asset for crash bug
Change 3269819 on 2017/01/24 by Ori.Cohen
Make the possibly kinematic actor the first actor in the immediate mode joint. This is consistent with physx vanilla solver.
Change 3270364 on 2017/01/24 by Josh.Stoddard
upgrade to the latest version of v-HACD:
https://github.com/kmammou/v-hacd/tree/master/src/VHACD_Lib
commit: 7a09f9d
NOTE: only updated windows binaries
mac and linux still using old binaries until they can be tested
#jira UE-40124 #rb josh.stoddard
Change 3271188 on 2017/01/25 by Jurre.deBaare
Post-import script support
#jira UEFW-80
Change 3271249 on 2017/01/25 by Thomas.Sarkanen
Move soundwave-internal curve tables to advanced display
Exposing it was confusing to audio people
Change 3271586 on 2017/01/25 by Marc.Audy
Don't rerun construction scripts twice on a level that has been hidden and reshown
#jira UE-40306
Change 3272048 on 2017/01/25 by Ori.Cohen
Fix for immediate mode sim when root body is the same as the root bone.
Change 3272083 on 2017/01/25 by Ori.Cohen
Make sure to warn when component space sim and collision are used together. Also handle it gracefully.
Change 3272300 on 2017/01/25 by Ori.Cohen
Fix incorrect collision generation when a shape's local pose is not identity.
Change 3273195 on 2017/01/26 by Jurre.deBaare
Fix for Anim import script crash in GetBonePosesForTime
Change 3273204 on 2017/01/26 by Ben.Marsh
Ignore PRAGMA_DISABLE_SHADOW_VARIABLE_WARNINGS and PRAGMA_ENABLE_SHADOW_VARIABLE_WARNINGS macros between include directives. Fixes CIS warning with IncludeTool.
Change 3273378 on 2017/01/26 by James.Golding
In AnimBP editor, call CopyNodeDataToPreviewNode when properties are edited, not just pin defaults changed
Change 3273381 on 2017/01/26 by James.Golding
Big refactor to PoseDriver
- RBF logic now moved into its own class/file
- Allow editing of transform and radial scaling per-target
- Add support for different falloff functions (not just Gaussian)
- Allow driving curves directly, rather than always poses
- Add details customization for pose driver node
- Edits to PoseDriver settings now take immediate effect, don't need to recompile
Change 3273826 on 2017/01/26 by Josh.Stoddard
modify VHACD to improve quality of hulls generated by convex decomposition
NOTE: mac libs not included - mac editor will use legacy libs for now
Change 3273902 on 2017/01/26 by Marc.Audy
Merging //UE4/Dev-Main to Dev-Framework (//UE4/Dev-Framework) @ 3273433
Change 3274018 on 2017/01/26 by Ori.Cohen
Added immediate physics preview in phat.
Change 3274165 on 2017/01/26 by Ori.Cohen
PhAT now depends on immediate mode plugin. Fix build
#JIRA UE-41179
Change 3275001 on 2017/01/27 by Jurre.deBaare
Fix for crash in Persona with Anim Modifiers
Change 3275297 on 2017/01/27 by Ori.Cohen
Big refactor to iterate over shapes instead of bodies (allows multiple shape per body collision)
Change 3275340 on 2017/01/27 by Benn.Gallagher
Fixed Paragon clothing crashes during clothing upgrade step, fixed bone mapping not getting updated on reimport with different hierarchy
#jira UE-41025
#jira UE-41039
Change 3275383 on 2017/01/27 by Benn.Gallagher
Blacklisted double promotion warning on ps4 NvCloth build
#rnx
Change 3275426 on 2017/01/27 by Benn.Gallagher
Removed CUDA dependencies from NvCloth cmake files
Change 3275670 on 2017/01/27 by Ori.Cohen
Fix phat ragdoll in immediate mode updating sketal mesh component transform
Change 3275673 on 2017/01/27 by Ori.Cohen
Add position/velocity iteration to immediate mode
Change 3276001 on 2017/01/27 by Alan.Noon
Migrated Immediate Mode Minion Ragdoll Content to GDC AnimTech Project. Updated DefaultInput.ini
none
Change 3276596 on 2017/01/28 by Aaron.McLeran
Removing unused #ifdef
Change 3276597 on 2017/01/28 by Aaron.McLeran
Getting rid of static analysis warning
Change 3277354 on 2017/01/30 by Lukasz.Furman
fixed custom navlink Id collisions
#ue4
Change 3277356 on 2017/01/30 by Lukasz.Furman
fixed comments in GameplayDebugger.h
#jira UE-41103
Change 3277371 on 2017/01/30 by mason.seay
Test map for spawn sound/force feedback bug.
Change 3277445 on 2017/01/30 by Lukasz.Furman
fixed compilation warning
#ue4
Change 3277560 on 2017/01/30 by Danny.Bouimad
Made checkin to Fix Crash that occured due to bad content.
Change 3277567 on 2017/01/30 by Ori.Cohen
Fix immediate mode crashing when joint is empty.
#JIRA UE-41026
Change 3277928 on 2017/01/30 by Ori.Cohen
Turn on immediate mode plugin by default
Change 3278433 on 2017/01/30 by Ori.Cohen
Immediate mode supports heightfield collision.
Change 3278449 on 2017/01/30 by Ori.Cohen
Fix immediate mode cache not being initialized properly.
Change 3278787 on 2017/01/31 by James.Golding
Fix CIS error in ImmediatePhysicsSimulation.cpp
Change 3279303 on 2017/01/31 by mason.seay
Assets for RigidBody node bug
Change 3279352 on 2017/01/31 by Benn.Gallagher
Fixed inertia blends on self collision cloth assets as we now only have local space simulation and these values weren't used before
Change 3279377 on 2017/01/31 by Alan.Noon
GDC AnimTech Demo: adjusted minion physics assets
none
Change 3279425 on 2017/01/31 by james.cobbett
Updating QA-Physics map.
Made one of the simulated physics objects more user-friendly, able to enable/disable physics on key-press now.
Change 3279436 on 2017/01/31 by Benn.Gallagher
Fixed inertia scales on Owen mesh
Change 3279480 on 2017/01/31 by Benn.Gallagher
Fixes for clothing behavior changes
#jira UE-41092
Change 3279495 on 2017/01/31 by Ori.Cohen
Remove unneeded cache clearing when contact pairs are not skipped, but there is no collision.
Change 3279579 on 2017/01/31 by james.cobbett
Added new scenario to QA-Physics map.
Moving platforms (up/down, left/right) with physics objects on them.
Change 3279695 on 2017/01/31 by mason.seay
RigidBody node test asset
Change 3280105 on 2017/01/31 by Ori.Cohen
Prevent query only ragdolls from simulating if their bodysetup is marked as simulated. Also remove slow check in term body for owning components. This is not true for destructibles or immediate mode
Change 3280148 on 2017/01/31 by mason.seay
First round of assets for force feedback testing
Change 3280860 on 2017/02/01 by James.Golding
Merge CL 3280853 to Dev-Framework
Fix crash with null CurrentSkeleton on AnimInstance when using Re-import button in SkelMesh Editor
Change 3281172 on 2017/02/01 by Marc.Audy
Merging //UE4/Dev-Main to Dev-Framework (//UE4/Dev-Framework) @ 3281156
Change 3281210 on 2017/02/01 by james.cobbett
Updated QA-Physics map
Added cube that starts off with physics enabled, then disables. Made physics toggleable on that and another cube.
Change 3281211 on 2017/02/01 by James.Golding
Details customization for editing PoseDriver targets list
Change 3281332 on 2017/02/01 by Marc.Audy
Fix bad merge
Fix file types
Change 3281388 on 2017/02/01 by mason.seay
Updated Force Feedback asset
Change 3281396 on 2017/02/01 by mason.seay
moving asset
Change 3281987 on 2017/02/01 by Benn.Gallagher
Fixed project generation failing after main merge
Change 3282047 on 2017/02/01 by Marc.Audy
Fix up Target and build cs files after changes from Dev-Build
Change 3282214 on 2017/02/01 by Ori.Cohen
Expose radial forces to immediate mode
Change 3282221 on 2017/02/01 by Alan.Noon
Immediate Mode GDC demo content: development on minion anim B, refined Orbital Laser Pawn controls, tweaked laser parameters
none
Change 3282273 on 2017/02/01 by Ori.Cohen
Fix crash when recompiling animbp of immediate mode due to null pointer.
Change 3282368 on 2017/02/01 by Ori.Cohen
Quick iteration on minion demo
Change 3282824 on 2017/02/02 by James.Golding
Fix for CIS in RBFSolver.h
Change 3282829 on 2017/02/02 by James.Golding
Fix CIS in PoseDriverDetails.cpp
Fix list UI not refreshing after copying targets from PoseAsset
Change 3282834 on 2017/02/02 by Danny.Bouimad
Adding Pose driver additive assets
Change 3282863 on 2017/02/02 by James.Golding
Add Mambo mesh and Skeleton
Change 3282892 on 2017/02/02 by James.Golding
Copy Aurora (Ice) and Mambo meshes/materials/some anims from Dev-General to AnimTechDemo project in Dev-Framework
Change 3283157 on 2017/02/02 by Mieszko.Zielinski
Cook Orion Win64 fix #UE4
Had to change the Extent param of K2_ProjectPointToNavigation. Updated the error causing Orion BP
Change 3283159 on 2017/02/02 by Marc.Audy
Additional CIS fixes
Change 3283179 on 2017/02/02 by Marc.Audy
More CIS fixes
Change 3283197 on 2017/02/02 by Jurre.deBaare
Fix for issues importing Fornite geometry cache assets
#fix Use actual import number of frames instead of total number of frames in the Alembic Cache
Change 3283201 on 2017/02/02 by Marc.Audy
Keep fixing CIS
Change 3283270 on 2017/02/02 by James.Golding
Merging CL 3276013 to Dev-Framework
- fix issue with additive pose preview applying twice
Change 3283499 on 2017/02/02 by Marc.Audy
More CIS fixes
Change 3283543 on 2017/02/02 by Jon.Nabozny
Update comment on AActor::GetActorBounds to properly reflect ChildActorComponents aren't included in the calculation.
Change 3283663 on 2017/02/02 by Ori.Cohen
Fix potential null dereference in ragdoll node
Change 3283757 on 2017/02/02 by Marc.Audy
May fix remaining CIS issues
Change 3283984 on 2017/02/02 by Marc.Audy
Fix linux CIS
Change 3284039 on 2017/02/02 by Marc.Audy
Merging //UE4/Dev-Main to Dev-Framework (//UE4/Dev-Framework) @ 3283913
Change 3284067 on 2017/02/02 by Marc.Audy
Fixup mistakes in converting redirects
Change 3284187 on 2017/02/02 by Ori.Cohen
Immediate mode works with radial force (not just radial impulse)
Change 3284358 on 2017/02/02 by Ori.Cohen
Update arcblade phys asset for immediate mode
Change 3284667 on 2017/02/02 by Marc.Audy
Arguments is an array not a string now. Fixing commented out code.
Change 3284684 on 2017/02/02 by Marc.Audy
Move AVIWriter out in to its own module to avoid any possible unity build issues where xwindows.h got indirectly included through the DirectShow third party library and caused FGenericWindow::IsMaximized and IsMinimized to conflict with a macro.
Change 3284707 on 2017/02/02 by Marc.Audy
Fix AVIWriter module compilation on Mac
Change 3285012 on 2017/02/03 by Benn.Gallagher
Fixes for Dx NvCloth shader warnings
Change 3285016 on 2017/02/03 by Marc.Audy
Fix missing include
Change 3285048 on 2017/02/03 by Benn.Gallagher
Fixed Persona needing a restart when changing number of clothing assets (import/delete)
#jira UE-41323
Change 3285325 on 2017/02/03 by Marc.Audy
Properly implement AVIWriter module
Change 3285538 on 2017/02/03 by Marc.Audy
Merging //UE4/Dev-Main to Dev-Framework (//UE4/Dev-Framework) @ 3285499
Change 3285735 on 2017/02/03 by Jon.Nabozny
Add IsInAir method to UVehicleWheel.
#jira UE-38369
Change 3285862 on 2017/02/03 by Aaron.McLeran
UE-41435 Fixing PIE audio
- Fixing PIE audio. Recent change to editor preferences from Dev-Editor branch (CL 3234495) caused all audio to be muted in PIE.
Change 3285914 on 2017/02/03 by danny.bouimad
RecomputeTangents Test Assets
Change 3286246 on 2017/02/03 by Mieszko.Zielinski
Changes to game-specific BPs containing calls to deprecated NavigationSystem functions #UE4
#jira UE-41527
#jira UE-41518
Change 3286308 on 2017/02/03 by Ori.Cohen
Make sure physx trimesh scale is never too small. Fix box clamping being ignored. Fixes cook warnings for Odin.
#JIRA UE-41529
Change 3286396 on 2017/02/03 by Ori.Cohen
Fix CIS
Change 3286479 on 2017/02/03 by Ori.Cohen
Copying //UE4/Dev-Physics-Upgrade to Dev-Framework (//UE4/Dev-Framework)
Change 3287421 on 2017/02/06 by James.Golding
Merging //UE4/Dev-Main to Dev-Framework (//UE4/Dev-Framework) @ 3286819
Change 3287427 on 2017/02/06 by James.Golding
Fix PoseBlendNode to 'pass through' if no poses are activated
Change 3287430 on 2017/02/06 by James.Golding
- Add support to PoseDriver for evaluating source bone in the space of a different bone
- Fix driven bone adding a scale of 1
- Fix posedriver values 'sticking' (reset all weights to zero each frame)
- Move CopyTargetsFromPoseAsset and AutoSetTargetScales from FAnimNode_PoseDriver to UAnimGraphNode_PoseDriver (not required outside editor)
- Tranlsation targets now draw larger when selected
- 'Copy from pose asset' now also auto-sets radius for you
- Remove spammy warnings for missing poses/curves
- Add UPoseAsset::GetNumTracks and ::GetFullPose
- Remove unused ExtractionContext from UPoseAsset::GetBaseAnimationPose
- Remove bIncludeRefPoseAsNeutralPose option (not really useful since we no longer always normalize weights to 1.0)
Change 3287496 on 2017/02/06 by Chad.Garyet
fixing busted quotes around defaultvalues
Change 3287569 on 2017/02/06 by Mieszko.Zielinski
Orion BP fixed after deprecating NavigationSystem's BP API #Orion
Change 3287595 on 2017/02/06 by Benn.Gallagher
BuildPhysX.Automation: Deploying PhysX & NvCloth Win64 Win32 PS4 libs.
Built for new NvCloth upgrade
Change 3287598 on 2017/02/06 by Benn.Gallagher
NvCloth Upgrade to 21604115
Added Linux+Mac support
Change 3287710 on 2017/02/06 by Lukasz.Furman
added option to disable navlink polys at the end of generated paths
#ue4
Change 3287857 on 2017/02/06 by Benn.Gallagher
Fixed NvCloth module files to correctly set up linux and mac hopefully
Change 3287894 on 2017/02/06 by Benn.Gallagher
Another fix to NvCloth build files, didn't get picked up in VS for some reason.
Change 3287917 on 2017/02/06 by Lina.Halper
Copy from CharacterRigging to Dev-Framework
#code review:Thomas.Sarkanen, Martin.Wilson, James.Golding, Andrew.Rodham
Change 3287938 on 2017/02/06 by Thomas.Sarkanen
Fix crash opening a media sound wave
#jira UE-41582 - Editor crashes when running Automation test
Change 3287942 on 2017/02/06 by Marc.Audy
Merging //UE4/Dev-Main to Dev-Framework (//UE4/Dev-Framework) @ 3287682
Change 3288035 on 2017/02/06 by James.Golding
Remove C++ GameMode and pawn classes (replace with floating BP instead)
Resave anims to remove Orion refs
Add simple AnimBP and map for Mambo testing
Change 3288036 on 2017/02/06 by Benn.Gallagher
Fix to BuildPhysX task to trigger Mac and Linux builds properly
Change 3288125 on 2017/02/06 by Ori.Cohen
Change PhysXCommon back to dylib
Change 3288127 on 2017/02/06 by Benn.Gallagher
Fixed project file identification not working for NvCloth under XCode
Change 3288156 on 2017/02/06 by Benn.Gallagher
Disable "expansion-to-defined" warning in Linux NvCloth builds
Change 3288159 on 2017/02/06 by Lina.Halper
potential compile fix for Ocean Editor
#code review:Thomas.Sarkanen
Change 3288190 on 2017/02/06 by Ori.Cohen
Link against static PhysXCommon for mac
Change 3288200 on 2017/02/06 by Marc.Audy
Fix CIS
Change 3288270 on 2017/02/06 by Lina.Halper
fix compile error
#code review:Thomas.Sarkanen, Marc.Audy
Change 3288302 on 2017/02/06 by Thomas.Sarkanen
Fixed ensure when deselecting bones in anim BP editor
#jira UE-41274 - Ensure when clicking in the viewport of an animation blueprint
Change 3288348 on 2017/02/06 by Lina.Halper
- Enabled control rig
- Changed plugin name to be Control Rig
Change 3288490 on 2017/02/06 by Benn.Gallagher
Fixes for Mac attempting static links against NvCloth and failing to load dynamic libraries. Worked with MasonS to get Mac editor up and running.
Change 3288511 on 2017/02/06 by Lina.Halper
compile fix
Change 3288513 on 2017/02/06 by Lina.Halper
Check in content to work with
Change 3288615 on 2017/02/06 by Ori.Cohen
Fix skeletal mesh not simulating when using an aggregate.
#JIRA UE-41593
Change 3288791 on 2017/02/06 by thomas.sarkanen
Exposed transforms to cinematics so they can be animated
Change 3288795 on 2017/02/06 by Ori.Cohen
Fix lock warnings for physx
#JIRA UE-41591
Change 3288817 on 2017/02/06 by Charles.Anderson
GDC Arcblade setup tests.
Change 3288825 on 2017/02/06 by Lina.Halper
Fix build issue of shadow variable
Change 3289058 on 2017/02/06 by Ori.Cohen
Fix crash when immediate mode constraint generates 0 rows. This is a potentially temporary fix until NVIDIA replies with a better solution.
#JIRA UE-41026
Change 3289348 on 2017/02/06 by Lina.Halper
fix compile issue
Change 3289369 on 2017/02/06 by Lina.Halper
Renamed leg control to limb control and will be used for arm/feet.
- changed vars.
- has unused variables that will be used soon but want to check in so that i don't block content change on BaseHuman.
#code review:Thomas.Sakanen
Change 3289422 on 2017/02/06 by Lina.Halper
Fixed IK sinking issue - or moving
#code review:Thomas.Sarkanen
Change 3289433 on 2017/02/06 by Lina.Halper
Fixed real shadow error
Change 3289485 on 2017/02/06 by Lina.Halper
fixed build issue
Change 3289657 on 2017/02/07 by thomas.sarkanen
Added rig bone mapping to Ice's skeletal mesh
Change 3289658 on 2017/02/07 by thomas.sarkanen
Added ControlRig map with Ice setup to pose
Change 3289662 on 2017/02/07 by Thomas.Sarkanen
Fixed up static analysis warning
Change 3289663 on 2017/02/07 by Thomas.Sarkanen
Fixed crash when attempting to bind to skeletal mesh with already-set anim BP
Anim instance may not have actually been created when binding, so dont dereference it
Change 3289717 on 2017/02/07 by Benn.Gallagher
Switch Linux NvCloth to static for Linux builds. Adjust lib directory to match actual directory
Change 3289718 on 2017/02/07 by Benn.Gallagher
BuildPhysX.Automation: Deploying NvCloth Linux_x86_64-unknown-linux-gnu libs.
Change 3289744 on 2017/02/07 by Benn.Gallagher
Fixed missing masses causing crash initialising clothing actors
#jira UE-41599
Change 3289746 on 2017/02/07 by Danny.Bouimad
Adding Some Content for JamesG he wanted some nicer looking Pose driver test files.
Change 3289756 on 2017/02/07 by danny.bouimad
Changing the asset for JamesG.
Change 3289785 on 2017/02/07 by James.Golding
Replace old PoseDrive test with Danny's new one
Change 3289858 on 2017/02/07 by Lina.Halper
fixed issue with undo transaction buffer
Change 3289860 on 2017/02/07 by Benn.Gallagher
Fixed crash after reimporting a clothing asset with the clothing config open and then changing the confg
#jira UE-41655
Change 3289912 on 2017/02/07 by Thomas.Sarkanen
Merging using Raven_To_Dev-Framework
Originally from CLs 3249471, 3258522, 3260271, 3273791:
Sequencer: More work supporting array properties more generically
+ fixes
Change 3289962 on 2017/02/07 by James.Golding
Add thickness option to DrawWireDiamond
Change 3289963 on 2017/02/07 by James.Golding
Add spin option to VectorInputBox
Change 3289966 on 2017/02/07 by James.Golding
Add weight bar chart to PoseDriver details
Stop drawing pose weight text in viewport
Fix position targets not drawing larger when selected
Change 3290094 on 2017/02/07 by Thomas.Sarkanen
Fixed typo in filename (fallout from search and replace)
Change 3290119 on 2017/02/07 by Thomas.Sarkanen
Manipulators can now have their IK/FK space set on them
They are not drawn when the space for the chain that they control is not the same as their setting
Also fixed a crash with invalid objects when reloading maps.
Change 3290145 on 2017/02/07 by Thomas.Sarkanen
CIS fix for fallout from Raven changes
#jira UE-41670 - Mac editor fails to compile with PropertyTrackEditor errors
Change 3290319 on 2017/02/07 by Marc.Audy
Make sound player nodes hard reference the assets unless they are in a chain below a quality node.
Change 3290484 on 2017/02/07 by Richard.Hinckley
Fixing grammar in popup messages.
Change 3290533 on 2017/02/07 by Marc.Audy
Make GetAIController BlueprintPure
#jira UE-41654
Change 3290624 on 2017/02/07 by Marc.Audy
Reorder header to avoid include tool warnings
Change 3290697 on 2017/02/07 by Lina.Halper
- support FK manipulator being in local space
- fixed FK key spamming issue for making blend weight to be not keyable - this creates conflicts with enum
#code review: Thomas.Sarkanen
Change 3290748 on 2017/02/07 by Ori.Cohen
Touch immediate mode file to force physx re-link
Change 3290807 on 2017/02/07 by Richard.Hinckley
#jira UE-39891
Updates to assist in automatic documentation generation.
Change 3290946 on 2017/02/07 by Lina.Halper
Fix issue of notify looping.
#jira: UE-31463
#Code review:Martin.Wilson
Change 3291553 on 2017/02/07 by Lina.Halper
Rename/move file(s)
- modified mesh mapping controller window to be Control Rig
Change 3291571 on 2017/02/07 by Lina.Halper
added set up spine option
#code review:Thomas.Sarkanen
Change 3291581 on 2017/02/07 by Ori.Cohen
Temporarily turn off phat immediate mode preview which crashes.
Change 3291949 on 2017/02/08 by James.Golding
Merging //UE4/Dev-Main to Dev-Framework (//UE4/Dev-Framework) @ 3291819
Change 3291966 on 2017/02/08 by Lina.Halper
Fix issue with notify looping bug
#jira: UE-31463
Change 3292247 on 2017/02/08 by Marc.Audy
Clean up bad merge caused by Fortnite integration to main
Change 3292326 on 2017/02/08 by Marc.Audy
Merging //UE4/Dev-Main to Dev-Framework (//UE4/Dev-Framework) @ 3292313
Change 3292409 on 2017/02/08 by Marc.Audy
Resubmit FortPawn.cpp with proper code even though perforce doesn't think there is a difference since when you sync it, the contents are wrong.
Change 3292481 on 2017/02/08 by Ori.Cohen
Fix for convex hull cooking (from Josh.S)
#JIRA UE-41656
Change 3292492 on 2017/02/08 by Mieszko.Zielinski
Redone replacement of deprecated navigation system's BP functions in Fortnite BPs #Fortnite
Change 3292778 on 2017/02/08 by Ori.Cohen
Touch physx DDC key for new cooking.
#JIRA UE-41656
[CL 3293329 by Marc Audy in Main branch]
2017-02-08 17:53:41 -05:00
TSharedPtr < FTabManager > SLevelEditor : : GetTabManager ( ) const
2014-03-14 14:13:41 -04:00
{
FLevelEditorModule & LevelEditorModule = FModuleManager : : GetModuleChecked < FLevelEditorModule > ( LevelEditorModuleName ) ;
TSharedPtr < FTabManager > LevelEditorTabManager = LevelEditorModule . GetLevelEditorTabManager ( ) ;
Copying //UE4/Dev-Framework to //UE4/Dev-Main (Source: //UE4/Dev-Framework @ 3293188)
#rb none
#lockdown Nick.Penwarden
==========================
MAJOR FEATURES + CHANGES
==========================
Change 3203880 on 2016/11/18 by Ori.Cohen
Copying //UE4/Dev-Physics-Upgrade to Dev-Framework (//UE4/Dev-Framework)
Change 3207429 on 2016/11/22 by Marc.Audy
Merging //UE4/Dev-Main to Dev-Framework (//UE4/Dev-Framework) @ 3207285
Change 3252627 on 2017/01/10 by Lukasz.Furman
removed duplicated entries from visual logger shape rendering
#ue4
Change 3252675 on 2017/01/10 by Ori.Cohen
Add support for tagged memory regions (Copying //Tasks/UE4/Dev-ImmediateModePhysics to Dev-Framework (//UE4/Dev-Framework))
Change 3252686 on 2017/01/10 by Ori.Cohen
Refactor BodySetup to make it easier to reuse shape creation (Copying //Tasks/UE4/Dev-ImmediateModePhysics to Dev-Framework (//UE4/Dev-Framework))
Change 3252833 on 2017/01/10 by Ori.Cohen
Refactor constraint so that it can be used for external solvers. (Copying //Tasks/UE4/Dev-ImmediateModePhysics to Dev-Framework (//UE4/Dev-Framework))
Change 3252887 on 2017/01/10 by Dan.Reynolds
Increased modes to include:
Harmonic minor
Melodic minor (going up)
Pentatonic (Major)
Pentatonic (minor)
Whole Tone
Diminished (WH)
and Blues
Change 3252895 on 2017/01/10 by Aaron.McLeran
update to music utilities.
Change 3253060 on 2017/01/10 by Aaron.McLeran
Updates to synthesis plugin and some new features to DSP objects
Change 3253061 on 2017/01/10 by Aaron.McLeran
Updates to music maps
Change 3253078 on 2017/01/10 by Aaron.McLeran
Removing pragma optimization code accidentally checked in
Change 3253110 on 2017/01/10 by Ori.Cohen
First iteration of immediate mode ragdoll node (Copying //Tasks/UE4/Dev-ImmediateModePhysics to Dev-Framework (//UE4/Dev-Framework))
Change 3253315 on 2017/01/10 by Aaron.McLeran
Fixing a few bugs in DSP objects
- Added a new types file EpicSynth1 and EpicSynth1 component can share enums
Change 3253577 on 2017/01/11 by Aaron.McLeran
Checking in updates to assets for music -- celestial manager for rotating objects like planets, new ambient map
Change 3254052 on 2017/01/11 by Ori.Cohen
Fix build.
Change 3254059 on 2017/01/11 by Ori.Cohen
Turn off html5 trying to build apex.
Change 3254095 on 2017/01/11 by Ori.Cohen
Fix build
Change 3254200 on 2017/01/11 by Jon.Nabozny
Make vectorized FTransform Accumulate (with blend) and AccumulateWithAdditive (with blend) consistent with the non-vectorized version and comments.
#JIRA UE-40469
Change 3254334 on 2017/01/11 by Marc.Audy
Put in missing virtual
Change 3254397 on 2017/01/11 by dan.reynolds
Updates to OtonOkeMap
Change 3254410 on 2017/01/11 by Marc.Audy
Cleanup autos
Change 3254420 on 2017/01/11 by Marc.Audy
PR #3110: Add missing IsInAudioThread check (Contributed by projectgheist)
Modified somewhat, but based on what PR indicated as a problem.
#jira UE-40369
Change 3254423 on 2017/01/11 by Marc.Audy
Optimize GetDefaultSubobjectByName and GetDefaultSubobjects
Remove autos
Change 3254826 on 2017/01/11 by Aaron.McLeran
Bringing optimizations to dev-framework
Change 3254831 on 2017/01/11 by dan.reynolds
Modified MidiSynthTestBP to use Program Change events to pull a Preset from a Preset Bank--added a Data Blueprint Object ES1Bank_Default (containing Preset arrays) with children classes for different classifications of Presets.
Change 3254833 on 2017/01/11 by dan.reynolds
Updating MidiSynthTestBP's default SynthPreset pan value.
Change 3254851 on 2017/01/11 by dan.reynolds
Updating ES1Bank_Bass
Updating OtonOkeMap
Change 3254854 on 2017/01/11 by Aaron.McLeran
Some fixups for pan modulation
Change 3255682 on 2017/01/12 by aaron.mcleran
Turning the bass down a bit on OtonOkeMap
Change 3255721 on 2017/01/12 by Marc.Audy
Fix spelling error
Change 3255790 on 2017/01/12 by Marc.Audy
Copying //UE4/Dev-Physics-Upgrade to Dev-Framework (//UE4/Dev-Framework)
Change 3256263 on 2017/01/12 by Ori.Cohen
Refactor immediate mode api to take PxD6Joint and PxRigidActor instead.
Change 3256288 on 2017/01/12 by Ori.Cohen
Undo constraint refactor as we found a way around it and it made the code much harder to read/debug
Change 3256360 on 2017/01/12 by Ori.Cohen
Make sure physx actors passed into immediate mode are done so with proper locks (can probably improve this in the case where the actor is not even in the scene)
Change 3256846 on 2017/01/13 by Marc.Audy
Deprecate FBox/FBox2D int32 constructor because it makes no sense if you pass in a non 0 value. Use ForceInit instead.
Change 3256954 on 2017/01/13 by Marc.Audy
Fix missed fixup of deprecated constructor use
Change 3257167 on 2017/01/13 by Jon.Nabozny
Fix check in FBodyInstance::SetCollisionEnabled.
Create convenience methods for HasPhysics and HasQuery.
#jira UE-39633
Change 3257181 on 2017/01/13 by Zak.Parrish
Adding input map and some testing content to Xenakis
Change 3257183 on 2017/01/13 by Mieszko.Zielinski
Implemented an improved navigation projection BP function that retrieves both projected locaiton as well as a boolean indicating if the projection succeeded #UE4
Also, did similar changes to GetRandomReachablePointInRadius and GetRandomPointInNavigableRadius
#jira UE-40368
Change 3257211 on 2017/01/13 by Jon.Nabozny
Fix CIS issue caused by 3257167.
Change 3257220 on 2017/01/13 by Marc.Audy
Additional FBox constructor deprecation fixups
Change 3257236 on 2017/01/13 by zak.parrish
Fixed error on Xenakis input pawn
Change 3257242 on 2017/01/13 by zak.parrish
Update to InputListener
Change 3257273 on 2017/01/13 by Marc.Audy
No reason to pass simple types by reference
Change 3257418 on 2017/01/13 by Ori.Cohen
Attempt to turn android physx libs back to static libs.
Change 3257445 on 2017/01/13 by Ori.Cohen
Turn android libs back to OBJ and removed unreal side linking as it seems we are now just merging into a single physx lib
Change 3257903 on 2017/01/14 by Aaron.McLeran
Additions to synth module and updates to dsp objects
- Adding ability to create arbitrary modular patches from modulating sources to modulation destinations
- DSP objects define their default depths but patches can override
- Creating new SynthesisEditor module for synthesis plugin so we can create synthesis preset assets
- Adding a preset bank type so we can store a bank of presets (aka factory presets)
Change 3258179 on 2017/01/15 by Seth.Weedin
Duplicating input test map for some FX work
Change 3258181 on 2017/01/15 by Seth.Weedin
Modify skybox in test map to be dark and spooky
Change 3258183 on 2017/01/15 by aaron.johnson
substituted classes, changed wind speed and adjusted level lighting
Change 3258190 on 2017/01/15 by aaron.johnson
substituted triplet pawn and motion controller classes, enabled grabbing animations
Change 3258191 on 2017/01/15 by Aaron.McLeran
Getting source effects working for GDC demo
- Added new synthesis editor module to create instances of user-created source effects
- Added code to do source effects
- Modified old design to a newer, more simpler design for calling into client code to set parameters. No longer using the complex struct reflection design and instead just pass in the uobject preset the user created. They'll then cast it to the type that has the actual settings.
- Tweaks and fixes to existing dsp objects to get source effects working
- Modified existing engine code to allow for playing out source effect tails
- Only supporting mono and stereo assets for source effect processing. Multi-channel effect processing is overly complex for this feature though we may extend the capabilities in the future.
- Fixed issue of pitching with stereo delay effect on setting first interpolated param
- Moving synth/dsp stuff in synthesis plugins into appropriate public/private folders in plugin/module
- Deleting some cruft files no longer needed
Change 3258201 on 2017/01/15 by Seth.Weedin
C++ and BP classes for managing grid cells. Initial grid mapping tests. #rb none
Change 3258206 on 2017/01/15 by aaron.johnson
map push, triplets interface created, debug widget placed in level
Change 3258222 on 2017/01/15 by Aaron.McLeran
Fixing crash when there's a null entry in the source effect chain
Fixed some zippering introduced by applying volume twice.
Change 3258225 on 2017/01/15 by aaron.johnson
Interface changes, pawn output values wip
Change 3258228 on 2017/01/15 by aaron.johnson
Pawn should be outputting all correct values for Tripletsinterface
Change 3258242 on 2017/01/15 by Stanley.Hayes
Edge lights and Spherical Density Materials
Change 3258251 on 2017/01/16 by Seth.Weedin
More progress on grid FX. Add curve strength modifiers, begin hooking up interaction. #rb none
Change 3258284 on 2017/01/16 by Aaron.McLeran
Fixing CIS build error
Surprised that MSVC allows that...
Change 3258525 on 2017/01/16 by Mieszko.Zielinski
Made UGameplayTask::ResourceOverlapPolicy configurable via ini files #UE4
Change 3258537 on 2017/01/16 by Lukasz.Furman
fixed duplicated & undo operations not updating navigation area in nav link proxy and nav link component
#ue4
Change 3258595 on 2017/01/16 by Marc.Audy
Fix static analysis warning
Change 3259364 on 2017/01/16 by Mieszko.Zielinski
BTTask_RotateToFaceBBEntry comment spelling fix #UE4
#jira UE-40669
Change 3259683 on 2017/01/16 by dan.reynolds
Updated Preset Bank System implemented in MidiSynthTestBP and 4 Preset Banks have been started
Change 3260244 on 2017/01/17 by Lina.Halper
#anim
- optimize layer blend node to not create mask weights in run-time but in compile time.
#code review: Martin.Wilson
Change 3260617 on 2017/01/17 by Ori.Cohen
Immediate mode spawns its own actors.
Change 3260701 on 2017/01/17 by Ori.Cohen
Don't bother blending physics with animation when physics is QueryOnly
Change 3260796 on 2017/01/17 by Ori.Cohen
EndPhysics tick will no longer be scheduled if QueryOnly is used on a ragdoll.
Change 3261207 on 2017/01/17 by Ori.Cohen
First iteration of contact enabling/disabling for immediate mode.
Change 3262010 on 2017/01/18 by Marc.Audy
Remove some autos
Change 3262525 on 2017/01/18 by Lina.Halper
Fix crash with required bones index not using property indexing
#jira: UE-40786
Change 3263658 on 2017/01/19 by Martin.Wilson
Add AnimTechDemo to dev-framework (base third person + feng mao)
Change 3263684 on 2017/01/19 by Lina.Halper
#anim : layer node - fix allocation change I made by mistake
Change 3264523 on 2017/01/19 by Ori.Cohen
Immediate mode can now add static geometry it finds in the world. Also improve contact gen by caching iteration order
Change 3264701 on 2017/01/19 by Ori.Cohen
Make it so that immediate mode ragdolls collide with the ground in persona.This is a bit of an editor only hack which allows immediate mode to find non-static actors
Change 3264980 on 2017/01/19 by Ori.Cohen
Make sure physics asset collision disabled works in immediate mode.
Change 3265011 on 2017/01/19 by Ori.Cohen
Added the ability to override physics asset for immediate mode
Change 3265030 on 2017/01/19 by Ori.Cohen
Added override gravity for immediate mode.
Change 3265650 on 2017/01/20 by Benn.Gallagher
NvCloth Source
Change 3265652 on 2017/01/20 by Benn.Gallagher
NvCloth Lib
#rnx
Change 3265653 on 2017/01/20 by Benn.Gallagher
NvCloth Bin
#rnx
Change 3266195 on 2017/01/20 by Danny.Bouimad
Initial ClothTest Assets for NCloth Before and after comparison TM-MultiClothTest (Under Maps>Framework>Cloth)
Change 3266377 on 2017/01/20 by Marc.Audy
Ensure that OrphanedDataOnly and TrashClass blueprint generated classes are correctly considered a blueprint class for disregard for GC purposes.
Change 3267873 on 2017/01/23 by Jon.Nabozny
Fix SceneProxy shadowing in UGeometryCacheComponent.
Change 3268025 on 2017/01/23 by Benn.Gallagher
IWYU change, platform PCH generation seemed to hide this one.
Change 3268026 on 2017/01/23 by Benn.Gallagher
Fixed LOCTEXT_NAMESPACE being inconsistently scoped in an #if block
#rnx
Change 3268630 on 2017/01/23 by Zak.Parrish
Updating to add MIGS shooter content, as well as audio interaction Blueprints
Change 3268663 on 2017/01/23 by Ori.Cohen
Ragdoll animnode uses raw physics asset pointer to ensure it makes a hard reference.
Change 3268811 on 2017/01/23 by Ori.Cohen
Added component space sim for immediate mode
Change 3269369 on 2017/01/24 by Benn.Gallagher
Copying //Tasks/UE4/Dev-UEFW-11-NewClothingPipeline to Dev-Framework (//UE4/Dev-Framework)
Replaced clothing with new simulation framework
Change 3269417 on 2017/01/24 by danny.bouimad
Minor Update to cloth map for test
Change 3269420 on 2017/01/24 by Benn.Gallagher
Removed APEX simulation from clothing framework (used in testing, not fully complete)
Change 3269421 on 2017/01/24 by danny.bouimad
Small tweaks
Change 3269515 on 2017/01/24 by Lukasz.Furman
enabled gameplay debugger's OnSelectionChanged event support for both PIE and SIE modes
fixed GameplayAbility debugger's category not using IAbilitySystemInterface
#ue4
Change 3269595 on 2017/01/24 by mason.seay
Break apart physics asset for crash bug
Change 3269819 on 2017/01/24 by Ori.Cohen
Make the possibly kinematic actor the first actor in the immediate mode joint. This is consistent with physx vanilla solver.
Change 3270364 on 2017/01/24 by Josh.Stoddard
upgrade to the latest version of v-HACD:
https://github.com/kmammou/v-hacd/tree/master/src/VHACD_Lib
commit: 7a09f9d
NOTE: only updated windows binaries
mac and linux still using old binaries until they can be tested
#jira UE-40124 #rb josh.stoddard
Change 3271188 on 2017/01/25 by Jurre.deBaare
Post-import script support
#jira UEFW-80
Change 3271249 on 2017/01/25 by Thomas.Sarkanen
Move soundwave-internal curve tables to advanced display
Exposing it was confusing to audio people
Change 3271586 on 2017/01/25 by Marc.Audy
Don't rerun construction scripts twice on a level that has been hidden and reshown
#jira UE-40306
Change 3272048 on 2017/01/25 by Ori.Cohen
Fix for immediate mode sim when root body is the same as the root bone.
Change 3272083 on 2017/01/25 by Ori.Cohen
Make sure to warn when component space sim and collision are used together. Also handle it gracefully.
Change 3272300 on 2017/01/25 by Ori.Cohen
Fix incorrect collision generation when a shape's local pose is not identity.
Change 3273195 on 2017/01/26 by Jurre.deBaare
Fix for Anim import script crash in GetBonePosesForTime
Change 3273204 on 2017/01/26 by Ben.Marsh
Ignore PRAGMA_DISABLE_SHADOW_VARIABLE_WARNINGS and PRAGMA_ENABLE_SHADOW_VARIABLE_WARNINGS macros between include directives. Fixes CIS warning with IncludeTool.
Change 3273378 on 2017/01/26 by James.Golding
In AnimBP editor, call CopyNodeDataToPreviewNode when properties are edited, not just pin defaults changed
Change 3273381 on 2017/01/26 by James.Golding
Big refactor to PoseDriver
- RBF logic now moved into its own class/file
- Allow editing of transform and radial scaling per-target
- Add support for different falloff functions (not just Gaussian)
- Allow driving curves directly, rather than always poses
- Add details customization for pose driver node
- Edits to PoseDriver settings now take immediate effect, don't need to recompile
Change 3273826 on 2017/01/26 by Josh.Stoddard
modify VHACD to improve quality of hulls generated by convex decomposition
NOTE: mac libs not included - mac editor will use legacy libs for now
Change 3273902 on 2017/01/26 by Marc.Audy
Merging //UE4/Dev-Main to Dev-Framework (//UE4/Dev-Framework) @ 3273433
Change 3274018 on 2017/01/26 by Ori.Cohen
Added immediate physics preview in phat.
Change 3274165 on 2017/01/26 by Ori.Cohen
PhAT now depends on immediate mode plugin. Fix build
#JIRA UE-41179
Change 3275001 on 2017/01/27 by Jurre.deBaare
Fix for crash in Persona with Anim Modifiers
Change 3275297 on 2017/01/27 by Ori.Cohen
Big refactor to iterate over shapes instead of bodies (allows multiple shape per body collision)
Change 3275340 on 2017/01/27 by Benn.Gallagher
Fixed Paragon clothing crashes during clothing upgrade step, fixed bone mapping not getting updated on reimport with different hierarchy
#jira UE-41025
#jira UE-41039
Change 3275383 on 2017/01/27 by Benn.Gallagher
Blacklisted double promotion warning on ps4 NvCloth build
#rnx
Change 3275426 on 2017/01/27 by Benn.Gallagher
Removed CUDA dependencies from NvCloth cmake files
Change 3275670 on 2017/01/27 by Ori.Cohen
Fix phat ragdoll in immediate mode updating sketal mesh component transform
Change 3275673 on 2017/01/27 by Ori.Cohen
Add position/velocity iteration to immediate mode
Change 3276001 on 2017/01/27 by Alan.Noon
Migrated Immediate Mode Minion Ragdoll Content to GDC AnimTech Project. Updated DefaultInput.ini
none
Change 3276596 on 2017/01/28 by Aaron.McLeran
Removing unused #ifdef
Change 3276597 on 2017/01/28 by Aaron.McLeran
Getting rid of static analysis warning
Change 3277354 on 2017/01/30 by Lukasz.Furman
fixed custom navlink Id collisions
#ue4
Change 3277356 on 2017/01/30 by Lukasz.Furman
fixed comments in GameplayDebugger.h
#jira UE-41103
Change 3277371 on 2017/01/30 by mason.seay
Test map for spawn sound/force feedback bug.
Change 3277445 on 2017/01/30 by Lukasz.Furman
fixed compilation warning
#ue4
Change 3277560 on 2017/01/30 by Danny.Bouimad
Made checkin to Fix Crash that occured due to bad content.
Change 3277567 on 2017/01/30 by Ori.Cohen
Fix immediate mode crashing when joint is empty.
#JIRA UE-41026
Change 3277928 on 2017/01/30 by Ori.Cohen
Turn on immediate mode plugin by default
Change 3278433 on 2017/01/30 by Ori.Cohen
Immediate mode supports heightfield collision.
Change 3278449 on 2017/01/30 by Ori.Cohen
Fix immediate mode cache not being initialized properly.
Change 3278787 on 2017/01/31 by James.Golding
Fix CIS error in ImmediatePhysicsSimulation.cpp
Change 3279303 on 2017/01/31 by mason.seay
Assets for RigidBody node bug
Change 3279352 on 2017/01/31 by Benn.Gallagher
Fixed inertia blends on self collision cloth assets as we now only have local space simulation and these values weren't used before
Change 3279377 on 2017/01/31 by Alan.Noon
GDC AnimTech Demo: adjusted minion physics assets
none
Change 3279425 on 2017/01/31 by james.cobbett
Updating QA-Physics map.
Made one of the simulated physics objects more user-friendly, able to enable/disable physics on key-press now.
Change 3279436 on 2017/01/31 by Benn.Gallagher
Fixed inertia scales on Owen mesh
Change 3279480 on 2017/01/31 by Benn.Gallagher
Fixes for clothing behavior changes
#jira UE-41092
Change 3279495 on 2017/01/31 by Ori.Cohen
Remove unneeded cache clearing when contact pairs are not skipped, but there is no collision.
Change 3279579 on 2017/01/31 by james.cobbett
Added new scenario to QA-Physics map.
Moving platforms (up/down, left/right) with physics objects on them.
Change 3279695 on 2017/01/31 by mason.seay
RigidBody node test asset
Change 3280105 on 2017/01/31 by Ori.Cohen
Prevent query only ragdolls from simulating if their bodysetup is marked as simulated. Also remove slow check in term body for owning components. This is not true for destructibles or immediate mode
Change 3280148 on 2017/01/31 by mason.seay
First round of assets for force feedback testing
Change 3280860 on 2017/02/01 by James.Golding
Merge CL 3280853 to Dev-Framework
Fix crash with null CurrentSkeleton on AnimInstance when using Re-import button in SkelMesh Editor
Change 3281172 on 2017/02/01 by Marc.Audy
Merging //UE4/Dev-Main to Dev-Framework (//UE4/Dev-Framework) @ 3281156
Change 3281210 on 2017/02/01 by james.cobbett
Updated QA-Physics map
Added cube that starts off with physics enabled, then disables. Made physics toggleable on that and another cube.
Change 3281211 on 2017/02/01 by James.Golding
Details customization for editing PoseDriver targets list
Change 3281332 on 2017/02/01 by Marc.Audy
Fix bad merge
Fix file types
Change 3281388 on 2017/02/01 by mason.seay
Updated Force Feedback asset
Change 3281396 on 2017/02/01 by mason.seay
moving asset
Change 3281987 on 2017/02/01 by Benn.Gallagher
Fixed project generation failing after main merge
Change 3282047 on 2017/02/01 by Marc.Audy
Fix up Target and build cs files after changes from Dev-Build
Change 3282214 on 2017/02/01 by Ori.Cohen
Expose radial forces to immediate mode
Change 3282221 on 2017/02/01 by Alan.Noon
Immediate Mode GDC demo content: development on minion anim B, refined Orbital Laser Pawn controls, tweaked laser parameters
none
Change 3282273 on 2017/02/01 by Ori.Cohen
Fix crash when recompiling animbp of immediate mode due to null pointer.
Change 3282368 on 2017/02/01 by Ori.Cohen
Quick iteration on minion demo
Change 3282824 on 2017/02/02 by James.Golding
Fix for CIS in RBFSolver.h
Change 3282829 on 2017/02/02 by James.Golding
Fix CIS in PoseDriverDetails.cpp
Fix list UI not refreshing after copying targets from PoseAsset
Change 3282834 on 2017/02/02 by Danny.Bouimad
Adding Pose driver additive assets
Change 3282863 on 2017/02/02 by James.Golding
Add Mambo mesh and Skeleton
Change 3282892 on 2017/02/02 by James.Golding
Copy Aurora (Ice) and Mambo meshes/materials/some anims from Dev-General to AnimTechDemo project in Dev-Framework
Change 3283157 on 2017/02/02 by Mieszko.Zielinski
Cook Orion Win64 fix #UE4
Had to change the Extent param of K2_ProjectPointToNavigation. Updated the error causing Orion BP
Change 3283159 on 2017/02/02 by Marc.Audy
Additional CIS fixes
Change 3283179 on 2017/02/02 by Marc.Audy
More CIS fixes
Change 3283197 on 2017/02/02 by Jurre.deBaare
Fix for issues importing Fornite geometry cache assets
#fix Use actual import number of frames instead of total number of frames in the Alembic Cache
Change 3283201 on 2017/02/02 by Marc.Audy
Keep fixing CIS
Change 3283270 on 2017/02/02 by James.Golding
Merging CL 3276013 to Dev-Framework
- fix issue with additive pose preview applying twice
Change 3283499 on 2017/02/02 by Marc.Audy
More CIS fixes
Change 3283543 on 2017/02/02 by Jon.Nabozny
Update comment on AActor::GetActorBounds to properly reflect ChildActorComponents aren't included in the calculation.
Change 3283663 on 2017/02/02 by Ori.Cohen
Fix potential null dereference in ragdoll node
Change 3283757 on 2017/02/02 by Marc.Audy
May fix remaining CIS issues
Change 3283984 on 2017/02/02 by Marc.Audy
Fix linux CIS
Change 3284039 on 2017/02/02 by Marc.Audy
Merging //UE4/Dev-Main to Dev-Framework (//UE4/Dev-Framework) @ 3283913
Change 3284067 on 2017/02/02 by Marc.Audy
Fixup mistakes in converting redirects
Change 3284187 on 2017/02/02 by Ori.Cohen
Immediate mode works with radial force (not just radial impulse)
Change 3284358 on 2017/02/02 by Ori.Cohen
Update arcblade phys asset for immediate mode
Change 3284667 on 2017/02/02 by Marc.Audy
Arguments is an array not a string now. Fixing commented out code.
Change 3284684 on 2017/02/02 by Marc.Audy
Move AVIWriter out in to its own module to avoid any possible unity build issues where xwindows.h got indirectly included through the DirectShow third party library and caused FGenericWindow::IsMaximized and IsMinimized to conflict with a macro.
Change 3284707 on 2017/02/02 by Marc.Audy
Fix AVIWriter module compilation on Mac
Change 3285012 on 2017/02/03 by Benn.Gallagher
Fixes for Dx NvCloth shader warnings
Change 3285016 on 2017/02/03 by Marc.Audy
Fix missing include
Change 3285048 on 2017/02/03 by Benn.Gallagher
Fixed Persona needing a restart when changing number of clothing assets (import/delete)
#jira UE-41323
Change 3285325 on 2017/02/03 by Marc.Audy
Properly implement AVIWriter module
Change 3285538 on 2017/02/03 by Marc.Audy
Merging //UE4/Dev-Main to Dev-Framework (//UE4/Dev-Framework) @ 3285499
Change 3285735 on 2017/02/03 by Jon.Nabozny
Add IsInAir method to UVehicleWheel.
#jira UE-38369
Change 3285862 on 2017/02/03 by Aaron.McLeran
UE-41435 Fixing PIE audio
- Fixing PIE audio. Recent change to editor preferences from Dev-Editor branch (CL 3234495) caused all audio to be muted in PIE.
Change 3285914 on 2017/02/03 by danny.bouimad
RecomputeTangents Test Assets
Change 3286246 on 2017/02/03 by Mieszko.Zielinski
Changes to game-specific BPs containing calls to deprecated NavigationSystem functions #UE4
#jira UE-41527
#jira UE-41518
Change 3286308 on 2017/02/03 by Ori.Cohen
Make sure physx trimesh scale is never too small. Fix box clamping being ignored. Fixes cook warnings for Odin.
#JIRA UE-41529
Change 3286396 on 2017/02/03 by Ori.Cohen
Fix CIS
Change 3286479 on 2017/02/03 by Ori.Cohen
Copying //UE4/Dev-Physics-Upgrade to Dev-Framework (//UE4/Dev-Framework)
Change 3287421 on 2017/02/06 by James.Golding
Merging //UE4/Dev-Main to Dev-Framework (//UE4/Dev-Framework) @ 3286819
Change 3287427 on 2017/02/06 by James.Golding
Fix PoseBlendNode to 'pass through' if no poses are activated
Change 3287430 on 2017/02/06 by James.Golding
- Add support to PoseDriver for evaluating source bone in the space of a different bone
- Fix driven bone adding a scale of 1
- Fix posedriver values 'sticking' (reset all weights to zero each frame)
- Move CopyTargetsFromPoseAsset and AutoSetTargetScales from FAnimNode_PoseDriver to UAnimGraphNode_PoseDriver (not required outside editor)
- Tranlsation targets now draw larger when selected
- 'Copy from pose asset' now also auto-sets radius for you
- Remove spammy warnings for missing poses/curves
- Add UPoseAsset::GetNumTracks and ::GetFullPose
- Remove unused ExtractionContext from UPoseAsset::GetBaseAnimationPose
- Remove bIncludeRefPoseAsNeutralPose option (not really useful since we no longer always normalize weights to 1.0)
Change 3287496 on 2017/02/06 by Chad.Garyet
fixing busted quotes around defaultvalues
Change 3287569 on 2017/02/06 by Mieszko.Zielinski
Orion BP fixed after deprecating NavigationSystem's BP API #Orion
Change 3287595 on 2017/02/06 by Benn.Gallagher
BuildPhysX.Automation: Deploying PhysX & NvCloth Win64 Win32 PS4 libs.
Built for new NvCloth upgrade
Change 3287598 on 2017/02/06 by Benn.Gallagher
NvCloth Upgrade to 21604115
Added Linux+Mac support
Change 3287710 on 2017/02/06 by Lukasz.Furman
added option to disable navlink polys at the end of generated paths
#ue4
Change 3287857 on 2017/02/06 by Benn.Gallagher
Fixed NvCloth module files to correctly set up linux and mac hopefully
Change 3287894 on 2017/02/06 by Benn.Gallagher
Another fix to NvCloth build files, didn't get picked up in VS for some reason.
Change 3287917 on 2017/02/06 by Lina.Halper
Copy from CharacterRigging to Dev-Framework
#code review:Thomas.Sarkanen, Martin.Wilson, James.Golding, Andrew.Rodham
Change 3287938 on 2017/02/06 by Thomas.Sarkanen
Fix crash opening a media sound wave
#jira UE-41582 - Editor crashes when running Automation test
Change 3287942 on 2017/02/06 by Marc.Audy
Merging //UE4/Dev-Main to Dev-Framework (//UE4/Dev-Framework) @ 3287682
Change 3288035 on 2017/02/06 by James.Golding
Remove C++ GameMode and pawn classes (replace with floating BP instead)
Resave anims to remove Orion refs
Add simple AnimBP and map for Mambo testing
Change 3288036 on 2017/02/06 by Benn.Gallagher
Fix to BuildPhysX task to trigger Mac and Linux builds properly
Change 3288125 on 2017/02/06 by Ori.Cohen
Change PhysXCommon back to dylib
Change 3288127 on 2017/02/06 by Benn.Gallagher
Fixed project file identification not working for NvCloth under XCode
Change 3288156 on 2017/02/06 by Benn.Gallagher
Disable "expansion-to-defined" warning in Linux NvCloth builds
Change 3288159 on 2017/02/06 by Lina.Halper
potential compile fix for Ocean Editor
#code review:Thomas.Sarkanen
Change 3288190 on 2017/02/06 by Ori.Cohen
Link against static PhysXCommon for mac
Change 3288200 on 2017/02/06 by Marc.Audy
Fix CIS
Change 3288270 on 2017/02/06 by Lina.Halper
fix compile error
#code review:Thomas.Sarkanen, Marc.Audy
Change 3288302 on 2017/02/06 by Thomas.Sarkanen
Fixed ensure when deselecting bones in anim BP editor
#jira UE-41274 - Ensure when clicking in the viewport of an animation blueprint
Change 3288348 on 2017/02/06 by Lina.Halper
- Enabled control rig
- Changed plugin name to be Control Rig
Change 3288490 on 2017/02/06 by Benn.Gallagher
Fixes for Mac attempting static links against NvCloth and failing to load dynamic libraries. Worked with MasonS to get Mac editor up and running.
Change 3288511 on 2017/02/06 by Lina.Halper
compile fix
Change 3288513 on 2017/02/06 by Lina.Halper
Check in content to work with
Change 3288615 on 2017/02/06 by Ori.Cohen
Fix skeletal mesh not simulating when using an aggregate.
#JIRA UE-41593
Change 3288791 on 2017/02/06 by thomas.sarkanen
Exposed transforms to cinematics so they can be animated
Change 3288795 on 2017/02/06 by Ori.Cohen
Fix lock warnings for physx
#JIRA UE-41591
Change 3288817 on 2017/02/06 by Charles.Anderson
GDC Arcblade setup tests.
Change 3288825 on 2017/02/06 by Lina.Halper
Fix build issue of shadow variable
Change 3289058 on 2017/02/06 by Ori.Cohen
Fix crash when immediate mode constraint generates 0 rows. This is a potentially temporary fix until NVIDIA replies with a better solution.
#JIRA UE-41026
Change 3289348 on 2017/02/06 by Lina.Halper
fix compile issue
Change 3289369 on 2017/02/06 by Lina.Halper
Renamed leg control to limb control and will be used for arm/feet.
- changed vars.
- has unused variables that will be used soon but want to check in so that i don't block content change on BaseHuman.
#code review:Thomas.Sakanen
Change 3289422 on 2017/02/06 by Lina.Halper
Fixed IK sinking issue - or moving
#code review:Thomas.Sarkanen
Change 3289433 on 2017/02/06 by Lina.Halper
Fixed real shadow error
Change 3289485 on 2017/02/06 by Lina.Halper
fixed build issue
Change 3289657 on 2017/02/07 by thomas.sarkanen
Added rig bone mapping to Ice's skeletal mesh
Change 3289658 on 2017/02/07 by thomas.sarkanen
Added ControlRig map with Ice setup to pose
Change 3289662 on 2017/02/07 by Thomas.Sarkanen
Fixed up static analysis warning
Change 3289663 on 2017/02/07 by Thomas.Sarkanen
Fixed crash when attempting to bind to skeletal mesh with already-set anim BP
Anim instance may not have actually been created when binding, so dont dereference it
Change 3289717 on 2017/02/07 by Benn.Gallagher
Switch Linux NvCloth to static for Linux builds. Adjust lib directory to match actual directory
Change 3289718 on 2017/02/07 by Benn.Gallagher
BuildPhysX.Automation: Deploying NvCloth Linux_x86_64-unknown-linux-gnu libs.
Change 3289744 on 2017/02/07 by Benn.Gallagher
Fixed missing masses causing crash initialising clothing actors
#jira UE-41599
Change 3289746 on 2017/02/07 by Danny.Bouimad
Adding Some Content for JamesG he wanted some nicer looking Pose driver test files.
Change 3289756 on 2017/02/07 by danny.bouimad
Changing the asset for JamesG.
Change 3289785 on 2017/02/07 by James.Golding
Replace old PoseDrive test with Danny's new one
Change 3289858 on 2017/02/07 by Lina.Halper
fixed issue with undo transaction buffer
Change 3289860 on 2017/02/07 by Benn.Gallagher
Fixed crash after reimporting a clothing asset with the clothing config open and then changing the confg
#jira UE-41655
Change 3289912 on 2017/02/07 by Thomas.Sarkanen
Merging using Raven_To_Dev-Framework
Originally from CLs 3249471, 3258522, 3260271, 3273791:
Sequencer: More work supporting array properties more generically
+ fixes
Change 3289962 on 2017/02/07 by James.Golding
Add thickness option to DrawWireDiamond
Change 3289963 on 2017/02/07 by James.Golding
Add spin option to VectorInputBox
Change 3289966 on 2017/02/07 by James.Golding
Add weight bar chart to PoseDriver details
Stop drawing pose weight text in viewport
Fix position targets not drawing larger when selected
Change 3290094 on 2017/02/07 by Thomas.Sarkanen
Fixed typo in filename (fallout from search and replace)
Change 3290119 on 2017/02/07 by Thomas.Sarkanen
Manipulators can now have their IK/FK space set on them
They are not drawn when the space for the chain that they control is not the same as their setting
Also fixed a crash with invalid objects when reloading maps.
Change 3290145 on 2017/02/07 by Thomas.Sarkanen
CIS fix for fallout from Raven changes
#jira UE-41670 - Mac editor fails to compile with PropertyTrackEditor errors
Change 3290319 on 2017/02/07 by Marc.Audy
Make sound player nodes hard reference the assets unless they are in a chain below a quality node.
Change 3290484 on 2017/02/07 by Richard.Hinckley
Fixing grammar in popup messages.
Change 3290533 on 2017/02/07 by Marc.Audy
Make GetAIController BlueprintPure
#jira UE-41654
Change 3290624 on 2017/02/07 by Marc.Audy
Reorder header to avoid include tool warnings
Change 3290697 on 2017/02/07 by Lina.Halper
- support FK manipulator being in local space
- fixed FK key spamming issue for making blend weight to be not keyable - this creates conflicts with enum
#code review: Thomas.Sarkanen
Change 3290748 on 2017/02/07 by Ori.Cohen
Touch immediate mode file to force physx re-link
Change 3290807 on 2017/02/07 by Richard.Hinckley
#jira UE-39891
Updates to assist in automatic documentation generation.
Change 3290946 on 2017/02/07 by Lina.Halper
Fix issue of notify looping.
#jira: UE-31463
#Code review:Martin.Wilson
Change 3291553 on 2017/02/07 by Lina.Halper
Rename/move file(s)
- modified mesh mapping controller window to be Control Rig
Change 3291571 on 2017/02/07 by Lina.Halper
added set up spine option
#code review:Thomas.Sarkanen
Change 3291581 on 2017/02/07 by Ori.Cohen
Temporarily turn off phat immediate mode preview which crashes.
Change 3291949 on 2017/02/08 by James.Golding
Merging //UE4/Dev-Main to Dev-Framework (//UE4/Dev-Framework) @ 3291819
Change 3291966 on 2017/02/08 by Lina.Halper
Fix issue with notify looping bug
#jira: UE-31463
Change 3292247 on 2017/02/08 by Marc.Audy
Clean up bad merge caused by Fortnite integration to main
Change 3292326 on 2017/02/08 by Marc.Audy
Merging //UE4/Dev-Main to Dev-Framework (//UE4/Dev-Framework) @ 3292313
Change 3292409 on 2017/02/08 by Marc.Audy
Resubmit FortPawn.cpp with proper code even though perforce doesn't think there is a difference since when you sync it, the contents are wrong.
Change 3292481 on 2017/02/08 by Ori.Cohen
Fix for convex hull cooking (from Josh.S)
#JIRA UE-41656
Change 3292492 on 2017/02/08 by Mieszko.Zielinski
Redone replacement of deprecated navigation system's BP functions in Fortnite BPs #Fortnite
Change 3292778 on 2017/02/08 by Ori.Cohen
Touch physx DDC key for new cooking.
#JIRA UE-41656
[CL 3293329 by Marc Audy in Main branch]
2017-02-08 17:53:41 -05:00
return LevelEditorTabManager ;
2014-03-14 14:13:41 -04:00
}
2015-06-24 15:57:37 -04:00
void SLevelEditor : : AttachSequencer ( TSharedPtr < SWidget > SequencerWidget , TSharedPtr < IAssetEditorInstance > NewSequencerAssetEditor )
{
struct Local
{
static void OnSequencerClosed ( TSharedRef < SDockTab > DockTab , TWeakPtr < IAssetEditorInstance > InSequencerAssetEditor )
{
Copying //UE4/Dev-Sequencer to //UE4/Main
==========================
MAJOR FEATURES + CHANGES
==========================
Change 2859626 on 2016/02/08 by Max.Preussner
Editor: Added SaveAs functionality to content asset editors
Change 2859666 on 2016/02/08 by Max.Chen
Sequencer: Fix crash in CheckForWorldGCLeaks when loading a new map because spawnables are left behind.
#jira UE-25616
Change 2859685 on 2016/02/08 by Max.Chen
Sequencer: Add prompt to save sub level sequences if they are dirty
#jira UE-26510
Change 2859715 on 2016/02/08 by Thomas.Sarkanen
Adding actor spawning recording
Actors are queued for record on spawn then added to the list like manually-specifed ones.
Changed almost everything about UActorRecording. We now record on a per-component basis, with property tracks encapsulated in each actor recording. Much effort is expended to make sure that the correct components are owned by their respective actors, as we can add and remove components at runtime, but they must be created up-front in the UMovieScene Blueprints. We go as far as to add our own SCS nodes to make sure components are correctly spawned.
Fixed infinite loop in FSequencer::AddSpawnable.
Fixed visibility track instance to work with scene components as well as actors.
Fixed particle track instance to work on UParticleSystemComponent rather than just AEmitters.
Added particle recorder.
Moved animation recording into an animation property recorder rather than having it as a special case. This still uses the animation recorder under the hood.
Moved old-style Matinee animation control into FMovieSceneSkeletalAnimationTrackInstance & made this work on USkeletalMeshComponents directly, rather than via the old interface.
Exposed SetMatineeAnimPositionInner and PreviewMatineeSetAnimPositionInner in FAnimMontageInstance so those utility functions can be used externally to Engine.
Added a predicate version of UMovieScene::FindPossessable.
Exposed UMovieSceneParticleSection::AddKey externally via MOVIESCENETRACKS_API so I can programmatically add keys.
Fixed a crash in FScalableFloatDetails::CustomizeHeader when selecting PIE projectiles in Orion.
Moved all recorders over to recording Actors or Components & store UObjects instead of AActors.
Allowed skeletal animation tracks on components as well as actors.
Change 2862675 on 2016/02/10 by Max.Chen
Sequencer: Add option to link the sequencer curve editor with the sequencer timeline.
Under General Options->Link Curve Editor Time Range. The default is false, so the sequencer and curve editor have separate time ranges.
#jira UE-25933
Change 2862699 on 2016/02/11 by Max.Chen
Sequencer: Added a playback status of jumping which the AudioTrack and Skeletal Mesh Track (anim notifies) ignores for updates. This is used to updating thumbnail at certain times.
#jira UE-26447, UE-26671
Change 2862712 on 2016/02/11 by Max.Chen
Sequencer: Fix spawnables firing off their particles. Disable auto activate on spawnable components
#jira UE-26390
Change 2862719 on 2016/02/11 by Max.Preussner
Editor: Refactored detail customizations for colors, rotators, vectors
- broke color and rotator customizations out into their own files
- added vector customizations (placeholder)
- cleaned up localization namespaces, forward declarations
Change 2866454 on 2016/02/14 by Max.Preussner
Sequencer: Removed ULevelEditorSequencerSettings; moved default settings into INI
Change 2866455 on 2016/02/14 by Thomas.Sarkanen
Sequence recorder can now record replays
Added extra edtior-only UI to the replay playback controls to record sequences. Curretnly very placeholder: only records the entire sequence and provides no feedback in the UI if it is recording.
Fixed bindings to recorded objects not working in various circumstances. Added the ability to manually create a binding.
Recompiled actor blueprints post-record if we added components.
Fixed a null ptr dereference in FOrionTeamUIInfo::Update.
Removed tolerances when reducing tracks - they are now 'very small'.
Added actor filter so actors of certain classes can be recorded.
Change 2866458 on 2016/02/14 by Max.Chen
Sequencer: Fix anim notifies that fire at shot cuts. Anim notifies are fired from the last position to the current position. When jumping cuts, we want the delta to be 0 so that the anim notifies before the shot are not fired off.
#jira UE-26390, UE-26671
Change 2866459 on 2016/02/14 by Max.Chen
Sequencer: Add option to toggle visibility of combined keys
Change 2866466 on 2016/02/14 by Frank.Fella
Sequencer - Add a track for controlling streamed level visibilty and remove visibility code from the master level blueprint.
Change 2866470 on 2016/02/14 by Max.Chen
Sequencer: Add return value to indicate data has changed when a section has been added. This fixes a bug where creating a new section doesn't seem to add a key.
#jira UE-26837
Change 2866481 on 2016/02/14 by Max.Preussner
Sequencer: Implemented Presets for adding tracks automatically based on actor type (UE-24513)
#Jira: UE-24513
Change 2866482 on 2016/02/14 by Max.Chen
Sequencer: Allow for any actor that has a camera component to be a camera cut.
#jira UE-26777
Change 2866484 on 2016/02/14 by Thomas.Sarkanen
Added in/out times to sequence recording
Also added the optional ability to record different actor types (heroes, projectiles, minions).
Change 2866495 on 2016/02/14 by Max.Chen
Sequencer: Need to limit camera control to the section bounds of the camera cut otherwise, control won't be relinquished back to player at the end of the playback.
#jira UE-26886
[CL 2874647 by Max Chen in Main branch]
2016-02-19 21:36:27 -05:00
TSharedPtr < IAssetEditorInstance > AssetEditorInstance = InSequencerAssetEditor . Pin ( ) ;
if ( AssetEditorInstance . IsValid ( ) )
{
InSequencerAssetEditor . Pin ( ) - > CloseWindow ( ) ;
}
2015-06-24 15:57:37 -04:00
}
} ;
2014-03-14 14:13:41 -04:00
2015-06-24 15:57:37 -04:00
static bool bIsReentrant = false ;
if ( ! bIsReentrant )
{
if ( SequencerAssetEditor . IsValid ( ) )
{
// Closing the window will invoke this method again but we are handling reopening with a new movie scene ourselves
TGuardValue < bool > ReentrantGuard ( bIsReentrant , true ) ;
// Shutdown cleanly
SequencerAssetEditor . Pin ( ) - > CloseWindow ( ) ;
}
2016-12-21 09:11:53 -05:00
TSharedRef < SDockTab > Tab = SNew ( SDockTab ) ;
2017-01-03 10:34:45 -05:00
Tab = InvokeTab ( " Sequencer " ) ;
2016-12-21 09:11:53 -05:00
if ( ! FGlobalTabmanager : : Get ( ) - > OnOverrideDockableAreaRestore_Handler . IsBound ( ) )
{
2017-01-03 10:34:45 -05:00
// Don't allow standard tab closing behavior when the override is active
2016-12-21 09:11:53 -05:00
Tab - > SetOnTabClosed ( SDockTab : : FOnTabClosedCallback : : CreateStatic ( & Local : : OnSequencerClosed , TWeakPtr < IAssetEditorInstance > ( NewSequencerAssetEditor ) ) ) ;
}
2015-06-24 15:57:37 -04:00
if ( SequencerWidget . IsValid ( ) & & NewSequencerAssetEditor . IsValid ( ) )
{
2015-10-01 09:51:41 -04:00
Tab - > SetContent ( SequencerWidget . ToSharedRef ( ) ) ;
2016-12-21 09:11:53 -05:00
SequencerWidgetPtr = SequencerWidget ;
2015-06-24 15:57:37 -04:00
SequencerAssetEditor = NewSequencerAssetEditor ;
2017-01-03 10:34:45 -05:00
if ( FGlobalTabmanager : : Get ( ) - > OnOverrideDockableAreaRestore_Handler . IsBound ( ) )
{
// @todo vreditor: more general vr editor tab manager should handle windows instead
2017-01-03 18:06:39 -05:00
// Close the original tab so we just work with the override window
Tab - > RequestCloseTab ( ) ;
2017-01-03 10:34:45 -05:00
}
2015-06-24 15:57:37 -04:00
}
else
{
2016-02-08 13:35:28 -05:00
Tab - > SetContent ( SNullWidget : : NullWidget ) ;
2015-06-24 15:57:37 -04:00
SequencerAssetEditor . Reset ( ) ;
}
}
}
2014-03-14 14:13:41 -04:00
2015-02-20 13:46:19 -05:00
TSharedRef < SDockTab > SLevelEditor : : SummonDetailsPanel ( FName TabIdentifier )
2015-01-06 13:49:19 -05:00
{
2016-03-11 17:29:00 -05:00
TSharedRef < SActorDetails > ActorDetails = StaticCastSharedRef < SActorDetails > ( CreateActorDetails ( TabIdentifier ) ) ;
2014-03-14 14:13:41 -04:00
2015-04-10 02:12:48 -04:00
const FText Label = NSLOCTEXT ( " LevelEditor " , " DetailsTabTitle " , " Details " ) ;
2014-03-14 14:13:41 -04:00
2015-01-06 13:49:19 -05:00
TSharedRef < SDockTab > DocTab = SNew ( SDockTab )
2014-03-14 14:13:41 -04:00
. Icon ( FEditorStyle : : GetBrush ( " LevelEditor.Tabs.Details " ) )
. Label ( Label )
. ToolTip ( IDocumentation : : Get ( ) - > CreateToolTip ( Label , nullptr , " Shared/LevelEditor " , " DetailsTab " ) )
[
2014-08-05 09:04:35 -04:00
SNew ( SBox )
2014-09-05 07:39:52 -04:00
. AddMetaData < FTutorialMetaData > ( FTutorialMetaData ( TEXT ( " ActorDetails " ) , TEXT ( " LevelEditorSelectionDetails " ) ) )
2014-03-14 14:13:41 -04:00
[
2015-04-10 02:12:48 -04:00
ActorDetails
2014-03-14 14:13:41 -04:00
]
] ;
2015-01-06 13:49:19 -05:00
return DocTab ;
}
2014-03-14 14:13:41 -04:00
/** Method to call when a tab needs to be spawned by the FLayoutService */
TSharedRef < SDockTab > SLevelEditor : : SpawnLevelEditorTab ( const FSpawnTabArgs & Args , FName TabIdentifier , FString InitializationPayload )
{
if ( TabIdentifier = = TEXT ( " LevelEditorViewport " ) )
{
return this - > BuildViewportTab ( NSLOCTEXT ( " LevelViewportTypes " , " LevelEditorViewport " , " Viewport 1 " ) , TEXT ( " Viewport 1 " ) , InitializationPayload ) ;
}
else if ( TabIdentifier = = TEXT ( " LevelEditorViewport_Clone1 " ) )
{
return this - > BuildViewportTab ( NSLOCTEXT ( " LevelViewportTypes " , " LevelEditorViewport_Clone1 " , " Viewport 2 " ) , TEXT ( " Viewport 2 " ) , InitializationPayload ) ;
}
else if ( TabIdentifier = = TEXT ( " LevelEditorViewport_Clone2 " ) )
{
return this - > BuildViewportTab ( NSLOCTEXT ( " LevelViewportTypes " , " LevelEditorViewport_Clone2 " , " Viewport 3 " ) , TEXT ( " Viewport 3 " ) , InitializationPayload ) ;
}
else if ( TabIdentifier = = TEXT ( " LevelEditorViewport_Clone3 " ) )
{
return this - > BuildViewportTab ( NSLOCTEXT ( " LevelViewportTypes " , " LevelEditorViewport_Clone3 " , " Viewport 4 " ) , TEXT ( " Viewport 4 " ) , InitializationPayload ) ;
}
else if ( TabIdentifier = = TEXT ( " LevelEditorToolBar " ) )
{
return SNew ( SDockTab )
. Label ( NSLOCTEXT ( " LevelEditor " , " ToolBarTabTitle " , " Toolbar " ) )
. ShouldAutosize ( true )
. Icon ( FEditorStyle : : GetBrush ( " ToolBar.Icon " ) )
[
2014-08-05 09:04:35 -04:00
SNew ( SHorizontalBox )
2015-03-27 06:34:29 -04:00
. AddMetaData < FTagMetaData > ( FTagMetaData ( TEXT ( " LevelEditorToolbar " ) ) )
2015-01-06 13:49:19 -05:00
+ SHorizontalBox : : Slot ( )
2014-08-05 09:04:35 -04:00
. FillWidth ( 1 )
. VAlign ( VAlign_Bottom )
. HAlign ( HAlign_Left )
2014-03-14 14:13:41 -04:00
[
2014-08-05 09:04:35 -04:00
FLevelEditorToolBar : : MakeLevelEditorToolBar ( LevelEditorCommands . ToSharedRef ( ) , SharedThis ( this ) )
2014-03-14 14:13:41 -04:00
]
] ;
}
else if ( TabIdentifier = = TEXT ( " LevelEditorSelectionDetails " ) | | TabIdentifier = = TEXT ( " LevelEditorSelectionDetails2 " ) | | TabIdentifier = = TEXT ( " LevelEditorSelectionDetails3 " ) | | TabIdentifier = = TEXT ( " LevelEditorSelectionDetails4 " ) )
{
2015-02-20 13:46:19 -05:00
TSharedRef < SDockTab > DetailsPanel = SummonDetailsPanel ( TabIdentifier ) ;
2014-03-14 14:13:41 -04:00
GUnrealEd - > UpdateFloatingPropertyWindows ( ) ;
return DetailsPanel ;
}
else if ( TabIdentifier = = TEXT ( " LevelEditorToolBox " ) )
{
2016-03-11 17:29:00 -05:00
TSharedRef < SLevelEditorToolBox > NewToolBox = StaticCastSharedRef < SLevelEditorToolBox > ( CreateToolBox ( ) ) ;
2014-03-14 14:13:41 -04:00
return SNew ( SDockTab )
. Icon ( FEditorStyle : : GetBrush ( " LevelEditor.Tabs.Modes " ) )
. Label ( NSLOCTEXT ( " LevelEditor " , " ToolsTabTitle " , " Modes " ) )
[
2014-08-05 09:04:35 -04:00
SNew ( SBox )
2014-09-05 07:39:52 -04:00
. AddMetaData < FTutorialMetaData > ( FTutorialMetaData ( TEXT ( " ToolsPanel " ) , TEXT ( " LevelEditorToolBox " ) ) )
2014-03-14 14:13:41 -04:00
[
NewToolBox
]
] ;
}
else if ( TabIdentifier = = LevelEditorBuildAndSubmitTab )
{
TSharedRef < SLevelEditorBuildAndSubmit > NewBuildAndSubmit = SNew ( SLevelEditorBuildAndSubmit , SharedThis ( this ) ) ;
TSharedRef < SDockTab > NewTab = SNew ( SDockTab )
. Icon ( FEditorStyle : : GetBrush ( " LevelEditor.Tabs.BuildAndSubmit " ) )
. Label ( NSLOCTEXT ( " LevelEditor " , " BuildAndSubmitTabTitle " , " Build and Submit " ) )
[
NewBuildAndSubmit
] ;
NewBuildAndSubmit - > SetDockableTab ( NewTab ) ;
return NewTab ;
}
else if ( TabIdentifier = = TEXT ( " LevelEditorSceneOutliner " ) )
{
2014-11-10 10:09:21 -05:00
SceneOutliner : : FInitializationOptions InitOptions ;
2014-03-14 14:13:41 -04:00
InitOptions . Mode = ESceneOutlinerMode : : ActorBrowsing ;
2014-04-23 16:39:22 -04:00
{
TWeakPtr < SLevelEditor > WeakLevelEditor = SharedThis ( this ) ;
InitOptions . DefaultMenuExtender = MakeShareable ( new FExtender ) ;
InitOptions . DefaultMenuExtender - > AddMenuExtension (
2014-11-10 10:09:21 -05:00
" MainSection " , EExtensionHook : : Before , GetLevelEditorActions ( ) ,
2014-05-29 17:14:20 -04:00
FMenuExtensionDelegate : : CreateStatic ( [ ] ( FMenuBuilder & MenuBuilder , TWeakPtr < SLevelEditor > InWeakLevelEditor ) {
2014-04-23 16:39:22 -04:00
// Only extend the menu if we have actors selected
2015-02-20 13:46:19 -05:00
if ( GEditor - > GetSelectedActorCount ( ) > 0 )
2014-04-23 16:39:22 -04:00
{
2014-05-29 17:14:20 -04:00
FLevelEditorContextMenu : : FillMenu ( MenuBuilder , InWeakLevelEditor , LevelEditorMenuContext : : NonViewport , TSharedPtr < FExtender > ( ) ) ;
2014-04-23 16:39:22 -04:00
}
} , WeakLevelEditor )
) ;
}
2014-03-14 14:13:41 -04:00
2015-02-06 09:03:00 -05:00
FText Label = NSLOCTEXT ( " LevelEditor " , " SceneOutlinerTabTitle " , " World Outliner " ) ;
2014-03-14 14:13:41 -04:00
FSceneOutlinerModule & SceneOutlinerModule = FModuleManager : : Get ( ) . LoadModuleChecked < FSceneOutlinerModule > ( " SceneOutliner " ) ;
return SNew ( SDockTab )
. Icon ( FEditorStyle : : GetBrush ( " LevelEditor.Tabs.Outliner " ) )
. Label ( Label )
. ToolTip ( IDocumentation : : Get ( ) - > CreateToolTip ( Label , nullptr , " Shared/LevelEditor " , " SceneOutlinerTab " ) )
[
2014-08-05 09:04:35 -04:00
SNew ( SBorder )
. Padding ( 4 )
. BorderImage ( FEditorStyle : : GetBrush ( " ToolPanel.GroupBorder " ) )
2014-09-05 07:39:52 -04:00
. AddMetaData < FTutorialMetaData > ( FTutorialMetaData ( TEXT ( " SceneOutliner " ) , TEXT ( " LevelEditorSceneOutliner " ) ) )
2014-03-14 14:13:41 -04:00
[
2014-08-05 09:04:35 -04:00
SceneOutlinerModule . CreateSceneOutliner (
InitOptions ,
FOnActorPicked ( ) /* Not used for outliner when in browsing mode */ )
2014-03-14 14:13:41 -04:00
]
] ;
}
else if ( TabIdentifier = = TEXT ( " LevelEditorLayerBrowser " ) )
{
FLayersModule & LayersModule = FModuleManager : : LoadModuleChecked < FLayersModule > ( " Layers " ) ;
return SNew ( SDockTab )
. Icon ( FEditorStyle : : GetBrush ( " LevelEditor.Tabs.Layers " ) )
. Label ( NSLOCTEXT ( " LevelEditor " , " LayersTabTitle " , " Layers " ) )
[
SNew ( SBorder )
. Padding ( 0 )
. BorderImage ( FEditorStyle : : GetBrush ( " ToolPanel.GroupBorder " ) )
2014-09-05 07:39:52 -04:00
. AddMetaData < FTutorialMetaData > ( FTutorialMetaData ( TEXT ( " LayerBrowser " ) , TEXT ( " LevelEditorLayerBrowser " ) ) )
2014-03-14 14:13:41 -04:00
[
LayersModule . CreateLayerBrowser ( )
]
] ;
}
2015-08-10 06:18:37 -04:00
else if ( TabIdentifier = = TEXT ( " LevelEditorHierarchicalLODOutliner " ) )
{
FHierarchicalLODOutlinerModule & HLODModule = FModuleManager : : LoadModuleChecked < FHierarchicalLODOutlinerModule > ( " HierarchicalLODOutliner " ) ;
return SNew ( SDockTab )
. Icon ( FEditorStyle : : GetBrush ( " LevelEditor.Tabs.HLOD " ) )
. Label ( NSLOCTEXT ( " LevelEditor " , " HLODTabTitle " , " Hierarchical LOD Outliner " ) )
[
SNew ( SBorder )
. Padding ( 0 )
. BorderImage ( FEditorStyle : : GetBrush ( " ToolPanel.GroupBorder " ) )
[
HLODModule . CreateHLODOutlinerWidget ( )
]
] ;
}
2015-04-22 00:24:23 -04:00
else if ( TabIdentifier = = WorldBrowserHierarchyTab )
2014-03-14 14:13:41 -04:00
{
2015-04-19 23:20:53 -04:00
FWorldBrowserModule & WorldBrowserModule = FModuleManager : : LoadModuleChecked < FWorldBrowserModule > ( " WorldBrowser " ) ;
return SNew ( SDockTab )
. Icon ( FEditorStyle : : GetBrush ( " LevelEditor.Tabs.WorldBrowser " ) )
. Label ( NSLOCTEXT ( " LevelEditor " , " WorldBrowserHierarchyTabTitle " , " Levels " ) )
[
WorldBrowserModule . CreateWorldBrowserHierarchy ( )
] ;
2014-03-14 14:13:41 -04:00
}
2015-04-19 23:20:53 -04:00
else if ( TabIdentifier = = WorldBrowserDetailsTab )
2014-03-14 14:13:41 -04:00
{
FWorldBrowserModule & WorldBrowserModule = FModuleManager : : LoadModuleChecked < FWorldBrowserModule > ( " WorldBrowser " ) ;
return SNew ( SDockTab )
2014-06-26 01:54:04 -04:00
. Icon ( FEditorStyle : : GetBrush ( " LevelEditor.Tabs.WorldBrowserDetails " ) )
. Label ( NSLOCTEXT ( " LevelEditor " , " WorldBrowserDetailsTabTitle " , " Level Details " ) )
2014-05-14 02:16:14 -04:00
[
WorldBrowserModule . CreateWorldBrowserDetails ( )
] ;
}
2015-04-19 23:20:53 -04:00
else if ( TabIdentifier = = WorldBrowserCompositionTab )
2014-05-14 02:16:14 -04:00
{
FWorldBrowserModule & WorldBrowserModule = FModuleManager : : LoadModuleChecked < FWorldBrowserModule > ( " WorldBrowser " ) ;
return SNew ( SDockTab )
2014-06-26 01:54:04 -04:00
. Icon ( FEditorStyle : : GetBrush ( " LevelEditor.Tabs.WorldBrowserComposition " ) )
2014-07-09 04:30:41 -04:00
. Label ( NSLOCTEXT ( " LevelEditor " , " WorldBrowserCompositionTabTitle " , " World Composition " ) )
2014-05-14 02:16:14 -04:00
[
WorldBrowserModule . CreateWorldBrowserComposition ( )
2014-03-14 14:13:41 -04:00
] ;
}
2015-09-09 14:49:53 -04:00
else if ( TabIdentifier = = TEXT ( " Sequencer " ) )
2014-03-14 14:13:41 -04:00
{
2015-09-29 15:15:21 -04:00
if ( FSlateStyleRegistry : : FindSlateStyle ( " LevelSequenceEditorStyle " ) )
2015-09-13 01:39:42 -04:00
{
// @todo sequencer: remove when world-centric mode is added
2015-10-01 09:51:41 -04:00
return SNew ( SDockTab )
2016-12-21 09:11:53 -05:00
. Icon ( FSlateStyleRegistry : : FindSlateStyle ( " LevelSequenceEditorStyle " ) - > GetBrush ( " LevelSequenceEditor.Tabs.Sequencer " ) )
. Label ( NSLOCTEXT ( " Sequencer " , " SequencerMainTitle " , " Sequencer " ) )
2015-09-13 01:39:42 -04:00
[
SNullWidget : : NullWidget
] ;
}
2014-03-14 14:13:41 -04:00
}
else if ( TabIdentifier = = LevelEditorStatsViewerTab )
{
FStatsViewerModule & StatsViewerModule = FModuleManager : : Get ( ) . LoadModuleChecked < FStatsViewerModule > ( " StatsViewer " ) ;
return SNew ( SDockTab )
. Icon ( FEditorStyle : : GetBrush ( " LevelEditor.Tabs.StatsViewer " ) )
. Label ( NSLOCTEXT ( " LevelEditor " , " StatsViewerTabTitle " , " Statistics " ) )
[
2015-10-01 09:51:41 -04:00
StatsViewerModule . CreateStatsViewer ( )
2014-03-14 14:13:41 -04:00
] ;
}
else if ( TabIdentifier = = " WorldSettingsTab " )
{
FPropertyEditorModule & PropPlugin = FModuleManager : : LoadModuleChecked < FPropertyEditorModule > ( " PropertyEditor " ) ;
2015-01-26 17:14:50 -05:00
FDetailsViewArgs DetailsViewArgs ( false , false , true , FDetailsViewArgs : : HideNameArea , false , GUnrealEd ) ;
2014-03-14 14:13:41 -04:00
DetailsViewArgs . bShowActorLabel = false ;
WorldSettingsView = PropPlugin . CreateDetailView ( DetailsViewArgs ) ;
if ( GetWorld ( ) ! = NULL )
{
WorldSettingsView - > SetObject ( GetWorld ( ) - > GetWorldSettings ( ) ) ;
}
return SNew ( SDockTab )
. Icon ( FEditorStyle : : GetBrush ( " LevelEditor.WorldProperties.Tab " ) )
. Label ( NSLOCTEXT ( " LevelEditor " , " WorldSettingsTabTitle " , " World Settings " ) )
2014-09-05 07:39:52 -04:00
. AddMetaData < FTutorialMetaData > ( FTutorialMetaData ( TEXT ( " WorldSettings " ) , TEXT ( " WorldSettingsTab " ) ) )
2014-03-14 14:13:41 -04:00
[
WorldSettingsView . ToSharedRef ( )
] ;
}
return SNew ( SDockTab ) ;
}
2015-10-01 09:51:41 -04:00
TSharedRef < SDockTab > SLevelEditor : : InvokeTab ( FName TabID )
2014-03-14 14:13:41 -04:00
{
TSharedPtr < FTabManager > LevelEditorTabManager = GetTabManager ( ) ;
2015-10-01 09:51:41 -04:00
return LevelEditorTabManager - > InvokeTab ( TabID ) ;
2014-03-14 14:13:41 -04:00
}
void SLevelEditor : : SyncDetailsToSelection ( )
{
static const FName DetailsTabIdentifiers [ ] = { " LevelEditorSelectionDetails " , " LevelEditorSelectionDetails2 " , " LevelEditorSelectionDetails3 " , " LevelEditorSelectionDetails4 " } ;
FPropertyEditorModule & PropPlugin = FModuleManager : : LoadModuleChecked < FPropertyEditorModule > ( " PropertyEditor " ) ;
FName FirstClosedDetailsTabIdentifier ;
// First see if there is an already open details view that can handle the request
// For instance, if "Details 3" is open, we don't want to open "Details 2" to handle this
for ( const FName & DetailsTabIdentifier : DetailsTabIdentifiers )
{
TSharedPtr < IDetailsView > DetailsView = PropPlugin . FindDetailView ( DetailsTabIdentifier ) ;
if ( ! DetailsView . IsValid ( ) )
{
// Track the first closed details view in case no currently open ones can handle our request
if ( FirstClosedDetailsTabIdentifier . IsNone ( ) )
{
FirstClosedDetailsTabIdentifier = DetailsTabIdentifier ;
}
continue ;
}
if ( DetailsView - > IsUpdatable ( ) & & ! DetailsView - > IsLocked ( ) )
{
InvokeTab ( DetailsTabIdentifier ) ;
return ;
}
}
// If we got this far then there were no open details views, so open the first available one
if ( ! FirstClosedDetailsTabIdentifier . IsNone ( ) )
{
InvokeTab ( FirstClosedDetailsTabIdentifier ) ;
}
}
/** Builds a viewport tab. */
TSharedRef < SDockTab > SLevelEditor : : BuildViewportTab ( const FText & Label , const FString LayoutId , const FString & InitializationPayload )
{
// The tab must be created before the viewport layout because the layout needs them
TSharedRef < SDockTab > DockableTab =
SNew ( SDockTab )
. Label ( Label )
. Icon ( FEditorStyle : : GetBrush ( " LevelEditor.Tabs.Viewports " ) )
. OnTabClosed ( this , & SLevelEditor : : OnViewportTabClosed ) ;
// Create a new tab
TSharedRef < FLevelViewportTabContent > ViewportTabContent = MakeShareable ( new FLevelViewportTabContent ( ) ) ;
// Track the viewport
CleanupPointerArray ( ViewportTabs ) ;
ViewportTabs . Add ( ViewportTabContent ) ;
ViewportTabContent - > Initialize ( SharedThis ( this ) , DockableTab , LayoutId ) ;
// Restore transient camera position
RestoreViewportTabInfo ( ViewportTabContent ) ;
return DockableTab ;
}
void SLevelEditor : : OnViewportTabClosed ( TSharedRef < SDockTab > ClosedTab )
{
TWeakPtr < FLevelViewportTabContent > * const ClosedTabContent = ViewportTabs . FindByPredicate ( [ & ClosedTab ] ( TWeakPtr < FLevelViewportTabContent > & InPotentialElement ) - > bool
{
TSharedPtr < FLevelViewportTabContent > ViewportTabContent = InPotentialElement . Pin ( ) ;
return ViewportTabContent . IsValid ( ) & & ViewportTabContent - > BelongsToTab ( ClosedTab ) ;
} ) ;
if ( ClosedTabContent )
{
TSharedPtr < FLevelViewportTabContent > ClosedTabContentPin = ClosedTabContent - > Pin ( ) ;
if ( ClosedTabContentPin . IsValid ( ) )
{
SaveViewportTabInfo ( ClosedTabContentPin . ToSharedRef ( ) ) ;
// Untrack the viewport
ViewportTabs . Remove ( ClosedTabContentPin ) ;
CleanupPointerArray ( ViewportTabs ) ;
}
}
}
void SLevelEditor : : SaveViewportTabInfo ( TSharedRef < const FLevelViewportTabContent > ViewportTabContent )
{
2016-02-08 13:35:28 -05:00
const TMap < FName , TSharedPtr < IViewportLayoutEntity > > * const Viewports = ViewportTabContent - > GetViewports ( ) ;
2014-03-14 14:13:41 -04:00
if ( Viewports )
{
const FString & LayoutId = ViewportTabContent - > GetLayoutString ( ) ;
2016-02-08 13:35:28 -05:00
for ( auto & Pair : * Viewports )
2014-03-14 14:13:41 -04:00
{
2016-02-08 13:35:28 -05:00
TSharedPtr < SLevelViewport > Viewport = Pair . Value - > AsLevelViewport ( ) ;
if ( ! Viewport . IsValid ( ) )
{
continue ;
}
2014-03-14 14:13:41 -04:00
//@todo there could potentially be more than one of the same viewport type. This effectively takes the last one of a specific type
const FLevelEditorViewportClient & LevelViewportClient = Viewport - > GetLevelViewportClient ( ) ;
const FString Key = FString : : Printf ( TEXT ( " %s[%d] " ) , * LayoutId , static_cast < int32 > ( LevelViewportClient . ViewportType ) ) ;
TransientEditorViews . Add (
Key , FLevelViewportInfo (
LevelViewportClient . GetViewLocation ( ) ,
LevelViewportClient . GetViewRotation ( ) ,
LevelViewportClient . GetOrthoZoom ( )
)
) ;
}
}
}
void SLevelEditor : : RestoreViewportTabInfo ( TSharedRef < FLevelViewportTabContent > ViewportTabContent ) const
{
2016-02-08 13:35:28 -05:00
const TMap < FName , TSharedPtr < IViewportLayoutEntity > > * const Viewports = ViewportTabContent - > GetViewports ( ) ;
2014-03-14 14:13:41 -04:00
if ( Viewports )
{
const FString & LayoutId = ViewportTabContent - > GetLayoutString ( ) ;
2016-02-08 13:35:28 -05:00
for ( auto & Pair : * Viewports )
2014-03-14 14:13:41 -04:00
{
2016-02-08 13:35:28 -05:00
TSharedPtr < SLevelViewport > Viewport = Pair . Value - > AsLevelViewport ( ) ;
if ( ! Viewport . IsValid ( ) )
{
continue ;
}
2014-03-14 14:13:41 -04:00
FLevelEditorViewportClient & LevelViewportClient = Viewport - > GetLevelViewportClient ( ) ;
2014-11-24 12:49:20 -05:00
bool bInitializedOrthoViewport = false ;
for ( int32 ViewportType = 0 ; ViewportType < LVT_MAX ; ViewportType + + )
2014-03-14 14:13:41 -04:00
{
2014-11-24 12:49:20 -05:00
if ( ViewportType = = LVT_Perspective | | ! bInitializedOrthoViewport )
{
const FString Key = FString : : Printf ( TEXT ( " %s[%d] " ) , * LayoutId , ViewportType ) ;
const FLevelViewportInfo * const TransientEditorView = TransientEditorViews . Find ( Key ) ;
if ( TransientEditorView )
{
LevelViewportClient . SetInitialViewTransform (
static_cast < ELevelViewportType > ( ViewportType ) ,
TransientEditorView - > CamPosition ,
TransientEditorView - > CamRotation ,
TransientEditorView - > CamOrthoZoom
) ;
if ( ViewportType ! = LVT_Perspective )
{
bInitializedOrthoViewport = true ;
}
}
}
2014-03-14 14:13:41 -04:00
}
}
}
}
void SLevelEditor : : ResetViewportTabInfo ( )
{
TransientEditorViews . Reset ( ) ;
}
TSharedRef < SWidget > SLevelEditor : : RestoreContentArea ( const TSharedRef < SDockTab > & OwnerTab , const TSharedRef < SWindow > & OwnerWindow )
{
const IWorkspaceMenuStructure & MenuStructure = WorkspaceMenu : : GetMenuStructure ( ) ;
FLevelEditorModule & LevelEditorModule = FModuleManager : : GetModuleChecked < FLevelEditorModule > ( LevelEditorModuleName ) ;
LevelEditorModule . SetLevelEditorTabManager ( OwnerTab ) ;
TSharedPtr < FTabManager > LevelEditorTabManager = LevelEditorModule . GetLevelEditorTabManager ( ) ;
// Register Level Editor tab spawners
{
{
const FText ViewportTooltip = NSLOCTEXT ( " LevelEditorTabs " , " LevelEditorViewportTooltip " , " Open a Viewport tab. Use this to view and edit the current level. " ) ;
const FSlateIcon ViewportIcon ( FEditorStyle : : GetStyleSetName ( ) , " LevelEditor.Tabs.Viewports " ) ;
LevelEditorTabManager - > RegisterTabSpawner ( " LevelEditorViewport " , FOnSpawnTab : : CreateSP ( this , & SLevelEditor : : SpawnLevelEditorTab , FName ( " LevelEditorViewport " ) , FString ( ) ) )
. SetDisplayName ( NSLOCTEXT ( " LevelEditorTabs " , " LevelEditorViewport " , " Viewport 1 " ) )
. SetTooltipText ( ViewportTooltip )
. SetGroup ( MenuStructure . GetLevelEditorViewportsCategory ( ) )
. SetIcon ( ViewportIcon ) ;
LevelEditorTabManager - > RegisterTabSpawner ( " LevelEditorViewport_Clone1 " , FOnSpawnTab : : CreateSP ( this , & SLevelEditor : : SpawnLevelEditorTab , FName ( " LevelEditorViewport_Clone1 " ) , FString ( ) ) )
. SetDisplayName ( NSLOCTEXT ( " LevelEditorTabs " , " LevelEditorViewport_Clone1 " , " Viewport 2 " ) )
. SetTooltipText ( ViewportTooltip )
. SetGroup ( MenuStructure . GetLevelEditorViewportsCategory ( ) )
. SetIcon ( ViewportIcon ) ;
LevelEditorTabManager - > RegisterTabSpawner ( " LevelEditorViewport_Clone2 " , FOnSpawnTab : : CreateSP ( this , & SLevelEditor : : SpawnLevelEditorTab , FName ( " LevelEditorViewport_Clone2 " ) , FString ( ) ) )
. SetDisplayName ( NSLOCTEXT ( " LevelEditorTabs " , " LevelEditorViewport_Clone2 " , " Viewport 3 " ) )
. SetTooltipText ( ViewportTooltip )
. SetGroup ( MenuStructure . GetLevelEditorViewportsCategory ( ) )
. SetIcon ( ViewportIcon ) ;
LevelEditorTabManager - > RegisterTabSpawner ( " LevelEditorViewport_Clone3 " , FOnSpawnTab : : CreateSP ( this , & SLevelEditor : : SpawnLevelEditorTab , FName ( " LevelEditorViewport_Clone3 " ) , FString ( ) ) )
. SetDisplayName ( NSLOCTEXT ( " LevelEditorTabs " , " LevelEditorViewport_Clone3 " , " Viewport 4 " ) )
. SetTooltipText ( ViewportTooltip )
. SetGroup ( MenuStructure . GetLevelEditorViewportsCategory ( ) )
. SetIcon ( ViewportIcon ) ;
}
{
const FSlateIcon ToolbarIcon ( FEditorStyle : : GetStyleSetName ( ) , " LevelEditor.Tabs.Toolbar " ) ;
LevelEditorTabManager - > RegisterTabSpawner ( " LevelEditorToolBar " , FOnSpawnTab : : CreateSP < SLevelEditor , FName , FString > ( this , & SLevelEditor : : SpawnLevelEditorTab , FName ( " LevelEditorToolBar " ) , FString ( ) ) )
. SetDisplayName ( NSLOCTEXT ( " LevelEditorTabs " , " LevelEditorToolBar " , " Toolbar " ) )
. SetTooltipText ( NSLOCTEXT ( " LevelEditorTabs " , " LevelEditorToolBarTooltipText " , " Open the Toolbar tab, which provides access to the most common / important actions. " ) )
. SetGroup ( MenuStructure . GetLevelEditorCategory ( ) )
. SetIcon ( ToolbarIcon ) ;
}
{
const FText DetailsTooltip = NSLOCTEXT ( " LevelEditorTabs " , " LevelEditorSelectionDetailsTooltip " , " Open a Details tab. Use this to view and edit properties of the selected object(s). " ) ;
const FSlateIcon DetailsIcon ( FEditorStyle : : GetStyleSetName ( ) , " LevelEditor.Tabs.Details " ) ;
LevelEditorTabManager - > RegisterTabSpawner ( " LevelEditorSelectionDetails " , FOnSpawnTab : : CreateSP < SLevelEditor , FName , FString > ( this , & SLevelEditor : : SpawnLevelEditorTab , FName ( " LevelEditorSelectionDetails " ) , FString ( ) ) )
. SetDisplayName ( NSLOCTEXT ( " LevelEditorTabs " , " LevelEditorSelectionDetails " , " Details 1 " ) )
. SetTooltipText ( DetailsTooltip )
. SetGroup ( MenuStructure . GetLevelEditorDetailsCategory ( ) )
. SetIcon ( DetailsIcon ) ;
LevelEditorTabManager - > RegisterTabSpawner ( " LevelEditorSelectionDetails2 " , FOnSpawnTab : : CreateSP < SLevelEditor , FName , FString > ( this , & SLevelEditor : : SpawnLevelEditorTab , FName ( " LevelEditorSelectionDetails2 " ) , FString ( ) ) )
. SetDisplayName ( NSLOCTEXT ( " LevelEditorTabs " , " LevelEditorSelectionDetails2 " , " Details 2 " ) )
. SetTooltipText ( DetailsTooltip )
. SetGroup ( MenuStructure . GetLevelEditorDetailsCategory ( ) )
. SetIcon ( DetailsIcon ) ;
LevelEditorTabManager - > RegisterTabSpawner ( " LevelEditorSelectionDetails3 " , FOnSpawnTab : : CreateSP < SLevelEditor , FName , FString > ( this , & SLevelEditor : : SpawnLevelEditorTab , FName ( " LevelEditorSelectionDetails3 " ) , FString ( ) ) )
. SetDisplayName ( NSLOCTEXT ( " LevelEditorTabs " , " LevelEditorSelectionDetails3 " , " Details 3 " ) )
. SetTooltipText ( DetailsTooltip )
. SetGroup ( MenuStructure . GetLevelEditorDetailsCategory ( ) )
. SetIcon ( DetailsIcon ) ;
LevelEditorTabManager - > RegisterTabSpawner ( " LevelEditorSelectionDetails4 " , FOnSpawnTab : : CreateSP < SLevelEditor , FName , FString > ( this , & SLevelEditor : : SpawnLevelEditorTab , FName ( " LevelEditorSelectionDetails4 " ) , FString ( ) ) )
. SetDisplayName ( NSLOCTEXT ( " LevelEditorTabs " , " LevelEditorSelectionDetails4 " , " Details 4 " ) )
. SetTooltipText ( DetailsTooltip )
. SetGroup ( MenuStructure . GetLevelEditorDetailsCategory ( ) )
. SetIcon ( DetailsIcon ) ;
}
const FSlateIcon ToolsIcon ( FEditorStyle : : GetStyleSetName ( ) , " LevelEditor.Tabs.Modes " ) ;
LevelEditorTabManager - > RegisterTabSpawner ( " LevelEditorToolBox " , FOnSpawnTab : : CreateSP < SLevelEditor , FName , FString > ( this , & SLevelEditor : : SpawnLevelEditorTab , FName ( " LevelEditorToolBox " ) , FString ( ) ) )
. SetDisplayName ( NSLOCTEXT ( " LevelEditorTabs " , " LevelEditorToolBox " , " Modes " ) )
. SetTooltipText ( NSLOCTEXT ( " LevelEditorTabs " , " LevelEditorToolBoxTooltipText " , " Open the Modes tab, which specifies all the available editing modes. " ) )
. SetGroup ( MenuStructure . GetLevelEditorCategory ( ) )
. SetIcon ( ToolsIcon ) ;
{
const FSlateIcon OutlinerIcon ( FEditorStyle : : GetStyleSetName ( ) , " LevelEditor.Tabs.Outliner " ) ;
LevelEditorTabManager - > RegisterTabSpawner ( " LevelEditorSceneOutliner " , FOnSpawnTab : : CreateSP < SLevelEditor , FName , FString > ( this , & SLevelEditor : : SpawnLevelEditorTab , FName ( " LevelEditorSceneOutliner " ) , FString ( ) ) )
2015-02-06 09:03:00 -05:00
. SetDisplayName ( NSLOCTEXT ( " LevelEditorTabs " , " LevelEditorSceneOutliner " , " World Outliner " ) )
. SetTooltipText ( NSLOCTEXT ( " LevelEditorTabs " , " LevelEditorSceneOutlinerTooltipText " , " Open the World Outliner tab, which provides a searchable and filterable list of all actors in the world. " ) )
2014-03-14 14:13:41 -04:00
. SetGroup ( MenuStructure . GetLevelEditorCategory ( ) )
. SetIcon ( OutlinerIcon ) ;
}
{
const FSlateIcon LayersIcon ( FEditorStyle : : GetStyleSetName ( ) , " LevelEditor.Tabs.Layers " ) ;
LevelEditorTabManager - > RegisterTabSpawner ( " LevelEditorLayerBrowser " , FOnSpawnTab : : CreateSP < SLevelEditor , FName , FString > ( this , & SLevelEditor : : SpawnLevelEditorTab , FName ( " LevelEditorLayerBrowser " ) , FString ( ) ) )
. SetDisplayName ( NSLOCTEXT ( " LevelEditorTabs " , " LevelEditorLayerBrowser " , " Layers " ) )
2015-02-06 09:03:00 -05:00
. SetTooltipText ( NSLOCTEXT ( " LevelEditorTabs " , " LevelEditorLayerBrowserTooltipText " , " Open the Layers tab. Use this to manage which actors in the world belong to which layers. " ) )
2014-03-14 14:13:41 -04:00
. SetGroup ( MenuStructure . GetLevelEditorCategory ( ) )
. SetIcon ( LayersIcon ) ;
}
2015-08-10 06:18:37 -04:00
{
const FSlateIcon LayersIcon ( FEditorStyle : : GetStyleSetName ( ) , " LevelEditor.Tabs.HLOD " ) ;
LevelEditorTabManager - > RegisterTabSpawner ( " LevelEditorHierarchicalLODOutliner " , FOnSpawnTab : : CreateSP < SLevelEditor , FName , FString > ( this , & SLevelEditor : : SpawnLevelEditorTab , FName ( " LevelEditorHierarchicalLODOutliner " ) , FString ( ) ) )
. SetDisplayName ( NSLOCTEXT ( " LevelEditorTabs " , " LevelEditorHierarchicalLODOutliner " , " Hierarchical LOD Outliner " ) )
. SetTooltipText ( NSLOCTEXT ( " LevelEditorTabs " , " LevelEditorHierarchicalLODOutlinerTooltipText " , " Open the Hierarchical LOD Outliner. " ) )
. SetGroup ( MenuStructure . GetLevelEditorCategory ( ) )
. SetIcon ( LayersIcon ) ;
}
2014-03-14 14:13:41 -04:00
{
2014-06-26 01:54:04 -04:00
LevelEditorTabManager - > RegisterTabSpawner ( WorldBrowserHierarchyTab , FOnSpawnTab : : CreateSP < SLevelEditor , FName , FString > ( this , & SLevelEditor : : SpawnLevelEditorTab , WorldBrowserHierarchyTab , FString ( ) ) )
. SetDisplayName ( NSLOCTEXT ( " LevelEditorTabs " , " WorldBrowserHierarchy " , " Levels " ) )
. SetTooltipText ( NSLOCTEXT ( " LevelEditorTabs " , " WorldBrowserHierarchyTooltipText " , " Open the Levels tab. Use this to manage the levels in the current project. " ) )
. SetGroup ( WorkspaceMenu : : GetMenuStructure ( ) . GetLevelEditorCategory ( ) )
. SetIcon ( FSlateIcon ( FEditorStyle : : GetStyleSetName ( ) , " LevelEditor.Tabs.WorldBrowser " ) ) ;
LevelEditorTabManager - > RegisterTabSpawner ( WorldBrowserDetailsTab , FOnSpawnTab : : CreateSP < SLevelEditor , FName , FString > ( this , & SLevelEditor : : SpawnLevelEditorTab , WorldBrowserDetailsTab , FString ( ) ) )
2014-10-27 09:51:25 -04:00
. SetMenuType ( ETabSpawnerMenuType : : Hidden )
2014-06-26 01:54:04 -04:00
. SetDisplayName ( NSLOCTEXT ( " LevelEditorTabs " , " WorldBrowserDetails " , " Level Details " ) )
. SetGroup ( WorkspaceMenu : : GetMenuStructure ( ) . GetLevelEditorCategory ( ) )
. SetIcon ( FSlateIcon ( FEditorStyle : : GetStyleSetName ( ) , " LevelEditor.Tabs.WorldBrowserDetails " ) ) ;
LevelEditorTabManager - > RegisterTabSpawner ( WorldBrowserCompositionTab , FOnSpawnTab : : CreateSP < SLevelEditor , FName , FString > ( this , & SLevelEditor : : SpawnLevelEditorTab , WorldBrowserCompositionTab , FString ( ) ) )
2014-10-27 09:51:25 -04:00
. SetMenuType ( ETabSpawnerMenuType : : Hidden )
2014-07-09 04:30:41 -04:00
. SetDisplayName ( NSLOCTEXT ( " LevelEditorTabs " , " WorldBrowserComposition " , " World Composition " ) )
2014-06-26 01:54:04 -04:00
. SetGroup ( WorkspaceMenu : : GetMenuStructure ( ) . GetLevelEditorCategory ( ) )
. SetIcon ( FSlateIcon ( FEditorStyle : : GetStyleSetName ( ) , " LevelEditor.Tabs.WorldBrowserComposition " ) ) ;
2014-03-14 14:13:41 -04:00
}
2015-09-10 11:04:52 -04:00
2014-03-14 14:13:41 -04:00
{
const FSlateIcon StatsViewerIcon ( FEditorStyle : : GetStyleSetName ( ) , " LevelEditor.Tabs.StatsViewer " ) ;
2015-09-10 11:04:52 -04:00
LevelEditorTabManager - > RegisterTabSpawner ( LevelEditorStatsViewerTab , FOnSpawnTab : : CreateSP < SLevelEditor , FName , FString > ( this , & SLevelEditor : : SpawnLevelEditorTab , LevelEditorStatsViewerTab , FString ( ) ) )
2014-03-14 14:13:41 -04:00
. SetDisplayName ( NSLOCTEXT ( " LevelEditorTabs " , " LevelEditorStatsViewer " , " Statistics " ) )
. SetTooltipText ( NSLOCTEXT ( " LevelEditorTabs " , " LevelEditorStatsViewerTooltipText " , " Open the Statistics tab, in order to see data pertaining to lighting, textures and primitives. " ) )
2015-09-10 11:04:52 -04:00
. SetGroup ( MenuStructure . GetLevelEditorCategory ( ) )
. SetIcon ( StatsViewerIcon ) ;
2014-03-14 14:13:41 -04:00
}
{
2015-09-10 11:04:52 -04:00
// @todo remove when world-centric mode is added
2015-09-29 15:15:21 -04:00
const FSlateIcon SequencerIcon ( " LevelSequenceEditorStyle " , " LevelSequenceEditor.Tabs.Sequencer " ) ;
2014-03-14 14:13:41 -04:00
LevelEditorTabManager - > RegisterTabSpawner ( " Sequencer " , FOnSpawnTab : : CreateSP < SLevelEditor , FName , FString > ( this , & SLevelEditor : : SpawnLevelEditorTab , FName ( " Sequencer " ) , FString ( ) ) )
. SetDisplayName ( NSLOCTEXT ( " LevelEditorTabs " , " Sequencer " , " Sequencer " ) )
2015-09-11 00:15:42 -04:00
. SetGroup ( MenuStructure . GetLevelEditorCategory ( ) )
. SetIcon ( SequencerIcon ) ;
2014-03-14 14:13:41 -04:00
}
{
2014-09-18 09:37:58 -04:00
const FSlateIcon WorldPropertiesIcon ( FEditorStyle : : GetStyleSetName ( ) , " LevelEditor.WorldProperties.Tab " ) ;
2014-03-14 14:13:41 -04:00
LevelEditorTabManager - > RegisterTabSpawner ( " WorldSettingsTab " , FOnSpawnTab : : CreateSP < SLevelEditor , FName , FString > ( this , & SLevelEditor : : SpawnLevelEditorTab , FName ( " WorldSettingsTab " ) , FString ( ) ) )
. SetDisplayName ( NSLOCTEXT ( " LevelEditorTabs " , " WorldSettings " , " World Settings " ) )
. SetTooltipText ( NSLOCTEXT ( " LevelEditorTabs " , " WorldSettingsTooltipText " , " Open the World Settings tab, in which global properties of the level can be viewed and edited. " ) )
. SetGroup ( MenuStructure . GetLevelEditorCategory ( ) )
. SetIcon ( WorldPropertiesIcon ) ;
}
2015-05-13 10:29:25 -04:00
FTabSpawnerEntry & BuildAndSubmitEntry = LevelEditorTabManager - > RegisterTabSpawner ( LevelEditorBuildAndSubmitTab , FOnSpawnTab : : CreateSP < SLevelEditor , FName , FString > ( this , & SLevelEditor : : SpawnLevelEditorTab , LevelEditorBuildAndSubmitTab , FString ( ) ) ) ;
BuildAndSubmitEntry . SetAutoGenerateMenuEntry ( false ) ;
Copying //UE4/Dev-Sequencer to //UE4/Dev-Main (Source: //UE4/Dev-Sequencer @ 3237992)
#lockdown Nick.Penwarden
#rb none
==========================
MAJOR FEATURES + CHANGES
==========================
Change 3136778 on 2016/09/22 by Max.Preussner
Merged Dev-Main to Dev-Sequencer
Change 3179199 on 2016/10/29 by Max.Chen
Sequencer: Fade only oin the current player context, not on all worlds.
Copy from Release-4.14. Copied fix to FadeTrackInstance to FadeTemplate.
#jira UE-37939
Change 3179340 on 2016/10/29 by Max.Preussner
PS4Media: Fixed audio track dropping first frame
Change 3180391 on 2016/10/31 by Max.Preussner
UdpMessaging: nulling out message processor in destructor
Change 3180459 on 2016/10/31 by Max.Chen
Sequencer: Fix copy/paste crash in UMG.
Change 3180607 on 2016/10/31 by Andrew.Rodham
UMG: Fixed parent bindings not being adhered to correctly. Fixed slot widgets that get recreated not having their object bindings updated.
#jira UE-38021
#jira UE-38018
Change 3181405 on 2016/11/01 by Lina.Halper
#ANIM/SEQUCNER: sequencer animation blending support including additive
- created multiway blend node - extension of two way blend
- created anim sequencer instance to be used in sequencer for blending multiple animations and additives
- hooked up to sequencer track players
- renamed AnimationNode_TwoWay to AnimNode_TwoWay to be consistent with other node names.
- Make sure you can't choose montage when selecting animation in Sequencer
- Fixed Anim BP playing with multi group montages
#code review: Max.Chen
Change 3181870 on 2016/11/01 by Andrew.Rodham
Sequencer: Made sequence pointers stored in sequence template instances weak object ptrs
- We can't guarantee the lifetime of the objects here
#jira UE-38051
Change 3182851 on 2016/11/02 by Andrew.Rodham
Sequencer: Assert that a GetScriptStructImpl has been overridden correctly on templates
Change 3182852 on 2016/11/02 by Andrew.Rodham
Sequencer: Added 'Restore Animated State' command (CTRL+R) and button to sequencer toolbar
Change 3183161 on 2016/11/02 by Max.Preussner
Media: Added supported file extensions & URL schemes
Change 3183476 on 2016/11/02 by Max.Preussner
Merged Dev-Main to Dev-Sequencer
Change 3185181 on 2016/11/03 by Max.Chen
Sequencer: Refactor general options button menu into play options and select options. Add Select Sections in Selection Range and Select All in Selection Range.
Fix issues with convert to spawanble and convert to possessable. Convert to possessable now deletes the spawn track so that it's not left lying around, which when deleted would end up deleting the converted possessable actor.
#jira UE-37854
Change 3185184 on 2016/11/03 by Max.Chen
Sequencer: Add hotkey to toggle camera cut track lock/unlock camera.
Change 3185409 on 2016/11/03 by Max.Chen
Sequencer: Fix crash in skeletal mesh section drawing.
#jira UE-38090
Change 3185444 on 2016/11/03 by Max.Chen
UMG: Expose label browser for UMG
Change 3185662 on 2016/11/03 by Max.Chen
Sequencer: Paste track fixes.
- Loosen restrictions on paste track destination. This allows the paste to operate on spawnables and on properties that don't have an explicit Set function.
- Allow pasting onto all types of tracks, not just property tracks.
- Fix when pasting the copied tracks onto multiple objects.
Tested pasting transform tracks from possessable to spawnables.
Tested pasting skeletal animation tracks from spawnable to possessables.
#jira UETOOL-1206
Change 3185920 on 2016/11/03 by Andrew.Porter
Adding test content for multiple audio video tracks.
Change 3186404 on 2016/11/03 by Max.Preussner
Merged Dev-Main to Dev-Sequencer
Change 3187957 on 2016/11/04 by Max.Preussner
MediaAssets: Exposed CanPlaySource in BP
Change 3187988 on 2016/11/05 by Max.Preussner
Fixed documentation
Change 3188035 on 2016/11/05 by Max.Chen
Sequencer: Show camera name in cinematic viewport.
#jira UE-28115
Change 3188603 on 2016/11/07 by Max.Preussner
WmfMedia: Added missing nullptr check
Change 3188788 on 2016/11/07 by Max.Preussner
MediaPlayerEditor: Removed property buttons from PlatformMediaSource customization (UE-37948)
#jira UE-37948
Change 3188808 on 2016/11/07 by Max.Preussner
MediaAssets: Moved media player implementation into reusable class
Also moved overlay text handling into separate asset.
Change 3188919 on 2016/11/07 by Max.Preussner
Media: Changed the handling of invalid media and media that failed to open (UE-38014)
#jira UE-38014
Change 3189112 on 2016/11/07 by Max.Preussner
WmfMedia: Added rudimentary H.265 HEVC support for Windows 10 (UE-38324)
#jira UE-38324
Change 3189376 on 2016/11/07 by Max.Preussner
WmfMedia: Removed Windows specific code from factory module
Change 3189381 on 2016/11/07 by Max.Preussner
Atrac9Audio: Fixed log category
Change 3189497 on 2016/11/07 by Max.Preussner
Media: Added binary sinks support
Change 3189666 on 2016/11/07 by Max.Chen
Curve Editor: Add option to show time in frame numbers
#jira UE-27210
Change 3190339 on 2016/11/08 by Max.Preussner
MediaAssets: Removed SetDesiredPlayerName since the field is public
Change 3190342 on 2016/11/08 by Andrew.Porter
Adding sequencer test content for animation blueprint
Change 3190398 on 2016/11/08 by Max.Preussner
Media: Renamed binary tracks to metadata tracks
Change 3190458 on 2016/11/08 by andrew.porter
Updating Skeleton with new slots.
Change 3191167 on 2016/11/08 by Max.Chen
Sequencer: Fix crash in validating paste tracks buffer. Validate the tracks instead of actually pasting into temp.
#jira UE-38353
Change 3191336 on 2016/11/09 by Andrew.Rodham
Slate: Added the ability to set and retrieve a host tab manager from a details view
Change 3191338 on 2016/11/09 by Andrew.Rodham
Editor: Added the ability to extend default layouts
- FLayoutExtender can be used to provide basic tab layout extensions on default themes.
- This can be used by external plugins to inject tabs to other interfaces where necessary.
- Currently this is supported by the blueprint editor's unified component layout, and the level editor layout.
Change 3191346 on 2016/11/09 by Andrew.Rodham
Sequencer: Added new (experimental) ActorSequence module and editor
- Sequences can now be added to actors via the UActorSequenceComponent.
- An embedded sequencer will appear on details panels, with the option to break it out into a tab.
- Separated common playback elements from ULevelSequencePlayer into UMovieSceneSequencePlayer, from which specific players can derive.
- The majority of level editorintegration with sequencer has been separated out into a separate singleton class that can manage multiple sequencers.
- All movie scene data now defaults to instanced, such that it can be duplicated and instanced correctly.
- Added read-only mode for sequencer which is used for actor sequence components that come from a blueprint archetype to prevent erroneous editing.
Change 3191387 on 2016/11/09 by Andrew.Rodham
Orion: Fixed deprecation warnings
Change 3191388 on 2016/11/09 by Andrew.Rodham
Orion: Added dependency on MovieScene module
Change 3191403 on 2016/11/09 by Andrew.Rodham
Sequencer: Fix initialization order warning
Change 3191428 on 2016/11/09 by Andrew.Rodham
Sequencer: Added missing include
Change 3191510 on 2016/11/09 by Andrew.Rodham
Header include fixes
Change 3191599 on 2016/11/09 by Max.Chen
Sequencer: Add option to lock the playback range per movie scene. The toggle is stored as editor only and should be a saved value so that it can persist as the asset is passed from user to user.
#jira UE-34677
Change 3191664 on 2016/11/09 by Andrew.Rodham
Sequencer: Ensure keyframe handlers are only added once
Change 3192373 on 2016/11/09 by Max.Preussner
MediaAssets: Fixed regression: playlists no longer open
Change 3192408 on 2016/11/09 by Max.Preussner
MediaAssets: Fixed OpenPlaylistIndex crashing
Change 3192878 on 2016/11/09 by Max.Chen
Camera Rig: Fix log spam trying to unregister component.
#jira UE-38435
Change 3192989 on 2016/11/10 by Andrew.Rodham
Slate: Added constructor to appease old VS2013 compiler warning about non-constructible type
Change 3192991 on 2016/11/10 by Andrew.Rodham
Sequencer: Moved lambda out-of-line to fix static analysis warning
Change 3193420 on 2016/11/10 by Max.Preussner
MediaAssets: Replaced CopyToResolveTarget with new TransitionTarget API
Change 3193478 on 2016/11/10 by Max.Chen
Sequencer: Moved Fix Actor References back under the General Options menu.
Change 3193870 on 2016/11/10 by Max.Preussner
MediaPlayerEditor: Removed additional buttons in per-platform overrides (UE-37948)
#jira UE-37948
Change 3193873 on 2016/11/10 by Lina.Halper
- Sequencer fix with anim instance reinit
- Fixed TMap issue with memory by changing to pointer from ref.
#code review: Max.Chen
Change 3194184 on 2016/11/10 by Max.Chen
Sequencer: Only expand section when setting keys when there are keys. Otherwise if you set the default value while the time position is outside of the section range, the section will expand, which seems undesirable.
Change 3194187 on 2016/11/10 by Max.Chen
Sequencer: Backwards compatibility if a track no longer supports multiple rows, its sections are split to other duplicate tracks.
Change 3194191 on 2016/11/10 by Max.Chen
Sequencer: Add audio volume and pitch curves.
#jira UE-30009
Change 3194256 on 2016/11/10 by Max.Chen
Merging //UE4/Dev-Main to Dev-Sequencer (//UE4/Dev-Sequencer)
Change 3194282 on 2016/11/10 by Max.Chen
Movie Capture: Add some frame rate bounds. Max frame rate for recording is 200. Min is 1.
#jira UE-38502
Change 3194355 on 2016/11/11 by Max.Chen
Sequencer: Minimum handle size for time slider scrubber.
#jira UE-34676
Change 3194767 on 2016/11/11 by Max.Chen
Sequencer: Mark duplicated tracks as changed so that their template gets regenerated.
Change 3195094 on 2016/11/11 by Max.Preussner
Media: Removing game thread dependencies
This change removes game thread dependencies from all media players so that we can use the media framework for startup movies where the game thread is block while loading the Engine. The players now have two new methods, TickPlayer and TickVideo, which need to be called from the external code that owns the players. On the Engine side, this is taken care of by UMediaPlayer, which calls TickPlayer from the game thread and TickVideo from the render thread. In startup movies, this will be taken care of by a special thread.
AvfMedia: This change does not fully remove game thread dependencies in AvfMediaPlayer yet. There are some async callbacks scheduled to execute on the game thread that need to be refactored. The execution of these events should be performed in TickPlayer instead.
All platform owners, please review these changes for your platform and make sure that everything still works. I have not had time to test all platforms yet.
Change 3195396 on 2016/11/11 by Max.Preussner
AvfMedia: Removed remaining game thread dependencies
Change 3195670 on 2016/11/11 by Max.Preussner
MediaUtils: Renamed function
Change 3195690 on 2016/11/11 by Max.Preussner
MediaAssets: MediaPlayerBase instance is now a field instead of pointer.
Change 3195802 on 2016/11/11 by Max.Preussner
Media: Removed UMediaPlayer::GetNativePlayer
Change 3195843 on 2016/11/11 by Max.Preussner
Kismet: Fixed non-unity
Change 3195851 on 2016/11/11 by Max.Preussner
Fixed typo.
Change 3195854 on 2016/11/11 by Max.Preussner
MediaUtils: Added missing forward declaration
Change 3195937 on 2016/11/11 by Max.Chen
Media: CIS Fix
Change 3196120 on 2016/11/13 by Max.Chen
Sequencer: Weight curve for skeletal animation section.
Changed skeletal template evaluation so that it works with multiple animation tracks. The shared track clears all the weights, the section gathers up all the data, and the shared track evaluates the data. Otherwise, the multiple track evaluations would conflict with each other in setting states back and forth.
#jira UE-38374, UEFW-128
Change 3196265 on 2016/11/13 by Max.Chen
Sequencer: Fix audio waveforms so that they're regenrated when audio start time is changed.
#jira UE-38543
Change 3196421 on 2016/11/14 by Andrew.Rodham
Sequencer: Fixed modified tracks not being written to the transaction buffer when replacing object bindings
#jira UE-38423
Change 3197131 on 2016/11/14 by Max.Chen
Sequencer: Null checks.
#jira UE-38570, UE-38593
Change 3197209 on 2016/11/14 by Max.Chen
Cine Camera: Reset focus smoothing interpolation on PostEditChangeProperty. This fixes an issue where if you enable focus smoothing, the manual focus distance that is input isn't used since the interpolation happens from the last current focus distance.
#jira UE-27055
Change 3198691 on 2016/11/15 by Max.Chen
Sequence Recorder: Optimize record transforms by setting all the keyframes at once. Also, added option to toggle removing redundant keyframes from the recorded tracks.
#jira UE-38489
Change 3198711 on 2016/11/15 by andrew.porter
Adding test content for MEdia Framework Track Switching.
Change 3199174 on 2016/11/15 by Lina.Halper
Sequencer backward compatibility fix with root motion
Make sure you could remove root motion fine
#jira : UE-38591
Change 3199260 on 2016/11/15 by tim.gautier
Updated QA-Media_TrackSwitch - changed Trigger Collision to only detect overlap from PlayerPawn
Change 3199663 on 2016/11/15 by Max.Chen
Anim Sequencer: Fix deprecation warning for bCanUseParallelUpdateAnimation. Updated to use bUseMultiThreadedAnimationUpdate.
Change 3199727 on 2016/11/15 by Max.Chen
Matinee to Level Sequence: Set default scale when converting matinee move tracks to sequencer.
#jira UE-38688
Change 3199847 on 2016/11/16 by Max.Chen
Sequencer: Add menu option to reduce keys of all sections in the current level sequence
Change 3200351 on 2016/11/16 by Max.Chen
Level Editor/Sequencer: Fixes to allow for component keyframing. The transform track operates on the components that changed, not the actor. The level editor viewport broadcasts begin/end movement on the components that changed.
#jira UE-38649, UE-38646
Change 3200474 on 2016/11/16 by Max.Chen
Sequencer: Move reduce keys to section context menu.
Change 3200888 on 2016/11/16 by Max.Chen
Sequencer: Clamp skeletal animation evaluation remapping of time to section bounds. This is necessary when evaluating nearest is enabled and the time is beyond the section bounds.
Also, set the shared track template to have higher priority so that it always clears/initializes weights before each section's template adds section params for evaluation.
Change 3201633 on 2016/11/17 by Max.Chen
Matinee to Level Sequence: Fix matinee 3d scale track conversion to level sequence.
Also, added paste matinee vector track to sequencer's vector track.
#jira UE-38688
Change 3202458 on 2016/11/17 by Max.Chen
Sequencer: Fix track editor commands getting unregistered when switching from one level sequence to another. The sequence of events is: track editor commands get bound when a level sequence is edited. When switching to another level sequence, the existing track editor is released after the new one is registered, causing the commands to ultimately get unbound.
#jira UE-38693
Change 3202606 on 2016/11/17 by Max.Chen
Actor Sequence: Null check in CanPossessObject for a component's owner.
#jira UE-38514
Change 3203522 on 2016/11/17 by Max.Chen
Sequencer: Audio start time deprecated in favor of start offset which is an offset into the audio clip. Also, limit the start offset to positive values since you can just crop into the audio clip by dragging the section's start time.
Audio track no longer supports multiple rows (should have been checked in along with the audio volume and pitch multiplier curves).
#jira UE-38549, UE-38554, UE-38547
Change 3203863 on 2016/11/18 by Andrew.Rodham
Engine: Ensure that world settings actor is considered by network object list when sorting the actor list for a level
Change 3203865 on 2016/11/18 by Andrew.Rodham
Sequencer: Fixed play rate track interaction between servers and clients
- The logic for evaluation was previously flawed (it would only run in editor builds). Play rate is now only evaluated on servers and standalone clients, with the time dilation being replicated to network clients.
Change 3203900 on 2016/11/18 by Andrew.Rodham
Sequencer: Changed CreateLevelSequencePlayer to create a transient level sequence actor
#jira UE-37277
Change 3205038 on 2016/11/18 by Max.Preussner
Slate: Corrected comment
Change 3205046 on 2016/11/18 by Max.Preussner
WmfMedia: Added missing nullptr check
#jira UE-38825
Change 3205073 on 2016/11/18 by Max.Chen
Sequencer: Fix audio upgrade case when start time is 0.
Change 3205277 on 2016/11/19 by Max.Preussner
Merging //UE4/Dev-Main to Dev-Sequencer (//UE4/Dev-Sequencer)
Please take a look at SequencerEdMode.cpp and Sequencer.cpp. I ended up accepting latest Dev-Sequencer, which seemed to be the right thing to do.
Change 3205465 on 2016/11/20 by Max.Preussner
MovieScene: Fixed non-unity build
Change 3205467 on 2016/11/20 by Max.Preussner
Engine: Fixed spelling
Change 3206264 on 2016/11/21 by Max.Preussner
Kismet: Added missing forward declaration
Change 3206493 on 2016/11/21 by Max.Preussner
PS4Media: Added remaining changes for removing game thread dependencies
Change 3206512 on 2016/11/21 by Andrew.Porter
Adding test content to QAGame for Sequencer animation weight blending.
Change 3206529 on 2016/11/21 by Lina.Halper
Fixed anim notifes to work in Sequencer Instance
- Give proper delta in editor preview
- Make sure not to recreate AnimInstance
#jira: UE-38849
#code review:Max.Chen
Change 3206552 on 2016/11/21 by Max.Preussner
QAGame: Enabled looping by default
Change 3207462 on 2016/11/22 by andrew.porter
QAGame: updating QA-Sequencer with changes to animation blending test cases
Change 3207499 on 2016/11/22 by tim.gautier
Added Streaming Sources, added Streaming Source options for BP_MediaPlayer. Specified Media Option Categories with BP_MediaPlayer to clean up details panel.
#jira none
Change 3207571 on 2016/11/22 by Max.Chen
Curve Editor: Expose curve editor settings to Editor Preferences.
#jira UE-38907
Change 3207690 on 2016/11/22 by Max.Chen
Sequencer: Speculative crash fix for switching UMG animations.
#jira UE-29333
Change 3207744 on 2016/11/22 by tim.gautier
Removed unnecessary nodes from BP_MediaPlayer. Created a variable visible in the Details Panel to allow the user to specify a URL to Stream media without specifying a Source in-editor.
#jira none
Change 3207935 on 2016/11/22 by Max.Chen
Sequencer: Temporary fix for skeletal animation track scrubbing. Verified that anim notifies still fire when playing and scrubbing.
#jira UE-38964
Change 3207938 on 2016/11/22 by Max.Chen
Sequence Recorder: Set reduce keys back to true so that there's no change in current behavior. This should be toggled off for performance reasons but in general is nice to have reduced keys.
Change 3207950 on 2016/11/22 by Lina.Halper
- Fixed so that mesh space additive won't show up in sequencer
- Added warning if you change type later or existing ones
#jira: UE-38062?
Change 3208278 on 2016/11/22 by andrew.porter
QAGame: Adjusting level blueprint for test case.
Change 3208285 on 2016/11/22 by andrew.porter
QAGame: adding SequencerBP animation blueprint.
Change 3208538 on 2016/11/23 by Max.Chen
Actor Sequence: Fix plugin filename.
Change 3208916 on 2016/11/23 by Max.Chen
Sequencer: Fix material parameter initialization so that the value is retrieved from the material instance and not the parent material.
#jira UE-34317
Change 3208924 on 2016/11/23 by Max.Chen
Save As: Cancel should not save over the existing asset. It should just return.
Change 3208939 on 2016/11/23 by andrew.porter
QAGame: reset some content back to its default state for testing
Change 3209053 on 2016/11/23 by Max.Chen
Sequencer: Ensure the section id is unique.
Change 3209161 on 2016/11/23 by Max.Chen
Save As: Follow up fix for cancelling save as.
Change 3210540 on 2016/11/26 by Max.Preussner
WmfMedia: Reworked fallback stride calculations to fix issues with some exotic video formats
Change 3210546 on 2016/11/26 by Max.Preussner
WmfMedia: Fixed NV12 vertical buffer alignment
Change 3211567 on 2016/11/28 by Max.Preussner
Merging //UE4/Dev-Main to Dev-Sequencer (//UE4/Dev-Sequencer)
Step 1 of 2
Change 3212408 on 2016/11/28 by Max.Preussner
Fixed fallout from Dev-Main merge
Change 3212456 on 2016/11/28 by Max.Preussner
ActorSequenceEditor: Removed monolithic header dependencies
Change 3212562 on 2016/11/28 by Max.Preussner
ActorSequenceEditor: Removed monolithic header usage
Change 3212649 on 2016/11/28 by Max.Chen
Fix CIS
Change 3212671 on 2016/11/28 by Max.Chen
Sequencer: Add option to restore to the pre animated state.
#jira UE-38862
#2953
Change 3212672 on 2016/11/28 by Max.Chen
Sequencer: Select object binding node corresponding to selected components and vice versa (select components in level when object binding node is selected)
Change 3212673 on 2016/11/28 by Max.Chen
Sequencer: Follow-up fix for component keyframing - key area needs to be updated by component.
#jira UE-38649
Change 3212676 on 2016/11/28 by Max.Chen
Level Editor: PostEditMove should only be called on the actor if it is moved.
#jira UE-38646
Change 3212688 on 2016/11/29 by Max.Chen
Sequencer: Force refresh event parameters customization when struct contents change but not a full refresh when struct child contents change.
#jira UE-39094
Change 3212831 on 2016/11/29 by Andrew.Rodham
Disabled ActorSequenceEditor plugin by default while it's experimental
Change 3213219 on 2016/11/29 by Max.Preussner
AvfMedia: Added missing include
Change 3213333 on 2016/11/29 by Andrew.Rodham
Sequencer: Added the ability to override bindings when playing back a level sequence on a level sequence actor
#jira UETOOL-746
Change 3213905 on 2016/11/29 by Max.Preussner
More IWYU fixes for macOS
Change 3214203 on 2016/11/29 by Michael.Gay
Some demo files to test Sequencer timing.
Change 3214205 on 2016/11/29 by Max.Preussner
More IWYU fixes for macOS
Change 3214548 on 2016/11/29 by Max.Preussner
More IWYU fixes for macOS
Change 3214564 on 2016/11/29 by Max.Preussner
More IWYU fixes
Change 3214567 on 2016/11/29 by Max.Chen
More IWYU fixes for Win32
Change 3214573 on 2016/11/29 by Max.Preussner
More IWYU fixes
Change 3214576 on 2016/11/29 by Max.Preussner
More IWYU fixes
Change 3214621 on 2016/11/30 by Max.Preussner
Atrac9Decoder: Fixed log category declaration
Change 3214630 on 2016/11/30 by Max.Preussner
More IWYU fixes
Change 3214747 on 2016/11/30 by Andrew.Rodham
Sequencer: Fixed shadow variable
Change 3214957 on 2016/11/30 by Andrew.Rodham
Core: Changed Algo::Find to use TElementType
- This allows it to support c style arrays
Change 3215127 on 2016/11/30 by Andrew.Rodham
Sequencer: Made burn-in options and init settings instanced
- This ensures they work correctly when defined on archetypes and blueprints
#jira UE-38645
Change 3215754 on 2016/11/30 by Max.Chen
Sequencer: Fix skeletal animation track evaluating tracks in the wrong time space. Cache the evalulation time and weight value in each section's template and then execute with those values in the shared track's template.
#jira UE-39145
Change 3216603 on 2016/12/01 by Max.Chen
Sequencer: Set audio volume/pitch only if changed.
Change 3216613 on 2016/12/01 by Max.Chen
Sequencer: Add component selector when there are multiple components that have sockets. This fixes a crash when there are multiple components to attach to.
#jira UE-39167
Change 3217175 on 2016/12/01 by Max.Chen
Sequencer: Set skeletal animation track evaluation to be upper bound exclusive. This gives better behavior when two clips butt up against each other since the sections would overlap in time and evaluation would normalize they weighted contribution of each.
#jira UE-37184
Change 3217292 on 2016/12/01 by Max.Chen
Sequencer: Rework upgrading track rows to include overlapping sections. For skeletal animation sections, set weight values based on the evaluation bounds since there was no blending prior to 4.15.
Change 3217860 on 2016/12/01 by Max.Preussner
Media: Fall-through for media options
Change 3217965 on 2016/12/01 by Max.Preussner
MediaAssets: Renamed media option name
Change 3218470 on 2016/12/01 by Max.Chen
Sequencer: Fix start time deprecation value so that negative values are supported.
#jira UE-39259
Change 3218473 on 2016/12/01 by Max.Chen
Sequencer: Fix crash if start seq length is negative.
Change 3219021 on 2016/12/02 by Max.Chen
Sequencer: Add multiply and divide to transform box.
Change 3219374 on 2016/12/02 by Max.Chen
Sequencer: Teleport simulating components when moving them through the transform track. This fixes bugs with recording simulating actors (ie. vehicle game) where recorded actors don't playback with the recorded positions and there are warnings about attempting to move a fully simulated skeletal mesh.
#jira UE-38442, UE-38444, UE-38852
Change 3219638 on 2016/12/02 by Max.Preussner
Projects: Fixed error message
Change 3220584 on 2016/12/03 by Andrew.Rodham
Sequencer: Blueprint generated classes are now always removed from level sequences on load in the editor
- This ensures that old (and perhaps corrupt) BP generated classes are destroyed
#jira UE-39173
Change 3220585 on 2016/12/03 by Andrew.Rodham
Editor: Fix EditInstanceOnly properties that aren't variables on the generated class being editable in blueprints
Change 3220973 on 2016/12/04 by Max.Chen
Fix CIS
Change 3222833 on 2016/12/05 by Max.Chen
Sequencer: Fixed some recorded components not being generated.
#jira UE-34289
Change 3224450 on 2016/12/06 by Max.Chen
Sequencer: Fix convert spawnable to posessable. Logic for setting the parent was mistakenly removed in runtime eval.
#jira UE-39419
Change 3225301 on 2016/12/07 by Max.Preussner
AvfMedia: Added settings class
Change 3225304 on 2016/12/07 by Max.Preussner
Fixed typo
Change 3225723 on 2016/12/07 by Max.Preussner
Fixed typo.
Change 3225871 on 2016/12/07 by Max.Preussner
Forgot to check in
Change 3225932 on 2016/12/07 by Max.Preussner
Added missing header
Change 3226266 on 2016/12/07 by Max.Preussner
Media: Fixed various module dependencies
Change 3226451 on 2016/12/07 by Max.Preussner
Include fixes
Change 3226455 on 2016/12/07 by Max.Preussner
LevelSequence: Added missing include
Change 3227135 on 2016/12/08 by Max.Preussner
Merging //UE4/Dev-Main to Dev-Sequencer (//UE4/Dev-Sequencer)
Change 3227143 on 2016/12/08 by Max.Preussner
LevelSequencer: Added missing header
Change 3227731 on 2016/12/08 by Max.Preussner
LevelSequencer: Added missing include
Change 3228222 on 2016/12/08 by Max.Preussner
UBT: Fixed delay load library support for remote compilation to macOS
Change 3228266 on 2016/12/08 by Max.Preussner
PluginBrowser: Added missing includes
Change 3228755 on 2016/12/09 by Andrew.Rodham
Sequencer: Fixed copy-paste of event keys
- Also added a key-value iterator to TCurveInterface (both const and non-const)
#jira UE-39526
Change 3228777 on 2016/12/09 by Luke.Thatcher
[PLATFORM] [PS4] [!] Reimplement fixes from Fortnite for PS4 media framework in //UE4/Dev-Sequencer.
Based on Original CL 3227137
- Event callback from AvPlayer was enqueing the processing of events over to the player thread, so the "State" member of FPS4MediaPlayer doesn't get updated until the following frame. This breaks cases with multiple calls to SetRate within a single frame.
- Removed time check in FPS4MediavideoSampler::Tick. There are cases where the time check failed, even when a new frame was available from the AvPlayer libs. The video sampler now always calls sceAvPlayerGetVideoDataEx. This returns immediately if no frame data is available.
- FPS4MediaPlayer::Seek was failing if the video is in a playing/paused state. We now restart the stream if a seek command occurs after the video has stopped (e.g. due to EOF reached).
- Shared a single critical section between the FPS4MediaTracks, FPS4MediaVideoSampler and FPS4MediaPlayer objects. Fixes deadlocks between the decoder/player threads where each will be waiting on each others' critical section.
[~] Enabled debug warnings from AvPlayer library in non-shipping builds.
[~] Changed log levels of UE_LOGs to match their severity.
-------------------------
[!] Also, fixed rendering artifacts on videos using a cropping rectangle
- e.g. 1080p videos are actually decoded as 1920x1088, with an extra 8 pixels height, which contained garbage.
- We determine the final media texture size as the size of the cropping rectangle, and use modified UVs during the YCbCr->RGB converstion shader to do the mapping.
Change 3228793 on 2016/12/09 by Andrew.Rodham
Sequencer: Edits to actor sequences now correctly mark their parent blueprints for compilation
#jira UE-38723
Change 3228877 on 2016/12/09 by Luke.Thatcher
[PLATFORM] [PS4] [!] Fix track switching issues in PS4 media player.
- Sony's AvPlayer library does not support switching tracks (audio or video) on-the-fly after a stream has begun playback.
- The higher level UMediaPlayer enables track 0 automatically, which would be committed to the AvPlayer, and therefore lock out other streams.
- Actual track selection is now deferred until the stream is started, after which changing tracks is prohibited.
- Tracks must be selected before calling SetRate for the first time.
#jira UE-37225
Change 3229501 on 2016/12/09 by Max.Preussner
Media: Better display names for media player plug-ins
Change 3229515 on 2016/12/09 by Max.Preussner
MediaPlayerEditor: Sorting player plug-ins alphabetically; consistent display in both media player editor and media source customization
Change 3229716 on 2016/12/09 by andrew.porter
Adding PlayRate sequence to my dev folder
Change 3230554 on 2016/12/12 by Andrew.Rodham
Back out changelist 3220584
- Currently this causes actor instances to fail to load because they are instanced of dead classes. Need to think of a more robust solution here.
#jira UE-39398
Change 3230922 on 2016/12/12 by Max.Preussner
Merging //UE4/Dev-Main to Dev-Sequencer (//UE4/Dev-Sequencer)
Change 3232059 on 2016/12/12 by Max.Preussner
MediaUtils: Better error message for when no suitable media player plug-in was found
Change 3232097 on 2016/12/13 by Max.Preussner
Switch: Temp fix for borked folder name on case-sensitive platforms
Change 3232100 on 2016/12/13 by Max.Preussner
MediaAssets: Split up UMediaSource into UBaseMediaSource
Also added color space related properties
Change 3232101 on 2016/12/13 by Max.Preussner
Media: Started to implement support for color spaces
Change 3232119 on 2016/12/13 by Max.Preussner
MediaAssets: Fixed buffer not recreated if color space changed
Change 3232799 on 2016/12/13 by Max.Preussner
PS4Media: Fixed build
#jira UE-39706
Change 3233170 on 2016/12/13 by Max.Preussner
Merging //UE4/Dev-Main to Dev-Sequencer (//UE4/Dev-Sequencer)
Change 3233250 on 2016/12/13 by Max.Preussner
MediaPlayerEditor: Added separator in track menu
Change 3233309 on 2016/12/13 by andrew.porter
QAGame: Edited text render actors in QA-Media_TrackSwitch
Change 3233439 on 2016/12/13 by Chris.Babcock
Standardize Android media track DisplayName
Change 3233817 on 2016/12/13 by Chris.Babcock
Fix virtual keyboard EditableTextBox update when comitted text matches current text from change updates
#jira UE-39424
#ue4
#mobile
Change 3234421 on 2016/12/14 by Andrew.Rodham
Sequencer: Fixed nullptr crash
Change 3234423 on 2016/12/14 by Andrew.Rodham
Sequencer: Fixed incorrect copying of base-class from compiler rules
Change 3234429 on 2016/12/14 by Andrew.Rodham
Sequencer: Fixed empty space not being added between the last and penultimate segments when required
#jira UE-39442
Change 3234635 on 2016/12/14 by Max.Preussner
MediaAssets: Exposed UTexture properties in UMediaTexture
Change 3234681 on 2016/12/14 by Max.Preussner
MediaAssets: Made MediaTextureResources support -onethread
Change 3234878 on 2016/12/14 by Andrew.Rodham
Sequencer: Fixed crash with "Evaluate Sub Sequences in Isolation" enabled
- This occurred when there were tracks at the root level of the sub sequence, because it would incorrectly hash in the parent ID, rather than just using it directly
Change 3234901 on 2016/12/14 by Max.Preussner
MediaPlayerEditor: Detail customization improvements
Change 3235275 on 2016/12/14 by Chris.Babcock
Fix WMF stream ordering to match other players
#jira UE-39703
#ue4
#mediaframework
Change 3235390 on 2016/12/14 by Max.Preussner
DesktopPlatform: Added IniPlatformName to FPlatformInfo; fixed up indentation
Change 3235402 on 2016/12/14 by Max.Preussner
MediaAssets: Fixed platform player name overrides ignored in packaged builds (UE-39771)
#jira UE-39771
Change 3235667 on 2016/12/14 by Max.Preussner
Media: Moved enums into separate header file, so they can be shared
Change 3235984 on 2016/12/14 by Max.Preussner
Back out changelist 3235667
Change 3236040 on 2016/12/14 by Max.Preussner
Core: Added modulus operator to FTimespan
Change 3236139 on 2016/12/15 by Max.Preussner
Core: Added FTimespan::IsZero
Change 3236527 on 2016/12/15 by Max.Preussner
Fixed initialization order
Change 3237101 on 2016/12/15 by Andrew.Rodham
Sequencer: Skeletal animation and audio tracks now support multiple rows again.
- In practice there were too many edge-cases to account for whilst considering backwards compatability
- The impossible scenario was 2 sections on different rows, but evaluating nearest section - this cannot be represented as separate tracks.
- Reorganised animation runtime template to use execution tokens rather than ::Initialize to ensure that animation operates correctly on the first frame for spawned objects
#jira UE-39442
#jira UE-39725
Change 3237213 on 2016/12/15 by Andrew.Rodham
Sequencer: Fixed crash when setting event key properties
#jira UE-39347
Change 3237255 on 2016/12/15 by Chris.Babcock
Fix Multi with ETC2 and PVRTC selecting ES3.0 instead of 2.0
#jira UE-39839
#ue4
#android
Change 3237294 on 2016/12/15 by Andrew.Rodham
Sequencer: Fixed shadowed variable warnings
Change 3237366 on 2016/12/15 by Max.Preussner
Media: Removed color space changes; we'll do these in material graphs instead
Change 3237436 on 2016/12/15 by Andrew.Rodham
Sequencer: Fixed montages not being stopped for specific animation slots when animation sections were no longer evaluated
#jira UE-39847
Change 3237458 on 2016/12/15 by Andrew.Rodham
Sequencer: Always force regeneration of templates when PIE to eliminate the posibility of combining stale data
Change 3237516 on 2016/12/15 by Max.Preussner
Media: Attempting to fix Crash in fortnite just before exiting onboarding (UE-39841)
#jira UE-39841
Change 3237532 on 2016/12/15 by Max.Preussner
Added missing scope lock
Change 3237991 on 2016/12/16 by Max.Preussner
PS4Media: Fixed build
[CL 3238204 by Max Preussner in Main branch]
2016-12-16 11:17:44 -05:00
LevelEditorModule . OnRegisterTabs ( ) . Broadcast ( LevelEditorTabManager ) ;
2014-03-14 14:13:41 -04:00
}
// Rebuild the editor mode commands and their tab spawners before we restore the layout,
// or there wont be any tab spawners for the modes.
RefreshEditorModeCommands ( ) ;
2014-05-15 17:34:02 -04:00
const TSharedRef < FTabManager : : FLayout > Layout = FLayoutSaveRestore : : LoadFromConfig ( GEditorLayoutIni ,
2014-03-14 14:13:41 -04:00
FTabManager : : NewLayout ( " LevelEditor_Layout_v1.1 " )
- > AddArea
(
FTabManager : : NewPrimaryArea ( )
2015-01-30 10:27:56 -05:00
- > SetOrientation ( Orient_Horizontal )
2014-03-14 14:13:41 -04:00
- > Split
(
FTabManager : : NewSplitter ( )
2015-01-30 10:27:56 -05:00
- > SetOrientation ( Orient_Vertical )
- > SetSizeCoefficient ( 1 )
2014-03-14 14:13:41 -04:00
- > Split
(
FTabManager : : NewSplitter ( )
2015-01-30 10:27:56 -05:00
- > SetSizeCoefficient ( .75f )
- > SetOrientation ( Orient_Horizontal )
2014-03-14 14:13:41 -04:00
- > Split
(
FTabManager : : NewStack ( )
2015-01-30 10:27:56 -05:00
- > SetSizeCoefficient ( 0.3f )
2014-03-14 14:13:41 -04:00
- > AddTab ( " LevelEditorToolBox " , ETabState : : OpenedTab )
)
- > Split
(
2015-01-30 10:27:56 -05:00
FTabManager : : NewSplitter ( )
- > SetOrientation ( Orient_Vertical )
- > SetSizeCoefficient ( 1.15f )
- > Split
(
FTabManager : : NewStack ( )
- > SetHideTabWell ( true )
- > AddTab ( " LevelEditorToolBar " , ETabState : : OpenedTab )
)
- > Split
(
FTabManager : : NewStack ( )
- > SetHideTabWell ( true )
- > SetSizeCoefficient ( 1.0f )
- > AddTab ( " LevelEditorViewport " , ETabState : : OpenedTab )
)
2014-03-14 14:13:41 -04:00
)
)
- > Split
(
2015-01-30 10:27:56 -05:00
FTabManager : : NewStack ( )
2015-01-30 10:28:54 -05:00
- > SetSizeCoefficient ( .4 )
2015-01-30 10:27:56 -05:00
- > AddTab ( " ContentBrowserTab1 " , ETabState : : OpenedTab )
- > AddTab ( " OutputLog " , ETabState : : ClosedTab )
2014-03-14 14:13:41 -04:00
)
)
2015-01-30 10:27:56 -05:00
- > Split
(
FTabManager : : NewSplitter ( )
- > SetSizeCoefficient ( 0.25f )
- > SetOrientation ( Orient_Vertical )
- > Split
(
FTabManager : : NewStack ( )
- > SetSizeCoefficient ( 0.4f )
- > AddTab ( " LevelEditorSceneOutliner " , ETabState : : OpenedTab )
- > AddTab ( " LevelEditorLayerBrowser " , ETabState : : ClosedTab )
)
- > Split
(
FTabManager : : NewStack ( )
- > AddTab ( " LevelEditorSelectionDetails " , ETabState : : OpenedTab )
- > AddTab ( " WorldSettingsTab " , ETabState : : ClosedTab )
- > SetForegroundTab ( FName ( " LevelEditorSelectionDetails " ) )
)
)
) ) ;
2014-03-14 14:13:41 -04:00
Copying //UE4/Dev-Sequencer to //UE4/Dev-Main (Source: //UE4/Dev-Sequencer @ 3237992)
#lockdown Nick.Penwarden
#rb none
==========================
MAJOR FEATURES + CHANGES
==========================
Change 3136778 on 2016/09/22 by Max.Preussner
Merged Dev-Main to Dev-Sequencer
Change 3179199 on 2016/10/29 by Max.Chen
Sequencer: Fade only oin the current player context, not on all worlds.
Copy from Release-4.14. Copied fix to FadeTrackInstance to FadeTemplate.
#jira UE-37939
Change 3179340 on 2016/10/29 by Max.Preussner
PS4Media: Fixed audio track dropping first frame
Change 3180391 on 2016/10/31 by Max.Preussner
UdpMessaging: nulling out message processor in destructor
Change 3180459 on 2016/10/31 by Max.Chen
Sequencer: Fix copy/paste crash in UMG.
Change 3180607 on 2016/10/31 by Andrew.Rodham
UMG: Fixed parent bindings not being adhered to correctly. Fixed slot widgets that get recreated not having their object bindings updated.
#jira UE-38021
#jira UE-38018
Change 3181405 on 2016/11/01 by Lina.Halper
#ANIM/SEQUCNER: sequencer animation blending support including additive
- created multiway blend node - extension of two way blend
- created anim sequencer instance to be used in sequencer for blending multiple animations and additives
- hooked up to sequencer track players
- renamed AnimationNode_TwoWay to AnimNode_TwoWay to be consistent with other node names.
- Make sure you can't choose montage when selecting animation in Sequencer
- Fixed Anim BP playing with multi group montages
#code review: Max.Chen
Change 3181870 on 2016/11/01 by Andrew.Rodham
Sequencer: Made sequence pointers stored in sequence template instances weak object ptrs
- We can't guarantee the lifetime of the objects here
#jira UE-38051
Change 3182851 on 2016/11/02 by Andrew.Rodham
Sequencer: Assert that a GetScriptStructImpl has been overridden correctly on templates
Change 3182852 on 2016/11/02 by Andrew.Rodham
Sequencer: Added 'Restore Animated State' command (CTRL+R) and button to sequencer toolbar
Change 3183161 on 2016/11/02 by Max.Preussner
Media: Added supported file extensions & URL schemes
Change 3183476 on 2016/11/02 by Max.Preussner
Merged Dev-Main to Dev-Sequencer
Change 3185181 on 2016/11/03 by Max.Chen
Sequencer: Refactor general options button menu into play options and select options. Add Select Sections in Selection Range and Select All in Selection Range.
Fix issues with convert to spawanble and convert to possessable. Convert to possessable now deletes the spawn track so that it's not left lying around, which when deleted would end up deleting the converted possessable actor.
#jira UE-37854
Change 3185184 on 2016/11/03 by Max.Chen
Sequencer: Add hotkey to toggle camera cut track lock/unlock camera.
Change 3185409 on 2016/11/03 by Max.Chen
Sequencer: Fix crash in skeletal mesh section drawing.
#jira UE-38090
Change 3185444 on 2016/11/03 by Max.Chen
UMG: Expose label browser for UMG
Change 3185662 on 2016/11/03 by Max.Chen
Sequencer: Paste track fixes.
- Loosen restrictions on paste track destination. This allows the paste to operate on spawnables and on properties that don't have an explicit Set function.
- Allow pasting onto all types of tracks, not just property tracks.
- Fix when pasting the copied tracks onto multiple objects.
Tested pasting transform tracks from possessable to spawnables.
Tested pasting skeletal animation tracks from spawnable to possessables.
#jira UETOOL-1206
Change 3185920 on 2016/11/03 by Andrew.Porter
Adding test content for multiple audio video tracks.
Change 3186404 on 2016/11/03 by Max.Preussner
Merged Dev-Main to Dev-Sequencer
Change 3187957 on 2016/11/04 by Max.Preussner
MediaAssets: Exposed CanPlaySource in BP
Change 3187988 on 2016/11/05 by Max.Preussner
Fixed documentation
Change 3188035 on 2016/11/05 by Max.Chen
Sequencer: Show camera name in cinematic viewport.
#jira UE-28115
Change 3188603 on 2016/11/07 by Max.Preussner
WmfMedia: Added missing nullptr check
Change 3188788 on 2016/11/07 by Max.Preussner
MediaPlayerEditor: Removed property buttons from PlatformMediaSource customization (UE-37948)
#jira UE-37948
Change 3188808 on 2016/11/07 by Max.Preussner
MediaAssets: Moved media player implementation into reusable class
Also moved overlay text handling into separate asset.
Change 3188919 on 2016/11/07 by Max.Preussner
Media: Changed the handling of invalid media and media that failed to open (UE-38014)
#jira UE-38014
Change 3189112 on 2016/11/07 by Max.Preussner
WmfMedia: Added rudimentary H.265 HEVC support for Windows 10 (UE-38324)
#jira UE-38324
Change 3189376 on 2016/11/07 by Max.Preussner
WmfMedia: Removed Windows specific code from factory module
Change 3189381 on 2016/11/07 by Max.Preussner
Atrac9Audio: Fixed log category
Change 3189497 on 2016/11/07 by Max.Preussner
Media: Added binary sinks support
Change 3189666 on 2016/11/07 by Max.Chen
Curve Editor: Add option to show time in frame numbers
#jira UE-27210
Change 3190339 on 2016/11/08 by Max.Preussner
MediaAssets: Removed SetDesiredPlayerName since the field is public
Change 3190342 on 2016/11/08 by Andrew.Porter
Adding sequencer test content for animation blueprint
Change 3190398 on 2016/11/08 by Max.Preussner
Media: Renamed binary tracks to metadata tracks
Change 3190458 on 2016/11/08 by andrew.porter
Updating Skeleton with new slots.
Change 3191167 on 2016/11/08 by Max.Chen
Sequencer: Fix crash in validating paste tracks buffer. Validate the tracks instead of actually pasting into temp.
#jira UE-38353
Change 3191336 on 2016/11/09 by Andrew.Rodham
Slate: Added the ability to set and retrieve a host tab manager from a details view
Change 3191338 on 2016/11/09 by Andrew.Rodham
Editor: Added the ability to extend default layouts
- FLayoutExtender can be used to provide basic tab layout extensions on default themes.
- This can be used by external plugins to inject tabs to other interfaces where necessary.
- Currently this is supported by the blueprint editor's unified component layout, and the level editor layout.
Change 3191346 on 2016/11/09 by Andrew.Rodham
Sequencer: Added new (experimental) ActorSequence module and editor
- Sequences can now be added to actors via the UActorSequenceComponent.
- An embedded sequencer will appear on details panels, with the option to break it out into a tab.
- Separated common playback elements from ULevelSequencePlayer into UMovieSceneSequencePlayer, from which specific players can derive.
- The majority of level editorintegration with sequencer has been separated out into a separate singleton class that can manage multiple sequencers.
- All movie scene data now defaults to instanced, such that it can be duplicated and instanced correctly.
- Added read-only mode for sequencer which is used for actor sequence components that come from a blueprint archetype to prevent erroneous editing.
Change 3191387 on 2016/11/09 by Andrew.Rodham
Orion: Fixed deprecation warnings
Change 3191388 on 2016/11/09 by Andrew.Rodham
Orion: Added dependency on MovieScene module
Change 3191403 on 2016/11/09 by Andrew.Rodham
Sequencer: Fix initialization order warning
Change 3191428 on 2016/11/09 by Andrew.Rodham
Sequencer: Added missing include
Change 3191510 on 2016/11/09 by Andrew.Rodham
Header include fixes
Change 3191599 on 2016/11/09 by Max.Chen
Sequencer: Add option to lock the playback range per movie scene. The toggle is stored as editor only and should be a saved value so that it can persist as the asset is passed from user to user.
#jira UE-34677
Change 3191664 on 2016/11/09 by Andrew.Rodham
Sequencer: Ensure keyframe handlers are only added once
Change 3192373 on 2016/11/09 by Max.Preussner
MediaAssets: Fixed regression: playlists no longer open
Change 3192408 on 2016/11/09 by Max.Preussner
MediaAssets: Fixed OpenPlaylistIndex crashing
Change 3192878 on 2016/11/09 by Max.Chen
Camera Rig: Fix log spam trying to unregister component.
#jira UE-38435
Change 3192989 on 2016/11/10 by Andrew.Rodham
Slate: Added constructor to appease old VS2013 compiler warning about non-constructible type
Change 3192991 on 2016/11/10 by Andrew.Rodham
Sequencer: Moved lambda out-of-line to fix static analysis warning
Change 3193420 on 2016/11/10 by Max.Preussner
MediaAssets: Replaced CopyToResolveTarget with new TransitionTarget API
Change 3193478 on 2016/11/10 by Max.Chen
Sequencer: Moved Fix Actor References back under the General Options menu.
Change 3193870 on 2016/11/10 by Max.Preussner
MediaPlayerEditor: Removed additional buttons in per-platform overrides (UE-37948)
#jira UE-37948
Change 3193873 on 2016/11/10 by Lina.Halper
- Sequencer fix with anim instance reinit
- Fixed TMap issue with memory by changing to pointer from ref.
#code review: Max.Chen
Change 3194184 on 2016/11/10 by Max.Chen
Sequencer: Only expand section when setting keys when there are keys. Otherwise if you set the default value while the time position is outside of the section range, the section will expand, which seems undesirable.
Change 3194187 on 2016/11/10 by Max.Chen
Sequencer: Backwards compatibility if a track no longer supports multiple rows, its sections are split to other duplicate tracks.
Change 3194191 on 2016/11/10 by Max.Chen
Sequencer: Add audio volume and pitch curves.
#jira UE-30009
Change 3194256 on 2016/11/10 by Max.Chen
Merging //UE4/Dev-Main to Dev-Sequencer (//UE4/Dev-Sequencer)
Change 3194282 on 2016/11/10 by Max.Chen
Movie Capture: Add some frame rate bounds. Max frame rate for recording is 200. Min is 1.
#jira UE-38502
Change 3194355 on 2016/11/11 by Max.Chen
Sequencer: Minimum handle size for time slider scrubber.
#jira UE-34676
Change 3194767 on 2016/11/11 by Max.Chen
Sequencer: Mark duplicated tracks as changed so that their template gets regenerated.
Change 3195094 on 2016/11/11 by Max.Preussner
Media: Removing game thread dependencies
This change removes game thread dependencies from all media players so that we can use the media framework for startup movies where the game thread is block while loading the Engine. The players now have two new methods, TickPlayer and TickVideo, which need to be called from the external code that owns the players. On the Engine side, this is taken care of by UMediaPlayer, which calls TickPlayer from the game thread and TickVideo from the render thread. In startup movies, this will be taken care of by a special thread.
AvfMedia: This change does not fully remove game thread dependencies in AvfMediaPlayer yet. There are some async callbacks scheduled to execute on the game thread that need to be refactored. The execution of these events should be performed in TickPlayer instead.
All platform owners, please review these changes for your platform and make sure that everything still works. I have not had time to test all platforms yet.
Change 3195396 on 2016/11/11 by Max.Preussner
AvfMedia: Removed remaining game thread dependencies
Change 3195670 on 2016/11/11 by Max.Preussner
MediaUtils: Renamed function
Change 3195690 on 2016/11/11 by Max.Preussner
MediaAssets: MediaPlayerBase instance is now a field instead of pointer.
Change 3195802 on 2016/11/11 by Max.Preussner
Media: Removed UMediaPlayer::GetNativePlayer
Change 3195843 on 2016/11/11 by Max.Preussner
Kismet: Fixed non-unity
Change 3195851 on 2016/11/11 by Max.Preussner
Fixed typo.
Change 3195854 on 2016/11/11 by Max.Preussner
MediaUtils: Added missing forward declaration
Change 3195937 on 2016/11/11 by Max.Chen
Media: CIS Fix
Change 3196120 on 2016/11/13 by Max.Chen
Sequencer: Weight curve for skeletal animation section.
Changed skeletal template evaluation so that it works with multiple animation tracks. The shared track clears all the weights, the section gathers up all the data, and the shared track evaluates the data. Otherwise, the multiple track evaluations would conflict with each other in setting states back and forth.
#jira UE-38374, UEFW-128
Change 3196265 on 2016/11/13 by Max.Chen
Sequencer: Fix audio waveforms so that they're regenrated when audio start time is changed.
#jira UE-38543
Change 3196421 on 2016/11/14 by Andrew.Rodham
Sequencer: Fixed modified tracks not being written to the transaction buffer when replacing object bindings
#jira UE-38423
Change 3197131 on 2016/11/14 by Max.Chen
Sequencer: Null checks.
#jira UE-38570, UE-38593
Change 3197209 on 2016/11/14 by Max.Chen
Cine Camera: Reset focus smoothing interpolation on PostEditChangeProperty. This fixes an issue where if you enable focus smoothing, the manual focus distance that is input isn't used since the interpolation happens from the last current focus distance.
#jira UE-27055
Change 3198691 on 2016/11/15 by Max.Chen
Sequence Recorder: Optimize record transforms by setting all the keyframes at once. Also, added option to toggle removing redundant keyframes from the recorded tracks.
#jira UE-38489
Change 3198711 on 2016/11/15 by andrew.porter
Adding test content for MEdia Framework Track Switching.
Change 3199174 on 2016/11/15 by Lina.Halper
Sequencer backward compatibility fix with root motion
Make sure you could remove root motion fine
#jira : UE-38591
Change 3199260 on 2016/11/15 by tim.gautier
Updated QA-Media_TrackSwitch - changed Trigger Collision to only detect overlap from PlayerPawn
Change 3199663 on 2016/11/15 by Max.Chen
Anim Sequencer: Fix deprecation warning for bCanUseParallelUpdateAnimation. Updated to use bUseMultiThreadedAnimationUpdate.
Change 3199727 on 2016/11/15 by Max.Chen
Matinee to Level Sequence: Set default scale when converting matinee move tracks to sequencer.
#jira UE-38688
Change 3199847 on 2016/11/16 by Max.Chen
Sequencer: Add menu option to reduce keys of all sections in the current level sequence
Change 3200351 on 2016/11/16 by Max.Chen
Level Editor/Sequencer: Fixes to allow for component keyframing. The transform track operates on the components that changed, not the actor. The level editor viewport broadcasts begin/end movement on the components that changed.
#jira UE-38649, UE-38646
Change 3200474 on 2016/11/16 by Max.Chen
Sequencer: Move reduce keys to section context menu.
Change 3200888 on 2016/11/16 by Max.Chen
Sequencer: Clamp skeletal animation evaluation remapping of time to section bounds. This is necessary when evaluating nearest is enabled and the time is beyond the section bounds.
Also, set the shared track template to have higher priority so that it always clears/initializes weights before each section's template adds section params for evaluation.
Change 3201633 on 2016/11/17 by Max.Chen
Matinee to Level Sequence: Fix matinee 3d scale track conversion to level sequence.
Also, added paste matinee vector track to sequencer's vector track.
#jira UE-38688
Change 3202458 on 2016/11/17 by Max.Chen
Sequencer: Fix track editor commands getting unregistered when switching from one level sequence to another. The sequence of events is: track editor commands get bound when a level sequence is edited. When switching to another level sequence, the existing track editor is released after the new one is registered, causing the commands to ultimately get unbound.
#jira UE-38693
Change 3202606 on 2016/11/17 by Max.Chen
Actor Sequence: Null check in CanPossessObject for a component's owner.
#jira UE-38514
Change 3203522 on 2016/11/17 by Max.Chen
Sequencer: Audio start time deprecated in favor of start offset which is an offset into the audio clip. Also, limit the start offset to positive values since you can just crop into the audio clip by dragging the section's start time.
Audio track no longer supports multiple rows (should have been checked in along with the audio volume and pitch multiplier curves).
#jira UE-38549, UE-38554, UE-38547
Change 3203863 on 2016/11/18 by Andrew.Rodham
Engine: Ensure that world settings actor is considered by network object list when sorting the actor list for a level
Change 3203865 on 2016/11/18 by Andrew.Rodham
Sequencer: Fixed play rate track interaction between servers and clients
- The logic for evaluation was previously flawed (it would only run in editor builds). Play rate is now only evaluated on servers and standalone clients, with the time dilation being replicated to network clients.
Change 3203900 on 2016/11/18 by Andrew.Rodham
Sequencer: Changed CreateLevelSequencePlayer to create a transient level sequence actor
#jira UE-37277
Change 3205038 on 2016/11/18 by Max.Preussner
Slate: Corrected comment
Change 3205046 on 2016/11/18 by Max.Preussner
WmfMedia: Added missing nullptr check
#jira UE-38825
Change 3205073 on 2016/11/18 by Max.Chen
Sequencer: Fix audio upgrade case when start time is 0.
Change 3205277 on 2016/11/19 by Max.Preussner
Merging //UE4/Dev-Main to Dev-Sequencer (//UE4/Dev-Sequencer)
Please take a look at SequencerEdMode.cpp and Sequencer.cpp. I ended up accepting latest Dev-Sequencer, which seemed to be the right thing to do.
Change 3205465 on 2016/11/20 by Max.Preussner
MovieScene: Fixed non-unity build
Change 3205467 on 2016/11/20 by Max.Preussner
Engine: Fixed spelling
Change 3206264 on 2016/11/21 by Max.Preussner
Kismet: Added missing forward declaration
Change 3206493 on 2016/11/21 by Max.Preussner
PS4Media: Added remaining changes for removing game thread dependencies
Change 3206512 on 2016/11/21 by Andrew.Porter
Adding test content to QAGame for Sequencer animation weight blending.
Change 3206529 on 2016/11/21 by Lina.Halper
Fixed anim notifes to work in Sequencer Instance
- Give proper delta in editor preview
- Make sure not to recreate AnimInstance
#jira: UE-38849
#code review:Max.Chen
Change 3206552 on 2016/11/21 by Max.Preussner
QAGame: Enabled looping by default
Change 3207462 on 2016/11/22 by andrew.porter
QAGame: updating QA-Sequencer with changes to animation blending test cases
Change 3207499 on 2016/11/22 by tim.gautier
Added Streaming Sources, added Streaming Source options for BP_MediaPlayer. Specified Media Option Categories with BP_MediaPlayer to clean up details panel.
#jira none
Change 3207571 on 2016/11/22 by Max.Chen
Curve Editor: Expose curve editor settings to Editor Preferences.
#jira UE-38907
Change 3207690 on 2016/11/22 by Max.Chen
Sequencer: Speculative crash fix for switching UMG animations.
#jira UE-29333
Change 3207744 on 2016/11/22 by tim.gautier
Removed unnecessary nodes from BP_MediaPlayer. Created a variable visible in the Details Panel to allow the user to specify a URL to Stream media without specifying a Source in-editor.
#jira none
Change 3207935 on 2016/11/22 by Max.Chen
Sequencer: Temporary fix for skeletal animation track scrubbing. Verified that anim notifies still fire when playing and scrubbing.
#jira UE-38964
Change 3207938 on 2016/11/22 by Max.Chen
Sequence Recorder: Set reduce keys back to true so that there's no change in current behavior. This should be toggled off for performance reasons but in general is nice to have reduced keys.
Change 3207950 on 2016/11/22 by Lina.Halper
- Fixed so that mesh space additive won't show up in sequencer
- Added warning if you change type later or existing ones
#jira: UE-38062?
Change 3208278 on 2016/11/22 by andrew.porter
QAGame: Adjusting level blueprint for test case.
Change 3208285 on 2016/11/22 by andrew.porter
QAGame: adding SequencerBP animation blueprint.
Change 3208538 on 2016/11/23 by Max.Chen
Actor Sequence: Fix plugin filename.
Change 3208916 on 2016/11/23 by Max.Chen
Sequencer: Fix material parameter initialization so that the value is retrieved from the material instance and not the parent material.
#jira UE-34317
Change 3208924 on 2016/11/23 by Max.Chen
Save As: Cancel should not save over the existing asset. It should just return.
Change 3208939 on 2016/11/23 by andrew.porter
QAGame: reset some content back to its default state for testing
Change 3209053 on 2016/11/23 by Max.Chen
Sequencer: Ensure the section id is unique.
Change 3209161 on 2016/11/23 by Max.Chen
Save As: Follow up fix for cancelling save as.
Change 3210540 on 2016/11/26 by Max.Preussner
WmfMedia: Reworked fallback stride calculations to fix issues with some exotic video formats
Change 3210546 on 2016/11/26 by Max.Preussner
WmfMedia: Fixed NV12 vertical buffer alignment
Change 3211567 on 2016/11/28 by Max.Preussner
Merging //UE4/Dev-Main to Dev-Sequencer (//UE4/Dev-Sequencer)
Step 1 of 2
Change 3212408 on 2016/11/28 by Max.Preussner
Fixed fallout from Dev-Main merge
Change 3212456 on 2016/11/28 by Max.Preussner
ActorSequenceEditor: Removed monolithic header dependencies
Change 3212562 on 2016/11/28 by Max.Preussner
ActorSequenceEditor: Removed monolithic header usage
Change 3212649 on 2016/11/28 by Max.Chen
Fix CIS
Change 3212671 on 2016/11/28 by Max.Chen
Sequencer: Add option to restore to the pre animated state.
#jira UE-38862
#2953
Change 3212672 on 2016/11/28 by Max.Chen
Sequencer: Select object binding node corresponding to selected components and vice versa (select components in level when object binding node is selected)
Change 3212673 on 2016/11/28 by Max.Chen
Sequencer: Follow-up fix for component keyframing - key area needs to be updated by component.
#jira UE-38649
Change 3212676 on 2016/11/28 by Max.Chen
Level Editor: PostEditMove should only be called on the actor if it is moved.
#jira UE-38646
Change 3212688 on 2016/11/29 by Max.Chen
Sequencer: Force refresh event parameters customization when struct contents change but not a full refresh when struct child contents change.
#jira UE-39094
Change 3212831 on 2016/11/29 by Andrew.Rodham
Disabled ActorSequenceEditor plugin by default while it's experimental
Change 3213219 on 2016/11/29 by Max.Preussner
AvfMedia: Added missing include
Change 3213333 on 2016/11/29 by Andrew.Rodham
Sequencer: Added the ability to override bindings when playing back a level sequence on a level sequence actor
#jira UETOOL-746
Change 3213905 on 2016/11/29 by Max.Preussner
More IWYU fixes for macOS
Change 3214203 on 2016/11/29 by Michael.Gay
Some demo files to test Sequencer timing.
Change 3214205 on 2016/11/29 by Max.Preussner
More IWYU fixes for macOS
Change 3214548 on 2016/11/29 by Max.Preussner
More IWYU fixes for macOS
Change 3214564 on 2016/11/29 by Max.Preussner
More IWYU fixes
Change 3214567 on 2016/11/29 by Max.Chen
More IWYU fixes for Win32
Change 3214573 on 2016/11/29 by Max.Preussner
More IWYU fixes
Change 3214576 on 2016/11/29 by Max.Preussner
More IWYU fixes
Change 3214621 on 2016/11/30 by Max.Preussner
Atrac9Decoder: Fixed log category declaration
Change 3214630 on 2016/11/30 by Max.Preussner
More IWYU fixes
Change 3214747 on 2016/11/30 by Andrew.Rodham
Sequencer: Fixed shadow variable
Change 3214957 on 2016/11/30 by Andrew.Rodham
Core: Changed Algo::Find to use TElementType
- This allows it to support c style arrays
Change 3215127 on 2016/11/30 by Andrew.Rodham
Sequencer: Made burn-in options and init settings instanced
- This ensures they work correctly when defined on archetypes and blueprints
#jira UE-38645
Change 3215754 on 2016/11/30 by Max.Chen
Sequencer: Fix skeletal animation track evaluating tracks in the wrong time space. Cache the evalulation time and weight value in each section's template and then execute with those values in the shared track's template.
#jira UE-39145
Change 3216603 on 2016/12/01 by Max.Chen
Sequencer: Set audio volume/pitch only if changed.
Change 3216613 on 2016/12/01 by Max.Chen
Sequencer: Add component selector when there are multiple components that have sockets. This fixes a crash when there are multiple components to attach to.
#jira UE-39167
Change 3217175 on 2016/12/01 by Max.Chen
Sequencer: Set skeletal animation track evaluation to be upper bound exclusive. This gives better behavior when two clips butt up against each other since the sections would overlap in time and evaluation would normalize they weighted contribution of each.
#jira UE-37184
Change 3217292 on 2016/12/01 by Max.Chen
Sequencer: Rework upgrading track rows to include overlapping sections. For skeletal animation sections, set weight values based on the evaluation bounds since there was no blending prior to 4.15.
Change 3217860 on 2016/12/01 by Max.Preussner
Media: Fall-through for media options
Change 3217965 on 2016/12/01 by Max.Preussner
MediaAssets: Renamed media option name
Change 3218470 on 2016/12/01 by Max.Chen
Sequencer: Fix start time deprecation value so that negative values are supported.
#jira UE-39259
Change 3218473 on 2016/12/01 by Max.Chen
Sequencer: Fix crash if start seq length is negative.
Change 3219021 on 2016/12/02 by Max.Chen
Sequencer: Add multiply and divide to transform box.
Change 3219374 on 2016/12/02 by Max.Chen
Sequencer: Teleport simulating components when moving them through the transform track. This fixes bugs with recording simulating actors (ie. vehicle game) where recorded actors don't playback with the recorded positions and there are warnings about attempting to move a fully simulated skeletal mesh.
#jira UE-38442, UE-38444, UE-38852
Change 3219638 on 2016/12/02 by Max.Preussner
Projects: Fixed error message
Change 3220584 on 2016/12/03 by Andrew.Rodham
Sequencer: Blueprint generated classes are now always removed from level sequences on load in the editor
- This ensures that old (and perhaps corrupt) BP generated classes are destroyed
#jira UE-39173
Change 3220585 on 2016/12/03 by Andrew.Rodham
Editor: Fix EditInstanceOnly properties that aren't variables on the generated class being editable in blueprints
Change 3220973 on 2016/12/04 by Max.Chen
Fix CIS
Change 3222833 on 2016/12/05 by Max.Chen
Sequencer: Fixed some recorded components not being generated.
#jira UE-34289
Change 3224450 on 2016/12/06 by Max.Chen
Sequencer: Fix convert spawnable to posessable. Logic for setting the parent was mistakenly removed in runtime eval.
#jira UE-39419
Change 3225301 on 2016/12/07 by Max.Preussner
AvfMedia: Added settings class
Change 3225304 on 2016/12/07 by Max.Preussner
Fixed typo
Change 3225723 on 2016/12/07 by Max.Preussner
Fixed typo.
Change 3225871 on 2016/12/07 by Max.Preussner
Forgot to check in
Change 3225932 on 2016/12/07 by Max.Preussner
Added missing header
Change 3226266 on 2016/12/07 by Max.Preussner
Media: Fixed various module dependencies
Change 3226451 on 2016/12/07 by Max.Preussner
Include fixes
Change 3226455 on 2016/12/07 by Max.Preussner
LevelSequence: Added missing include
Change 3227135 on 2016/12/08 by Max.Preussner
Merging //UE4/Dev-Main to Dev-Sequencer (//UE4/Dev-Sequencer)
Change 3227143 on 2016/12/08 by Max.Preussner
LevelSequencer: Added missing header
Change 3227731 on 2016/12/08 by Max.Preussner
LevelSequencer: Added missing include
Change 3228222 on 2016/12/08 by Max.Preussner
UBT: Fixed delay load library support for remote compilation to macOS
Change 3228266 on 2016/12/08 by Max.Preussner
PluginBrowser: Added missing includes
Change 3228755 on 2016/12/09 by Andrew.Rodham
Sequencer: Fixed copy-paste of event keys
- Also added a key-value iterator to TCurveInterface (both const and non-const)
#jira UE-39526
Change 3228777 on 2016/12/09 by Luke.Thatcher
[PLATFORM] [PS4] [!] Reimplement fixes from Fortnite for PS4 media framework in //UE4/Dev-Sequencer.
Based on Original CL 3227137
- Event callback from AvPlayer was enqueing the processing of events over to the player thread, so the "State" member of FPS4MediaPlayer doesn't get updated until the following frame. This breaks cases with multiple calls to SetRate within a single frame.
- Removed time check in FPS4MediavideoSampler::Tick. There are cases where the time check failed, even when a new frame was available from the AvPlayer libs. The video sampler now always calls sceAvPlayerGetVideoDataEx. This returns immediately if no frame data is available.
- FPS4MediaPlayer::Seek was failing if the video is in a playing/paused state. We now restart the stream if a seek command occurs after the video has stopped (e.g. due to EOF reached).
- Shared a single critical section between the FPS4MediaTracks, FPS4MediaVideoSampler and FPS4MediaPlayer objects. Fixes deadlocks between the decoder/player threads where each will be waiting on each others' critical section.
[~] Enabled debug warnings from AvPlayer library in non-shipping builds.
[~] Changed log levels of UE_LOGs to match their severity.
-------------------------
[!] Also, fixed rendering artifacts on videos using a cropping rectangle
- e.g. 1080p videos are actually decoded as 1920x1088, with an extra 8 pixels height, which contained garbage.
- We determine the final media texture size as the size of the cropping rectangle, and use modified UVs during the YCbCr->RGB converstion shader to do the mapping.
Change 3228793 on 2016/12/09 by Andrew.Rodham
Sequencer: Edits to actor sequences now correctly mark their parent blueprints for compilation
#jira UE-38723
Change 3228877 on 2016/12/09 by Luke.Thatcher
[PLATFORM] [PS4] [!] Fix track switching issues in PS4 media player.
- Sony's AvPlayer library does not support switching tracks (audio or video) on-the-fly after a stream has begun playback.
- The higher level UMediaPlayer enables track 0 automatically, which would be committed to the AvPlayer, and therefore lock out other streams.
- Actual track selection is now deferred until the stream is started, after which changing tracks is prohibited.
- Tracks must be selected before calling SetRate for the first time.
#jira UE-37225
Change 3229501 on 2016/12/09 by Max.Preussner
Media: Better display names for media player plug-ins
Change 3229515 on 2016/12/09 by Max.Preussner
MediaPlayerEditor: Sorting player plug-ins alphabetically; consistent display in both media player editor and media source customization
Change 3229716 on 2016/12/09 by andrew.porter
Adding PlayRate sequence to my dev folder
Change 3230554 on 2016/12/12 by Andrew.Rodham
Back out changelist 3220584
- Currently this causes actor instances to fail to load because they are instanced of dead classes. Need to think of a more robust solution here.
#jira UE-39398
Change 3230922 on 2016/12/12 by Max.Preussner
Merging //UE4/Dev-Main to Dev-Sequencer (//UE4/Dev-Sequencer)
Change 3232059 on 2016/12/12 by Max.Preussner
MediaUtils: Better error message for when no suitable media player plug-in was found
Change 3232097 on 2016/12/13 by Max.Preussner
Switch: Temp fix for borked folder name on case-sensitive platforms
Change 3232100 on 2016/12/13 by Max.Preussner
MediaAssets: Split up UMediaSource into UBaseMediaSource
Also added color space related properties
Change 3232101 on 2016/12/13 by Max.Preussner
Media: Started to implement support for color spaces
Change 3232119 on 2016/12/13 by Max.Preussner
MediaAssets: Fixed buffer not recreated if color space changed
Change 3232799 on 2016/12/13 by Max.Preussner
PS4Media: Fixed build
#jira UE-39706
Change 3233170 on 2016/12/13 by Max.Preussner
Merging //UE4/Dev-Main to Dev-Sequencer (//UE4/Dev-Sequencer)
Change 3233250 on 2016/12/13 by Max.Preussner
MediaPlayerEditor: Added separator in track menu
Change 3233309 on 2016/12/13 by andrew.porter
QAGame: Edited text render actors in QA-Media_TrackSwitch
Change 3233439 on 2016/12/13 by Chris.Babcock
Standardize Android media track DisplayName
Change 3233817 on 2016/12/13 by Chris.Babcock
Fix virtual keyboard EditableTextBox update when comitted text matches current text from change updates
#jira UE-39424
#ue4
#mobile
Change 3234421 on 2016/12/14 by Andrew.Rodham
Sequencer: Fixed nullptr crash
Change 3234423 on 2016/12/14 by Andrew.Rodham
Sequencer: Fixed incorrect copying of base-class from compiler rules
Change 3234429 on 2016/12/14 by Andrew.Rodham
Sequencer: Fixed empty space not being added between the last and penultimate segments when required
#jira UE-39442
Change 3234635 on 2016/12/14 by Max.Preussner
MediaAssets: Exposed UTexture properties in UMediaTexture
Change 3234681 on 2016/12/14 by Max.Preussner
MediaAssets: Made MediaTextureResources support -onethread
Change 3234878 on 2016/12/14 by Andrew.Rodham
Sequencer: Fixed crash with "Evaluate Sub Sequences in Isolation" enabled
- This occurred when there were tracks at the root level of the sub sequence, because it would incorrectly hash in the parent ID, rather than just using it directly
Change 3234901 on 2016/12/14 by Max.Preussner
MediaPlayerEditor: Detail customization improvements
Change 3235275 on 2016/12/14 by Chris.Babcock
Fix WMF stream ordering to match other players
#jira UE-39703
#ue4
#mediaframework
Change 3235390 on 2016/12/14 by Max.Preussner
DesktopPlatform: Added IniPlatformName to FPlatformInfo; fixed up indentation
Change 3235402 on 2016/12/14 by Max.Preussner
MediaAssets: Fixed platform player name overrides ignored in packaged builds (UE-39771)
#jira UE-39771
Change 3235667 on 2016/12/14 by Max.Preussner
Media: Moved enums into separate header file, so they can be shared
Change 3235984 on 2016/12/14 by Max.Preussner
Back out changelist 3235667
Change 3236040 on 2016/12/14 by Max.Preussner
Core: Added modulus operator to FTimespan
Change 3236139 on 2016/12/15 by Max.Preussner
Core: Added FTimespan::IsZero
Change 3236527 on 2016/12/15 by Max.Preussner
Fixed initialization order
Change 3237101 on 2016/12/15 by Andrew.Rodham
Sequencer: Skeletal animation and audio tracks now support multiple rows again.
- In practice there were too many edge-cases to account for whilst considering backwards compatability
- The impossible scenario was 2 sections on different rows, but evaluating nearest section - this cannot be represented as separate tracks.
- Reorganised animation runtime template to use execution tokens rather than ::Initialize to ensure that animation operates correctly on the first frame for spawned objects
#jira UE-39442
#jira UE-39725
Change 3237213 on 2016/12/15 by Andrew.Rodham
Sequencer: Fixed crash when setting event key properties
#jira UE-39347
Change 3237255 on 2016/12/15 by Chris.Babcock
Fix Multi with ETC2 and PVRTC selecting ES3.0 instead of 2.0
#jira UE-39839
#ue4
#android
Change 3237294 on 2016/12/15 by Andrew.Rodham
Sequencer: Fixed shadowed variable warnings
Change 3237366 on 2016/12/15 by Max.Preussner
Media: Removed color space changes; we'll do these in material graphs instead
Change 3237436 on 2016/12/15 by Andrew.Rodham
Sequencer: Fixed montages not being stopped for specific animation slots when animation sections were no longer evaluated
#jira UE-39847
Change 3237458 on 2016/12/15 by Andrew.Rodham
Sequencer: Always force regeneration of templates when PIE to eliminate the posibility of combining stale data
Change 3237516 on 2016/12/15 by Max.Preussner
Media: Attempting to fix Crash in fortnite just before exiting onboarding (UE-39841)
#jira UE-39841
Change 3237532 on 2016/12/15 by Max.Preussner
Added missing scope lock
Change 3237991 on 2016/12/16 by Max.Preussner
PS4Media: Fixed build
[CL 3238204 by Max Preussner in Main branch]
2016-12-16 11:17:44 -05:00
FLayoutExtender LayoutExtender ;
LevelEditorModule . OnRegisterLayoutExtensions ( ) . Broadcast ( LayoutExtender ) ;
Layout - > ProcessExtensions ( LayoutExtender ) ;
2014-03-14 14:13:41 -04:00
return LevelEditorTabManager - > RestoreFrom ( Layout , OwnerWindow ) . ToSharedRef ( ) ;
}
void SLevelEditor : : HandleExperimentalSettingChanged ( FName PropertyName )
{
2014-10-09 11:24:44 -04:00
FLevelEditorModule & LevelEditorModule = FModuleManager : : GetModuleChecked < FLevelEditorModule > ( " LevelEditor " ) ;
TSharedPtr < FTabManager > LevelEditorTabManager = LevelEditorModule . GetLevelEditorTabManager ( ) ;
LevelEditorTabManager - > UpdateMainMenu ( true ) ;
2014-03-14 14:13:41 -04:00
}
FName SLevelEditor : : GetEditorModeTabId ( FEditorModeID ModeID )
{
return FName ( * ( FString ( " EditorMode.Tab. " ) + ModeID . ToString ( ) ) ) ;
}
void SLevelEditor : : ToggleEditorMode ( FEditorModeID ModeID )
{
2015-07-10 03:57:54 -04:00
// Prompt the user if Matinee must be closed before activating new mode
if ( ModeID ! = FBuiltinEditorModes : : EM_InterpEdit )
{
FEdMode * MatineeMode = GLevelEditorModeTools ( ) . GetActiveMode ( FBuiltinEditorModes : : EM_InterpEdit ) ;
if ( MatineeMode & & ! MatineeMode - > IsCompatibleWith ( ModeID ) )
{
FEditorModeInfo MatineeModeInfo = FEditorModeRegistry : : Get ( ) . GetModeInfo ( ModeID ) ;
FFormatNamedArguments Args ;
Args . Add ( TEXT ( " ModeName " ) , MatineeModeInfo . Name ) ;
FText Msg = FText : : Format ( NSLOCTEXT ( " LevelEditor " , " ModeSwitchCloseMatineeQ " , " Activating '{ModeName}' editor mode will close UnrealMatinee. Continue? " ) , Args ) ;
if ( EAppReturnType : : Yes ! = FMessageDialog : : Open ( EAppMsgType : : YesNo , Msg ) )
{
return ;
}
}
}
2014-03-14 14:13:41 -04:00
// *Important* - activate the mode first since FEditorModeTools::DeactivateMode will
2014-06-18 10:16:16 -04:00
// activate the default mode when the stack becomes empty, resulting in multiple active visible modes.
GLevelEditorModeTools ( ) . ActivateMode ( ModeID ) ;
2014-03-14 14:13:41 -04:00
// Find and disable any other 'visible' modes since we only ever allow one of those active at a time.
TArray < FEdMode * > ActiveModes ;
2014-06-18 10:16:16 -04:00
GLevelEditorModeTools ( ) . GetActiveModes ( ActiveModes ) ;
2014-03-14 14:13:41 -04:00
for ( FEdMode * Mode : ActiveModes )
{
2014-06-18 10:16:16 -04:00
if ( Mode - > GetID ( ) ! = ModeID & & Mode - > GetModeInfo ( ) . bVisible )
2014-03-14 14:13:41 -04:00
{
2014-06-18 10:16:16 -04:00
GLevelEditorModeTools ( ) . DeactivateMode ( Mode - > GetID ( ) ) ;
2014-03-14 14:13:41 -04:00
}
}
FLevelEditorModule & LevelEditorModule = FModuleManager : : GetModuleChecked < FLevelEditorModule > ( " LevelEditor " ) ;
TSharedPtr < FTabManager > LevelEditorTabManager = LevelEditorModule . GetLevelEditorTabManager ( ) ;
TSharedRef < SDockTab > ToolboxTab = LevelEditorTabManager - > InvokeTab ( FTabId ( " LevelEditorToolBox " ) ) ;
//// If it's already active deactivate the mode
2014-06-18 10:16:16 -04:00
//if ( GLevelEditorModeTools().IsModeActive( ModeID ) )
2014-03-14 14:13:41 -04:00
//{
2014-06-18 10:16:16 -04:00
// //GLevelEditorModeTools().DeactivateAllModes();
// //GLevelEditorModeTools().DeactivateMode( ModeID );
2014-03-14 14:13:41 -04:00
//}
//else // Activate the mode and create the tab for it.
//{
2014-06-18 10:16:16 -04:00
// GLevelEditorModeTools().DeactivateAllModes();
// GLevelEditorModeTools().ActivateMode( ModeID );
2014-03-14 14:13:41 -04:00
// //FLevelEditorModule& LevelEditorModule = FModuleManager::GetModuleChecked<FLevelEditorModule>( "LevelEditor" );
// //TSharedPtr<FTabManager> LevelEditorTabManager = LevelEditorModule.GetLevelEditorTabManager();
// //TSharedRef<SDockTab> ToolboxTab = LevelEditorTabManager->InvokeTab( GetEditorModeTabId( ModeID ) );
//}
}
2014-06-18 10:16:16 -04:00
bool SLevelEditor : : IsModeActive ( FEditorModeID ModeID )
2014-03-14 14:13:41 -04:00
{
2014-06-18 10:16:16 -04:00
// The level editor changes the default mode to placement
if ( ModeID = = FBuiltinEditorModes : : EM_Placement )
2014-03-14 14:13:41 -04:00
{
2014-06-18 10:16:16 -04:00
// Only return true if this is the *only* active mode
TArray < FEdMode * > ActiveModes ;
GLevelEditorModeTools ( ) . GetActiveModes ( ActiveModes ) ;
for ( FEdMode * Mode : ActiveModes )
2014-03-14 14:13:41 -04:00
{
2014-06-18 10:16:16 -04:00
if ( Mode - > GetModeInfo ( ) . bVisible & & Mode - > GetID ( ) ! = FBuiltinEditorModes : : EM_Placement )
2014-03-14 14:13:41 -04:00
{
return false ;
}
}
}
2014-06-18 10:16:16 -04:00
return GLevelEditorModeTools ( ) . IsModeActive ( ModeID ) ;
2014-03-14 14:13:41 -04:00
}
void SLevelEditor : : RefreshEditorModeCommands ( )
{
FLevelEditorModule & LevelEditorModule = FModuleManager : : GetModuleChecked < FLevelEditorModule > ( " LevelEditor " ) ;
Copying //UE4/Dev-Editor to //UE4/Dev-Main (Source: //UE4/Dev-Editor @ 3228984)
#lockdown Nick.Penwarden
#rb none
==========================
MAJOR FEATURES + CHANGES
==========================
Change 3168749 on 2016/10/20 by Richard.TalbotWatkin
Fixed bug in csgRebuild where dynamic brushes from the whole world are rebuilt instead of just those from the current level. csgRebuild is supposed to act only on the current level's geometry.
#jira UE-37376 - csgRebuild builds dynamic brushes from the whole world, instead of just the current level
Change 3169740 on 2016/10/20 by Nick.Darnell
Automation - Removing old screenshots, working on new naming convention.
Change 3169796 on 2016/10/20 by Nick.Darnell
Automation - Adding new screenshots.
Change 3169800 on 2016/10/20 by Nick.Darnell
Automation - Working on improvements to screenshot comparions, now using the Unique device id instead of adapter name. Working on better metadata based matching for which screenshot to use, stubbing in support for adding alternative versions of screenshots.
Change 3169901 on 2016/10/20 by Nick.Darnell
Automation - More fixes / refinements to the way we add alternatives and replace old versions of screenshots.
Change 3169926 on 2016/10/20 by Cody.Albert
Added extension point for level editor viewport's Show and Camera menus
Change 3170053 on 2016/10/20 by Cody.Albert
Back out changelist 3169926
Change 3170067 on 2016/10/20 by Cody.Albert
Added extension point for level editor viewport's Show and Camera menus
Change 3170382 on 2016/10/21 by Michael.Dupuis
#jira UE-36585 Added Copy/Paste to Material list/item, section list/item to StaticMeshEditor and Persona Editor
Change 3170520 on 2016/10/21 by Alex.Delesky
#jira UE-36510 - You can now toggle if combo boxes can receive keyboard focus from the Widget Blueprint
Change 3170522 on 2016/10/21 by Alex.Delesky
#jira UE-33031 - Buttons will no longer remained in a hovered state on mobile devices if the user drags their finger into a button, and then lifts their finger without dragging it outside of the button.
Change 3170524 on 2016/10/21 by Alex.Delesky
#jira UE-25591 - Static Mesh LODs can now be removed from the editor without a mesh reduction tool like Simplygon configured for use in the editor.
Change 3170530 on 2016/10/21 by Alex.Delesky
Moved the HasKey method from UMapProperty to FScriptMapHelper, and moved the HasElement property from USetProperty to FScriptSetHelper
#jira none
Change 3170768 on 2016/10/21 by Cody.Albert
Back out changelist 3170067
Change 3170795 on 2016/10/21 by Nick.Darnell
JsonObjectConverter - By default UStructToJsonAttributes now skips transient properties.
Change 3170797 on 2016/10/21 by Nick.Darnell
Automation - Fixing several warnings dealing with fbx testing.
Change 3170921 on 2016/10/21 by Nick.Darnell
Automation - Fixing more warnings with FBX tests.
Change 3171109 on 2016/10/21 by Cody.Albert
Added extension point for level editor viewport Show menu
Change 3171812 on 2016/10/24 by Jamie.Dale
Back out changelist 3163044
This broke wrapping for Japanese and Chinese.
Change 3171842 on 2016/10/24 by Michael.Dupuis
#jira UE-36400
Name each Parameter uniquely either from copy/paste of any creation menu
Changed the default value for Scalar and Vector Parameter to 1 and 1,1,1,1
Added a Promote To Parameter when clicking on an Input pin that will generate proper node type based on type pin type
When editing a color property update the material expression preview
Change 3171958 on 2016/10/24 by Alex.Delesky
#jira UE-37444 - The Primitive Stats browser (and other statistics browsers) can now sort columns based on singular objects or object types as well as texture dimensions.
Change 3171969 on 2016/10/24 by Nick.Darnell
Slate - Adding some code to prevent crashes if bogus user indexes are passed into SlateApplications GetUser functions.
Change 3171970 on 2016/10/24 by Matt.Kuhlenschmidt
PR #2885: Fixed Stretched Landscape Editor Icons (Contributed by teessider)
Change 3172035 on 2016/10/24 by Alex.Delesky
Fix to build warning for 3171970
#jira none
Change 3172078 on 2016/10/24 by Michael.Dupuis
#jira UE-37626 Fetch property node from property handle if there is no property editor
Change 3172143 on 2016/10/24 by Jamie.Dale
Line-break iterators will now avoid breaking words in Hangul
The default behavior for wrapping Hangul is to use Western-style wrapping (where words are kept as-is) rather than East Asian-style (where words are broken by syllables). This behavior can be controlled by the Localization.HangulTextWrappingMethod CVar in-case you were dependant on the old behavior, but since modern Hangul uses spaces, the per-word wrapping is preferred by native speakers.
Change 3172418 on 2016/10/24 by Michael.Dupuis
Fixed Static Analysis error
Change 3173389 on 2016/10/25 by Michael.Dupuis
#jira UE-9284 Make the UI appear only on hover and change icons size
Change 3173918 on 2016/10/25 by Alex.Delesky
#jira UE-37753 - WidgetBlueprints saved without a root widget (e.g., by deleting the starting Canvas panel) will no longer set a Canvas panel as the root widget. New WidgetBlueprints will still contain a Canvas Panel when created.
Change 3173966 on 2016/10/25 by Alex.Delesky
#jira UE-20891 - SpinBox now receives MouseMove events while simulating touch events using the mouse.
Change 3174847 on 2016/10/26 by Alex.Delesky
#jira UE-36371 - Windowed Fullscreen will now expand to fit the entirety of the current window and will not be displaced when the Windows taskbar is docked on the top or left sides of the screen.
Change 3174916 on 2016/10/26 by Alexis.Matte
When re-importing fbx file, always log to the message log.
#jira UE-37639
Change 3174940 on 2016/10/26 by Alex.Delesky
Back out changelist 3174847 at request of platforms team. Was fixed on Main.
Change 3174995 on 2016/10/26 by Matt.Kuhlenschmidt
Import commandlet fixes
- Fixed crash when source control could not be contacted
- Fixed assets not importing correctly if they depended on other assets in a previous import group within the automated import
Change 3175217 on 2016/10/26 by Alexis.Matte
The FBX reimport animation code now return false if there was an error when importing
#jira UE-37755
Change 3175728 on 2016/10/26 by Alexis.Matte
Log a message when importing a skeletal mesh with more bone influence then the maximum supported
#2875
#jira UE-37613
Change 3177997 on 2016/10/28 by Nick.Darnell
Editor - Prevent re-entrant calls when EndPlayMap is called.
Change 3178429 on 2016/10/28 by Nick.Darnell
Engine - Bumping BaseEngine.ini to IOS_8, MinimumiOSVersion, as that is now the minimum allowed to fix an error on startup. Tweaking the location of where some importing files go when they're imported.
Change 3179774 on 2016/10/31 by Matt.Kuhlenschmidt
Guard against bad render targets in Slate RHI
#jira UE-37905
Change 3179900 on 2016/10/31 by Matt.Kuhlenschmidt
Added logging to track https://jira.it.epicgames.net/browse/UE-37900
#jira UE-37900
Change 3179920 on 2016/10/31 by Alex.Delesky
Removing LODs from skeletal meshes is now a transacted action and can be undone. Related to UE-25591.
#jira none
Change 3179921 on 2016/10/31 by Alex.Delesky
#jira UE-37725 - Adding safeguard against a potential crash in FTextureEditorViewportClient caused by a texture not having a valid texture resource
Change 3180119 on 2016/10/31 by Alexis.Matte
fbx importer avoid asset creation name clash
#jira UE-35100
Change 3181905 on 2016/11/01 by Alexis.Matte
Paint tool now allow users to paint on any vertex if they need it.
#jira UE-8372
Change 3182355 on 2016/11/01 by Alexis.Matte
We now support FBX LODs export for the asset exporter from the content browser.
#jira UE-35302
Change 3183286 on 2016/11/02 by Alexis.Matte
Make sure static mesh build settings are set properly when we re-import with different options. Specifically the normals, tangents and tangent space are dependent on the import options.
#jira UE-37520
Change 3183567 on 2016/11/02 by Shaun.Kime
#jira UE-38019
The Content Browser's View Options originally included both Engine and GameProject plugins only when clicking Show Plugin Content. Since there are quite a few Engine plugins, this produces quite a bit of content in the Folders panel. Most of the Engine plugins have classes or content that isn't really meant to be user-facing, so the experience of hunting for a game plugin-in's content is poor.
The new behavior is that GameProject plugins are controlled by the "View Plugin Content" option. In order to see the Engine plugins you'll need both Engine Content and Plugin Content checkboxes enabled. By default, the editor should enable the "View Plugin Content" checkbox since it should be limited to just the content in the game's Plugins folder.
Change 3184002 on 2016/11/02 by Jamie.Dale
Fixed crash during TSF IME shutdown
#jira UE-38073
Change 3185126 on 2016/11/03 by Shaun.Kime
Some of the plugin templates define Editor specific plugins. If created and a Standalone build is run, the application will attempt to link in editor libraries in game mode and will run into issues when you hit any key. The fix is to specify an Editor module description for these plugins.
Additionally, there appears to be a mismatch in pathing types when dealing with plugin path and GameDir. Plugin path is absolute and GameDir is relative by default. We check to see if the gameDir is a subset of the plugin path, but this fails due to the mismatch. The fix is to force both to be absolute (enforcing normalization of both paths as well).
#jira UE-38065
#jira UE-37645
Change 3185278 on 2016/11/03 by Nick.Darnell
UMG - Fixing some issues with HDPI mode in the widget designer.
Change 3185355 on 2016/11/03 by Nick.Darnell
UMG - Widget Component's Draw At Desired size now should also work correctly if it's in screenspace.
Change 3185510 on 2016/11/03 by Nick.Darnell
UMG - Restoring the ability of the Widget Component to directly recieve hardware input. The Widget Interaction Component is great for just about every interaction use case - the one it's not is when you actually want the 3D widgets to take focus, and to be able to be typed directly into by the user. The kind of situation where you might want to use them as a 3D menu, in a non-VR environment. By default - Widget Components will not behave in this manner, but you can now use the option bReceiveHardwareInput to enable the ability for Widget Components to function more like a widget in the screenspace of the viewport.
Slate - The scene viewport now correctly takes scale into account when drawing the 'software cursor', this fixes an issue with HDPI mode, and the cursor not being restored to the same location after moving a gizmo.
Change 3185514 on 2016/11/03 by Nick.Darnell
UMG - Fixing some HDPI mode problems with widget position calculation when projecting world to viewport / screen, absolute spaces.
Change 3185652 on 2016/11/03 by Nick.Darnell
Slate - Exposing a cached version of the widget geometry that comes in during Tick. Also performed a bit of optimization work on the class to make some space for the geometry object we now cache, by compacting the pointer event delegates we were storing.
Change 3185952 on 2016/11/03 by Nick.Darnell
UMG - Fixing another build error relating to local widget geometry.
Change 3185953 on 2016/11/03 by Nick.Darnell
UMG - Fixing a mac compiler warning.
Change 3186886 on 2016/11/04 by Matt.Kuhlenschmidt
Fixed collapse all hiding everything in the settings editors
#jira UE-38151
Change 3187014 on 2016/11/04 by Matt.Kuhlenschmidt
Fixed new assets opening in a minimized window not restoring that window.
Change 3187026 on 2016/11/04 by Shaun.Kime
UUnrealEdEngine::edactDeleteSelected calls out to FBlueprintEditorUtils::FindActorsThatReferenceActor. This checks the entire world for each actor to be deleted. When you have tens of thousands of actors in the world and are deleting tens of thousands of actors, this can take minutes. This change amortizes the cost of finding the actor references once for the world and for each actor to be deleted, we query the cached list of references. This brings the deletion time down to seconds.
#jira UE-38094
Change 3187073 on 2016/11/04 by Nick.Darnell
Automation - Changing the code that writes out json to force no BOM as is the json standard.
Change 3187113 on 2016/11/04 by Jamie.Dale
Removed double look-up in UTextProperty::SerializeItem
Change 3187114 on 2016/11/04 by Jamie.Dale
Feedback context now uses culture correct percentage formatting
Change 3187273 on 2016/11/04 by Alexis.Matte
Fbx importer for static mesh, make sure that we order the materials array to follow the section order.
Add also some fbx automation test
#jira UE-38242
Change 3187276 on 2016/11/04 by Matt.Kuhlenschmidt
Fix crash when an actor picker shows up in the struct editor. Structs do not have root property nodes
#jira UE-38268
Change 3187463 on 2016/11/04 by Nick.Darnell
Automation - Updating the blessed screenshots, and fixing the BOM issues with the json.
Change 3188638 on 2016/11/07 by Shaun.Kime
Making the UI for adding/removing parameters in custom blueprint functions behave similarly to the struct creation dialog in the content browser. There are no longer "New" buttons at the bottom of the panel and the parameter moving controls have been moved onto the main parameter row instead of being nested inside the collapse panel. A tooltip will now let you know the full parameter name and type when you hover over the editable name field. Made the move up/down icons more legible by increasing contrast between the arrow and the light grey background.
#jira UE-38240
Change 3189056 on 2016/11/07 by Nick.Darnell
Core/Editor - UObject::IsAsset() now returns false if the outermost package is RF_Transient. Also updating the creation of the transient package to be RF_Transient. This makes it so transient packages created by UMG or some other editor for things like previewing a streamed in level instance, no longer show up in the content browser.
Change 3189147 on 2016/11/07 by Jamie.Dale
Fixed potential race-condition where a UFont object could be GC'd while the loading screen was using the font cache
This queues up the pending removal until it's safe to execute it (by a thread that fully owns Slate rendering).
#jira UE-38309
Change 3189344 on 2016/11/07 by Matt.Kuhlenschmidt
Merging //UE4/Dev-Main to Dev-Editor (//UE4/Dev-Editor)
Change 3189380 on 2016/11/07 by Matt.Kuhlenschmidt
Guard against null object when creating details panel
Change 3190017 on 2016/11/08 by Alexis.Matte
FrontX support for scene importer
#jira UETOOL-1061
Change 3190058 on 2016/11/08 by Matt.Kuhlenschmidt
Fixed misaligned button in the new blueprint class dialog
Change 3190086 on 2016/11/08 by Nick.Darnell
UMG - Fixing the calculation for widget componets screen position if the camera aspect is constrained.
Change 3190159 on 2016/11/08 by Nick.Darnell
UMG - We no longer also take the platform DPI scale into account when applying UMG's UI scale. Since UMG already provides a DPI scaling system, compounding it with the native OSes produces undesirable results, since the DPI scale curve does not take into account some unknown platform scale set by a user.
Change 3190161 on 2016/11/08 by Nick.Darnell
UMG - UWidget is now Blueprintable. Improving some doc.
Change 3190545 on 2016/11/08 by Alexis.Matte
Support scaling when exporting skeleton (bind pose) to FBX
#jira UE-36120
Change 3191614 on 2016/11/09 by Simon.Tourangeau
Fix cooking crash after fbx import of a scene without meshes
#jira UE-38264
Change 3191659 on 2016/11/09 by Simon.Tourangeau
Cleanup Persona LOD section button layout
#jira UE-38339
Change 3191882 on 2016/11/09 by Jamie.Dale
Changed FBlackboardKeySelector::AddObjectFilter to use MakeUniqueObjectName so it generates more stable names, rather than relying on a static counter.
Also updated FBlackboardKeySelector::AddClassFilter, FBlackboardKeySelector::AddEnumFilter, and FBlackboardKeySelector::AddNativeEnumFilter to use MakeUniqueObjectName to ensure they don't conflict.
Change 3192092 on 2016/11/09 by Jamie.Dale
Deleting some test assets that were accidentally checked in, some of which no longer load
Change 3192281 on 2016/11/09 by Alex.Delesky
#jira UE-31866 - Widget Blueprints will no longer experience compile issues when dragging widgets between the hierarchy views of different Widget Blueprints.
Change 3192365 on 2016/11/09 by Shaun.Kime
Adding support for MaterialParameterCollections to Slate UI objects. For reasons of Blueprint controls amongst other things, MPC's are owned by individual UWorlds and transferred over to their respective Scenes. Since we want the latest values from those in-UWorld representations, Slate needs to know about the Scene on the render thread to properly map the materials to their MPC inputs. This involved keeping Scene arrays synchronized between the game logic thread and render thread, and adding a Scene index field to each batched draw element in Slate. SceneViewports are now responsible for registering their associated Scenes with the SlateRenderer. Since RetainerBoxes also draw their content as well, they too need to register their Scenes.
#jira UE-19022
Change 3192494 on 2016/11/09 by Alex.Delesky
#jira UE-37829 - Dynamically changing an option in the style for an Editable Text Box or Multiline Editable Text Box will now update it correctly.
Change 3193183 on 2016/11/10 by Alexis.Matte
When doing FBX scene re-import, the new staticmesh asset was not mark as dirty. So the system was not saving the new asset.
#jira UE-38450
Change 3193419 on 2016/11/10 by Alex.Delesky
Fixing UnrealTournament build error in SUTChatEditBox
#jira none
Change 3193456 on 2016/11/10 by Alex.Delesky
Fix to build warning C6011 in SWidgetHierarchyItem
#jira none
Change 3193704 on 2016/11/10 by Simon.Tourangeau
Create Cinematic Camera when importing camera from fbx
#jira UE-37764
Change 3194593 on 2016/11/11 by Nick.Darnell
Slate - Fixing the window reshaping logic to avoid work if we don't need to do it, rather than external calls attempting to do the check (poorly). This appears to fix the problem with popup menus being slightly off in size, creating scrollbars. This also prevents constant reshaping of windows, due to people performing the wrong checks over and over, because they were comparing against non-truncated or rounded values against truncated/rounded values.
Change 3194595 on 2016/11/11 by Nick.Darnell
Slate - Simplifying the Menu Anchor popup code for new Windows, and correcting it so that it does not take non-DPI scale into account when calculating the size of the window. Otherwise, popup menus on say, the blueprint editor change size depending upon the scale of the area.
Change 3194830 on 2016/11/11 by Richard.TalbotWatkin
Optimized pasting brushes, so geometry is not constantly rebuilt for every brush that's added. This improves performance by a couple of orders of magnitude!
#jira UE-38524 - Moving many brushes to another level is very slow
Change 3194859 on 2016/11/11 by Alexis.Matte
Fix fbx skeletal mesh cleanup material crash
#jira UE-38525
Change 3195199 on 2016/11/11 by Nick.Darnell
UMG - Updating the bindable widget searching code in sequencer to use the WidgetTree traversing code, instead of something custom. This fixes the issue where it wasn't finding widgets inside of named slots.
#jira UE-38536
Change 3196579 on 2016/11/14 by Matt.Kuhlenschmidt
Guard against rendering crashes when a mesh with no lod resources is opened.
#jira UE-38520
Change 3196614 on 2016/11/14 by Nick.Darnell
Slate - The ignore incoming scale option for the scale box should now behave as expected in more cases. It required modifying the GetRelativeLayoutScale function to also pass down the prepass scale, otherwise it can't extract out the incoming scale ahead of time before text is measured ahead of time.
Change 3196624 on 2016/11/14 by Matt.Kuhlenschmidt
PR #2927: UE-38473: Shadow outline color uses shadow color (Contributed by projectgheist)
Change 3196770 on 2016/11/14 by Matt.Kuhlenschmidt
Ensure instead of crash when updating the selection pivot if a component's actor is not selected (this is non fatal)
#jira UE-38544
Change 3196863 on 2016/11/14 by Nick.Darnell
Slate - Allowing font outline settings to be specified in native code when constructing a SlateFontInfo via a ctor.
Change 3196900 on 2016/11/14 by Nick.Darnell
Slate - Upgrading some cases that were using the older version of GetRelativeLayoutScale.
Change 3196947 on 2016/11/14 by Matt.Kuhlenschmidt
Guard against crashes in the details panel when an OS message causes the tree to refresh when a previous event has invalidate the contents of the details panel.
#jira UE-36499, UE-38497
Change 3197028 on 2016/11/14 by Alexis.Matte
Shift Drag is not moving the camera when the user is dragging the 3 axis in same time.
#jira UE-38382
Change 3197167 on 2016/11/14 by Matt.Kuhlenschmidt
Removed pivot updating code per frame for now. It changes on selection so I cant see a reason why it is needed every frame
Change 3197227 on 2016/11/14 by Nick.Darnell
UMG/Blueprint - Exposing a way to set the default schema a blueprint editor derivation uses. Updating all widget blueprints to finally use the WidgetGraphSchema.
Change 3197239 on 2016/11/14 by Nick.Darnell
UMG - Improving the ReceiveHardwareInput option to limit exposure of widgets to hit testing that did not register for it.
Change 3197538 on 2016/11/14 by Nick.Darnell
UMG - Making some progress on converting the schema over on load, now appear to correctly be loading it in time to be able to perform node conversions to convert older nodes to newer nodes. Required changing the UBlueprint interface to have a virtual for upgrading nodes, that could be overriden in WidgetBlueprint to make sure the schemas have all been updated, as Serialize is too early, and PostLoad is too late.
Change 3198211 on 2016/11/15 by Matt.Kuhlenschmidt
Guard against reimport factories being deleted while in use
#jira UE-37577
Change 3198589 on 2016/11/15 by Alex.Delesky
#jira UE-38527 - Curves editors will no longer crash when trying to scale to fit after resetting the curve to its default values. This also fixes an issue where selecting a key before resetting the curve to default would sometimes cause the timestamp to display for a now-invalid key.
Change 3198783 on 2016/11/15 by Nick.Darnell
The Widget Component's Allow Hardware Input should now correctly convert coordinates coming from a viewport scaled up by the OS DPI scaling code.
Change 3198933 on 2016/11/15 by Jamie.Dale
Changing the package localization ID used by a package now marks the package as dirty
Change 3198942 on 2016/11/15 by Jamie.Dale
Clearing the package localization ID used by a package now marks the package as dirty
Change 3200241 on 2016/11/16 by Shaun.Kime
Now allowing users to customize the Class Browser/Picker to filter out developer folders as well as hide internal use classes via INI settings. A ViewOptions button has been added to allow users to choose whether or not these filters are enabled.
By default, internal only classes will be hidden and you will be limited to your own developer folder.
Example change to DefaultEngine.ini or BaseEngine.ini to hide some classes as internal use
[/Script/ClassViewer.ClassViewerProjectSettings]
+InternalOnlyPaths=(Path="/Engine/VREditor")
+InternalOnlyClasses=/Script/VREditor.VREditorBaseUserWidget
The InternalOnlyPaths example will hide any classes in the VREditor folder or subfolders.
The InternalOnlyClasses example will hide any classes that derive from VREditorBaseUserWidget.
Both can be edited by the project settings UI so no manual INI tweaking is required. Please go to Project Settings->Class Viewer->Class Visibility Management
#jira UE-38313
Change 3200621 on 2016/11/16 by Matt.Kuhlenschmidt
Adding missing change needed post merge from main
Change 3200968 on 2016/11/16 by Jamie.Dale
Fixed localization gather including texts that were instanced or otherwise unchanged
- It now uses the archetype when exporting to diff against the default property value, and will only gather text that has changed from the default.
- UMG widgets that are instanced from another UMG asset now only gather overridden values, and skip all child instances.
Change 3201033 on 2016/11/16 by Cody.Albert
Fixed source control to properly notify when files need to be checked out if a blueprint node is dragged
Change 3201829 on 2016/11/17 by Shaun.Kime
Fixing issue where GEngine is null in early game loading, potentially causing a crash.
Change 3201832 on 2016/11/17 by Matt.Kuhlenschmidt
Fix build warning
Change 3201835 on 2016/11/17 by Nick.Darnell
Slate - Making it so explictly focusing a slate user that does not yet exist, creates the slate user so that the state is properly maintained in prepartion for that user's arrival / input.
Change 3201947 on 2016/11/17 by Matt.Kuhlenschmidt
Fix streaming pause rendering starting a movie if a movie was already playing
Change 3202089 on 2016/11/17 by Nick.Darnell
Editor - When replacing references, code that was added in 2729702, was allowing redirectors to be created that then might be abandoned and not renamed later if there was a collision on object name. There's no problem if two objects have the same name, as long as they have different paths (except for classes). So now the code records object paths in a seperate set, and avoids reprocessing / and creating multiple redirectors for the same objects, instead of just using object name.
Change 3202139 on 2016/11/17 by Jamie.Dale
Fix for adjusting text spacing when lines are removed from TextLayouts
Change 3202398 on 2016/11/17 by Cody.Albert
Updated UMG Sequencer to properly fire events once per loop
Change 3202591 on 2016/11/17 by Shaun.Kime
Fixing coding standards violations.
Change 3202744 on 2016/11/17 by Shaun.Kime
StaticMeshComponent's OverriddenLightMapRes current displays the value it was set to, even when the bOverrideLightMapRes is false. The behavior within UStaticMeshComponent::GetLightMapResolution is to use the LightMapResolution on the StaticMesh member instead when bOverrideLightMapRes is false. The UI was adjusted to reflect the more accurate behavior.
#jira UE-38315
Change 3203009 on 2016/11/17 by Alex.Delesky
Backing out changelist 3170522 per request
#jira UE-33031
Change 3204077 on 2016/11/18 by Nick.Darnell
Automation - Updating several bits of the screenshot automation piece to work a bit better, show names if we have them, and show preview dialogs for images.
Change 3204086 on 2016/11/18 by Jamie.Dale
Added FGCObjectScopeGuard and TStrongObjectPtr as a convenient way to keep a UObject alive without having to add it to the root-set
Both use FGCObject internally to reference the object and keep it alive.
FGCObjectScopeGuard is designed to be lean and used as a guard for an existing pointer, whereas TStrongObjectPtr is more "full-fat" and designed to be a replacement for a raw-pointer.
You should prefer FGCObjectScopeGuard where possible. Also note that TStrongObjectPtr isn't supported by UHT/UPROPERTY as you should just use a raw-pointer in that case (it would do the same thing).
Change 3204189 on 2016/11/18 by Alex.Delesky
Removing content from dev folder
Change 3204205 on 2016/11/18 by Jamie.Dale
Fix for being unable to delete folders that still have sub-folders in the Content Browser
#jira UE-38752
Change 3204270 on 2016/11/18 by Simon.Tourangeau
Fix StaticMesh socket reimports
- socket transforms are now updated correctly on reimport
- deleted socket from source will be removed on reimport
- fix SocketManager refresh after import
#jira UE-38195
Change 3204283 on 2016/11/18 by Alex.Delesky
#jira UE-38314 - Undoing a change in the Preview Scene Viewer in Static Mesh Editor will now properly update changes within the scene itself.
Change 3205757 on 2016/11/21 by Jamie.Dale
PR #2923: Slate: Fixed bug where NumCharactersInGlyph was set incorrectly for TAB characters (Contributed by pluranium)
Change 3205759 on 2016/11/21 by Matt.Kuhlenschmidt
PR #2958: Handle legacy Windows exe icon location (Contributed by projectgheist)
Change 3205816 on 2016/11/21 by Matt.Kuhlenschmidt
PR #2956: Add plane to basicshapes (Contributed by tommybear)
Change 3205831 on 2016/11/21 by Jamie.Dale
Speculative fix for UE-38492
This guards against null objects being passed to FAssetDeleteModel, as well as objects that become null due to the GC that happens in FAssetDeleteModel.
#jira UE-38492
Change 3205869 on 2016/11/21 by Alex.Delesky
#jira UE-38227 - Trying to transform a component on a blueprint while a spline mesh actor has the transform gizmo active in the editor will no longer modify the spline mesh actor
Change 3205873 on 2016/11/21 by Alex.Delesky
#jira UE-38379 - When editing a row in the data table, clicking on a different row before committing changes will now switch to that row. This also fixes the issue of data tables constantly regenerating cell widgets on data changes.
Should also address the issue mentioned in #jira UE-32965
Change 3205954 on 2016/11/21 by Shaun.Kime
Reverting changes from 3202744 that allowed override properties to show up as real properties in the list. There are several detail panel customizations that don't deal with this properly and rather than force everyone to upgrade, we'll just modify the static mesh detail customization to do the work.
#jira UE-38315
Change 3205965 on 2016/11/21 by Alex.Delesky
#jira UE-38749, UE-38755 - Space and Enter should now fire button OnClicked events when a button is focused
PR #2942
Change 3207157 on 2016/11/22 by Chris.Wood
Added UnrealWatchdog tool, run by the Editor, to improve abnormal shutdown tracking.
[UE-32952] - Watchdog - Show CRC when reporting abnormal shutdowns in internal builds
Change 3207344 on 2016/11/22 by Matthew.Griffin
Added UnrealWatchdog to the Binary Release
Change 3207396 on 2016/11/22 by Ben.Marsh
Add UnrealWatchdog to UGS precompiled binaries for Odin and Orion.
Change 3207418 on 2016/11/22 by Matt.Kuhlenschmidt
Redid blur changes from Paragon Dev-General
Blur widget updates
- Renamed to SBackgroundBlur/UBackgroundBlur
- Split SBackgroundBlur out into its own file
- Added bApplyAlphaToBlur - when true, the strength of the blur is modulated by the widget alpha
- Updated BlurRadius to be TOptional, so we auto-calculate radius when it isn't set
- Added a UBackgroundBlurSlot, but left it unattached so it can be done in dev-editor (and update based on the engine version)
- Updated OrionBlurWidget to export dll symbols and set up default low quality fallback image
Change 3207443 on 2016/11/22 by Chris.Wood
Fix CIS error on Mac from my change CL 3207157
Change 3207702 on 2016/11/22 by Matt.Kuhlenschmidt
Added missing files
Change 3207958 on 2016/11/22 by Matt.Kuhlenschmidt
Guard against crash clearing scenes from the slate RHI renderer during movie loading code.
Change 3207962 on 2016/11/22 by Matt.Kuhlenschmidt
Added a guard against the rendering thread timing out while on a breakpoint by checking if the debugger is present before performing the timeout check
Change 3208194 on 2016/11/22 by Matt.Kuhlenschmidt
Actually call correct method of checking for a debugger
Change 3209139 on 2016/11/23 by Cody.Albert
Adding support for "Show Only Modified Properties" filter to DetailWidgetRow
Change 3209206 on 2016/11/23 by Jamie.Dale
Moving folders now removes the old folder from disk if it's empty
This had already been done for deleting folders, but moving them was missed.
#jira UE-11796
Change 3209281 on 2016/11/23 by Jamie.Dale
PR #2932: Fix crash while updating cursor highlight (Contributed by nakosung)
Change 3210383 on 2016/11/25 by Chris.Wood
Documented Crash Report Client analytics events
[UE-32787] - Document Crash Report Client analytics events in code
Change 3210385 on 2016/11/25 by Alexis.Matte
Make sure the combine mesh option of the staticmesh import is stored in staticmeshimportdata so the re-import know if it must re-import in combined or not
#jira UE-38925
Change 3210983 on 2016/11/28 by Matt.Kuhlenschmidt
Merging //UE4/Dev-Main to Dev-Editor (//UE4/Dev-Editor)
Change 3211001 on 2016/11/28 by Matt.Kuhlenschmidt
Fix build errors
Change 3211009 on 2016/11/28 by Matt.Kuhlenschmidt
PR #2960: Git plugin: multiline initial commit message and other connect screen cleanup (Contributed by SRombauts)
Change 3211017 on 2016/11/28 by Matt.Kuhlenschmidt
Fix ATSC texture compression quality tooltip
#jira UE-38996
Change 3211045 on 2016/11/28 by Matt.Kuhlenschmidt
Fix compile errors
Change 3211081 on 2016/11/28 by Matt.Kuhlenschmidt
Fix post process anim blueprints on skeletal meshes not being clearable
#jira UE-39017
Change 3211094 on 2016/11/28 by Matt.Kuhlenschmidt
Added more logging for jira UE-39000
#jira UE-39000
Change 3211284 on 2016/11/28 by Matt.Kuhlenschmidt
Redid fix for UE-35822 in dev-editor
Change 3211544 on 2016/11/28 by Matt.Kuhlenschmidt
Fix deprecation warning
Change 3211769 on 2016/11/28 by Matt.Kuhlenschmidt
Disable motion blur in editor views by default
#jira 38424
Change 3211776 on 2016/11/28 by Matt.Kuhlenschmidt
Fix PS4 compile errors
Change 3211949 on 2016/11/28 by Matt.Kuhlenschmidt
Details panels changes
- Added the ability to create groups within groups in details panel customizations
- Added the ability for struct customizations to add categories to the parent
Change 3211954 on 2016/11/28 by Matt.Kuhlenschmidt
Reorganized the post process settings so they appear as categories in the parent and so that they have better categories to make it clear what all the settings do.
Change 3213158 on 2016/11/29 by Jamie.Dale
Updated User Defined Enum display names to use real FText instances so they can have stable keys
This avoids the issue where the FText display names were cached from an FString, resulting in them having a different identity each time they were re-cached, which lead to localization and deterministic cooking issues.
User Defined Enums no longer use meta-data to store their display names, and instead use a TMap in UUserDefinedEnum to map the raw enum entry name to its friendly display name. In addition to this, the enum editor has been updated to use STextPropertyEditableTextBox, which will keep the keys used by the display names stable where possible (allowing for delta-localization and historic tracking).
#jira UE-26274
Change 3213172 on 2016/11/29 by Jamie.Dale
Adding experimental support for content hot-reloading
The underlying support for this is in CoreUObject (see ReloadPackage and ReloadPackages in UObjectGlobals.h/.cpp), with editor specific support being added via PackageTools::ReloadPackages, and also hooks registered with FCoreUObjectDelegates::OnPackageReloaded (eg, UEditorEngine::HandlePackageReloaded).
The basic workflow for package reloading is as follows:
1) The current package is renamed, and the RF_NewerVersionExists flag is added to it and all its sub-objects.
2) The new package is loaded. Should this fail the old package is renamed back, and the RF_NewerVersionExists flag is removed.
3) We generate a mapping between objects in the old package and objects in the new package (see UObject::BuildSubobjectMapping).
4) We enumerate every object in memory, and fix-up any serialized or ARO object pointers referencing something from the old package, to reference the equivalent object from the new package (or null if no object could be found).
5) We run a GC, and verify that the old package was purged (printing any lingering references if it wasn't).
For efficiency reasons package reloading may be run in batches (the editor uses batches of 500), as this allows package reloading to happen faster (as the reference fix-up and GC only happens once per-batch) at the cost of consuming more memory.
In-editor there is an experimental setting to enable content hot-reloading. When this is enabled the SCC operations in the Content Browser will use content hot-reloading, rather than attempt to unload the reload the package as separate operations (which often fails). In order to allow the external SCC program to overwrite the files on disk, the linkers are detached from any packages that will be replaced prior to invoking the internal SCC operation.
Change 3213428 on 2016/11/29 by Jamie.Dale
Implemented clamping on FTextInputMethodContext::SetSelectionRange to fix an issue where composition could provide an invalid range if the text was changed while composing
#jira UE-37746
Change 3213442 on 2016/11/29 by Jamie.Dale
Workaround for a bug in TSF based MS IMEs on Windows 8+
They omit calling GetSelection and instead expect QueryInsert to return the current selection range. This also seems to fix an issue where composition no longer worked once some text had been deleted.
#jira UE-37309
Change 3213603 on 2016/11/29 by Cody.Albert
Changed PanelWidget::RemoveChildAt to not release slate resources if the child is a UserWidget
#jira UE-39106
Change 3213633 on 2016/11/29 by Matt.Kuhlenschmidt
Attempt to fix includetool cis warning
Change 3215159 on 2016/11/30 by Jamie.Dale
Fixing MakeShared forward declaration
Change 3215220 on 2016/11/30 by Alex.Delesky
#jira UE-38698 - Deleting a widget from the Widget Blueprint Hierarchy (or adding a new widget to the hierarchy directly) will no longer cause the scroll bar to return to the top of the hierarchy view.
Change 3215390 on 2016/11/30 by Jamie.Dale
Maps now end a hot-reload batch
Change 3215394 on 2016/11/30 by Matt.Kuhlenschmidt
Updating guard to track down worlds that have no package as an outer
#jira UE-35712
Change 3215500 on 2016/11/30 by Alexis.Matte
Color grading widget customization
#jira UETOOL-1070
Change 3215519 on 2016/11/30 by Jamie.Dale
Fixed crash caused by using TextNamespaceUtil::EnsurePackageNamespace in 'game' mode
Change 3215556 on 2016/11/30 by Cody.Albert
Fixed issue where check-out toast would not disappear
#jira UE-39146
Change 3215585 on 2016/11/30 by Jamie.Dale
Adding an explicit ESPMode to MakeShared to try and placate Android
Change 3215737 on 2016/11/30 by Alexis.Matte
Fix build warning
Change 3215748 on 2016/11/30 by Matt.Kuhlenschmidt
Guard against crashes due to duplicate items in the scene outliner if actors somehow end up attached to themselves
#jira UE-35935
Change 3215758 on 2016/11/30 by Ben.Marsh
Add a 'Custom...' build type for Dev-Editor.
Change 3216183 on 2016/11/30 by Alexis.Matte
Fix win32 build error
Change 3216362 on 2016/11/30 by Matt.Kuhlenschmidt
Fix mac build error.
Change 3216828 on 2016/12/01 by Jamie.Dale
Fixing MakeShared on Android
#jira UE-39204
Change 3216839 on 2016/12/01 by Matt.Kuhlenschmidt
PR #2997: Spelling fix for Actor.h's description of bEnableAutoLODGeneration. (Contributed by hgamiel)
Change 3216842 on 2016/12/01 by Matt.Kuhlenschmidt
Remove the ensure when pushing absolute transforms onto a canvas matrix stack. We can handle this properly now by just adding the transform to the stack if the stack is empty
#jira UE-36496
Change 3216874 on 2016/12/01 by Matt.Kuhlenschmidt
Fix a number of keybindings problems
- Removed editor keybindings from project settings. It should not have been in there (already in editor settings)
- Removed duplicate registration of editor keybindings from editor settings
- Fixed memory leak regenerating keybinding widgets when ending PIE world.
- Cleaned up styling a bit to make keybindings widgets clearer.
#jira UE-39211, UE-38718
Change 3216881 on 2016/12/01 by Shaun.Kime
Added support for reroute nodes to the material editor. These nodes should function identically to their counterparts in Blueprints. A new UMaterialExpression, UMaterialExpressionReroute has been added. It inserts no HLSL code, and instead just moves along its input to find the real UMaterialExpression that it is ultimately bound to.
Since the material system serializes its data as UMaterialExpressions, a more generalized approach across graph types isn't available as only the visual UI layer is shared between blueprints and material graphs.
Also modified the material palette and popup material expression menu to allow for c++ based material name and description customization. If we choose to expand this, it would make the C++ material nodes more discoverable and understandable.
Manually pulled in CL 3200823 and 3208490 to get bugfixes around material attribute usage.
Adding an reroute node should function identically to Blueprints (ie double-click on connection to add or Utility\Add Reroute Node from palette). You should be able to add as many reroute nodes as you want in a chain. A reroute node that only has a connected output and not an input should behave as if there were no reroute node present (i.e. triggering constants on Add). It should be possible to use reroute nodes between any two supported node types if they are connectable in isolation. Where possible, we should show the same type mismatch errors that you'd see if connecting nodes directly (ie dragging a boolean constant into a reroute node connected to an Add should result in a Float/Bool mismatch). A reroute node is purely visual, it should have no impact on the final instruction count.
In the event that an incomplete reroute input was completed by dragging to an invalid type, I tried to guarantee that the compiler would generate the appropriate errors. This can happen because we only know the inputs to a given node in code. If a reroute node doesn't have an input, it does not know what type it should be. However, the compiler should still detect these bad cases and error out.
#jira UE-6882
Change 3216968 on 2016/12/01 by Jamie.Dale
Syncing via source control now unloads (rather than reloads) packages that have been deleted from disk
Change 3216970 on 2016/12/01 by Jamie.Dale
Reverting files now uses hot-reloading (if enabled)
Change 3217233 on 2016/12/01 by Jamie.Dale
You can now choose to reload dirty packages via content hot-reloading
This will revert any in-memory changes to the asset, which may be useful when you want to roll it back to its initial state without restarting the editor.
Change 3217244 on 2016/12/01 by Matt.Kuhlenschmidt
WindowsMoviePlayer: Initialize the movie player texture on first frame regardless of whether or not the decoder has a sample ready. This prevents a white texture from showing up for a frame.
Change 3217466 on 2016/12/01 by Jamie.Dale
Fixed a bug where FTextFormatData::ConditionalCompile_NoLock would always compile the text even if it was up-to-date
Change 3217572 on 2016/12/01 by Jamie.Dale
Using FText::Format with an invalid argument no longer strips any associated argument modifier data from the resultant formatted text
Change 3217688 on 2016/12/01 by Jamie.Dale
Fixed crash reloading the active world package when it was dirty
#jira UE-39250
Change 3217978 on 2016/12/01 by Matt.Kuhlenschmidt
Fixed crash where the slate renderer holds into scenes during maps are loaded causing access to deleted data after the load is complete. We clean up cached scenes each frame but if slate doesnt tick the scenes are not cleaned up. This change moves the CleanupScenes code to a location that is called each tick and during map loads
#jira UE-39243
Change 3218834 on 2016/12/02 by Alexis.Matte
move some scene conversion import fbx options to staticmesh, skeletalmesh and animation import data so the re-import will have acces to those import options
#jira UE-38672
Change 3218838 on 2016/12/02 by Matt.Kuhlenschmidt
Fixed editing static mesh settings manually in the details panel not visually refreshing the collision primitives
#jira UE-39246
Change 3218864 on 2016/12/02 by Matt.Kuhlenschmidt
Fixed basic cube shape having a convex hull instead of a box for collision
Change 3218900 on 2016/12/02 by Matt.Kuhlenschmidt
Move static mesh collision properties to the collision category
Change 3219143 on 2016/12/02 by Michael.Dupuis
#jira UE-39124 We can now place single mesh at a time
#jira UE-39125 We can paint on the current level of the level containing the mesh we're painting on
Change the way GetRandomVectorInBrush generate the Start/end position to use the BrushNormal instead of the BrushDirection
Change 3219199 on 2016/12/02 by Matt.Kuhlenschmidt
Fixed a crash when changing Physical Surface Name and reassigning it on a physical material that uses it
#jira UE-37452
Change 3219358 on 2016/12/02 by Alexis.Matte
Fix fbx automation tests
Change 3219362 on 2016/12/02 by Alexis.Matte
Support for MAX multisub material
#jira UE-38467
#jira UE-38471
Change 3219774 on 2016/12/02 by Jamie.Dale
PR #2888: Add a setting to allow the Sources Panel to expand by default (Contributed by BhaaLseN)
Change 3219793 on 2016/12/02 by Jamie.Dale
SWindow now restores focus back to the widget that last had focus when it was deactivated
#jira UE-38965
Change 3221272 on 2016/12/05 by Matt.Kuhlenschmidt
UI background blur tweaks
- Adjust the downsample amount for lower kernel sizes
- Flush post process memory used by the blur when switching levels
Change 3221273 on 2016/12/05 by Matt.Kuhlenschmidt
Added guards against accesing scene caching methods of the slate resource manager on the rendering thread
Change 3221392 on 2016/12/05 by Matt.Kuhlenschmidt
Added basic support for playing safe movies very early in the engine startup sequence. A movie is considered safe to play very early if it is just a movie file and not some complex slate based UI loading screen
no platform actually supports this yet as none of the movie streamer modules are loaded early enough and many platforms cant render this early
Set PLATFORM_SUPPORTS_EARLY_MOVIE_PLAYBACK to 1 for your platform if it supports early loading
Change 3221831 on 2016/12/05 by Jamie.Dale
Fixed UNumericProperty::ReadEnumAsUint8 not considering enum redirects when resolving the name
Change 3221986 on 2016/12/05 by Jamie.Dale
Added an "Inline" font loading method
This can be used in a cooked build to store the font data within the Font Face asset itself (rather than a separate .ufont file) in order to guarantee a hitch free load, at the cost of potentially using more memory up-front.
The existing "PreLoad" loading method has been renamed to "LazyLoad" to better reflect what it actually does.
This also fixes a bug where FFontData::Serialize could try and use the referenced Font Face asset before it had been fully loaded.
Change 3222065 on 2016/12/05 by Jamie.Dale
Added log warning to detect hitches when lazily loading fonts
Change 3222225 on 2016/12/05 by Jamie.Dale
Fixing style-set typo
#jira UE-39333
Change 3223169 on 2016/12/06 by Matt.Kuhlenschmidt
Fix autosaving prompting to check out built data if the built data asset was dirty during autosave
#jira UE-39295
Change 3223184 on 2016/12/06 by Alexis.Matte
Support LOD group and combine mesh
#jira UE-1088
Change 3223212 on 2016/12/06 by Alex.Delesky
#jira UE-39260 - TMap and TSet struct values should now be editable when editing a component's properties.
Change 3223215 on 2016/12/06 by Alex.Delesky
#jira UE-38594 - The Widget Interaction Component will now default to tick while paused. Widget Components now contain a flag that will either allow or disallow interacting with them while the game is paused, which defaults to false.
Change 3223249 on 2016/12/06 by Matt.Kuhlenschmidt
Added back in missing code that was lost in a merge
Change 3223271 on 2016/12/06 by Alex.Delesky
#jira UE-38786 - The Color Picker will no longer stretch across the screen when exceptionally long strings are either entered or pasted inside one of the spin boxes. This also fixes an issue with editable text fields not validating string input on paste and will now prevent invalid data from being pasted inside a editable text block (e.g., pasting the string "I am a float" inside a spin box).
Change 3223275 on 2016/12/06 by Matt.Kuhlenschmidt
Fixed a race condition in WEX where the loading screen would render an external UI window that was referencing deleted materials
Change 3223276 on 2016/12/06 by Alexis.Matte
Staticmesh socket fbx import.
#jira UE-38284
Change 3223363 on 2016/12/06 by Alexis.Matte
Reimport must ask for missing file when re-importing a old asset that has no source files
#jira UE-39356
Change 3223423 on 2016/12/06 by Chris.Wood
Added option to place canvas panel children in same layer using explicit ZOrder setting.
[UETOOL-935] - Figure out a solution for canvas panel batching
Change 3223551 on 2016/12/06 by Alexis.Matte
UI mesh paint optimization, the slider now do not destroy the paint geometry adapter if the painted LOD has not change
#jira UE-39383
Change 3223844 on 2016/12/06 by Matt.Kuhlenschmidt
Back out change to change the defaults on vector and scalar expressions because this affects existing expressions that have not overridden the default
Change 3223880 on 2016/12/06 by Matt.Kuhlenschmidt
Update doc links for maps and sets
Change 3224746 on 2016/12/07 by Michael.Dupuis
#jira UE-39409 : Was'nt calling EndFoliageBrushTrace causing the transaction to never finish causing both jiras
#jira UE-39410 : Was'nt calling EndFoliageBrushTrace causing the transaction to never finish causing both jiras
Change 3224826 on 2016/12/07 by Michael.Dupuis
#jira UE-39095 : If a tool is active we simply consider inputs as handled to prevent this kind of behavior
Change 3224827 on 2016/12/07 by Simon.Tourangeau
Improve search for material match on fbx mesh import
- Add option to specify material search locations on mesh import
- On Import it will now perform a first match material search in the following order (suppose we are importing into /Game/Content/Assets/Meshes/MyMesh)
- Using Local as a search location will provide same behavior as before (search non recursively in /Game/Content/Assets/Meshes)
- If option is UnderParent or more, search recursively in destination folder (search recursively in /Game/Content/Assets/Meshes)
- If option is UnderParent or more, then recursively from parent folder (search recursively in /Game/Content/Assets)
- If option is UnderRoot or more, search recursively from root folder (search recursively in /Game)
- If option is AllAssets, search in every asset folder (Search recursively everywhere)
#jira UE-39020
Change 3224989 on 2016/12/07 by Chris.Wood
Fixed black callstack text in CrashReportClient.
[UE-38987] - CrashReportClient Callstack text is rendering Black
Change 3225142 on 2016/12/07 by Jamie.Dale
Added collapsing methods when exporting text for translation
You can now choose how to collapse your text for translation from three export modes:
- ELocalizedTextCollapseMode::IdenticalTextIdAndSource - Collapse texts with the same text identity (namespace + key) and source text (default 4.15+ behavior).
- ELocalizedTextCollapseMode::IdenticalPackageIdTextIdAndSource - Collapse texts with the same package ID, text identity (namespace + key), and source text (4.14 behavior).
- ELocalizedTextCollapseMode::IdenticalNamespaceAndSource - Collapse texts with the same namespace and source text (legacy pre-4.14 behavior).
The new default allows you to re-use the same text identity in different packages without having to translate the same text multiple times, and you can also now opt to get back to the legacy pre-4.14 behavior of collapsing all identical texts within the same namespace (in case you were reliant on that behavior).
You can change this setting via the Localization Dashboard, or add it to your gather configs as "LocalizedTextCollapseMode" (this needs to go into any configs that deal with exporting or importing PO files - the default if nothing is specified is "ELocalizedTextCollapseMode::IdenticalTextIdAndSource").
Change 3225509 on 2016/12/07 by Simon.Tourangeau
Static analysis fix, false positive
Change 3225859 on 2016/12/07 by Matt.Kuhlenschmidt
Fix broken physical surface details customization
- Scrolling now works properly
- Edit boxes dont change size while editing
- properly checks out or makes file writable once an edit has been made
#jira UE-39279
Change 3226840 on 2016/12/08 by Jamie.Dale
Fixing a bug in FText formatting where it would ignore the rebuild and Rebuild as Source arguments for the format string itself
#jira OPP-6485
Change 3226940 on 2016/12/08 by Alexis.Matte
Avoid changing the W value when playing with the color grading wheel.
#jira UE-39473
Change 3227814 on 2016/12/08 by Matt.Kuhlenschmidt
Temp disable lazy load font warnings to prevent infinite recursion crashes at startup
Change 3228010 on 2016/12/08 by Matt.Kuhlenschmidt
Fix for iOS compiling
Change 3228597 on 2016/12/09 by Jamie.Dale
Removed hard dependency between UFont and UFontFace during struct serialization as it doesn't work with the EDL
#jira UE-39529
Change 3228607 on 2016/12/09 by Jamie.Dale
Fixed infinite recursion caused by logging while the output log font was still being loaded
#jira UE-39523
Change 3228770 on 2016/12/09 by Jamie.Dale
Fixed UUserDefinedEnum::GetEnumText
it was using GetNameByIndex (which includes C++ scoping), rather than GetEnumName (which doesn't). This was causing all name look-ups to fail.
#jira UE-39531
Change 3228785 on 2016/12/09 by Matt.Kuhlenschmidt
Fix static analysis warning
[CL 3229477 by Matt Kuhlenschmidt in Main branch]
2016-12-09 15:05:28 -05:00
if ( ! FLevelEditorModesCommands : : IsRegistered ( ) )
{
FLevelEditorModesCommands : : Register ( ) ;
}
2014-03-14 14:13:41 -04:00
const IWorkspaceMenuStructure & MenuStructure = WorkspaceMenu : : GetMenuStructure ( ) ;
TSharedPtr < FTabManager > LevelEditorTabManager = LevelEditorModule . GetLevelEditorTabManager ( ) ;
// We need to remap all the actions to commands.
const FLevelEditorModesCommands & Commands = FLevelEditorModesCommands : : Get ( ) ;
Copying //UE4/Dev-Editor to //UE4/Dev-Main (Source: //UE4/Dev-Editor @ 3228984)
#lockdown Nick.Penwarden
#rb none
==========================
MAJOR FEATURES + CHANGES
==========================
Change 3168749 on 2016/10/20 by Richard.TalbotWatkin
Fixed bug in csgRebuild where dynamic brushes from the whole world are rebuilt instead of just those from the current level. csgRebuild is supposed to act only on the current level's geometry.
#jira UE-37376 - csgRebuild builds dynamic brushes from the whole world, instead of just the current level
Change 3169740 on 2016/10/20 by Nick.Darnell
Automation - Removing old screenshots, working on new naming convention.
Change 3169796 on 2016/10/20 by Nick.Darnell
Automation - Adding new screenshots.
Change 3169800 on 2016/10/20 by Nick.Darnell
Automation - Working on improvements to screenshot comparions, now using the Unique device id instead of adapter name. Working on better metadata based matching for which screenshot to use, stubbing in support for adding alternative versions of screenshots.
Change 3169901 on 2016/10/20 by Nick.Darnell
Automation - More fixes / refinements to the way we add alternatives and replace old versions of screenshots.
Change 3169926 on 2016/10/20 by Cody.Albert
Added extension point for level editor viewport's Show and Camera menus
Change 3170053 on 2016/10/20 by Cody.Albert
Back out changelist 3169926
Change 3170067 on 2016/10/20 by Cody.Albert
Added extension point for level editor viewport's Show and Camera menus
Change 3170382 on 2016/10/21 by Michael.Dupuis
#jira UE-36585 Added Copy/Paste to Material list/item, section list/item to StaticMeshEditor and Persona Editor
Change 3170520 on 2016/10/21 by Alex.Delesky
#jira UE-36510 - You can now toggle if combo boxes can receive keyboard focus from the Widget Blueprint
Change 3170522 on 2016/10/21 by Alex.Delesky
#jira UE-33031 - Buttons will no longer remained in a hovered state on mobile devices if the user drags their finger into a button, and then lifts their finger without dragging it outside of the button.
Change 3170524 on 2016/10/21 by Alex.Delesky
#jira UE-25591 - Static Mesh LODs can now be removed from the editor without a mesh reduction tool like Simplygon configured for use in the editor.
Change 3170530 on 2016/10/21 by Alex.Delesky
Moved the HasKey method from UMapProperty to FScriptMapHelper, and moved the HasElement property from USetProperty to FScriptSetHelper
#jira none
Change 3170768 on 2016/10/21 by Cody.Albert
Back out changelist 3170067
Change 3170795 on 2016/10/21 by Nick.Darnell
JsonObjectConverter - By default UStructToJsonAttributes now skips transient properties.
Change 3170797 on 2016/10/21 by Nick.Darnell
Automation - Fixing several warnings dealing with fbx testing.
Change 3170921 on 2016/10/21 by Nick.Darnell
Automation - Fixing more warnings with FBX tests.
Change 3171109 on 2016/10/21 by Cody.Albert
Added extension point for level editor viewport Show menu
Change 3171812 on 2016/10/24 by Jamie.Dale
Back out changelist 3163044
This broke wrapping for Japanese and Chinese.
Change 3171842 on 2016/10/24 by Michael.Dupuis
#jira UE-36400
Name each Parameter uniquely either from copy/paste of any creation menu
Changed the default value for Scalar and Vector Parameter to 1 and 1,1,1,1
Added a Promote To Parameter when clicking on an Input pin that will generate proper node type based on type pin type
When editing a color property update the material expression preview
Change 3171958 on 2016/10/24 by Alex.Delesky
#jira UE-37444 - The Primitive Stats browser (and other statistics browsers) can now sort columns based on singular objects or object types as well as texture dimensions.
Change 3171969 on 2016/10/24 by Nick.Darnell
Slate - Adding some code to prevent crashes if bogus user indexes are passed into SlateApplications GetUser functions.
Change 3171970 on 2016/10/24 by Matt.Kuhlenschmidt
PR #2885: Fixed Stretched Landscape Editor Icons (Contributed by teessider)
Change 3172035 on 2016/10/24 by Alex.Delesky
Fix to build warning for 3171970
#jira none
Change 3172078 on 2016/10/24 by Michael.Dupuis
#jira UE-37626 Fetch property node from property handle if there is no property editor
Change 3172143 on 2016/10/24 by Jamie.Dale
Line-break iterators will now avoid breaking words in Hangul
The default behavior for wrapping Hangul is to use Western-style wrapping (where words are kept as-is) rather than East Asian-style (where words are broken by syllables). This behavior can be controlled by the Localization.HangulTextWrappingMethod CVar in-case you were dependant on the old behavior, but since modern Hangul uses spaces, the per-word wrapping is preferred by native speakers.
Change 3172418 on 2016/10/24 by Michael.Dupuis
Fixed Static Analysis error
Change 3173389 on 2016/10/25 by Michael.Dupuis
#jira UE-9284 Make the UI appear only on hover and change icons size
Change 3173918 on 2016/10/25 by Alex.Delesky
#jira UE-37753 - WidgetBlueprints saved without a root widget (e.g., by deleting the starting Canvas panel) will no longer set a Canvas panel as the root widget. New WidgetBlueprints will still contain a Canvas Panel when created.
Change 3173966 on 2016/10/25 by Alex.Delesky
#jira UE-20891 - SpinBox now receives MouseMove events while simulating touch events using the mouse.
Change 3174847 on 2016/10/26 by Alex.Delesky
#jira UE-36371 - Windowed Fullscreen will now expand to fit the entirety of the current window and will not be displaced when the Windows taskbar is docked on the top or left sides of the screen.
Change 3174916 on 2016/10/26 by Alexis.Matte
When re-importing fbx file, always log to the message log.
#jira UE-37639
Change 3174940 on 2016/10/26 by Alex.Delesky
Back out changelist 3174847 at request of platforms team. Was fixed on Main.
Change 3174995 on 2016/10/26 by Matt.Kuhlenschmidt
Import commandlet fixes
- Fixed crash when source control could not be contacted
- Fixed assets not importing correctly if they depended on other assets in a previous import group within the automated import
Change 3175217 on 2016/10/26 by Alexis.Matte
The FBX reimport animation code now return false if there was an error when importing
#jira UE-37755
Change 3175728 on 2016/10/26 by Alexis.Matte
Log a message when importing a skeletal mesh with more bone influence then the maximum supported
#2875
#jira UE-37613
Change 3177997 on 2016/10/28 by Nick.Darnell
Editor - Prevent re-entrant calls when EndPlayMap is called.
Change 3178429 on 2016/10/28 by Nick.Darnell
Engine - Bumping BaseEngine.ini to IOS_8, MinimumiOSVersion, as that is now the minimum allowed to fix an error on startup. Tweaking the location of where some importing files go when they're imported.
Change 3179774 on 2016/10/31 by Matt.Kuhlenschmidt
Guard against bad render targets in Slate RHI
#jira UE-37905
Change 3179900 on 2016/10/31 by Matt.Kuhlenschmidt
Added logging to track https://jira.it.epicgames.net/browse/UE-37900
#jira UE-37900
Change 3179920 on 2016/10/31 by Alex.Delesky
Removing LODs from skeletal meshes is now a transacted action and can be undone. Related to UE-25591.
#jira none
Change 3179921 on 2016/10/31 by Alex.Delesky
#jira UE-37725 - Adding safeguard against a potential crash in FTextureEditorViewportClient caused by a texture not having a valid texture resource
Change 3180119 on 2016/10/31 by Alexis.Matte
fbx importer avoid asset creation name clash
#jira UE-35100
Change 3181905 on 2016/11/01 by Alexis.Matte
Paint tool now allow users to paint on any vertex if they need it.
#jira UE-8372
Change 3182355 on 2016/11/01 by Alexis.Matte
We now support FBX LODs export for the asset exporter from the content browser.
#jira UE-35302
Change 3183286 on 2016/11/02 by Alexis.Matte
Make sure static mesh build settings are set properly when we re-import with different options. Specifically the normals, tangents and tangent space are dependent on the import options.
#jira UE-37520
Change 3183567 on 2016/11/02 by Shaun.Kime
#jira UE-38019
The Content Browser's View Options originally included both Engine and GameProject plugins only when clicking Show Plugin Content. Since there are quite a few Engine plugins, this produces quite a bit of content in the Folders panel. Most of the Engine plugins have classes or content that isn't really meant to be user-facing, so the experience of hunting for a game plugin-in's content is poor.
The new behavior is that GameProject plugins are controlled by the "View Plugin Content" option. In order to see the Engine plugins you'll need both Engine Content and Plugin Content checkboxes enabled. By default, the editor should enable the "View Plugin Content" checkbox since it should be limited to just the content in the game's Plugins folder.
Change 3184002 on 2016/11/02 by Jamie.Dale
Fixed crash during TSF IME shutdown
#jira UE-38073
Change 3185126 on 2016/11/03 by Shaun.Kime
Some of the plugin templates define Editor specific plugins. If created and a Standalone build is run, the application will attempt to link in editor libraries in game mode and will run into issues when you hit any key. The fix is to specify an Editor module description for these plugins.
Additionally, there appears to be a mismatch in pathing types when dealing with plugin path and GameDir. Plugin path is absolute and GameDir is relative by default. We check to see if the gameDir is a subset of the plugin path, but this fails due to the mismatch. The fix is to force both to be absolute (enforcing normalization of both paths as well).
#jira UE-38065
#jira UE-37645
Change 3185278 on 2016/11/03 by Nick.Darnell
UMG - Fixing some issues with HDPI mode in the widget designer.
Change 3185355 on 2016/11/03 by Nick.Darnell
UMG - Widget Component's Draw At Desired size now should also work correctly if it's in screenspace.
Change 3185510 on 2016/11/03 by Nick.Darnell
UMG - Restoring the ability of the Widget Component to directly recieve hardware input. The Widget Interaction Component is great for just about every interaction use case - the one it's not is when you actually want the 3D widgets to take focus, and to be able to be typed directly into by the user. The kind of situation where you might want to use them as a 3D menu, in a non-VR environment. By default - Widget Components will not behave in this manner, but you can now use the option bReceiveHardwareInput to enable the ability for Widget Components to function more like a widget in the screenspace of the viewport.
Slate - The scene viewport now correctly takes scale into account when drawing the 'software cursor', this fixes an issue with HDPI mode, and the cursor not being restored to the same location after moving a gizmo.
Change 3185514 on 2016/11/03 by Nick.Darnell
UMG - Fixing some HDPI mode problems with widget position calculation when projecting world to viewport / screen, absolute spaces.
Change 3185652 on 2016/11/03 by Nick.Darnell
Slate - Exposing a cached version of the widget geometry that comes in during Tick. Also performed a bit of optimization work on the class to make some space for the geometry object we now cache, by compacting the pointer event delegates we were storing.
Change 3185952 on 2016/11/03 by Nick.Darnell
UMG - Fixing another build error relating to local widget geometry.
Change 3185953 on 2016/11/03 by Nick.Darnell
UMG - Fixing a mac compiler warning.
Change 3186886 on 2016/11/04 by Matt.Kuhlenschmidt
Fixed collapse all hiding everything in the settings editors
#jira UE-38151
Change 3187014 on 2016/11/04 by Matt.Kuhlenschmidt
Fixed new assets opening in a minimized window not restoring that window.
Change 3187026 on 2016/11/04 by Shaun.Kime
UUnrealEdEngine::edactDeleteSelected calls out to FBlueprintEditorUtils::FindActorsThatReferenceActor. This checks the entire world for each actor to be deleted. When you have tens of thousands of actors in the world and are deleting tens of thousands of actors, this can take minutes. This change amortizes the cost of finding the actor references once for the world and for each actor to be deleted, we query the cached list of references. This brings the deletion time down to seconds.
#jira UE-38094
Change 3187073 on 2016/11/04 by Nick.Darnell
Automation - Changing the code that writes out json to force no BOM as is the json standard.
Change 3187113 on 2016/11/04 by Jamie.Dale
Removed double look-up in UTextProperty::SerializeItem
Change 3187114 on 2016/11/04 by Jamie.Dale
Feedback context now uses culture correct percentage formatting
Change 3187273 on 2016/11/04 by Alexis.Matte
Fbx importer for static mesh, make sure that we order the materials array to follow the section order.
Add also some fbx automation test
#jira UE-38242
Change 3187276 on 2016/11/04 by Matt.Kuhlenschmidt
Fix crash when an actor picker shows up in the struct editor. Structs do not have root property nodes
#jira UE-38268
Change 3187463 on 2016/11/04 by Nick.Darnell
Automation - Updating the blessed screenshots, and fixing the BOM issues with the json.
Change 3188638 on 2016/11/07 by Shaun.Kime
Making the UI for adding/removing parameters in custom blueprint functions behave similarly to the struct creation dialog in the content browser. There are no longer "New" buttons at the bottom of the panel and the parameter moving controls have been moved onto the main parameter row instead of being nested inside the collapse panel. A tooltip will now let you know the full parameter name and type when you hover over the editable name field. Made the move up/down icons more legible by increasing contrast between the arrow and the light grey background.
#jira UE-38240
Change 3189056 on 2016/11/07 by Nick.Darnell
Core/Editor - UObject::IsAsset() now returns false if the outermost package is RF_Transient. Also updating the creation of the transient package to be RF_Transient. This makes it so transient packages created by UMG or some other editor for things like previewing a streamed in level instance, no longer show up in the content browser.
Change 3189147 on 2016/11/07 by Jamie.Dale
Fixed potential race-condition where a UFont object could be GC'd while the loading screen was using the font cache
This queues up the pending removal until it's safe to execute it (by a thread that fully owns Slate rendering).
#jira UE-38309
Change 3189344 on 2016/11/07 by Matt.Kuhlenschmidt
Merging //UE4/Dev-Main to Dev-Editor (//UE4/Dev-Editor)
Change 3189380 on 2016/11/07 by Matt.Kuhlenschmidt
Guard against null object when creating details panel
Change 3190017 on 2016/11/08 by Alexis.Matte
FrontX support for scene importer
#jira UETOOL-1061
Change 3190058 on 2016/11/08 by Matt.Kuhlenschmidt
Fixed misaligned button in the new blueprint class dialog
Change 3190086 on 2016/11/08 by Nick.Darnell
UMG - Fixing the calculation for widget componets screen position if the camera aspect is constrained.
Change 3190159 on 2016/11/08 by Nick.Darnell
UMG - We no longer also take the platform DPI scale into account when applying UMG's UI scale. Since UMG already provides a DPI scaling system, compounding it with the native OSes produces undesirable results, since the DPI scale curve does not take into account some unknown platform scale set by a user.
Change 3190161 on 2016/11/08 by Nick.Darnell
UMG - UWidget is now Blueprintable. Improving some doc.
Change 3190545 on 2016/11/08 by Alexis.Matte
Support scaling when exporting skeleton (bind pose) to FBX
#jira UE-36120
Change 3191614 on 2016/11/09 by Simon.Tourangeau
Fix cooking crash after fbx import of a scene without meshes
#jira UE-38264
Change 3191659 on 2016/11/09 by Simon.Tourangeau
Cleanup Persona LOD section button layout
#jira UE-38339
Change 3191882 on 2016/11/09 by Jamie.Dale
Changed FBlackboardKeySelector::AddObjectFilter to use MakeUniqueObjectName so it generates more stable names, rather than relying on a static counter.
Also updated FBlackboardKeySelector::AddClassFilter, FBlackboardKeySelector::AddEnumFilter, and FBlackboardKeySelector::AddNativeEnumFilter to use MakeUniqueObjectName to ensure they don't conflict.
Change 3192092 on 2016/11/09 by Jamie.Dale
Deleting some test assets that were accidentally checked in, some of which no longer load
Change 3192281 on 2016/11/09 by Alex.Delesky
#jira UE-31866 - Widget Blueprints will no longer experience compile issues when dragging widgets between the hierarchy views of different Widget Blueprints.
Change 3192365 on 2016/11/09 by Shaun.Kime
Adding support for MaterialParameterCollections to Slate UI objects. For reasons of Blueprint controls amongst other things, MPC's are owned by individual UWorlds and transferred over to their respective Scenes. Since we want the latest values from those in-UWorld representations, Slate needs to know about the Scene on the render thread to properly map the materials to their MPC inputs. This involved keeping Scene arrays synchronized between the game logic thread and render thread, and adding a Scene index field to each batched draw element in Slate. SceneViewports are now responsible for registering their associated Scenes with the SlateRenderer. Since RetainerBoxes also draw their content as well, they too need to register their Scenes.
#jira UE-19022
Change 3192494 on 2016/11/09 by Alex.Delesky
#jira UE-37829 - Dynamically changing an option in the style for an Editable Text Box or Multiline Editable Text Box will now update it correctly.
Change 3193183 on 2016/11/10 by Alexis.Matte
When doing FBX scene re-import, the new staticmesh asset was not mark as dirty. So the system was not saving the new asset.
#jira UE-38450
Change 3193419 on 2016/11/10 by Alex.Delesky
Fixing UnrealTournament build error in SUTChatEditBox
#jira none
Change 3193456 on 2016/11/10 by Alex.Delesky
Fix to build warning C6011 in SWidgetHierarchyItem
#jira none
Change 3193704 on 2016/11/10 by Simon.Tourangeau
Create Cinematic Camera when importing camera from fbx
#jira UE-37764
Change 3194593 on 2016/11/11 by Nick.Darnell
Slate - Fixing the window reshaping logic to avoid work if we don't need to do it, rather than external calls attempting to do the check (poorly). This appears to fix the problem with popup menus being slightly off in size, creating scrollbars. This also prevents constant reshaping of windows, due to people performing the wrong checks over and over, because they were comparing against non-truncated or rounded values against truncated/rounded values.
Change 3194595 on 2016/11/11 by Nick.Darnell
Slate - Simplifying the Menu Anchor popup code for new Windows, and correcting it so that it does not take non-DPI scale into account when calculating the size of the window. Otherwise, popup menus on say, the blueprint editor change size depending upon the scale of the area.
Change 3194830 on 2016/11/11 by Richard.TalbotWatkin
Optimized pasting brushes, so geometry is not constantly rebuilt for every brush that's added. This improves performance by a couple of orders of magnitude!
#jira UE-38524 - Moving many brushes to another level is very slow
Change 3194859 on 2016/11/11 by Alexis.Matte
Fix fbx skeletal mesh cleanup material crash
#jira UE-38525
Change 3195199 on 2016/11/11 by Nick.Darnell
UMG - Updating the bindable widget searching code in sequencer to use the WidgetTree traversing code, instead of something custom. This fixes the issue where it wasn't finding widgets inside of named slots.
#jira UE-38536
Change 3196579 on 2016/11/14 by Matt.Kuhlenschmidt
Guard against rendering crashes when a mesh with no lod resources is opened.
#jira UE-38520
Change 3196614 on 2016/11/14 by Nick.Darnell
Slate - The ignore incoming scale option for the scale box should now behave as expected in more cases. It required modifying the GetRelativeLayoutScale function to also pass down the prepass scale, otherwise it can't extract out the incoming scale ahead of time before text is measured ahead of time.
Change 3196624 on 2016/11/14 by Matt.Kuhlenschmidt
PR #2927: UE-38473: Shadow outline color uses shadow color (Contributed by projectgheist)
Change 3196770 on 2016/11/14 by Matt.Kuhlenschmidt
Ensure instead of crash when updating the selection pivot if a component's actor is not selected (this is non fatal)
#jira UE-38544
Change 3196863 on 2016/11/14 by Nick.Darnell
Slate - Allowing font outline settings to be specified in native code when constructing a SlateFontInfo via a ctor.
Change 3196900 on 2016/11/14 by Nick.Darnell
Slate - Upgrading some cases that were using the older version of GetRelativeLayoutScale.
Change 3196947 on 2016/11/14 by Matt.Kuhlenschmidt
Guard against crashes in the details panel when an OS message causes the tree to refresh when a previous event has invalidate the contents of the details panel.
#jira UE-36499, UE-38497
Change 3197028 on 2016/11/14 by Alexis.Matte
Shift Drag is not moving the camera when the user is dragging the 3 axis in same time.
#jira UE-38382
Change 3197167 on 2016/11/14 by Matt.Kuhlenschmidt
Removed pivot updating code per frame for now. It changes on selection so I cant see a reason why it is needed every frame
Change 3197227 on 2016/11/14 by Nick.Darnell
UMG/Blueprint - Exposing a way to set the default schema a blueprint editor derivation uses. Updating all widget blueprints to finally use the WidgetGraphSchema.
Change 3197239 on 2016/11/14 by Nick.Darnell
UMG - Improving the ReceiveHardwareInput option to limit exposure of widgets to hit testing that did not register for it.
Change 3197538 on 2016/11/14 by Nick.Darnell
UMG - Making some progress on converting the schema over on load, now appear to correctly be loading it in time to be able to perform node conversions to convert older nodes to newer nodes. Required changing the UBlueprint interface to have a virtual for upgrading nodes, that could be overriden in WidgetBlueprint to make sure the schemas have all been updated, as Serialize is too early, and PostLoad is too late.
Change 3198211 on 2016/11/15 by Matt.Kuhlenschmidt
Guard against reimport factories being deleted while in use
#jira UE-37577
Change 3198589 on 2016/11/15 by Alex.Delesky
#jira UE-38527 - Curves editors will no longer crash when trying to scale to fit after resetting the curve to its default values. This also fixes an issue where selecting a key before resetting the curve to default would sometimes cause the timestamp to display for a now-invalid key.
Change 3198783 on 2016/11/15 by Nick.Darnell
The Widget Component's Allow Hardware Input should now correctly convert coordinates coming from a viewport scaled up by the OS DPI scaling code.
Change 3198933 on 2016/11/15 by Jamie.Dale
Changing the package localization ID used by a package now marks the package as dirty
Change 3198942 on 2016/11/15 by Jamie.Dale
Clearing the package localization ID used by a package now marks the package as dirty
Change 3200241 on 2016/11/16 by Shaun.Kime
Now allowing users to customize the Class Browser/Picker to filter out developer folders as well as hide internal use classes via INI settings. A ViewOptions button has been added to allow users to choose whether or not these filters are enabled.
By default, internal only classes will be hidden and you will be limited to your own developer folder.
Example change to DefaultEngine.ini or BaseEngine.ini to hide some classes as internal use
[/Script/ClassViewer.ClassViewerProjectSettings]
+InternalOnlyPaths=(Path="/Engine/VREditor")
+InternalOnlyClasses=/Script/VREditor.VREditorBaseUserWidget
The InternalOnlyPaths example will hide any classes in the VREditor folder or subfolders.
The InternalOnlyClasses example will hide any classes that derive from VREditorBaseUserWidget.
Both can be edited by the project settings UI so no manual INI tweaking is required. Please go to Project Settings->Class Viewer->Class Visibility Management
#jira UE-38313
Change 3200621 on 2016/11/16 by Matt.Kuhlenschmidt
Adding missing change needed post merge from main
Change 3200968 on 2016/11/16 by Jamie.Dale
Fixed localization gather including texts that were instanced or otherwise unchanged
- It now uses the archetype when exporting to diff against the default property value, and will only gather text that has changed from the default.
- UMG widgets that are instanced from another UMG asset now only gather overridden values, and skip all child instances.
Change 3201033 on 2016/11/16 by Cody.Albert
Fixed source control to properly notify when files need to be checked out if a blueprint node is dragged
Change 3201829 on 2016/11/17 by Shaun.Kime
Fixing issue where GEngine is null in early game loading, potentially causing a crash.
Change 3201832 on 2016/11/17 by Matt.Kuhlenschmidt
Fix build warning
Change 3201835 on 2016/11/17 by Nick.Darnell
Slate - Making it so explictly focusing a slate user that does not yet exist, creates the slate user so that the state is properly maintained in prepartion for that user's arrival / input.
Change 3201947 on 2016/11/17 by Matt.Kuhlenschmidt
Fix streaming pause rendering starting a movie if a movie was already playing
Change 3202089 on 2016/11/17 by Nick.Darnell
Editor - When replacing references, code that was added in 2729702, was allowing redirectors to be created that then might be abandoned and not renamed later if there was a collision on object name. There's no problem if two objects have the same name, as long as they have different paths (except for classes). So now the code records object paths in a seperate set, and avoids reprocessing / and creating multiple redirectors for the same objects, instead of just using object name.
Change 3202139 on 2016/11/17 by Jamie.Dale
Fix for adjusting text spacing when lines are removed from TextLayouts
Change 3202398 on 2016/11/17 by Cody.Albert
Updated UMG Sequencer to properly fire events once per loop
Change 3202591 on 2016/11/17 by Shaun.Kime
Fixing coding standards violations.
Change 3202744 on 2016/11/17 by Shaun.Kime
StaticMeshComponent's OverriddenLightMapRes current displays the value it was set to, even when the bOverrideLightMapRes is false. The behavior within UStaticMeshComponent::GetLightMapResolution is to use the LightMapResolution on the StaticMesh member instead when bOverrideLightMapRes is false. The UI was adjusted to reflect the more accurate behavior.
#jira UE-38315
Change 3203009 on 2016/11/17 by Alex.Delesky
Backing out changelist 3170522 per request
#jira UE-33031
Change 3204077 on 2016/11/18 by Nick.Darnell
Automation - Updating several bits of the screenshot automation piece to work a bit better, show names if we have them, and show preview dialogs for images.
Change 3204086 on 2016/11/18 by Jamie.Dale
Added FGCObjectScopeGuard and TStrongObjectPtr as a convenient way to keep a UObject alive without having to add it to the root-set
Both use FGCObject internally to reference the object and keep it alive.
FGCObjectScopeGuard is designed to be lean and used as a guard for an existing pointer, whereas TStrongObjectPtr is more "full-fat" and designed to be a replacement for a raw-pointer.
You should prefer FGCObjectScopeGuard where possible. Also note that TStrongObjectPtr isn't supported by UHT/UPROPERTY as you should just use a raw-pointer in that case (it would do the same thing).
Change 3204189 on 2016/11/18 by Alex.Delesky
Removing content from dev folder
Change 3204205 on 2016/11/18 by Jamie.Dale
Fix for being unable to delete folders that still have sub-folders in the Content Browser
#jira UE-38752
Change 3204270 on 2016/11/18 by Simon.Tourangeau
Fix StaticMesh socket reimports
- socket transforms are now updated correctly on reimport
- deleted socket from source will be removed on reimport
- fix SocketManager refresh after import
#jira UE-38195
Change 3204283 on 2016/11/18 by Alex.Delesky
#jira UE-38314 - Undoing a change in the Preview Scene Viewer in Static Mesh Editor will now properly update changes within the scene itself.
Change 3205757 on 2016/11/21 by Jamie.Dale
PR #2923: Slate: Fixed bug where NumCharactersInGlyph was set incorrectly for TAB characters (Contributed by pluranium)
Change 3205759 on 2016/11/21 by Matt.Kuhlenschmidt
PR #2958: Handle legacy Windows exe icon location (Contributed by projectgheist)
Change 3205816 on 2016/11/21 by Matt.Kuhlenschmidt
PR #2956: Add plane to basicshapes (Contributed by tommybear)
Change 3205831 on 2016/11/21 by Jamie.Dale
Speculative fix for UE-38492
This guards against null objects being passed to FAssetDeleteModel, as well as objects that become null due to the GC that happens in FAssetDeleteModel.
#jira UE-38492
Change 3205869 on 2016/11/21 by Alex.Delesky
#jira UE-38227 - Trying to transform a component on a blueprint while a spline mesh actor has the transform gizmo active in the editor will no longer modify the spline mesh actor
Change 3205873 on 2016/11/21 by Alex.Delesky
#jira UE-38379 - When editing a row in the data table, clicking on a different row before committing changes will now switch to that row. This also fixes the issue of data tables constantly regenerating cell widgets on data changes.
Should also address the issue mentioned in #jira UE-32965
Change 3205954 on 2016/11/21 by Shaun.Kime
Reverting changes from 3202744 that allowed override properties to show up as real properties in the list. There are several detail panel customizations that don't deal with this properly and rather than force everyone to upgrade, we'll just modify the static mesh detail customization to do the work.
#jira UE-38315
Change 3205965 on 2016/11/21 by Alex.Delesky
#jira UE-38749, UE-38755 - Space and Enter should now fire button OnClicked events when a button is focused
PR #2942
Change 3207157 on 2016/11/22 by Chris.Wood
Added UnrealWatchdog tool, run by the Editor, to improve abnormal shutdown tracking.
[UE-32952] - Watchdog - Show CRC when reporting abnormal shutdowns in internal builds
Change 3207344 on 2016/11/22 by Matthew.Griffin
Added UnrealWatchdog to the Binary Release
Change 3207396 on 2016/11/22 by Ben.Marsh
Add UnrealWatchdog to UGS precompiled binaries for Odin and Orion.
Change 3207418 on 2016/11/22 by Matt.Kuhlenschmidt
Redid blur changes from Paragon Dev-General
Blur widget updates
- Renamed to SBackgroundBlur/UBackgroundBlur
- Split SBackgroundBlur out into its own file
- Added bApplyAlphaToBlur - when true, the strength of the blur is modulated by the widget alpha
- Updated BlurRadius to be TOptional, so we auto-calculate radius when it isn't set
- Added a UBackgroundBlurSlot, but left it unattached so it can be done in dev-editor (and update based on the engine version)
- Updated OrionBlurWidget to export dll symbols and set up default low quality fallback image
Change 3207443 on 2016/11/22 by Chris.Wood
Fix CIS error on Mac from my change CL 3207157
Change 3207702 on 2016/11/22 by Matt.Kuhlenschmidt
Added missing files
Change 3207958 on 2016/11/22 by Matt.Kuhlenschmidt
Guard against crash clearing scenes from the slate RHI renderer during movie loading code.
Change 3207962 on 2016/11/22 by Matt.Kuhlenschmidt
Added a guard against the rendering thread timing out while on a breakpoint by checking if the debugger is present before performing the timeout check
Change 3208194 on 2016/11/22 by Matt.Kuhlenschmidt
Actually call correct method of checking for a debugger
Change 3209139 on 2016/11/23 by Cody.Albert
Adding support for "Show Only Modified Properties" filter to DetailWidgetRow
Change 3209206 on 2016/11/23 by Jamie.Dale
Moving folders now removes the old folder from disk if it's empty
This had already been done for deleting folders, but moving them was missed.
#jira UE-11796
Change 3209281 on 2016/11/23 by Jamie.Dale
PR #2932: Fix crash while updating cursor highlight (Contributed by nakosung)
Change 3210383 on 2016/11/25 by Chris.Wood
Documented Crash Report Client analytics events
[UE-32787] - Document Crash Report Client analytics events in code
Change 3210385 on 2016/11/25 by Alexis.Matte
Make sure the combine mesh option of the staticmesh import is stored in staticmeshimportdata so the re-import know if it must re-import in combined or not
#jira UE-38925
Change 3210983 on 2016/11/28 by Matt.Kuhlenschmidt
Merging //UE4/Dev-Main to Dev-Editor (//UE4/Dev-Editor)
Change 3211001 on 2016/11/28 by Matt.Kuhlenschmidt
Fix build errors
Change 3211009 on 2016/11/28 by Matt.Kuhlenschmidt
PR #2960: Git plugin: multiline initial commit message and other connect screen cleanup (Contributed by SRombauts)
Change 3211017 on 2016/11/28 by Matt.Kuhlenschmidt
Fix ATSC texture compression quality tooltip
#jira UE-38996
Change 3211045 on 2016/11/28 by Matt.Kuhlenschmidt
Fix compile errors
Change 3211081 on 2016/11/28 by Matt.Kuhlenschmidt
Fix post process anim blueprints on skeletal meshes not being clearable
#jira UE-39017
Change 3211094 on 2016/11/28 by Matt.Kuhlenschmidt
Added more logging for jira UE-39000
#jira UE-39000
Change 3211284 on 2016/11/28 by Matt.Kuhlenschmidt
Redid fix for UE-35822 in dev-editor
Change 3211544 on 2016/11/28 by Matt.Kuhlenschmidt
Fix deprecation warning
Change 3211769 on 2016/11/28 by Matt.Kuhlenschmidt
Disable motion blur in editor views by default
#jira 38424
Change 3211776 on 2016/11/28 by Matt.Kuhlenschmidt
Fix PS4 compile errors
Change 3211949 on 2016/11/28 by Matt.Kuhlenschmidt
Details panels changes
- Added the ability to create groups within groups in details panel customizations
- Added the ability for struct customizations to add categories to the parent
Change 3211954 on 2016/11/28 by Matt.Kuhlenschmidt
Reorganized the post process settings so they appear as categories in the parent and so that they have better categories to make it clear what all the settings do.
Change 3213158 on 2016/11/29 by Jamie.Dale
Updated User Defined Enum display names to use real FText instances so they can have stable keys
This avoids the issue where the FText display names were cached from an FString, resulting in them having a different identity each time they were re-cached, which lead to localization and deterministic cooking issues.
User Defined Enums no longer use meta-data to store their display names, and instead use a TMap in UUserDefinedEnum to map the raw enum entry name to its friendly display name. In addition to this, the enum editor has been updated to use STextPropertyEditableTextBox, which will keep the keys used by the display names stable where possible (allowing for delta-localization and historic tracking).
#jira UE-26274
Change 3213172 on 2016/11/29 by Jamie.Dale
Adding experimental support for content hot-reloading
The underlying support for this is in CoreUObject (see ReloadPackage and ReloadPackages in UObjectGlobals.h/.cpp), with editor specific support being added via PackageTools::ReloadPackages, and also hooks registered with FCoreUObjectDelegates::OnPackageReloaded (eg, UEditorEngine::HandlePackageReloaded).
The basic workflow for package reloading is as follows:
1) The current package is renamed, and the RF_NewerVersionExists flag is added to it and all its sub-objects.
2) The new package is loaded. Should this fail the old package is renamed back, and the RF_NewerVersionExists flag is removed.
3) We generate a mapping between objects in the old package and objects in the new package (see UObject::BuildSubobjectMapping).
4) We enumerate every object in memory, and fix-up any serialized or ARO object pointers referencing something from the old package, to reference the equivalent object from the new package (or null if no object could be found).
5) We run a GC, and verify that the old package was purged (printing any lingering references if it wasn't).
For efficiency reasons package reloading may be run in batches (the editor uses batches of 500), as this allows package reloading to happen faster (as the reference fix-up and GC only happens once per-batch) at the cost of consuming more memory.
In-editor there is an experimental setting to enable content hot-reloading. When this is enabled the SCC operations in the Content Browser will use content hot-reloading, rather than attempt to unload the reload the package as separate operations (which often fails). In order to allow the external SCC program to overwrite the files on disk, the linkers are detached from any packages that will be replaced prior to invoking the internal SCC operation.
Change 3213428 on 2016/11/29 by Jamie.Dale
Implemented clamping on FTextInputMethodContext::SetSelectionRange to fix an issue where composition could provide an invalid range if the text was changed while composing
#jira UE-37746
Change 3213442 on 2016/11/29 by Jamie.Dale
Workaround for a bug in TSF based MS IMEs on Windows 8+
They omit calling GetSelection and instead expect QueryInsert to return the current selection range. This also seems to fix an issue where composition no longer worked once some text had been deleted.
#jira UE-37309
Change 3213603 on 2016/11/29 by Cody.Albert
Changed PanelWidget::RemoveChildAt to not release slate resources if the child is a UserWidget
#jira UE-39106
Change 3213633 on 2016/11/29 by Matt.Kuhlenschmidt
Attempt to fix includetool cis warning
Change 3215159 on 2016/11/30 by Jamie.Dale
Fixing MakeShared forward declaration
Change 3215220 on 2016/11/30 by Alex.Delesky
#jira UE-38698 - Deleting a widget from the Widget Blueprint Hierarchy (or adding a new widget to the hierarchy directly) will no longer cause the scroll bar to return to the top of the hierarchy view.
Change 3215390 on 2016/11/30 by Jamie.Dale
Maps now end a hot-reload batch
Change 3215394 on 2016/11/30 by Matt.Kuhlenschmidt
Updating guard to track down worlds that have no package as an outer
#jira UE-35712
Change 3215500 on 2016/11/30 by Alexis.Matte
Color grading widget customization
#jira UETOOL-1070
Change 3215519 on 2016/11/30 by Jamie.Dale
Fixed crash caused by using TextNamespaceUtil::EnsurePackageNamespace in 'game' mode
Change 3215556 on 2016/11/30 by Cody.Albert
Fixed issue where check-out toast would not disappear
#jira UE-39146
Change 3215585 on 2016/11/30 by Jamie.Dale
Adding an explicit ESPMode to MakeShared to try and placate Android
Change 3215737 on 2016/11/30 by Alexis.Matte
Fix build warning
Change 3215748 on 2016/11/30 by Matt.Kuhlenschmidt
Guard against crashes due to duplicate items in the scene outliner if actors somehow end up attached to themselves
#jira UE-35935
Change 3215758 on 2016/11/30 by Ben.Marsh
Add a 'Custom...' build type for Dev-Editor.
Change 3216183 on 2016/11/30 by Alexis.Matte
Fix win32 build error
Change 3216362 on 2016/11/30 by Matt.Kuhlenschmidt
Fix mac build error.
Change 3216828 on 2016/12/01 by Jamie.Dale
Fixing MakeShared on Android
#jira UE-39204
Change 3216839 on 2016/12/01 by Matt.Kuhlenschmidt
PR #2997: Spelling fix for Actor.h's description of bEnableAutoLODGeneration. (Contributed by hgamiel)
Change 3216842 on 2016/12/01 by Matt.Kuhlenschmidt
Remove the ensure when pushing absolute transforms onto a canvas matrix stack. We can handle this properly now by just adding the transform to the stack if the stack is empty
#jira UE-36496
Change 3216874 on 2016/12/01 by Matt.Kuhlenschmidt
Fix a number of keybindings problems
- Removed editor keybindings from project settings. It should not have been in there (already in editor settings)
- Removed duplicate registration of editor keybindings from editor settings
- Fixed memory leak regenerating keybinding widgets when ending PIE world.
- Cleaned up styling a bit to make keybindings widgets clearer.
#jira UE-39211, UE-38718
Change 3216881 on 2016/12/01 by Shaun.Kime
Added support for reroute nodes to the material editor. These nodes should function identically to their counterparts in Blueprints. A new UMaterialExpression, UMaterialExpressionReroute has been added. It inserts no HLSL code, and instead just moves along its input to find the real UMaterialExpression that it is ultimately bound to.
Since the material system serializes its data as UMaterialExpressions, a more generalized approach across graph types isn't available as only the visual UI layer is shared between blueprints and material graphs.
Also modified the material palette and popup material expression menu to allow for c++ based material name and description customization. If we choose to expand this, it would make the C++ material nodes more discoverable and understandable.
Manually pulled in CL 3200823 and 3208490 to get bugfixes around material attribute usage.
Adding an reroute node should function identically to Blueprints (ie double-click on connection to add or Utility\Add Reroute Node from palette). You should be able to add as many reroute nodes as you want in a chain. A reroute node that only has a connected output and not an input should behave as if there were no reroute node present (i.e. triggering constants on Add). It should be possible to use reroute nodes between any two supported node types if they are connectable in isolation. Where possible, we should show the same type mismatch errors that you'd see if connecting nodes directly (ie dragging a boolean constant into a reroute node connected to an Add should result in a Float/Bool mismatch). A reroute node is purely visual, it should have no impact on the final instruction count.
In the event that an incomplete reroute input was completed by dragging to an invalid type, I tried to guarantee that the compiler would generate the appropriate errors. This can happen because we only know the inputs to a given node in code. If a reroute node doesn't have an input, it does not know what type it should be. However, the compiler should still detect these bad cases and error out.
#jira UE-6882
Change 3216968 on 2016/12/01 by Jamie.Dale
Syncing via source control now unloads (rather than reloads) packages that have been deleted from disk
Change 3216970 on 2016/12/01 by Jamie.Dale
Reverting files now uses hot-reloading (if enabled)
Change 3217233 on 2016/12/01 by Jamie.Dale
You can now choose to reload dirty packages via content hot-reloading
This will revert any in-memory changes to the asset, which may be useful when you want to roll it back to its initial state without restarting the editor.
Change 3217244 on 2016/12/01 by Matt.Kuhlenschmidt
WindowsMoviePlayer: Initialize the movie player texture on first frame regardless of whether or not the decoder has a sample ready. This prevents a white texture from showing up for a frame.
Change 3217466 on 2016/12/01 by Jamie.Dale
Fixed a bug where FTextFormatData::ConditionalCompile_NoLock would always compile the text even if it was up-to-date
Change 3217572 on 2016/12/01 by Jamie.Dale
Using FText::Format with an invalid argument no longer strips any associated argument modifier data from the resultant formatted text
Change 3217688 on 2016/12/01 by Jamie.Dale
Fixed crash reloading the active world package when it was dirty
#jira UE-39250
Change 3217978 on 2016/12/01 by Matt.Kuhlenschmidt
Fixed crash where the slate renderer holds into scenes during maps are loaded causing access to deleted data after the load is complete. We clean up cached scenes each frame but if slate doesnt tick the scenes are not cleaned up. This change moves the CleanupScenes code to a location that is called each tick and during map loads
#jira UE-39243
Change 3218834 on 2016/12/02 by Alexis.Matte
move some scene conversion import fbx options to staticmesh, skeletalmesh and animation import data so the re-import will have acces to those import options
#jira UE-38672
Change 3218838 on 2016/12/02 by Matt.Kuhlenschmidt
Fixed editing static mesh settings manually in the details panel not visually refreshing the collision primitives
#jira UE-39246
Change 3218864 on 2016/12/02 by Matt.Kuhlenschmidt
Fixed basic cube shape having a convex hull instead of a box for collision
Change 3218900 on 2016/12/02 by Matt.Kuhlenschmidt
Move static mesh collision properties to the collision category
Change 3219143 on 2016/12/02 by Michael.Dupuis
#jira UE-39124 We can now place single mesh at a time
#jira UE-39125 We can paint on the current level of the level containing the mesh we're painting on
Change the way GetRandomVectorInBrush generate the Start/end position to use the BrushNormal instead of the BrushDirection
Change 3219199 on 2016/12/02 by Matt.Kuhlenschmidt
Fixed a crash when changing Physical Surface Name and reassigning it on a physical material that uses it
#jira UE-37452
Change 3219358 on 2016/12/02 by Alexis.Matte
Fix fbx automation tests
Change 3219362 on 2016/12/02 by Alexis.Matte
Support for MAX multisub material
#jira UE-38467
#jira UE-38471
Change 3219774 on 2016/12/02 by Jamie.Dale
PR #2888: Add a setting to allow the Sources Panel to expand by default (Contributed by BhaaLseN)
Change 3219793 on 2016/12/02 by Jamie.Dale
SWindow now restores focus back to the widget that last had focus when it was deactivated
#jira UE-38965
Change 3221272 on 2016/12/05 by Matt.Kuhlenschmidt
UI background blur tweaks
- Adjust the downsample amount for lower kernel sizes
- Flush post process memory used by the blur when switching levels
Change 3221273 on 2016/12/05 by Matt.Kuhlenschmidt
Added guards against accesing scene caching methods of the slate resource manager on the rendering thread
Change 3221392 on 2016/12/05 by Matt.Kuhlenschmidt
Added basic support for playing safe movies very early in the engine startup sequence. A movie is considered safe to play very early if it is just a movie file and not some complex slate based UI loading screen
no platform actually supports this yet as none of the movie streamer modules are loaded early enough and many platforms cant render this early
Set PLATFORM_SUPPORTS_EARLY_MOVIE_PLAYBACK to 1 for your platform if it supports early loading
Change 3221831 on 2016/12/05 by Jamie.Dale
Fixed UNumericProperty::ReadEnumAsUint8 not considering enum redirects when resolving the name
Change 3221986 on 2016/12/05 by Jamie.Dale
Added an "Inline" font loading method
This can be used in a cooked build to store the font data within the Font Face asset itself (rather than a separate .ufont file) in order to guarantee a hitch free load, at the cost of potentially using more memory up-front.
The existing "PreLoad" loading method has been renamed to "LazyLoad" to better reflect what it actually does.
This also fixes a bug where FFontData::Serialize could try and use the referenced Font Face asset before it had been fully loaded.
Change 3222065 on 2016/12/05 by Jamie.Dale
Added log warning to detect hitches when lazily loading fonts
Change 3222225 on 2016/12/05 by Jamie.Dale
Fixing style-set typo
#jira UE-39333
Change 3223169 on 2016/12/06 by Matt.Kuhlenschmidt
Fix autosaving prompting to check out built data if the built data asset was dirty during autosave
#jira UE-39295
Change 3223184 on 2016/12/06 by Alexis.Matte
Support LOD group and combine mesh
#jira UE-1088
Change 3223212 on 2016/12/06 by Alex.Delesky
#jira UE-39260 - TMap and TSet struct values should now be editable when editing a component's properties.
Change 3223215 on 2016/12/06 by Alex.Delesky
#jira UE-38594 - The Widget Interaction Component will now default to tick while paused. Widget Components now contain a flag that will either allow or disallow interacting with them while the game is paused, which defaults to false.
Change 3223249 on 2016/12/06 by Matt.Kuhlenschmidt
Added back in missing code that was lost in a merge
Change 3223271 on 2016/12/06 by Alex.Delesky
#jira UE-38786 - The Color Picker will no longer stretch across the screen when exceptionally long strings are either entered or pasted inside one of the spin boxes. This also fixes an issue with editable text fields not validating string input on paste and will now prevent invalid data from being pasted inside a editable text block (e.g., pasting the string "I am a float" inside a spin box).
Change 3223275 on 2016/12/06 by Matt.Kuhlenschmidt
Fixed a race condition in WEX where the loading screen would render an external UI window that was referencing deleted materials
Change 3223276 on 2016/12/06 by Alexis.Matte
Staticmesh socket fbx import.
#jira UE-38284
Change 3223363 on 2016/12/06 by Alexis.Matte
Reimport must ask for missing file when re-importing a old asset that has no source files
#jira UE-39356
Change 3223423 on 2016/12/06 by Chris.Wood
Added option to place canvas panel children in same layer using explicit ZOrder setting.
[UETOOL-935] - Figure out a solution for canvas panel batching
Change 3223551 on 2016/12/06 by Alexis.Matte
UI mesh paint optimization, the slider now do not destroy the paint geometry adapter if the painted LOD has not change
#jira UE-39383
Change 3223844 on 2016/12/06 by Matt.Kuhlenschmidt
Back out change to change the defaults on vector and scalar expressions because this affects existing expressions that have not overridden the default
Change 3223880 on 2016/12/06 by Matt.Kuhlenschmidt
Update doc links for maps and sets
Change 3224746 on 2016/12/07 by Michael.Dupuis
#jira UE-39409 : Was'nt calling EndFoliageBrushTrace causing the transaction to never finish causing both jiras
#jira UE-39410 : Was'nt calling EndFoliageBrushTrace causing the transaction to never finish causing both jiras
Change 3224826 on 2016/12/07 by Michael.Dupuis
#jira UE-39095 : If a tool is active we simply consider inputs as handled to prevent this kind of behavior
Change 3224827 on 2016/12/07 by Simon.Tourangeau
Improve search for material match on fbx mesh import
- Add option to specify material search locations on mesh import
- On Import it will now perform a first match material search in the following order (suppose we are importing into /Game/Content/Assets/Meshes/MyMesh)
- Using Local as a search location will provide same behavior as before (search non recursively in /Game/Content/Assets/Meshes)
- If option is UnderParent or more, search recursively in destination folder (search recursively in /Game/Content/Assets/Meshes)
- If option is UnderParent or more, then recursively from parent folder (search recursively in /Game/Content/Assets)
- If option is UnderRoot or more, search recursively from root folder (search recursively in /Game)
- If option is AllAssets, search in every asset folder (Search recursively everywhere)
#jira UE-39020
Change 3224989 on 2016/12/07 by Chris.Wood
Fixed black callstack text in CrashReportClient.
[UE-38987] - CrashReportClient Callstack text is rendering Black
Change 3225142 on 2016/12/07 by Jamie.Dale
Added collapsing methods when exporting text for translation
You can now choose how to collapse your text for translation from three export modes:
- ELocalizedTextCollapseMode::IdenticalTextIdAndSource - Collapse texts with the same text identity (namespace + key) and source text (default 4.15+ behavior).
- ELocalizedTextCollapseMode::IdenticalPackageIdTextIdAndSource - Collapse texts with the same package ID, text identity (namespace + key), and source text (4.14 behavior).
- ELocalizedTextCollapseMode::IdenticalNamespaceAndSource - Collapse texts with the same namespace and source text (legacy pre-4.14 behavior).
The new default allows you to re-use the same text identity in different packages without having to translate the same text multiple times, and you can also now opt to get back to the legacy pre-4.14 behavior of collapsing all identical texts within the same namespace (in case you were reliant on that behavior).
You can change this setting via the Localization Dashboard, or add it to your gather configs as "LocalizedTextCollapseMode" (this needs to go into any configs that deal with exporting or importing PO files - the default if nothing is specified is "ELocalizedTextCollapseMode::IdenticalTextIdAndSource").
Change 3225509 on 2016/12/07 by Simon.Tourangeau
Static analysis fix, false positive
Change 3225859 on 2016/12/07 by Matt.Kuhlenschmidt
Fix broken physical surface details customization
- Scrolling now works properly
- Edit boxes dont change size while editing
- properly checks out or makes file writable once an edit has been made
#jira UE-39279
Change 3226840 on 2016/12/08 by Jamie.Dale
Fixing a bug in FText formatting where it would ignore the rebuild and Rebuild as Source arguments for the format string itself
#jira OPP-6485
Change 3226940 on 2016/12/08 by Alexis.Matte
Avoid changing the W value when playing with the color grading wheel.
#jira UE-39473
Change 3227814 on 2016/12/08 by Matt.Kuhlenschmidt
Temp disable lazy load font warnings to prevent infinite recursion crashes at startup
Change 3228010 on 2016/12/08 by Matt.Kuhlenschmidt
Fix for iOS compiling
Change 3228597 on 2016/12/09 by Jamie.Dale
Removed hard dependency between UFont and UFontFace during struct serialization as it doesn't work with the EDL
#jira UE-39529
Change 3228607 on 2016/12/09 by Jamie.Dale
Fixed infinite recursion caused by logging while the output log font was still being loaded
#jira UE-39523
Change 3228770 on 2016/12/09 by Jamie.Dale
Fixed UUserDefinedEnum::GetEnumText
it was using GetNameByIndex (which includes C++ scoping), rather than GetEnumName (which doesn't). This was causing all name look-ups to fail.
#jira UE-39531
Change 3228785 on 2016/12/09 by Matt.Kuhlenschmidt
Fix static analysis warning
[CL 3229477 by Matt Kuhlenschmidt in Main branch]
2016-12-09 15:05:28 -05:00
int32 CommandIndex = 0 ;
2014-06-18 10:16:16 -04:00
for ( const FEditorModeInfo & Mode : FEditorModeRegistry : : Get ( ) . GetSortedModeInfo ( ) )
2014-03-14 14:13:41 -04:00
{
// If the mode isn't visible don't create a menu option for it.
2014-06-18 10:16:16 -04:00
if ( ! Mode . bVisible )
2014-03-14 14:13:41 -04:00
{
continue ;
}
2014-06-18 10:16:16 -04:00
FName EditorModeTabName = GetEditorModeTabId ( Mode . ID ) ;
FName EditorModeCommandName = FName ( * ( FString ( " EditorMode. " ) + Mode . ID . ToString ( ) ) ) ;
2014-03-14 14:13:41 -04:00
TSharedPtr < FUICommandInfo > EditorModeCommand =
FInputBindingManager : : Get ( ) . FindCommandInContext ( Commands . GetContextName ( ) , EditorModeCommandName ) ;
// If a command isn't yet registered for this mode, we need to register one.
Copying //UE4/Dev-Editor to //UE4/Dev-Main (Source: //UE4/Dev-Editor @ 3228984)
#lockdown Nick.Penwarden
#rb none
==========================
MAJOR FEATURES + CHANGES
==========================
Change 3168749 on 2016/10/20 by Richard.TalbotWatkin
Fixed bug in csgRebuild where dynamic brushes from the whole world are rebuilt instead of just those from the current level. csgRebuild is supposed to act only on the current level's geometry.
#jira UE-37376 - csgRebuild builds dynamic brushes from the whole world, instead of just the current level
Change 3169740 on 2016/10/20 by Nick.Darnell
Automation - Removing old screenshots, working on new naming convention.
Change 3169796 on 2016/10/20 by Nick.Darnell
Automation - Adding new screenshots.
Change 3169800 on 2016/10/20 by Nick.Darnell
Automation - Working on improvements to screenshot comparions, now using the Unique device id instead of adapter name. Working on better metadata based matching for which screenshot to use, stubbing in support for adding alternative versions of screenshots.
Change 3169901 on 2016/10/20 by Nick.Darnell
Automation - More fixes / refinements to the way we add alternatives and replace old versions of screenshots.
Change 3169926 on 2016/10/20 by Cody.Albert
Added extension point for level editor viewport's Show and Camera menus
Change 3170053 on 2016/10/20 by Cody.Albert
Back out changelist 3169926
Change 3170067 on 2016/10/20 by Cody.Albert
Added extension point for level editor viewport's Show and Camera menus
Change 3170382 on 2016/10/21 by Michael.Dupuis
#jira UE-36585 Added Copy/Paste to Material list/item, section list/item to StaticMeshEditor and Persona Editor
Change 3170520 on 2016/10/21 by Alex.Delesky
#jira UE-36510 - You can now toggle if combo boxes can receive keyboard focus from the Widget Blueprint
Change 3170522 on 2016/10/21 by Alex.Delesky
#jira UE-33031 - Buttons will no longer remained in a hovered state on mobile devices if the user drags their finger into a button, and then lifts their finger without dragging it outside of the button.
Change 3170524 on 2016/10/21 by Alex.Delesky
#jira UE-25591 - Static Mesh LODs can now be removed from the editor without a mesh reduction tool like Simplygon configured for use in the editor.
Change 3170530 on 2016/10/21 by Alex.Delesky
Moved the HasKey method from UMapProperty to FScriptMapHelper, and moved the HasElement property from USetProperty to FScriptSetHelper
#jira none
Change 3170768 on 2016/10/21 by Cody.Albert
Back out changelist 3170067
Change 3170795 on 2016/10/21 by Nick.Darnell
JsonObjectConverter - By default UStructToJsonAttributes now skips transient properties.
Change 3170797 on 2016/10/21 by Nick.Darnell
Automation - Fixing several warnings dealing with fbx testing.
Change 3170921 on 2016/10/21 by Nick.Darnell
Automation - Fixing more warnings with FBX tests.
Change 3171109 on 2016/10/21 by Cody.Albert
Added extension point for level editor viewport Show menu
Change 3171812 on 2016/10/24 by Jamie.Dale
Back out changelist 3163044
This broke wrapping for Japanese and Chinese.
Change 3171842 on 2016/10/24 by Michael.Dupuis
#jira UE-36400
Name each Parameter uniquely either from copy/paste of any creation menu
Changed the default value for Scalar and Vector Parameter to 1 and 1,1,1,1
Added a Promote To Parameter when clicking on an Input pin that will generate proper node type based on type pin type
When editing a color property update the material expression preview
Change 3171958 on 2016/10/24 by Alex.Delesky
#jira UE-37444 - The Primitive Stats browser (and other statistics browsers) can now sort columns based on singular objects or object types as well as texture dimensions.
Change 3171969 on 2016/10/24 by Nick.Darnell
Slate - Adding some code to prevent crashes if bogus user indexes are passed into SlateApplications GetUser functions.
Change 3171970 on 2016/10/24 by Matt.Kuhlenschmidt
PR #2885: Fixed Stretched Landscape Editor Icons (Contributed by teessider)
Change 3172035 on 2016/10/24 by Alex.Delesky
Fix to build warning for 3171970
#jira none
Change 3172078 on 2016/10/24 by Michael.Dupuis
#jira UE-37626 Fetch property node from property handle if there is no property editor
Change 3172143 on 2016/10/24 by Jamie.Dale
Line-break iterators will now avoid breaking words in Hangul
The default behavior for wrapping Hangul is to use Western-style wrapping (where words are kept as-is) rather than East Asian-style (where words are broken by syllables). This behavior can be controlled by the Localization.HangulTextWrappingMethod CVar in-case you were dependant on the old behavior, but since modern Hangul uses spaces, the per-word wrapping is preferred by native speakers.
Change 3172418 on 2016/10/24 by Michael.Dupuis
Fixed Static Analysis error
Change 3173389 on 2016/10/25 by Michael.Dupuis
#jira UE-9284 Make the UI appear only on hover and change icons size
Change 3173918 on 2016/10/25 by Alex.Delesky
#jira UE-37753 - WidgetBlueprints saved without a root widget (e.g., by deleting the starting Canvas panel) will no longer set a Canvas panel as the root widget. New WidgetBlueprints will still contain a Canvas Panel when created.
Change 3173966 on 2016/10/25 by Alex.Delesky
#jira UE-20891 - SpinBox now receives MouseMove events while simulating touch events using the mouse.
Change 3174847 on 2016/10/26 by Alex.Delesky
#jira UE-36371 - Windowed Fullscreen will now expand to fit the entirety of the current window and will not be displaced when the Windows taskbar is docked on the top or left sides of the screen.
Change 3174916 on 2016/10/26 by Alexis.Matte
When re-importing fbx file, always log to the message log.
#jira UE-37639
Change 3174940 on 2016/10/26 by Alex.Delesky
Back out changelist 3174847 at request of platforms team. Was fixed on Main.
Change 3174995 on 2016/10/26 by Matt.Kuhlenschmidt
Import commandlet fixes
- Fixed crash when source control could not be contacted
- Fixed assets not importing correctly if they depended on other assets in a previous import group within the automated import
Change 3175217 on 2016/10/26 by Alexis.Matte
The FBX reimport animation code now return false if there was an error when importing
#jira UE-37755
Change 3175728 on 2016/10/26 by Alexis.Matte
Log a message when importing a skeletal mesh with more bone influence then the maximum supported
#2875
#jira UE-37613
Change 3177997 on 2016/10/28 by Nick.Darnell
Editor - Prevent re-entrant calls when EndPlayMap is called.
Change 3178429 on 2016/10/28 by Nick.Darnell
Engine - Bumping BaseEngine.ini to IOS_8, MinimumiOSVersion, as that is now the minimum allowed to fix an error on startup. Tweaking the location of where some importing files go when they're imported.
Change 3179774 on 2016/10/31 by Matt.Kuhlenschmidt
Guard against bad render targets in Slate RHI
#jira UE-37905
Change 3179900 on 2016/10/31 by Matt.Kuhlenschmidt
Added logging to track https://jira.it.epicgames.net/browse/UE-37900
#jira UE-37900
Change 3179920 on 2016/10/31 by Alex.Delesky
Removing LODs from skeletal meshes is now a transacted action and can be undone. Related to UE-25591.
#jira none
Change 3179921 on 2016/10/31 by Alex.Delesky
#jira UE-37725 - Adding safeguard against a potential crash in FTextureEditorViewportClient caused by a texture not having a valid texture resource
Change 3180119 on 2016/10/31 by Alexis.Matte
fbx importer avoid asset creation name clash
#jira UE-35100
Change 3181905 on 2016/11/01 by Alexis.Matte
Paint tool now allow users to paint on any vertex if they need it.
#jira UE-8372
Change 3182355 on 2016/11/01 by Alexis.Matte
We now support FBX LODs export for the asset exporter from the content browser.
#jira UE-35302
Change 3183286 on 2016/11/02 by Alexis.Matte
Make sure static mesh build settings are set properly when we re-import with different options. Specifically the normals, tangents and tangent space are dependent on the import options.
#jira UE-37520
Change 3183567 on 2016/11/02 by Shaun.Kime
#jira UE-38019
The Content Browser's View Options originally included both Engine and GameProject plugins only when clicking Show Plugin Content. Since there are quite a few Engine plugins, this produces quite a bit of content in the Folders panel. Most of the Engine plugins have classes or content that isn't really meant to be user-facing, so the experience of hunting for a game plugin-in's content is poor.
The new behavior is that GameProject plugins are controlled by the "View Plugin Content" option. In order to see the Engine plugins you'll need both Engine Content and Plugin Content checkboxes enabled. By default, the editor should enable the "View Plugin Content" checkbox since it should be limited to just the content in the game's Plugins folder.
Change 3184002 on 2016/11/02 by Jamie.Dale
Fixed crash during TSF IME shutdown
#jira UE-38073
Change 3185126 on 2016/11/03 by Shaun.Kime
Some of the plugin templates define Editor specific plugins. If created and a Standalone build is run, the application will attempt to link in editor libraries in game mode and will run into issues when you hit any key. The fix is to specify an Editor module description for these plugins.
Additionally, there appears to be a mismatch in pathing types when dealing with plugin path and GameDir. Plugin path is absolute and GameDir is relative by default. We check to see if the gameDir is a subset of the plugin path, but this fails due to the mismatch. The fix is to force both to be absolute (enforcing normalization of both paths as well).
#jira UE-38065
#jira UE-37645
Change 3185278 on 2016/11/03 by Nick.Darnell
UMG - Fixing some issues with HDPI mode in the widget designer.
Change 3185355 on 2016/11/03 by Nick.Darnell
UMG - Widget Component's Draw At Desired size now should also work correctly if it's in screenspace.
Change 3185510 on 2016/11/03 by Nick.Darnell
UMG - Restoring the ability of the Widget Component to directly recieve hardware input. The Widget Interaction Component is great for just about every interaction use case - the one it's not is when you actually want the 3D widgets to take focus, and to be able to be typed directly into by the user. The kind of situation where you might want to use them as a 3D menu, in a non-VR environment. By default - Widget Components will not behave in this manner, but you can now use the option bReceiveHardwareInput to enable the ability for Widget Components to function more like a widget in the screenspace of the viewport.
Slate - The scene viewport now correctly takes scale into account when drawing the 'software cursor', this fixes an issue with HDPI mode, and the cursor not being restored to the same location after moving a gizmo.
Change 3185514 on 2016/11/03 by Nick.Darnell
UMG - Fixing some HDPI mode problems with widget position calculation when projecting world to viewport / screen, absolute spaces.
Change 3185652 on 2016/11/03 by Nick.Darnell
Slate - Exposing a cached version of the widget geometry that comes in during Tick. Also performed a bit of optimization work on the class to make some space for the geometry object we now cache, by compacting the pointer event delegates we were storing.
Change 3185952 on 2016/11/03 by Nick.Darnell
UMG - Fixing another build error relating to local widget geometry.
Change 3185953 on 2016/11/03 by Nick.Darnell
UMG - Fixing a mac compiler warning.
Change 3186886 on 2016/11/04 by Matt.Kuhlenschmidt
Fixed collapse all hiding everything in the settings editors
#jira UE-38151
Change 3187014 on 2016/11/04 by Matt.Kuhlenschmidt
Fixed new assets opening in a minimized window not restoring that window.
Change 3187026 on 2016/11/04 by Shaun.Kime
UUnrealEdEngine::edactDeleteSelected calls out to FBlueprintEditorUtils::FindActorsThatReferenceActor. This checks the entire world for each actor to be deleted. When you have tens of thousands of actors in the world and are deleting tens of thousands of actors, this can take minutes. This change amortizes the cost of finding the actor references once for the world and for each actor to be deleted, we query the cached list of references. This brings the deletion time down to seconds.
#jira UE-38094
Change 3187073 on 2016/11/04 by Nick.Darnell
Automation - Changing the code that writes out json to force no BOM as is the json standard.
Change 3187113 on 2016/11/04 by Jamie.Dale
Removed double look-up in UTextProperty::SerializeItem
Change 3187114 on 2016/11/04 by Jamie.Dale
Feedback context now uses culture correct percentage formatting
Change 3187273 on 2016/11/04 by Alexis.Matte
Fbx importer for static mesh, make sure that we order the materials array to follow the section order.
Add also some fbx automation test
#jira UE-38242
Change 3187276 on 2016/11/04 by Matt.Kuhlenschmidt
Fix crash when an actor picker shows up in the struct editor. Structs do not have root property nodes
#jira UE-38268
Change 3187463 on 2016/11/04 by Nick.Darnell
Automation - Updating the blessed screenshots, and fixing the BOM issues with the json.
Change 3188638 on 2016/11/07 by Shaun.Kime
Making the UI for adding/removing parameters in custom blueprint functions behave similarly to the struct creation dialog in the content browser. There are no longer "New" buttons at the bottom of the panel and the parameter moving controls have been moved onto the main parameter row instead of being nested inside the collapse panel. A tooltip will now let you know the full parameter name and type when you hover over the editable name field. Made the move up/down icons more legible by increasing contrast between the arrow and the light grey background.
#jira UE-38240
Change 3189056 on 2016/11/07 by Nick.Darnell
Core/Editor - UObject::IsAsset() now returns false if the outermost package is RF_Transient. Also updating the creation of the transient package to be RF_Transient. This makes it so transient packages created by UMG or some other editor for things like previewing a streamed in level instance, no longer show up in the content browser.
Change 3189147 on 2016/11/07 by Jamie.Dale
Fixed potential race-condition where a UFont object could be GC'd while the loading screen was using the font cache
This queues up the pending removal until it's safe to execute it (by a thread that fully owns Slate rendering).
#jira UE-38309
Change 3189344 on 2016/11/07 by Matt.Kuhlenschmidt
Merging //UE4/Dev-Main to Dev-Editor (//UE4/Dev-Editor)
Change 3189380 on 2016/11/07 by Matt.Kuhlenschmidt
Guard against null object when creating details panel
Change 3190017 on 2016/11/08 by Alexis.Matte
FrontX support for scene importer
#jira UETOOL-1061
Change 3190058 on 2016/11/08 by Matt.Kuhlenschmidt
Fixed misaligned button in the new blueprint class dialog
Change 3190086 on 2016/11/08 by Nick.Darnell
UMG - Fixing the calculation for widget componets screen position if the camera aspect is constrained.
Change 3190159 on 2016/11/08 by Nick.Darnell
UMG - We no longer also take the platform DPI scale into account when applying UMG's UI scale. Since UMG already provides a DPI scaling system, compounding it with the native OSes produces undesirable results, since the DPI scale curve does not take into account some unknown platform scale set by a user.
Change 3190161 on 2016/11/08 by Nick.Darnell
UMG - UWidget is now Blueprintable. Improving some doc.
Change 3190545 on 2016/11/08 by Alexis.Matte
Support scaling when exporting skeleton (bind pose) to FBX
#jira UE-36120
Change 3191614 on 2016/11/09 by Simon.Tourangeau
Fix cooking crash after fbx import of a scene without meshes
#jira UE-38264
Change 3191659 on 2016/11/09 by Simon.Tourangeau
Cleanup Persona LOD section button layout
#jira UE-38339
Change 3191882 on 2016/11/09 by Jamie.Dale
Changed FBlackboardKeySelector::AddObjectFilter to use MakeUniqueObjectName so it generates more stable names, rather than relying on a static counter.
Also updated FBlackboardKeySelector::AddClassFilter, FBlackboardKeySelector::AddEnumFilter, and FBlackboardKeySelector::AddNativeEnumFilter to use MakeUniqueObjectName to ensure they don't conflict.
Change 3192092 on 2016/11/09 by Jamie.Dale
Deleting some test assets that were accidentally checked in, some of which no longer load
Change 3192281 on 2016/11/09 by Alex.Delesky
#jira UE-31866 - Widget Blueprints will no longer experience compile issues when dragging widgets between the hierarchy views of different Widget Blueprints.
Change 3192365 on 2016/11/09 by Shaun.Kime
Adding support for MaterialParameterCollections to Slate UI objects. For reasons of Blueprint controls amongst other things, MPC's are owned by individual UWorlds and transferred over to their respective Scenes. Since we want the latest values from those in-UWorld representations, Slate needs to know about the Scene on the render thread to properly map the materials to their MPC inputs. This involved keeping Scene arrays synchronized between the game logic thread and render thread, and adding a Scene index field to each batched draw element in Slate. SceneViewports are now responsible for registering their associated Scenes with the SlateRenderer. Since RetainerBoxes also draw their content as well, they too need to register their Scenes.
#jira UE-19022
Change 3192494 on 2016/11/09 by Alex.Delesky
#jira UE-37829 - Dynamically changing an option in the style for an Editable Text Box or Multiline Editable Text Box will now update it correctly.
Change 3193183 on 2016/11/10 by Alexis.Matte
When doing FBX scene re-import, the new staticmesh asset was not mark as dirty. So the system was not saving the new asset.
#jira UE-38450
Change 3193419 on 2016/11/10 by Alex.Delesky
Fixing UnrealTournament build error in SUTChatEditBox
#jira none
Change 3193456 on 2016/11/10 by Alex.Delesky
Fix to build warning C6011 in SWidgetHierarchyItem
#jira none
Change 3193704 on 2016/11/10 by Simon.Tourangeau
Create Cinematic Camera when importing camera from fbx
#jira UE-37764
Change 3194593 on 2016/11/11 by Nick.Darnell
Slate - Fixing the window reshaping logic to avoid work if we don't need to do it, rather than external calls attempting to do the check (poorly). This appears to fix the problem with popup menus being slightly off in size, creating scrollbars. This also prevents constant reshaping of windows, due to people performing the wrong checks over and over, because they were comparing against non-truncated or rounded values against truncated/rounded values.
Change 3194595 on 2016/11/11 by Nick.Darnell
Slate - Simplifying the Menu Anchor popup code for new Windows, and correcting it so that it does not take non-DPI scale into account when calculating the size of the window. Otherwise, popup menus on say, the blueprint editor change size depending upon the scale of the area.
Change 3194830 on 2016/11/11 by Richard.TalbotWatkin
Optimized pasting brushes, so geometry is not constantly rebuilt for every brush that's added. This improves performance by a couple of orders of magnitude!
#jira UE-38524 - Moving many brushes to another level is very slow
Change 3194859 on 2016/11/11 by Alexis.Matte
Fix fbx skeletal mesh cleanup material crash
#jira UE-38525
Change 3195199 on 2016/11/11 by Nick.Darnell
UMG - Updating the bindable widget searching code in sequencer to use the WidgetTree traversing code, instead of something custom. This fixes the issue where it wasn't finding widgets inside of named slots.
#jira UE-38536
Change 3196579 on 2016/11/14 by Matt.Kuhlenschmidt
Guard against rendering crashes when a mesh with no lod resources is opened.
#jira UE-38520
Change 3196614 on 2016/11/14 by Nick.Darnell
Slate - The ignore incoming scale option for the scale box should now behave as expected in more cases. It required modifying the GetRelativeLayoutScale function to also pass down the prepass scale, otherwise it can't extract out the incoming scale ahead of time before text is measured ahead of time.
Change 3196624 on 2016/11/14 by Matt.Kuhlenschmidt
PR #2927: UE-38473: Shadow outline color uses shadow color (Contributed by projectgheist)
Change 3196770 on 2016/11/14 by Matt.Kuhlenschmidt
Ensure instead of crash when updating the selection pivot if a component's actor is not selected (this is non fatal)
#jira UE-38544
Change 3196863 on 2016/11/14 by Nick.Darnell
Slate - Allowing font outline settings to be specified in native code when constructing a SlateFontInfo via a ctor.
Change 3196900 on 2016/11/14 by Nick.Darnell
Slate - Upgrading some cases that were using the older version of GetRelativeLayoutScale.
Change 3196947 on 2016/11/14 by Matt.Kuhlenschmidt
Guard against crashes in the details panel when an OS message causes the tree to refresh when a previous event has invalidate the contents of the details panel.
#jira UE-36499, UE-38497
Change 3197028 on 2016/11/14 by Alexis.Matte
Shift Drag is not moving the camera when the user is dragging the 3 axis in same time.
#jira UE-38382
Change 3197167 on 2016/11/14 by Matt.Kuhlenschmidt
Removed pivot updating code per frame for now. It changes on selection so I cant see a reason why it is needed every frame
Change 3197227 on 2016/11/14 by Nick.Darnell
UMG/Blueprint - Exposing a way to set the default schema a blueprint editor derivation uses. Updating all widget blueprints to finally use the WidgetGraphSchema.
Change 3197239 on 2016/11/14 by Nick.Darnell
UMG - Improving the ReceiveHardwareInput option to limit exposure of widgets to hit testing that did not register for it.
Change 3197538 on 2016/11/14 by Nick.Darnell
UMG - Making some progress on converting the schema over on load, now appear to correctly be loading it in time to be able to perform node conversions to convert older nodes to newer nodes. Required changing the UBlueprint interface to have a virtual for upgrading nodes, that could be overriden in WidgetBlueprint to make sure the schemas have all been updated, as Serialize is too early, and PostLoad is too late.
Change 3198211 on 2016/11/15 by Matt.Kuhlenschmidt
Guard against reimport factories being deleted while in use
#jira UE-37577
Change 3198589 on 2016/11/15 by Alex.Delesky
#jira UE-38527 - Curves editors will no longer crash when trying to scale to fit after resetting the curve to its default values. This also fixes an issue where selecting a key before resetting the curve to default would sometimes cause the timestamp to display for a now-invalid key.
Change 3198783 on 2016/11/15 by Nick.Darnell
The Widget Component's Allow Hardware Input should now correctly convert coordinates coming from a viewport scaled up by the OS DPI scaling code.
Change 3198933 on 2016/11/15 by Jamie.Dale
Changing the package localization ID used by a package now marks the package as dirty
Change 3198942 on 2016/11/15 by Jamie.Dale
Clearing the package localization ID used by a package now marks the package as dirty
Change 3200241 on 2016/11/16 by Shaun.Kime
Now allowing users to customize the Class Browser/Picker to filter out developer folders as well as hide internal use classes via INI settings. A ViewOptions button has been added to allow users to choose whether or not these filters are enabled.
By default, internal only classes will be hidden and you will be limited to your own developer folder.
Example change to DefaultEngine.ini or BaseEngine.ini to hide some classes as internal use
[/Script/ClassViewer.ClassViewerProjectSettings]
+InternalOnlyPaths=(Path="/Engine/VREditor")
+InternalOnlyClasses=/Script/VREditor.VREditorBaseUserWidget
The InternalOnlyPaths example will hide any classes in the VREditor folder or subfolders.
The InternalOnlyClasses example will hide any classes that derive from VREditorBaseUserWidget.
Both can be edited by the project settings UI so no manual INI tweaking is required. Please go to Project Settings->Class Viewer->Class Visibility Management
#jira UE-38313
Change 3200621 on 2016/11/16 by Matt.Kuhlenschmidt
Adding missing change needed post merge from main
Change 3200968 on 2016/11/16 by Jamie.Dale
Fixed localization gather including texts that were instanced or otherwise unchanged
- It now uses the archetype when exporting to diff against the default property value, and will only gather text that has changed from the default.
- UMG widgets that are instanced from another UMG asset now only gather overridden values, and skip all child instances.
Change 3201033 on 2016/11/16 by Cody.Albert
Fixed source control to properly notify when files need to be checked out if a blueprint node is dragged
Change 3201829 on 2016/11/17 by Shaun.Kime
Fixing issue where GEngine is null in early game loading, potentially causing a crash.
Change 3201832 on 2016/11/17 by Matt.Kuhlenschmidt
Fix build warning
Change 3201835 on 2016/11/17 by Nick.Darnell
Slate - Making it so explictly focusing a slate user that does not yet exist, creates the slate user so that the state is properly maintained in prepartion for that user's arrival / input.
Change 3201947 on 2016/11/17 by Matt.Kuhlenschmidt
Fix streaming pause rendering starting a movie if a movie was already playing
Change 3202089 on 2016/11/17 by Nick.Darnell
Editor - When replacing references, code that was added in 2729702, was allowing redirectors to be created that then might be abandoned and not renamed later if there was a collision on object name. There's no problem if two objects have the same name, as long as they have different paths (except for classes). So now the code records object paths in a seperate set, and avoids reprocessing / and creating multiple redirectors for the same objects, instead of just using object name.
Change 3202139 on 2016/11/17 by Jamie.Dale
Fix for adjusting text spacing when lines are removed from TextLayouts
Change 3202398 on 2016/11/17 by Cody.Albert
Updated UMG Sequencer to properly fire events once per loop
Change 3202591 on 2016/11/17 by Shaun.Kime
Fixing coding standards violations.
Change 3202744 on 2016/11/17 by Shaun.Kime
StaticMeshComponent's OverriddenLightMapRes current displays the value it was set to, even when the bOverrideLightMapRes is false. The behavior within UStaticMeshComponent::GetLightMapResolution is to use the LightMapResolution on the StaticMesh member instead when bOverrideLightMapRes is false. The UI was adjusted to reflect the more accurate behavior.
#jira UE-38315
Change 3203009 on 2016/11/17 by Alex.Delesky
Backing out changelist 3170522 per request
#jira UE-33031
Change 3204077 on 2016/11/18 by Nick.Darnell
Automation - Updating several bits of the screenshot automation piece to work a bit better, show names if we have them, and show preview dialogs for images.
Change 3204086 on 2016/11/18 by Jamie.Dale
Added FGCObjectScopeGuard and TStrongObjectPtr as a convenient way to keep a UObject alive without having to add it to the root-set
Both use FGCObject internally to reference the object and keep it alive.
FGCObjectScopeGuard is designed to be lean and used as a guard for an existing pointer, whereas TStrongObjectPtr is more "full-fat" and designed to be a replacement for a raw-pointer.
You should prefer FGCObjectScopeGuard where possible. Also note that TStrongObjectPtr isn't supported by UHT/UPROPERTY as you should just use a raw-pointer in that case (it would do the same thing).
Change 3204189 on 2016/11/18 by Alex.Delesky
Removing content from dev folder
Change 3204205 on 2016/11/18 by Jamie.Dale
Fix for being unable to delete folders that still have sub-folders in the Content Browser
#jira UE-38752
Change 3204270 on 2016/11/18 by Simon.Tourangeau
Fix StaticMesh socket reimports
- socket transforms are now updated correctly on reimport
- deleted socket from source will be removed on reimport
- fix SocketManager refresh after import
#jira UE-38195
Change 3204283 on 2016/11/18 by Alex.Delesky
#jira UE-38314 - Undoing a change in the Preview Scene Viewer in Static Mesh Editor will now properly update changes within the scene itself.
Change 3205757 on 2016/11/21 by Jamie.Dale
PR #2923: Slate: Fixed bug where NumCharactersInGlyph was set incorrectly for TAB characters (Contributed by pluranium)
Change 3205759 on 2016/11/21 by Matt.Kuhlenschmidt
PR #2958: Handle legacy Windows exe icon location (Contributed by projectgheist)
Change 3205816 on 2016/11/21 by Matt.Kuhlenschmidt
PR #2956: Add plane to basicshapes (Contributed by tommybear)
Change 3205831 on 2016/11/21 by Jamie.Dale
Speculative fix for UE-38492
This guards against null objects being passed to FAssetDeleteModel, as well as objects that become null due to the GC that happens in FAssetDeleteModel.
#jira UE-38492
Change 3205869 on 2016/11/21 by Alex.Delesky
#jira UE-38227 - Trying to transform a component on a blueprint while a spline mesh actor has the transform gizmo active in the editor will no longer modify the spline mesh actor
Change 3205873 on 2016/11/21 by Alex.Delesky
#jira UE-38379 - When editing a row in the data table, clicking on a different row before committing changes will now switch to that row. This also fixes the issue of data tables constantly regenerating cell widgets on data changes.
Should also address the issue mentioned in #jira UE-32965
Change 3205954 on 2016/11/21 by Shaun.Kime
Reverting changes from 3202744 that allowed override properties to show up as real properties in the list. There are several detail panel customizations that don't deal with this properly and rather than force everyone to upgrade, we'll just modify the static mesh detail customization to do the work.
#jira UE-38315
Change 3205965 on 2016/11/21 by Alex.Delesky
#jira UE-38749, UE-38755 - Space and Enter should now fire button OnClicked events when a button is focused
PR #2942
Change 3207157 on 2016/11/22 by Chris.Wood
Added UnrealWatchdog tool, run by the Editor, to improve abnormal shutdown tracking.
[UE-32952] - Watchdog - Show CRC when reporting abnormal shutdowns in internal builds
Change 3207344 on 2016/11/22 by Matthew.Griffin
Added UnrealWatchdog to the Binary Release
Change 3207396 on 2016/11/22 by Ben.Marsh
Add UnrealWatchdog to UGS precompiled binaries for Odin and Orion.
Change 3207418 on 2016/11/22 by Matt.Kuhlenschmidt
Redid blur changes from Paragon Dev-General
Blur widget updates
- Renamed to SBackgroundBlur/UBackgroundBlur
- Split SBackgroundBlur out into its own file
- Added bApplyAlphaToBlur - when true, the strength of the blur is modulated by the widget alpha
- Updated BlurRadius to be TOptional, so we auto-calculate radius when it isn't set
- Added a UBackgroundBlurSlot, but left it unattached so it can be done in dev-editor (and update based on the engine version)
- Updated OrionBlurWidget to export dll symbols and set up default low quality fallback image
Change 3207443 on 2016/11/22 by Chris.Wood
Fix CIS error on Mac from my change CL 3207157
Change 3207702 on 2016/11/22 by Matt.Kuhlenschmidt
Added missing files
Change 3207958 on 2016/11/22 by Matt.Kuhlenschmidt
Guard against crash clearing scenes from the slate RHI renderer during movie loading code.
Change 3207962 on 2016/11/22 by Matt.Kuhlenschmidt
Added a guard against the rendering thread timing out while on a breakpoint by checking if the debugger is present before performing the timeout check
Change 3208194 on 2016/11/22 by Matt.Kuhlenschmidt
Actually call correct method of checking for a debugger
Change 3209139 on 2016/11/23 by Cody.Albert
Adding support for "Show Only Modified Properties" filter to DetailWidgetRow
Change 3209206 on 2016/11/23 by Jamie.Dale
Moving folders now removes the old folder from disk if it's empty
This had already been done for deleting folders, but moving them was missed.
#jira UE-11796
Change 3209281 on 2016/11/23 by Jamie.Dale
PR #2932: Fix crash while updating cursor highlight (Contributed by nakosung)
Change 3210383 on 2016/11/25 by Chris.Wood
Documented Crash Report Client analytics events
[UE-32787] - Document Crash Report Client analytics events in code
Change 3210385 on 2016/11/25 by Alexis.Matte
Make sure the combine mesh option of the staticmesh import is stored in staticmeshimportdata so the re-import know if it must re-import in combined or not
#jira UE-38925
Change 3210983 on 2016/11/28 by Matt.Kuhlenschmidt
Merging //UE4/Dev-Main to Dev-Editor (//UE4/Dev-Editor)
Change 3211001 on 2016/11/28 by Matt.Kuhlenschmidt
Fix build errors
Change 3211009 on 2016/11/28 by Matt.Kuhlenschmidt
PR #2960: Git plugin: multiline initial commit message and other connect screen cleanup (Contributed by SRombauts)
Change 3211017 on 2016/11/28 by Matt.Kuhlenschmidt
Fix ATSC texture compression quality tooltip
#jira UE-38996
Change 3211045 on 2016/11/28 by Matt.Kuhlenschmidt
Fix compile errors
Change 3211081 on 2016/11/28 by Matt.Kuhlenschmidt
Fix post process anim blueprints on skeletal meshes not being clearable
#jira UE-39017
Change 3211094 on 2016/11/28 by Matt.Kuhlenschmidt
Added more logging for jira UE-39000
#jira UE-39000
Change 3211284 on 2016/11/28 by Matt.Kuhlenschmidt
Redid fix for UE-35822 in dev-editor
Change 3211544 on 2016/11/28 by Matt.Kuhlenschmidt
Fix deprecation warning
Change 3211769 on 2016/11/28 by Matt.Kuhlenschmidt
Disable motion blur in editor views by default
#jira 38424
Change 3211776 on 2016/11/28 by Matt.Kuhlenschmidt
Fix PS4 compile errors
Change 3211949 on 2016/11/28 by Matt.Kuhlenschmidt
Details panels changes
- Added the ability to create groups within groups in details panel customizations
- Added the ability for struct customizations to add categories to the parent
Change 3211954 on 2016/11/28 by Matt.Kuhlenschmidt
Reorganized the post process settings so they appear as categories in the parent and so that they have better categories to make it clear what all the settings do.
Change 3213158 on 2016/11/29 by Jamie.Dale
Updated User Defined Enum display names to use real FText instances so they can have stable keys
This avoids the issue where the FText display names were cached from an FString, resulting in them having a different identity each time they were re-cached, which lead to localization and deterministic cooking issues.
User Defined Enums no longer use meta-data to store their display names, and instead use a TMap in UUserDefinedEnum to map the raw enum entry name to its friendly display name. In addition to this, the enum editor has been updated to use STextPropertyEditableTextBox, which will keep the keys used by the display names stable where possible (allowing for delta-localization and historic tracking).
#jira UE-26274
Change 3213172 on 2016/11/29 by Jamie.Dale
Adding experimental support for content hot-reloading
The underlying support for this is in CoreUObject (see ReloadPackage and ReloadPackages in UObjectGlobals.h/.cpp), with editor specific support being added via PackageTools::ReloadPackages, and also hooks registered with FCoreUObjectDelegates::OnPackageReloaded (eg, UEditorEngine::HandlePackageReloaded).
The basic workflow for package reloading is as follows:
1) The current package is renamed, and the RF_NewerVersionExists flag is added to it and all its sub-objects.
2) The new package is loaded. Should this fail the old package is renamed back, and the RF_NewerVersionExists flag is removed.
3) We generate a mapping between objects in the old package and objects in the new package (see UObject::BuildSubobjectMapping).
4) We enumerate every object in memory, and fix-up any serialized or ARO object pointers referencing something from the old package, to reference the equivalent object from the new package (or null if no object could be found).
5) We run a GC, and verify that the old package was purged (printing any lingering references if it wasn't).
For efficiency reasons package reloading may be run in batches (the editor uses batches of 500), as this allows package reloading to happen faster (as the reference fix-up and GC only happens once per-batch) at the cost of consuming more memory.
In-editor there is an experimental setting to enable content hot-reloading. When this is enabled the SCC operations in the Content Browser will use content hot-reloading, rather than attempt to unload the reload the package as separate operations (which often fails). In order to allow the external SCC program to overwrite the files on disk, the linkers are detached from any packages that will be replaced prior to invoking the internal SCC operation.
Change 3213428 on 2016/11/29 by Jamie.Dale
Implemented clamping on FTextInputMethodContext::SetSelectionRange to fix an issue where composition could provide an invalid range if the text was changed while composing
#jira UE-37746
Change 3213442 on 2016/11/29 by Jamie.Dale
Workaround for a bug in TSF based MS IMEs on Windows 8+
They omit calling GetSelection and instead expect QueryInsert to return the current selection range. This also seems to fix an issue where composition no longer worked once some text had been deleted.
#jira UE-37309
Change 3213603 on 2016/11/29 by Cody.Albert
Changed PanelWidget::RemoveChildAt to not release slate resources if the child is a UserWidget
#jira UE-39106
Change 3213633 on 2016/11/29 by Matt.Kuhlenschmidt
Attempt to fix includetool cis warning
Change 3215159 on 2016/11/30 by Jamie.Dale
Fixing MakeShared forward declaration
Change 3215220 on 2016/11/30 by Alex.Delesky
#jira UE-38698 - Deleting a widget from the Widget Blueprint Hierarchy (or adding a new widget to the hierarchy directly) will no longer cause the scroll bar to return to the top of the hierarchy view.
Change 3215390 on 2016/11/30 by Jamie.Dale
Maps now end a hot-reload batch
Change 3215394 on 2016/11/30 by Matt.Kuhlenschmidt
Updating guard to track down worlds that have no package as an outer
#jira UE-35712
Change 3215500 on 2016/11/30 by Alexis.Matte
Color grading widget customization
#jira UETOOL-1070
Change 3215519 on 2016/11/30 by Jamie.Dale
Fixed crash caused by using TextNamespaceUtil::EnsurePackageNamespace in 'game' mode
Change 3215556 on 2016/11/30 by Cody.Albert
Fixed issue where check-out toast would not disappear
#jira UE-39146
Change 3215585 on 2016/11/30 by Jamie.Dale
Adding an explicit ESPMode to MakeShared to try and placate Android
Change 3215737 on 2016/11/30 by Alexis.Matte
Fix build warning
Change 3215748 on 2016/11/30 by Matt.Kuhlenschmidt
Guard against crashes due to duplicate items in the scene outliner if actors somehow end up attached to themselves
#jira UE-35935
Change 3215758 on 2016/11/30 by Ben.Marsh
Add a 'Custom...' build type for Dev-Editor.
Change 3216183 on 2016/11/30 by Alexis.Matte
Fix win32 build error
Change 3216362 on 2016/11/30 by Matt.Kuhlenschmidt
Fix mac build error.
Change 3216828 on 2016/12/01 by Jamie.Dale
Fixing MakeShared on Android
#jira UE-39204
Change 3216839 on 2016/12/01 by Matt.Kuhlenschmidt
PR #2997: Spelling fix for Actor.h's description of bEnableAutoLODGeneration. (Contributed by hgamiel)
Change 3216842 on 2016/12/01 by Matt.Kuhlenschmidt
Remove the ensure when pushing absolute transforms onto a canvas matrix stack. We can handle this properly now by just adding the transform to the stack if the stack is empty
#jira UE-36496
Change 3216874 on 2016/12/01 by Matt.Kuhlenschmidt
Fix a number of keybindings problems
- Removed editor keybindings from project settings. It should not have been in there (already in editor settings)
- Removed duplicate registration of editor keybindings from editor settings
- Fixed memory leak regenerating keybinding widgets when ending PIE world.
- Cleaned up styling a bit to make keybindings widgets clearer.
#jira UE-39211, UE-38718
Change 3216881 on 2016/12/01 by Shaun.Kime
Added support for reroute nodes to the material editor. These nodes should function identically to their counterparts in Blueprints. A new UMaterialExpression, UMaterialExpressionReroute has been added. It inserts no HLSL code, and instead just moves along its input to find the real UMaterialExpression that it is ultimately bound to.
Since the material system serializes its data as UMaterialExpressions, a more generalized approach across graph types isn't available as only the visual UI layer is shared between blueprints and material graphs.
Also modified the material palette and popup material expression menu to allow for c++ based material name and description customization. If we choose to expand this, it would make the C++ material nodes more discoverable and understandable.
Manually pulled in CL 3200823 and 3208490 to get bugfixes around material attribute usage.
Adding an reroute node should function identically to Blueprints (ie double-click on connection to add or Utility\Add Reroute Node from palette). You should be able to add as many reroute nodes as you want in a chain. A reroute node that only has a connected output and not an input should behave as if there were no reroute node present (i.e. triggering constants on Add). It should be possible to use reroute nodes between any two supported node types if they are connectable in isolation. Where possible, we should show the same type mismatch errors that you'd see if connecting nodes directly (ie dragging a boolean constant into a reroute node connected to an Add should result in a Float/Bool mismatch). A reroute node is purely visual, it should have no impact on the final instruction count.
In the event that an incomplete reroute input was completed by dragging to an invalid type, I tried to guarantee that the compiler would generate the appropriate errors. This can happen because we only know the inputs to a given node in code. If a reroute node doesn't have an input, it does not know what type it should be. However, the compiler should still detect these bad cases and error out.
#jira UE-6882
Change 3216968 on 2016/12/01 by Jamie.Dale
Syncing via source control now unloads (rather than reloads) packages that have been deleted from disk
Change 3216970 on 2016/12/01 by Jamie.Dale
Reverting files now uses hot-reloading (if enabled)
Change 3217233 on 2016/12/01 by Jamie.Dale
You can now choose to reload dirty packages via content hot-reloading
This will revert any in-memory changes to the asset, which may be useful when you want to roll it back to its initial state without restarting the editor.
Change 3217244 on 2016/12/01 by Matt.Kuhlenschmidt
WindowsMoviePlayer: Initialize the movie player texture on first frame regardless of whether or not the decoder has a sample ready. This prevents a white texture from showing up for a frame.
Change 3217466 on 2016/12/01 by Jamie.Dale
Fixed a bug where FTextFormatData::ConditionalCompile_NoLock would always compile the text even if it was up-to-date
Change 3217572 on 2016/12/01 by Jamie.Dale
Using FText::Format with an invalid argument no longer strips any associated argument modifier data from the resultant formatted text
Change 3217688 on 2016/12/01 by Jamie.Dale
Fixed crash reloading the active world package when it was dirty
#jira UE-39250
Change 3217978 on 2016/12/01 by Matt.Kuhlenschmidt
Fixed crash where the slate renderer holds into scenes during maps are loaded causing access to deleted data after the load is complete. We clean up cached scenes each frame but if slate doesnt tick the scenes are not cleaned up. This change moves the CleanupScenes code to a location that is called each tick and during map loads
#jira UE-39243
Change 3218834 on 2016/12/02 by Alexis.Matte
move some scene conversion import fbx options to staticmesh, skeletalmesh and animation import data so the re-import will have acces to those import options
#jira UE-38672
Change 3218838 on 2016/12/02 by Matt.Kuhlenschmidt
Fixed editing static mesh settings manually in the details panel not visually refreshing the collision primitives
#jira UE-39246
Change 3218864 on 2016/12/02 by Matt.Kuhlenschmidt
Fixed basic cube shape having a convex hull instead of a box for collision
Change 3218900 on 2016/12/02 by Matt.Kuhlenschmidt
Move static mesh collision properties to the collision category
Change 3219143 on 2016/12/02 by Michael.Dupuis
#jira UE-39124 We can now place single mesh at a time
#jira UE-39125 We can paint on the current level of the level containing the mesh we're painting on
Change the way GetRandomVectorInBrush generate the Start/end position to use the BrushNormal instead of the BrushDirection
Change 3219199 on 2016/12/02 by Matt.Kuhlenschmidt
Fixed a crash when changing Physical Surface Name and reassigning it on a physical material that uses it
#jira UE-37452
Change 3219358 on 2016/12/02 by Alexis.Matte
Fix fbx automation tests
Change 3219362 on 2016/12/02 by Alexis.Matte
Support for MAX multisub material
#jira UE-38467
#jira UE-38471
Change 3219774 on 2016/12/02 by Jamie.Dale
PR #2888: Add a setting to allow the Sources Panel to expand by default (Contributed by BhaaLseN)
Change 3219793 on 2016/12/02 by Jamie.Dale
SWindow now restores focus back to the widget that last had focus when it was deactivated
#jira UE-38965
Change 3221272 on 2016/12/05 by Matt.Kuhlenschmidt
UI background blur tweaks
- Adjust the downsample amount for lower kernel sizes
- Flush post process memory used by the blur when switching levels
Change 3221273 on 2016/12/05 by Matt.Kuhlenschmidt
Added guards against accesing scene caching methods of the slate resource manager on the rendering thread
Change 3221392 on 2016/12/05 by Matt.Kuhlenschmidt
Added basic support for playing safe movies very early in the engine startup sequence. A movie is considered safe to play very early if it is just a movie file and not some complex slate based UI loading screen
no platform actually supports this yet as none of the movie streamer modules are loaded early enough and many platforms cant render this early
Set PLATFORM_SUPPORTS_EARLY_MOVIE_PLAYBACK to 1 for your platform if it supports early loading
Change 3221831 on 2016/12/05 by Jamie.Dale
Fixed UNumericProperty::ReadEnumAsUint8 not considering enum redirects when resolving the name
Change 3221986 on 2016/12/05 by Jamie.Dale
Added an "Inline" font loading method
This can be used in a cooked build to store the font data within the Font Face asset itself (rather than a separate .ufont file) in order to guarantee a hitch free load, at the cost of potentially using more memory up-front.
The existing "PreLoad" loading method has been renamed to "LazyLoad" to better reflect what it actually does.
This also fixes a bug where FFontData::Serialize could try and use the referenced Font Face asset before it had been fully loaded.
Change 3222065 on 2016/12/05 by Jamie.Dale
Added log warning to detect hitches when lazily loading fonts
Change 3222225 on 2016/12/05 by Jamie.Dale
Fixing style-set typo
#jira UE-39333
Change 3223169 on 2016/12/06 by Matt.Kuhlenschmidt
Fix autosaving prompting to check out built data if the built data asset was dirty during autosave
#jira UE-39295
Change 3223184 on 2016/12/06 by Alexis.Matte
Support LOD group and combine mesh
#jira UE-1088
Change 3223212 on 2016/12/06 by Alex.Delesky
#jira UE-39260 - TMap and TSet struct values should now be editable when editing a component's properties.
Change 3223215 on 2016/12/06 by Alex.Delesky
#jira UE-38594 - The Widget Interaction Component will now default to tick while paused. Widget Components now contain a flag that will either allow or disallow interacting with them while the game is paused, which defaults to false.
Change 3223249 on 2016/12/06 by Matt.Kuhlenschmidt
Added back in missing code that was lost in a merge
Change 3223271 on 2016/12/06 by Alex.Delesky
#jira UE-38786 - The Color Picker will no longer stretch across the screen when exceptionally long strings are either entered or pasted inside one of the spin boxes. This also fixes an issue with editable text fields not validating string input on paste and will now prevent invalid data from being pasted inside a editable text block (e.g., pasting the string "I am a float" inside a spin box).
Change 3223275 on 2016/12/06 by Matt.Kuhlenschmidt
Fixed a race condition in WEX where the loading screen would render an external UI window that was referencing deleted materials
Change 3223276 on 2016/12/06 by Alexis.Matte
Staticmesh socket fbx import.
#jira UE-38284
Change 3223363 on 2016/12/06 by Alexis.Matte
Reimport must ask for missing file when re-importing a old asset that has no source files
#jira UE-39356
Change 3223423 on 2016/12/06 by Chris.Wood
Added option to place canvas panel children in same layer using explicit ZOrder setting.
[UETOOL-935] - Figure out a solution for canvas panel batching
Change 3223551 on 2016/12/06 by Alexis.Matte
UI mesh paint optimization, the slider now do not destroy the paint geometry adapter if the painted LOD has not change
#jira UE-39383
Change 3223844 on 2016/12/06 by Matt.Kuhlenschmidt
Back out change to change the defaults on vector and scalar expressions because this affects existing expressions that have not overridden the default
Change 3223880 on 2016/12/06 by Matt.Kuhlenschmidt
Update doc links for maps and sets
Change 3224746 on 2016/12/07 by Michael.Dupuis
#jira UE-39409 : Was'nt calling EndFoliageBrushTrace causing the transaction to never finish causing both jiras
#jira UE-39410 : Was'nt calling EndFoliageBrushTrace causing the transaction to never finish causing both jiras
Change 3224826 on 2016/12/07 by Michael.Dupuis
#jira UE-39095 : If a tool is active we simply consider inputs as handled to prevent this kind of behavior
Change 3224827 on 2016/12/07 by Simon.Tourangeau
Improve search for material match on fbx mesh import
- Add option to specify material search locations on mesh import
- On Import it will now perform a first match material search in the following order (suppose we are importing into /Game/Content/Assets/Meshes/MyMesh)
- Using Local as a search location will provide same behavior as before (search non recursively in /Game/Content/Assets/Meshes)
- If option is UnderParent or more, search recursively in destination folder (search recursively in /Game/Content/Assets/Meshes)
- If option is UnderParent or more, then recursively from parent folder (search recursively in /Game/Content/Assets)
- If option is UnderRoot or more, search recursively from root folder (search recursively in /Game)
- If option is AllAssets, search in every asset folder (Search recursively everywhere)
#jira UE-39020
Change 3224989 on 2016/12/07 by Chris.Wood
Fixed black callstack text in CrashReportClient.
[UE-38987] - CrashReportClient Callstack text is rendering Black
Change 3225142 on 2016/12/07 by Jamie.Dale
Added collapsing methods when exporting text for translation
You can now choose how to collapse your text for translation from three export modes:
- ELocalizedTextCollapseMode::IdenticalTextIdAndSource - Collapse texts with the same text identity (namespace + key) and source text (default 4.15+ behavior).
- ELocalizedTextCollapseMode::IdenticalPackageIdTextIdAndSource - Collapse texts with the same package ID, text identity (namespace + key), and source text (4.14 behavior).
- ELocalizedTextCollapseMode::IdenticalNamespaceAndSource - Collapse texts with the same namespace and source text (legacy pre-4.14 behavior).
The new default allows you to re-use the same text identity in different packages without having to translate the same text multiple times, and you can also now opt to get back to the legacy pre-4.14 behavior of collapsing all identical texts within the same namespace (in case you were reliant on that behavior).
You can change this setting via the Localization Dashboard, or add it to your gather configs as "LocalizedTextCollapseMode" (this needs to go into any configs that deal with exporting or importing PO files - the default if nothing is specified is "ELocalizedTextCollapseMode::IdenticalTextIdAndSource").
Change 3225509 on 2016/12/07 by Simon.Tourangeau
Static analysis fix, false positive
Change 3225859 on 2016/12/07 by Matt.Kuhlenschmidt
Fix broken physical surface details customization
- Scrolling now works properly
- Edit boxes dont change size while editing
- properly checks out or makes file writable once an edit has been made
#jira UE-39279
Change 3226840 on 2016/12/08 by Jamie.Dale
Fixing a bug in FText formatting where it would ignore the rebuild and Rebuild as Source arguments for the format string itself
#jira OPP-6485
Change 3226940 on 2016/12/08 by Alexis.Matte
Avoid changing the W value when playing with the color grading wheel.
#jira UE-39473
Change 3227814 on 2016/12/08 by Matt.Kuhlenschmidt
Temp disable lazy load font warnings to prevent infinite recursion crashes at startup
Change 3228010 on 2016/12/08 by Matt.Kuhlenschmidt
Fix for iOS compiling
Change 3228597 on 2016/12/09 by Jamie.Dale
Removed hard dependency between UFont and UFontFace during struct serialization as it doesn't work with the EDL
#jira UE-39529
Change 3228607 on 2016/12/09 by Jamie.Dale
Fixed infinite recursion caused by logging while the output log font was still being loaded
#jira UE-39523
Change 3228770 on 2016/12/09 by Jamie.Dale
Fixed UUserDefinedEnum::GetEnumText
it was using GetNameByIndex (which includes C++ scoping), rather than GetEnumName (which doesn't). This was causing all name look-ups to fail.
#jira UE-39531
Change 3228785 on 2016/12/09 by Matt.Kuhlenschmidt
Fix static analysis warning
[CL 3229477 by Matt Kuhlenschmidt in Main branch]
2016-12-09 15:05:28 -05:00
if ( EditorModeCommand . IsValid ( ) & & ! LevelEditorCommands - > IsActionMapped ( Commands . EditorModeCommands [ CommandIndex ] ) )
2014-03-14 14:13:41 -04:00
{
LevelEditorCommands - > MapAction (
Copying //UE4/Dev-Editor to //UE4/Dev-Main (Source: //UE4/Dev-Editor @ 3228984)
#lockdown Nick.Penwarden
#rb none
==========================
MAJOR FEATURES + CHANGES
==========================
Change 3168749 on 2016/10/20 by Richard.TalbotWatkin
Fixed bug in csgRebuild where dynamic brushes from the whole world are rebuilt instead of just those from the current level. csgRebuild is supposed to act only on the current level's geometry.
#jira UE-37376 - csgRebuild builds dynamic brushes from the whole world, instead of just the current level
Change 3169740 on 2016/10/20 by Nick.Darnell
Automation - Removing old screenshots, working on new naming convention.
Change 3169796 on 2016/10/20 by Nick.Darnell
Automation - Adding new screenshots.
Change 3169800 on 2016/10/20 by Nick.Darnell
Automation - Working on improvements to screenshot comparions, now using the Unique device id instead of adapter name. Working on better metadata based matching for which screenshot to use, stubbing in support for adding alternative versions of screenshots.
Change 3169901 on 2016/10/20 by Nick.Darnell
Automation - More fixes / refinements to the way we add alternatives and replace old versions of screenshots.
Change 3169926 on 2016/10/20 by Cody.Albert
Added extension point for level editor viewport's Show and Camera menus
Change 3170053 on 2016/10/20 by Cody.Albert
Back out changelist 3169926
Change 3170067 on 2016/10/20 by Cody.Albert
Added extension point for level editor viewport's Show and Camera menus
Change 3170382 on 2016/10/21 by Michael.Dupuis
#jira UE-36585 Added Copy/Paste to Material list/item, section list/item to StaticMeshEditor and Persona Editor
Change 3170520 on 2016/10/21 by Alex.Delesky
#jira UE-36510 - You can now toggle if combo boxes can receive keyboard focus from the Widget Blueprint
Change 3170522 on 2016/10/21 by Alex.Delesky
#jira UE-33031 - Buttons will no longer remained in a hovered state on mobile devices if the user drags their finger into a button, and then lifts their finger without dragging it outside of the button.
Change 3170524 on 2016/10/21 by Alex.Delesky
#jira UE-25591 - Static Mesh LODs can now be removed from the editor without a mesh reduction tool like Simplygon configured for use in the editor.
Change 3170530 on 2016/10/21 by Alex.Delesky
Moved the HasKey method from UMapProperty to FScriptMapHelper, and moved the HasElement property from USetProperty to FScriptSetHelper
#jira none
Change 3170768 on 2016/10/21 by Cody.Albert
Back out changelist 3170067
Change 3170795 on 2016/10/21 by Nick.Darnell
JsonObjectConverter - By default UStructToJsonAttributes now skips transient properties.
Change 3170797 on 2016/10/21 by Nick.Darnell
Automation - Fixing several warnings dealing with fbx testing.
Change 3170921 on 2016/10/21 by Nick.Darnell
Automation - Fixing more warnings with FBX tests.
Change 3171109 on 2016/10/21 by Cody.Albert
Added extension point for level editor viewport Show menu
Change 3171812 on 2016/10/24 by Jamie.Dale
Back out changelist 3163044
This broke wrapping for Japanese and Chinese.
Change 3171842 on 2016/10/24 by Michael.Dupuis
#jira UE-36400
Name each Parameter uniquely either from copy/paste of any creation menu
Changed the default value for Scalar and Vector Parameter to 1 and 1,1,1,1
Added a Promote To Parameter when clicking on an Input pin that will generate proper node type based on type pin type
When editing a color property update the material expression preview
Change 3171958 on 2016/10/24 by Alex.Delesky
#jira UE-37444 - The Primitive Stats browser (and other statistics browsers) can now sort columns based on singular objects or object types as well as texture dimensions.
Change 3171969 on 2016/10/24 by Nick.Darnell
Slate - Adding some code to prevent crashes if bogus user indexes are passed into SlateApplications GetUser functions.
Change 3171970 on 2016/10/24 by Matt.Kuhlenschmidt
PR #2885: Fixed Stretched Landscape Editor Icons (Contributed by teessider)
Change 3172035 on 2016/10/24 by Alex.Delesky
Fix to build warning for 3171970
#jira none
Change 3172078 on 2016/10/24 by Michael.Dupuis
#jira UE-37626 Fetch property node from property handle if there is no property editor
Change 3172143 on 2016/10/24 by Jamie.Dale
Line-break iterators will now avoid breaking words in Hangul
The default behavior for wrapping Hangul is to use Western-style wrapping (where words are kept as-is) rather than East Asian-style (where words are broken by syllables). This behavior can be controlled by the Localization.HangulTextWrappingMethod CVar in-case you were dependant on the old behavior, but since modern Hangul uses spaces, the per-word wrapping is preferred by native speakers.
Change 3172418 on 2016/10/24 by Michael.Dupuis
Fixed Static Analysis error
Change 3173389 on 2016/10/25 by Michael.Dupuis
#jira UE-9284 Make the UI appear only on hover and change icons size
Change 3173918 on 2016/10/25 by Alex.Delesky
#jira UE-37753 - WidgetBlueprints saved without a root widget (e.g., by deleting the starting Canvas panel) will no longer set a Canvas panel as the root widget. New WidgetBlueprints will still contain a Canvas Panel when created.
Change 3173966 on 2016/10/25 by Alex.Delesky
#jira UE-20891 - SpinBox now receives MouseMove events while simulating touch events using the mouse.
Change 3174847 on 2016/10/26 by Alex.Delesky
#jira UE-36371 - Windowed Fullscreen will now expand to fit the entirety of the current window and will not be displaced when the Windows taskbar is docked on the top or left sides of the screen.
Change 3174916 on 2016/10/26 by Alexis.Matte
When re-importing fbx file, always log to the message log.
#jira UE-37639
Change 3174940 on 2016/10/26 by Alex.Delesky
Back out changelist 3174847 at request of platforms team. Was fixed on Main.
Change 3174995 on 2016/10/26 by Matt.Kuhlenschmidt
Import commandlet fixes
- Fixed crash when source control could not be contacted
- Fixed assets not importing correctly if they depended on other assets in a previous import group within the automated import
Change 3175217 on 2016/10/26 by Alexis.Matte
The FBX reimport animation code now return false if there was an error when importing
#jira UE-37755
Change 3175728 on 2016/10/26 by Alexis.Matte
Log a message when importing a skeletal mesh with more bone influence then the maximum supported
#2875
#jira UE-37613
Change 3177997 on 2016/10/28 by Nick.Darnell
Editor - Prevent re-entrant calls when EndPlayMap is called.
Change 3178429 on 2016/10/28 by Nick.Darnell
Engine - Bumping BaseEngine.ini to IOS_8, MinimumiOSVersion, as that is now the minimum allowed to fix an error on startup. Tweaking the location of where some importing files go when they're imported.
Change 3179774 on 2016/10/31 by Matt.Kuhlenschmidt
Guard against bad render targets in Slate RHI
#jira UE-37905
Change 3179900 on 2016/10/31 by Matt.Kuhlenschmidt
Added logging to track https://jira.it.epicgames.net/browse/UE-37900
#jira UE-37900
Change 3179920 on 2016/10/31 by Alex.Delesky
Removing LODs from skeletal meshes is now a transacted action and can be undone. Related to UE-25591.
#jira none
Change 3179921 on 2016/10/31 by Alex.Delesky
#jira UE-37725 - Adding safeguard against a potential crash in FTextureEditorViewportClient caused by a texture not having a valid texture resource
Change 3180119 on 2016/10/31 by Alexis.Matte
fbx importer avoid asset creation name clash
#jira UE-35100
Change 3181905 on 2016/11/01 by Alexis.Matte
Paint tool now allow users to paint on any vertex if they need it.
#jira UE-8372
Change 3182355 on 2016/11/01 by Alexis.Matte
We now support FBX LODs export for the asset exporter from the content browser.
#jira UE-35302
Change 3183286 on 2016/11/02 by Alexis.Matte
Make sure static mesh build settings are set properly when we re-import with different options. Specifically the normals, tangents and tangent space are dependent on the import options.
#jira UE-37520
Change 3183567 on 2016/11/02 by Shaun.Kime
#jira UE-38019
The Content Browser's View Options originally included both Engine and GameProject plugins only when clicking Show Plugin Content. Since there are quite a few Engine plugins, this produces quite a bit of content in the Folders panel. Most of the Engine plugins have classes or content that isn't really meant to be user-facing, so the experience of hunting for a game plugin-in's content is poor.
The new behavior is that GameProject plugins are controlled by the "View Plugin Content" option. In order to see the Engine plugins you'll need both Engine Content and Plugin Content checkboxes enabled. By default, the editor should enable the "View Plugin Content" checkbox since it should be limited to just the content in the game's Plugins folder.
Change 3184002 on 2016/11/02 by Jamie.Dale
Fixed crash during TSF IME shutdown
#jira UE-38073
Change 3185126 on 2016/11/03 by Shaun.Kime
Some of the plugin templates define Editor specific plugins. If created and a Standalone build is run, the application will attempt to link in editor libraries in game mode and will run into issues when you hit any key. The fix is to specify an Editor module description for these plugins.
Additionally, there appears to be a mismatch in pathing types when dealing with plugin path and GameDir. Plugin path is absolute and GameDir is relative by default. We check to see if the gameDir is a subset of the plugin path, but this fails due to the mismatch. The fix is to force both to be absolute (enforcing normalization of both paths as well).
#jira UE-38065
#jira UE-37645
Change 3185278 on 2016/11/03 by Nick.Darnell
UMG - Fixing some issues with HDPI mode in the widget designer.
Change 3185355 on 2016/11/03 by Nick.Darnell
UMG - Widget Component's Draw At Desired size now should also work correctly if it's in screenspace.
Change 3185510 on 2016/11/03 by Nick.Darnell
UMG - Restoring the ability of the Widget Component to directly recieve hardware input. The Widget Interaction Component is great for just about every interaction use case - the one it's not is when you actually want the 3D widgets to take focus, and to be able to be typed directly into by the user. The kind of situation where you might want to use them as a 3D menu, in a non-VR environment. By default - Widget Components will not behave in this manner, but you can now use the option bReceiveHardwareInput to enable the ability for Widget Components to function more like a widget in the screenspace of the viewport.
Slate - The scene viewport now correctly takes scale into account when drawing the 'software cursor', this fixes an issue with HDPI mode, and the cursor not being restored to the same location after moving a gizmo.
Change 3185514 on 2016/11/03 by Nick.Darnell
UMG - Fixing some HDPI mode problems with widget position calculation when projecting world to viewport / screen, absolute spaces.
Change 3185652 on 2016/11/03 by Nick.Darnell
Slate - Exposing a cached version of the widget geometry that comes in during Tick. Also performed a bit of optimization work on the class to make some space for the geometry object we now cache, by compacting the pointer event delegates we were storing.
Change 3185952 on 2016/11/03 by Nick.Darnell
UMG - Fixing another build error relating to local widget geometry.
Change 3185953 on 2016/11/03 by Nick.Darnell
UMG - Fixing a mac compiler warning.
Change 3186886 on 2016/11/04 by Matt.Kuhlenschmidt
Fixed collapse all hiding everything in the settings editors
#jira UE-38151
Change 3187014 on 2016/11/04 by Matt.Kuhlenschmidt
Fixed new assets opening in a minimized window not restoring that window.
Change 3187026 on 2016/11/04 by Shaun.Kime
UUnrealEdEngine::edactDeleteSelected calls out to FBlueprintEditorUtils::FindActorsThatReferenceActor. This checks the entire world for each actor to be deleted. When you have tens of thousands of actors in the world and are deleting tens of thousands of actors, this can take minutes. This change amortizes the cost of finding the actor references once for the world and for each actor to be deleted, we query the cached list of references. This brings the deletion time down to seconds.
#jira UE-38094
Change 3187073 on 2016/11/04 by Nick.Darnell
Automation - Changing the code that writes out json to force no BOM as is the json standard.
Change 3187113 on 2016/11/04 by Jamie.Dale
Removed double look-up in UTextProperty::SerializeItem
Change 3187114 on 2016/11/04 by Jamie.Dale
Feedback context now uses culture correct percentage formatting
Change 3187273 on 2016/11/04 by Alexis.Matte
Fbx importer for static mesh, make sure that we order the materials array to follow the section order.
Add also some fbx automation test
#jira UE-38242
Change 3187276 on 2016/11/04 by Matt.Kuhlenschmidt
Fix crash when an actor picker shows up in the struct editor. Structs do not have root property nodes
#jira UE-38268
Change 3187463 on 2016/11/04 by Nick.Darnell
Automation - Updating the blessed screenshots, and fixing the BOM issues with the json.
Change 3188638 on 2016/11/07 by Shaun.Kime
Making the UI for adding/removing parameters in custom blueprint functions behave similarly to the struct creation dialog in the content browser. There are no longer "New" buttons at the bottom of the panel and the parameter moving controls have been moved onto the main parameter row instead of being nested inside the collapse panel. A tooltip will now let you know the full parameter name and type when you hover over the editable name field. Made the move up/down icons more legible by increasing contrast between the arrow and the light grey background.
#jira UE-38240
Change 3189056 on 2016/11/07 by Nick.Darnell
Core/Editor - UObject::IsAsset() now returns false if the outermost package is RF_Transient. Also updating the creation of the transient package to be RF_Transient. This makes it so transient packages created by UMG or some other editor for things like previewing a streamed in level instance, no longer show up in the content browser.
Change 3189147 on 2016/11/07 by Jamie.Dale
Fixed potential race-condition where a UFont object could be GC'd while the loading screen was using the font cache
This queues up the pending removal until it's safe to execute it (by a thread that fully owns Slate rendering).
#jira UE-38309
Change 3189344 on 2016/11/07 by Matt.Kuhlenschmidt
Merging //UE4/Dev-Main to Dev-Editor (//UE4/Dev-Editor)
Change 3189380 on 2016/11/07 by Matt.Kuhlenschmidt
Guard against null object when creating details panel
Change 3190017 on 2016/11/08 by Alexis.Matte
FrontX support for scene importer
#jira UETOOL-1061
Change 3190058 on 2016/11/08 by Matt.Kuhlenschmidt
Fixed misaligned button in the new blueprint class dialog
Change 3190086 on 2016/11/08 by Nick.Darnell
UMG - Fixing the calculation for widget componets screen position if the camera aspect is constrained.
Change 3190159 on 2016/11/08 by Nick.Darnell
UMG - We no longer also take the platform DPI scale into account when applying UMG's UI scale. Since UMG already provides a DPI scaling system, compounding it with the native OSes produces undesirable results, since the DPI scale curve does not take into account some unknown platform scale set by a user.
Change 3190161 on 2016/11/08 by Nick.Darnell
UMG - UWidget is now Blueprintable. Improving some doc.
Change 3190545 on 2016/11/08 by Alexis.Matte
Support scaling when exporting skeleton (bind pose) to FBX
#jira UE-36120
Change 3191614 on 2016/11/09 by Simon.Tourangeau
Fix cooking crash after fbx import of a scene without meshes
#jira UE-38264
Change 3191659 on 2016/11/09 by Simon.Tourangeau
Cleanup Persona LOD section button layout
#jira UE-38339
Change 3191882 on 2016/11/09 by Jamie.Dale
Changed FBlackboardKeySelector::AddObjectFilter to use MakeUniqueObjectName so it generates more stable names, rather than relying on a static counter.
Also updated FBlackboardKeySelector::AddClassFilter, FBlackboardKeySelector::AddEnumFilter, and FBlackboardKeySelector::AddNativeEnumFilter to use MakeUniqueObjectName to ensure they don't conflict.
Change 3192092 on 2016/11/09 by Jamie.Dale
Deleting some test assets that were accidentally checked in, some of which no longer load
Change 3192281 on 2016/11/09 by Alex.Delesky
#jira UE-31866 - Widget Blueprints will no longer experience compile issues when dragging widgets between the hierarchy views of different Widget Blueprints.
Change 3192365 on 2016/11/09 by Shaun.Kime
Adding support for MaterialParameterCollections to Slate UI objects. For reasons of Blueprint controls amongst other things, MPC's are owned by individual UWorlds and transferred over to their respective Scenes. Since we want the latest values from those in-UWorld representations, Slate needs to know about the Scene on the render thread to properly map the materials to their MPC inputs. This involved keeping Scene arrays synchronized between the game logic thread and render thread, and adding a Scene index field to each batched draw element in Slate. SceneViewports are now responsible for registering their associated Scenes with the SlateRenderer. Since RetainerBoxes also draw their content as well, they too need to register their Scenes.
#jira UE-19022
Change 3192494 on 2016/11/09 by Alex.Delesky
#jira UE-37829 - Dynamically changing an option in the style for an Editable Text Box or Multiline Editable Text Box will now update it correctly.
Change 3193183 on 2016/11/10 by Alexis.Matte
When doing FBX scene re-import, the new staticmesh asset was not mark as dirty. So the system was not saving the new asset.
#jira UE-38450
Change 3193419 on 2016/11/10 by Alex.Delesky
Fixing UnrealTournament build error in SUTChatEditBox
#jira none
Change 3193456 on 2016/11/10 by Alex.Delesky
Fix to build warning C6011 in SWidgetHierarchyItem
#jira none
Change 3193704 on 2016/11/10 by Simon.Tourangeau
Create Cinematic Camera when importing camera from fbx
#jira UE-37764
Change 3194593 on 2016/11/11 by Nick.Darnell
Slate - Fixing the window reshaping logic to avoid work if we don't need to do it, rather than external calls attempting to do the check (poorly). This appears to fix the problem with popup menus being slightly off in size, creating scrollbars. This also prevents constant reshaping of windows, due to people performing the wrong checks over and over, because they were comparing against non-truncated or rounded values against truncated/rounded values.
Change 3194595 on 2016/11/11 by Nick.Darnell
Slate - Simplifying the Menu Anchor popup code for new Windows, and correcting it so that it does not take non-DPI scale into account when calculating the size of the window. Otherwise, popup menus on say, the blueprint editor change size depending upon the scale of the area.
Change 3194830 on 2016/11/11 by Richard.TalbotWatkin
Optimized pasting brushes, so geometry is not constantly rebuilt for every brush that's added. This improves performance by a couple of orders of magnitude!
#jira UE-38524 - Moving many brushes to another level is very slow
Change 3194859 on 2016/11/11 by Alexis.Matte
Fix fbx skeletal mesh cleanup material crash
#jira UE-38525
Change 3195199 on 2016/11/11 by Nick.Darnell
UMG - Updating the bindable widget searching code in sequencer to use the WidgetTree traversing code, instead of something custom. This fixes the issue where it wasn't finding widgets inside of named slots.
#jira UE-38536
Change 3196579 on 2016/11/14 by Matt.Kuhlenschmidt
Guard against rendering crashes when a mesh with no lod resources is opened.
#jira UE-38520
Change 3196614 on 2016/11/14 by Nick.Darnell
Slate - The ignore incoming scale option for the scale box should now behave as expected in more cases. It required modifying the GetRelativeLayoutScale function to also pass down the prepass scale, otherwise it can't extract out the incoming scale ahead of time before text is measured ahead of time.
Change 3196624 on 2016/11/14 by Matt.Kuhlenschmidt
PR #2927: UE-38473: Shadow outline color uses shadow color (Contributed by projectgheist)
Change 3196770 on 2016/11/14 by Matt.Kuhlenschmidt
Ensure instead of crash when updating the selection pivot if a component's actor is not selected (this is non fatal)
#jira UE-38544
Change 3196863 on 2016/11/14 by Nick.Darnell
Slate - Allowing font outline settings to be specified in native code when constructing a SlateFontInfo via a ctor.
Change 3196900 on 2016/11/14 by Nick.Darnell
Slate - Upgrading some cases that were using the older version of GetRelativeLayoutScale.
Change 3196947 on 2016/11/14 by Matt.Kuhlenschmidt
Guard against crashes in the details panel when an OS message causes the tree to refresh when a previous event has invalidate the contents of the details panel.
#jira UE-36499, UE-38497
Change 3197028 on 2016/11/14 by Alexis.Matte
Shift Drag is not moving the camera when the user is dragging the 3 axis in same time.
#jira UE-38382
Change 3197167 on 2016/11/14 by Matt.Kuhlenschmidt
Removed pivot updating code per frame for now. It changes on selection so I cant see a reason why it is needed every frame
Change 3197227 on 2016/11/14 by Nick.Darnell
UMG/Blueprint - Exposing a way to set the default schema a blueprint editor derivation uses. Updating all widget blueprints to finally use the WidgetGraphSchema.
Change 3197239 on 2016/11/14 by Nick.Darnell
UMG - Improving the ReceiveHardwareInput option to limit exposure of widgets to hit testing that did not register for it.
Change 3197538 on 2016/11/14 by Nick.Darnell
UMG - Making some progress on converting the schema over on load, now appear to correctly be loading it in time to be able to perform node conversions to convert older nodes to newer nodes. Required changing the UBlueprint interface to have a virtual for upgrading nodes, that could be overriden in WidgetBlueprint to make sure the schemas have all been updated, as Serialize is too early, and PostLoad is too late.
Change 3198211 on 2016/11/15 by Matt.Kuhlenschmidt
Guard against reimport factories being deleted while in use
#jira UE-37577
Change 3198589 on 2016/11/15 by Alex.Delesky
#jira UE-38527 - Curves editors will no longer crash when trying to scale to fit after resetting the curve to its default values. This also fixes an issue where selecting a key before resetting the curve to default would sometimes cause the timestamp to display for a now-invalid key.
Change 3198783 on 2016/11/15 by Nick.Darnell
The Widget Component's Allow Hardware Input should now correctly convert coordinates coming from a viewport scaled up by the OS DPI scaling code.
Change 3198933 on 2016/11/15 by Jamie.Dale
Changing the package localization ID used by a package now marks the package as dirty
Change 3198942 on 2016/11/15 by Jamie.Dale
Clearing the package localization ID used by a package now marks the package as dirty
Change 3200241 on 2016/11/16 by Shaun.Kime
Now allowing users to customize the Class Browser/Picker to filter out developer folders as well as hide internal use classes via INI settings. A ViewOptions button has been added to allow users to choose whether or not these filters are enabled.
By default, internal only classes will be hidden and you will be limited to your own developer folder.
Example change to DefaultEngine.ini or BaseEngine.ini to hide some classes as internal use
[/Script/ClassViewer.ClassViewerProjectSettings]
+InternalOnlyPaths=(Path="/Engine/VREditor")
+InternalOnlyClasses=/Script/VREditor.VREditorBaseUserWidget
The InternalOnlyPaths example will hide any classes in the VREditor folder or subfolders.
The InternalOnlyClasses example will hide any classes that derive from VREditorBaseUserWidget.
Both can be edited by the project settings UI so no manual INI tweaking is required. Please go to Project Settings->Class Viewer->Class Visibility Management
#jira UE-38313
Change 3200621 on 2016/11/16 by Matt.Kuhlenschmidt
Adding missing change needed post merge from main
Change 3200968 on 2016/11/16 by Jamie.Dale
Fixed localization gather including texts that were instanced or otherwise unchanged
- It now uses the archetype when exporting to diff against the default property value, and will only gather text that has changed from the default.
- UMG widgets that are instanced from another UMG asset now only gather overridden values, and skip all child instances.
Change 3201033 on 2016/11/16 by Cody.Albert
Fixed source control to properly notify when files need to be checked out if a blueprint node is dragged
Change 3201829 on 2016/11/17 by Shaun.Kime
Fixing issue where GEngine is null in early game loading, potentially causing a crash.
Change 3201832 on 2016/11/17 by Matt.Kuhlenschmidt
Fix build warning
Change 3201835 on 2016/11/17 by Nick.Darnell
Slate - Making it so explictly focusing a slate user that does not yet exist, creates the slate user so that the state is properly maintained in prepartion for that user's arrival / input.
Change 3201947 on 2016/11/17 by Matt.Kuhlenschmidt
Fix streaming pause rendering starting a movie if a movie was already playing
Change 3202089 on 2016/11/17 by Nick.Darnell
Editor - When replacing references, code that was added in 2729702, was allowing redirectors to be created that then might be abandoned and not renamed later if there was a collision on object name. There's no problem if two objects have the same name, as long as they have different paths (except for classes). So now the code records object paths in a seperate set, and avoids reprocessing / and creating multiple redirectors for the same objects, instead of just using object name.
Change 3202139 on 2016/11/17 by Jamie.Dale
Fix for adjusting text spacing when lines are removed from TextLayouts
Change 3202398 on 2016/11/17 by Cody.Albert
Updated UMG Sequencer to properly fire events once per loop
Change 3202591 on 2016/11/17 by Shaun.Kime
Fixing coding standards violations.
Change 3202744 on 2016/11/17 by Shaun.Kime
StaticMeshComponent's OverriddenLightMapRes current displays the value it was set to, even when the bOverrideLightMapRes is false. The behavior within UStaticMeshComponent::GetLightMapResolution is to use the LightMapResolution on the StaticMesh member instead when bOverrideLightMapRes is false. The UI was adjusted to reflect the more accurate behavior.
#jira UE-38315
Change 3203009 on 2016/11/17 by Alex.Delesky
Backing out changelist 3170522 per request
#jira UE-33031
Change 3204077 on 2016/11/18 by Nick.Darnell
Automation - Updating several bits of the screenshot automation piece to work a bit better, show names if we have them, and show preview dialogs for images.
Change 3204086 on 2016/11/18 by Jamie.Dale
Added FGCObjectScopeGuard and TStrongObjectPtr as a convenient way to keep a UObject alive without having to add it to the root-set
Both use FGCObject internally to reference the object and keep it alive.
FGCObjectScopeGuard is designed to be lean and used as a guard for an existing pointer, whereas TStrongObjectPtr is more "full-fat" and designed to be a replacement for a raw-pointer.
You should prefer FGCObjectScopeGuard where possible. Also note that TStrongObjectPtr isn't supported by UHT/UPROPERTY as you should just use a raw-pointer in that case (it would do the same thing).
Change 3204189 on 2016/11/18 by Alex.Delesky
Removing content from dev folder
Change 3204205 on 2016/11/18 by Jamie.Dale
Fix for being unable to delete folders that still have sub-folders in the Content Browser
#jira UE-38752
Change 3204270 on 2016/11/18 by Simon.Tourangeau
Fix StaticMesh socket reimports
- socket transforms are now updated correctly on reimport
- deleted socket from source will be removed on reimport
- fix SocketManager refresh after import
#jira UE-38195
Change 3204283 on 2016/11/18 by Alex.Delesky
#jira UE-38314 - Undoing a change in the Preview Scene Viewer in Static Mesh Editor will now properly update changes within the scene itself.
Change 3205757 on 2016/11/21 by Jamie.Dale
PR #2923: Slate: Fixed bug where NumCharactersInGlyph was set incorrectly for TAB characters (Contributed by pluranium)
Change 3205759 on 2016/11/21 by Matt.Kuhlenschmidt
PR #2958: Handle legacy Windows exe icon location (Contributed by projectgheist)
Change 3205816 on 2016/11/21 by Matt.Kuhlenschmidt
PR #2956: Add plane to basicshapes (Contributed by tommybear)
Change 3205831 on 2016/11/21 by Jamie.Dale
Speculative fix for UE-38492
This guards against null objects being passed to FAssetDeleteModel, as well as objects that become null due to the GC that happens in FAssetDeleteModel.
#jira UE-38492
Change 3205869 on 2016/11/21 by Alex.Delesky
#jira UE-38227 - Trying to transform a component on a blueprint while a spline mesh actor has the transform gizmo active in the editor will no longer modify the spline mesh actor
Change 3205873 on 2016/11/21 by Alex.Delesky
#jira UE-38379 - When editing a row in the data table, clicking on a different row before committing changes will now switch to that row. This also fixes the issue of data tables constantly regenerating cell widgets on data changes.
Should also address the issue mentioned in #jira UE-32965
Change 3205954 on 2016/11/21 by Shaun.Kime
Reverting changes from 3202744 that allowed override properties to show up as real properties in the list. There are several detail panel customizations that don't deal with this properly and rather than force everyone to upgrade, we'll just modify the static mesh detail customization to do the work.
#jira UE-38315
Change 3205965 on 2016/11/21 by Alex.Delesky
#jira UE-38749, UE-38755 - Space and Enter should now fire button OnClicked events when a button is focused
PR #2942
Change 3207157 on 2016/11/22 by Chris.Wood
Added UnrealWatchdog tool, run by the Editor, to improve abnormal shutdown tracking.
[UE-32952] - Watchdog - Show CRC when reporting abnormal shutdowns in internal builds
Change 3207344 on 2016/11/22 by Matthew.Griffin
Added UnrealWatchdog to the Binary Release
Change 3207396 on 2016/11/22 by Ben.Marsh
Add UnrealWatchdog to UGS precompiled binaries for Odin and Orion.
Change 3207418 on 2016/11/22 by Matt.Kuhlenschmidt
Redid blur changes from Paragon Dev-General
Blur widget updates
- Renamed to SBackgroundBlur/UBackgroundBlur
- Split SBackgroundBlur out into its own file
- Added bApplyAlphaToBlur - when true, the strength of the blur is modulated by the widget alpha
- Updated BlurRadius to be TOptional, so we auto-calculate radius when it isn't set
- Added a UBackgroundBlurSlot, but left it unattached so it can be done in dev-editor (and update based on the engine version)
- Updated OrionBlurWidget to export dll symbols and set up default low quality fallback image
Change 3207443 on 2016/11/22 by Chris.Wood
Fix CIS error on Mac from my change CL 3207157
Change 3207702 on 2016/11/22 by Matt.Kuhlenschmidt
Added missing files
Change 3207958 on 2016/11/22 by Matt.Kuhlenschmidt
Guard against crash clearing scenes from the slate RHI renderer during movie loading code.
Change 3207962 on 2016/11/22 by Matt.Kuhlenschmidt
Added a guard against the rendering thread timing out while on a breakpoint by checking if the debugger is present before performing the timeout check
Change 3208194 on 2016/11/22 by Matt.Kuhlenschmidt
Actually call correct method of checking for a debugger
Change 3209139 on 2016/11/23 by Cody.Albert
Adding support for "Show Only Modified Properties" filter to DetailWidgetRow
Change 3209206 on 2016/11/23 by Jamie.Dale
Moving folders now removes the old folder from disk if it's empty
This had already been done for deleting folders, but moving them was missed.
#jira UE-11796
Change 3209281 on 2016/11/23 by Jamie.Dale
PR #2932: Fix crash while updating cursor highlight (Contributed by nakosung)
Change 3210383 on 2016/11/25 by Chris.Wood
Documented Crash Report Client analytics events
[UE-32787] - Document Crash Report Client analytics events in code
Change 3210385 on 2016/11/25 by Alexis.Matte
Make sure the combine mesh option of the staticmesh import is stored in staticmeshimportdata so the re-import know if it must re-import in combined or not
#jira UE-38925
Change 3210983 on 2016/11/28 by Matt.Kuhlenschmidt
Merging //UE4/Dev-Main to Dev-Editor (//UE4/Dev-Editor)
Change 3211001 on 2016/11/28 by Matt.Kuhlenschmidt
Fix build errors
Change 3211009 on 2016/11/28 by Matt.Kuhlenschmidt
PR #2960: Git plugin: multiline initial commit message and other connect screen cleanup (Contributed by SRombauts)
Change 3211017 on 2016/11/28 by Matt.Kuhlenschmidt
Fix ATSC texture compression quality tooltip
#jira UE-38996
Change 3211045 on 2016/11/28 by Matt.Kuhlenschmidt
Fix compile errors
Change 3211081 on 2016/11/28 by Matt.Kuhlenschmidt
Fix post process anim blueprints on skeletal meshes not being clearable
#jira UE-39017
Change 3211094 on 2016/11/28 by Matt.Kuhlenschmidt
Added more logging for jira UE-39000
#jira UE-39000
Change 3211284 on 2016/11/28 by Matt.Kuhlenschmidt
Redid fix for UE-35822 in dev-editor
Change 3211544 on 2016/11/28 by Matt.Kuhlenschmidt
Fix deprecation warning
Change 3211769 on 2016/11/28 by Matt.Kuhlenschmidt
Disable motion blur in editor views by default
#jira 38424
Change 3211776 on 2016/11/28 by Matt.Kuhlenschmidt
Fix PS4 compile errors
Change 3211949 on 2016/11/28 by Matt.Kuhlenschmidt
Details panels changes
- Added the ability to create groups within groups in details panel customizations
- Added the ability for struct customizations to add categories to the parent
Change 3211954 on 2016/11/28 by Matt.Kuhlenschmidt
Reorganized the post process settings so they appear as categories in the parent and so that they have better categories to make it clear what all the settings do.
Change 3213158 on 2016/11/29 by Jamie.Dale
Updated User Defined Enum display names to use real FText instances so they can have stable keys
This avoids the issue where the FText display names were cached from an FString, resulting in them having a different identity each time they were re-cached, which lead to localization and deterministic cooking issues.
User Defined Enums no longer use meta-data to store their display names, and instead use a TMap in UUserDefinedEnum to map the raw enum entry name to its friendly display name. In addition to this, the enum editor has been updated to use STextPropertyEditableTextBox, which will keep the keys used by the display names stable where possible (allowing for delta-localization and historic tracking).
#jira UE-26274
Change 3213172 on 2016/11/29 by Jamie.Dale
Adding experimental support for content hot-reloading
The underlying support for this is in CoreUObject (see ReloadPackage and ReloadPackages in UObjectGlobals.h/.cpp), with editor specific support being added via PackageTools::ReloadPackages, and also hooks registered with FCoreUObjectDelegates::OnPackageReloaded (eg, UEditorEngine::HandlePackageReloaded).
The basic workflow for package reloading is as follows:
1) The current package is renamed, and the RF_NewerVersionExists flag is added to it and all its sub-objects.
2) The new package is loaded. Should this fail the old package is renamed back, and the RF_NewerVersionExists flag is removed.
3) We generate a mapping between objects in the old package and objects in the new package (see UObject::BuildSubobjectMapping).
4) We enumerate every object in memory, and fix-up any serialized or ARO object pointers referencing something from the old package, to reference the equivalent object from the new package (or null if no object could be found).
5) We run a GC, and verify that the old package was purged (printing any lingering references if it wasn't).
For efficiency reasons package reloading may be run in batches (the editor uses batches of 500), as this allows package reloading to happen faster (as the reference fix-up and GC only happens once per-batch) at the cost of consuming more memory.
In-editor there is an experimental setting to enable content hot-reloading. When this is enabled the SCC operations in the Content Browser will use content hot-reloading, rather than attempt to unload the reload the package as separate operations (which often fails). In order to allow the external SCC program to overwrite the files on disk, the linkers are detached from any packages that will be replaced prior to invoking the internal SCC operation.
Change 3213428 on 2016/11/29 by Jamie.Dale
Implemented clamping on FTextInputMethodContext::SetSelectionRange to fix an issue where composition could provide an invalid range if the text was changed while composing
#jira UE-37746
Change 3213442 on 2016/11/29 by Jamie.Dale
Workaround for a bug in TSF based MS IMEs on Windows 8+
They omit calling GetSelection and instead expect QueryInsert to return the current selection range. This also seems to fix an issue where composition no longer worked once some text had been deleted.
#jira UE-37309
Change 3213603 on 2016/11/29 by Cody.Albert
Changed PanelWidget::RemoveChildAt to not release slate resources if the child is a UserWidget
#jira UE-39106
Change 3213633 on 2016/11/29 by Matt.Kuhlenschmidt
Attempt to fix includetool cis warning
Change 3215159 on 2016/11/30 by Jamie.Dale
Fixing MakeShared forward declaration
Change 3215220 on 2016/11/30 by Alex.Delesky
#jira UE-38698 - Deleting a widget from the Widget Blueprint Hierarchy (or adding a new widget to the hierarchy directly) will no longer cause the scroll bar to return to the top of the hierarchy view.
Change 3215390 on 2016/11/30 by Jamie.Dale
Maps now end a hot-reload batch
Change 3215394 on 2016/11/30 by Matt.Kuhlenschmidt
Updating guard to track down worlds that have no package as an outer
#jira UE-35712
Change 3215500 on 2016/11/30 by Alexis.Matte
Color grading widget customization
#jira UETOOL-1070
Change 3215519 on 2016/11/30 by Jamie.Dale
Fixed crash caused by using TextNamespaceUtil::EnsurePackageNamespace in 'game' mode
Change 3215556 on 2016/11/30 by Cody.Albert
Fixed issue where check-out toast would not disappear
#jira UE-39146
Change 3215585 on 2016/11/30 by Jamie.Dale
Adding an explicit ESPMode to MakeShared to try and placate Android
Change 3215737 on 2016/11/30 by Alexis.Matte
Fix build warning
Change 3215748 on 2016/11/30 by Matt.Kuhlenschmidt
Guard against crashes due to duplicate items in the scene outliner if actors somehow end up attached to themselves
#jira UE-35935
Change 3215758 on 2016/11/30 by Ben.Marsh
Add a 'Custom...' build type for Dev-Editor.
Change 3216183 on 2016/11/30 by Alexis.Matte
Fix win32 build error
Change 3216362 on 2016/11/30 by Matt.Kuhlenschmidt
Fix mac build error.
Change 3216828 on 2016/12/01 by Jamie.Dale
Fixing MakeShared on Android
#jira UE-39204
Change 3216839 on 2016/12/01 by Matt.Kuhlenschmidt
PR #2997: Spelling fix for Actor.h's description of bEnableAutoLODGeneration. (Contributed by hgamiel)
Change 3216842 on 2016/12/01 by Matt.Kuhlenschmidt
Remove the ensure when pushing absolute transforms onto a canvas matrix stack. We can handle this properly now by just adding the transform to the stack if the stack is empty
#jira UE-36496
Change 3216874 on 2016/12/01 by Matt.Kuhlenschmidt
Fix a number of keybindings problems
- Removed editor keybindings from project settings. It should not have been in there (already in editor settings)
- Removed duplicate registration of editor keybindings from editor settings
- Fixed memory leak regenerating keybinding widgets when ending PIE world.
- Cleaned up styling a bit to make keybindings widgets clearer.
#jira UE-39211, UE-38718
Change 3216881 on 2016/12/01 by Shaun.Kime
Added support for reroute nodes to the material editor. These nodes should function identically to their counterparts in Blueprints. A new UMaterialExpression, UMaterialExpressionReroute has been added. It inserts no HLSL code, and instead just moves along its input to find the real UMaterialExpression that it is ultimately bound to.
Since the material system serializes its data as UMaterialExpressions, a more generalized approach across graph types isn't available as only the visual UI layer is shared between blueprints and material graphs.
Also modified the material palette and popup material expression menu to allow for c++ based material name and description customization. If we choose to expand this, it would make the C++ material nodes more discoverable and understandable.
Manually pulled in CL 3200823 and 3208490 to get bugfixes around material attribute usage.
Adding an reroute node should function identically to Blueprints (ie double-click on connection to add or Utility\Add Reroute Node from palette). You should be able to add as many reroute nodes as you want in a chain. A reroute node that only has a connected output and not an input should behave as if there were no reroute node present (i.e. triggering constants on Add). It should be possible to use reroute nodes between any two supported node types if they are connectable in isolation. Where possible, we should show the same type mismatch errors that you'd see if connecting nodes directly (ie dragging a boolean constant into a reroute node connected to an Add should result in a Float/Bool mismatch). A reroute node is purely visual, it should have no impact on the final instruction count.
In the event that an incomplete reroute input was completed by dragging to an invalid type, I tried to guarantee that the compiler would generate the appropriate errors. This can happen because we only know the inputs to a given node in code. If a reroute node doesn't have an input, it does not know what type it should be. However, the compiler should still detect these bad cases and error out.
#jira UE-6882
Change 3216968 on 2016/12/01 by Jamie.Dale
Syncing via source control now unloads (rather than reloads) packages that have been deleted from disk
Change 3216970 on 2016/12/01 by Jamie.Dale
Reverting files now uses hot-reloading (if enabled)
Change 3217233 on 2016/12/01 by Jamie.Dale
You can now choose to reload dirty packages via content hot-reloading
This will revert any in-memory changes to the asset, which may be useful when you want to roll it back to its initial state without restarting the editor.
Change 3217244 on 2016/12/01 by Matt.Kuhlenschmidt
WindowsMoviePlayer: Initialize the movie player texture on first frame regardless of whether or not the decoder has a sample ready. This prevents a white texture from showing up for a frame.
Change 3217466 on 2016/12/01 by Jamie.Dale
Fixed a bug where FTextFormatData::ConditionalCompile_NoLock would always compile the text even if it was up-to-date
Change 3217572 on 2016/12/01 by Jamie.Dale
Using FText::Format with an invalid argument no longer strips any associated argument modifier data from the resultant formatted text
Change 3217688 on 2016/12/01 by Jamie.Dale
Fixed crash reloading the active world package when it was dirty
#jira UE-39250
Change 3217978 on 2016/12/01 by Matt.Kuhlenschmidt
Fixed crash where the slate renderer holds into scenes during maps are loaded causing access to deleted data after the load is complete. We clean up cached scenes each frame but if slate doesnt tick the scenes are not cleaned up. This change moves the CleanupScenes code to a location that is called each tick and during map loads
#jira UE-39243
Change 3218834 on 2016/12/02 by Alexis.Matte
move some scene conversion import fbx options to staticmesh, skeletalmesh and animation import data so the re-import will have acces to those import options
#jira UE-38672
Change 3218838 on 2016/12/02 by Matt.Kuhlenschmidt
Fixed editing static mesh settings manually in the details panel not visually refreshing the collision primitives
#jira UE-39246
Change 3218864 on 2016/12/02 by Matt.Kuhlenschmidt
Fixed basic cube shape having a convex hull instead of a box for collision
Change 3218900 on 2016/12/02 by Matt.Kuhlenschmidt
Move static mesh collision properties to the collision category
Change 3219143 on 2016/12/02 by Michael.Dupuis
#jira UE-39124 We can now place single mesh at a time
#jira UE-39125 We can paint on the current level of the level containing the mesh we're painting on
Change the way GetRandomVectorInBrush generate the Start/end position to use the BrushNormal instead of the BrushDirection
Change 3219199 on 2016/12/02 by Matt.Kuhlenschmidt
Fixed a crash when changing Physical Surface Name and reassigning it on a physical material that uses it
#jira UE-37452
Change 3219358 on 2016/12/02 by Alexis.Matte
Fix fbx automation tests
Change 3219362 on 2016/12/02 by Alexis.Matte
Support for MAX multisub material
#jira UE-38467
#jira UE-38471
Change 3219774 on 2016/12/02 by Jamie.Dale
PR #2888: Add a setting to allow the Sources Panel to expand by default (Contributed by BhaaLseN)
Change 3219793 on 2016/12/02 by Jamie.Dale
SWindow now restores focus back to the widget that last had focus when it was deactivated
#jira UE-38965
Change 3221272 on 2016/12/05 by Matt.Kuhlenschmidt
UI background blur tweaks
- Adjust the downsample amount for lower kernel sizes
- Flush post process memory used by the blur when switching levels
Change 3221273 on 2016/12/05 by Matt.Kuhlenschmidt
Added guards against accesing scene caching methods of the slate resource manager on the rendering thread
Change 3221392 on 2016/12/05 by Matt.Kuhlenschmidt
Added basic support for playing safe movies very early in the engine startup sequence. A movie is considered safe to play very early if it is just a movie file and not some complex slate based UI loading screen
no platform actually supports this yet as none of the movie streamer modules are loaded early enough and many platforms cant render this early
Set PLATFORM_SUPPORTS_EARLY_MOVIE_PLAYBACK to 1 for your platform if it supports early loading
Change 3221831 on 2016/12/05 by Jamie.Dale
Fixed UNumericProperty::ReadEnumAsUint8 not considering enum redirects when resolving the name
Change 3221986 on 2016/12/05 by Jamie.Dale
Added an "Inline" font loading method
This can be used in a cooked build to store the font data within the Font Face asset itself (rather than a separate .ufont file) in order to guarantee a hitch free load, at the cost of potentially using more memory up-front.
The existing "PreLoad" loading method has been renamed to "LazyLoad" to better reflect what it actually does.
This also fixes a bug where FFontData::Serialize could try and use the referenced Font Face asset before it had been fully loaded.
Change 3222065 on 2016/12/05 by Jamie.Dale
Added log warning to detect hitches when lazily loading fonts
Change 3222225 on 2016/12/05 by Jamie.Dale
Fixing style-set typo
#jira UE-39333
Change 3223169 on 2016/12/06 by Matt.Kuhlenschmidt
Fix autosaving prompting to check out built data if the built data asset was dirty during autosave
#jira UE-39295
Change 3223184 on 2016/12/06 by Alexis.Matte
Support LOD group and combine mesh
#jira UE-1088
Change 3223212 on 2016/12/06 by Alex.Delesky
#jira UE-39260 - TMap and TSet struct values should now be editable when editing a component's properties.
Change 3223215 on 2016/12/06 by Alex.Delesky
#jira UE-38594 - The Widget Interaction Component will now default to tick while paused. Widget Components now contain a flag that will either allow or disallow interacting with them while the game is paused, which defaults to false.
Change 3223249 on 2016/12/06 by Matt.Kuhlenschmidt
Added back in missing code that was lost in a merge
Change 3223271 on 2016/12/06 by Alex.Delesky
#jira UE-38786 - The Color Picker will no longer stretch across the screen when exceptionally long strings are either entered or pasted inside one of the spin boxes. This also fixes an issue with editable text fields not validating string input on paste and will now prevent invalid data from being pasted inside a editable text block (e.g., pasting the string "I am a float" inside a spin box).
Change 3223275 on 2016/12/06 by Matt.Kuhlenschmidt
Fixed a race condition in WEX where the loading screen would render an external UI window that was referencing deleted materials
Change 3223276 on 2016/12/06 by Alexis.Matte
Staticmesh socket fbx import.
#jira UE-38284
Change 3223363 on 2016/12/06 by Alexis.Matte
Reimport must ask for missing file when re-importing a old asset that has no source files
#jira UE-39356
Change 3223423 on 2016/12/06 by Chris.Wood
Added option to place canvas panel children in same layer using explicit ZOrder setting.
[UETOOL-935] - Figure out a solution for canvas panel batching
Change 3223551 on 2016/12/06 by Alexis.Matte
UI mesh paint optimization, the slider now do not destroy the paint geometry adapter if the painted LOD has not change
#jira UE-39383
Change 3223844 on 2016/12/06 by Matt.Kuhlenschmidt
Back out change to change the defaults on vector and scalar expressions because this affects existing expressions that have not overridden the default
Change 3223880 on 2016/12/06 by Matt.Kuhlenschmidt
Update doc links for maps and sets
Change 3224746 on 2016/12/07 by Michael.Dupuis
#jira UE-39409 : Was'nt calling EndFoliageBrushTrace causing the transaction to never finish causing both jiras
#jira UE-39410 : Was'nt calling EndFoliageBrushTrace causing the transaction to never finish causing both jiras
Change 3224826 on 2016/12/07 by Michael.Dupuis
#jira UE-39095 : If a tool is active we simply consider inputs as handled to prevent this kind of behavior
Change 3224827 on 2016/12/07 by Simon.Tourangeau
Improve search for material match on fbx mesh import
- Add option to specify material search locations on mesh import
- On Import it will now perform a first match material search in the following order (suppose we are importing into /Game/Content/Assets/Meshes/MyMesh)
- Using Local as a search location will provide same behavior as before (search non recursively in /Game/Content/Assets/Meshes)
- If option is UnderParent or more, search recursively in destination folder (search recursively in /Game/Content/Assets/Meshes)
- If option is UnderParent or more, then recursively from parent folder (search recursively in /Game/Content/Assets)
- If option is UnderRoot or more, search recursively from root folder (search recursively in /Game)
- If option is AllAssets, search in every asset folder (Search recursively everywhere)
#jira UE-39020
Change 3224989 on 2016/12/07 by Chris.Wood
Fixed black callstack text in CrashReportClient.
[UE-38987] - CrashReportClient Callstack text is rendering Black
Change 3225142 on 2016/12/07 by Jamie.Dale
Added collapsing methods when exporting text for translation
You can now choose how to collapse your text for translation from three export modes:
- ELocalizedTextCollapseMode::IdenticalTextIdAndSource - Collapse texts with the same text identity (namespace + key) and source text (default 4.15+ behavior).
- ELocalizedTextCollapseMode::IdenticalPackageIdTextIdAndSource - Collapse texts with the same package ID, text identity (namespace + key), and source text (4.14 behavior).
- ELocalizedTextCollapseMode::IdenticalNamespaceAndSource - Collapse texts with the same namespace and source text (legacy pre-4.14 behavior).
The new default allows you to re-use the same text identity in different packages without having to translate the same text multiple times, and you can also now opt to get back to the legacy pre-4.14 behavior of collapsing all identical texts within the same namespace (in case you were reliant on that behavior).
You can change this setting via the Localization Dashboard, or add it to your gather configs as "LocalizedTextCollapseMode" (this needs to go into any configs that deal with exporting or importing PO files - the default if nothing is specified is "ELocalizedTextCollapseMode::IdenticalTextIdAndSource").
Change 3225509 on 2016/12/07 by Simon.Tourangeau
Static analysis fix, false positive
Change 3225859 on 2016/12/07 by Matt.Kuhlenschmidt
Fix broken physical surface details customization
- Scrolling now works properly
- Edit boxes dont change size while editing
- properly checks out or makes file writable once an edit has been made
#jira UE-39279
Change 3226840 on 2016/12/08 by Jamie.Dale
Fixing a bug in FText formatting where it would ignore the rebuild and Rebuild as Source arguments for the format string itself
#jira OPP-6485
Change 3226940 on 2016/12/08 by Alexis.Matte
Avoid changing the W value when playing with the color grading wheel.
#jira UE-39473
Change 3227814 on 2016/12/08 by Matt.Kuhlenschmidt
Temp disable lazy load font warnings to prevent infinite recursion crashes at startup
Change 3228010 on 2016/12/08 by Matt.Kuhlenschmidt
Fix for iOS compiling
Change 3228597 on 2016/12/09 by Jamie.Dale
Removed hard dependency between UFont and UFontFace during struct serialization as it doesn't work with the EDL
#jira UE-39529
Change 3228607 on 2016/12/09 by Jamie.Dale
Fixed infinite recursion caused by logging while the output log font was still being loaded
#jira UE-39523
Change 3228770 on 2016/12/09 by Jamie.Dale
Fixed UUserDefinedEnum::GetEnumText
it was using GetNameByIndex (which includes C++ scoping), rather than GetEnumName (which doesn't). This was causing all name look-ups to fail.
#jira UE-39531
Change 3228785 on 2016/12/09 by Matt.Kuhlenschmidt
Fix static analysis warning
[CL 3229477 by Matt Kuhlenschmidt in Main branch]
2016-12-09 15:05:28 -05:00
Commands . EditorModeCommands [ CommandIndex ] ,
2014-06-18 10:16:16 -04:00
FExecuteAction : : CreateStatic ( & SLevelEditor : : ToggleEditorMode , Mode . ID ) ,
2014-03-14 14:13:41 -04:00
FCanExecuteAction ( ) ,
2014-06-18 10:16:16 -04:00
FIsActionChecked : : CreateStatic ( & SLevelEditor : : IsModeActive , Mode . ID ) ) ;
2014-03-14 14:13:41 -04:00
}
Copying //UE4/Dev-Editor to //UE4/Dev-Main (Source: //UE4/Dev-Editor @ 3228984)
#lockdown Nick.Penwarden
#rb none
==========================
MAJOR FEATURES + CHANGES
==========================
Change 3168749 on 2016/10/20 by Richard.TalbotWatkin
Fixed bug in csgRebuild where dynamic brushes from the whole world are rebuilt instead of just those from the current level. csgRebuild is supposed to act only on the current level's geometry.
#jira UE-37376 - csgRebuild builds dynamic brushes from the whole world, instead of just the current level
Change 3169740 on 2016/10/20 by Nick.Darnell
Automation - Removing old screenshots, working on new naming convention.
Change 3169796 on 2016/10/20 by Nick.Darnell
Automation - Adding new screenshots.
Change 3169800 on 2016/10/20 by Nick.Darnell
Automation - Working on improvements to screenshot comparions, now using the Unique device id instead of adapter name. Working on better metadata based matching for which screenshot to use, stubbing in support for adding alternative versions of screenshots.
Change 3169901 on 2016/10/20 by Nick.Darnell
Automation - More fixes / refinements to the way we add alternatives and replace old versions of screenshots.
Change 3169926 on 2016/10/20 by Cody.Albert
Added extension point for level editor viewport's Show and Camera menus
Change 3170053 on 2016/10/20 by Cody.Albert
Back out changelist 3169926
Change 3170067 on 2016/10/20 by Cody.Albert
Added extension point for level editor viewport's Show and Camera menus
Change 3170382 on 2016/10/21 by Michael.Dupuis
#jira UE-36585 Added Copy/Paste to Material list/item, section list/item to StaticMeshEditor and Persona Editor
Change 3170520 on 2016/10/21 by Alex.Delesky
#jira UE-36510 - You can now toggle if combo boxes can receive keyboard focus from the Widget Blueprint
Change 3170522 on 2016/10/21 by Alex.Delesky
#jira UE-33031 - Buttons will no longer remained in a hovered state on mobile devices if the user drags their finger into a button, and then lifts their finger without dragging it outside of the button.
Change 3170524 on 2016/10/21 by Alex.Delesky
#jira UE-25591 - Static Mesh LODs can now be removed from the editor without a mesh reduction tool like Simplygon configured for use in the editor.
Change 3170530 on 2016/10/21 by Alex.Delesky
Moved the HasKey method from UMapProperty to FScriptMapHelper, and moved the HasElement property from USetProperty to FScriptSetHelper
#jira none
Change 3170768 on 2016/10/21 by Cody.Albert
Back out changelist 3170067
Change 3170795 on 2016/10/21 by Nick.Darnell
JsonObjectConverter - By default UStructToJsonAttributes now skips transient properties.
Change 3170797 on 2016/10/21 by Nick.Darnell
Automation - Fixing several warnings dealing with fbx testing.
Change 3170921 on 2016/10/21 by Nick.Darnell
Automation - Fixing more warnings with FBX tests.
Change 3171109 on 2016/10/21 by Cody.Albert
Added extension point for level editor viewport Show menu
Change 3171812 on 2016/10/24 by Jamie.Dale
Back out changelist 3163044
This broke wrapping for Japanese and Chinese.
Change 3171842 on 2016/10/24 by Michael.Dupuis
#jira UE-36400
Name each Parameter uniquely either from copy/paste of any creation menu
Changed the default value for Scalar and Vector Parameter to 1 and 1,1,1,1
Added a Promote To Parameter when clicking on an Input pin that will generate proper node type based on type pin type
When editing a color property update the material expression preview
Change 3171958 on 2016/10/24 by Alex.Delesky
#jira UE-37444 - The Primitive Stats browser (and other statistics browsers) can now sort columns based on singular objects or object types as well as texture dimensions.
Change 3171969 on 2016/10/24 by Nick.Darnell
Slate - Adding some code to prevent crashes if bogus user indexes are passed into SlateApplications GetUser functions.
Change 3171970 on 2016/10/24 by Matt.Kuhlenschmidt
PR #2885: Fixed Stretched Landscape Editor Icons (Contributed by teessider)
Change 3172035 on 2016/10/24 by Alex.Delesky
Fix to build warning for 3171970
#jira none
Change 3172078 on 2016/10/24 by Michael.Dupuis
#jira UE-37626 Fetch property node from property handle if there is no property editor
Change 3172143 on 2016/10/24 by Jamie.Dale
Line-break iterators will now avoid breaking words in Hangul
The default behavior for wrapping Hangul is to use Western-style wrapping (where words are kept as-is) rather than East Asian-style (where words are broken by syllables). This behavior can be controlled by the Localization.HangulTextWrappingMethod CVar in-case you were dependant on the old behavior, but since modern Hangul uses spaces, the per-word wrapping is preferred by native speakers.
Change 3172418 on 2016/10/24 by Michael.Dupuis
Fixed Static Analysis error
Change 3173389 on 2016/10/25 by Michael.Dupuis
#jira UE-9284 Make the UI appear only on hover and change icons size
Change 3173918 on 2016/10/25 by Alex.Delesky
#jira UE-37753 - WidgetBlueprints saved without a root widget (e.g., by deleting the starting Canvas panel) will no longer set a Canvas panel as the root widget. New WidgetBlueprints will still contain a Canvas Panel when created.
Change 3173966 on 2016/10/25 by Alex.Delesky
#jira UE-20891 - SpinBox now receives MouseMove events while simulating touch events using the mouse.
Change 3174847 on 2016/10/26 by Alex.Delesky
#jira UE-36371 - Windowed Fullscreen will now expand to fit the entirety of the current window and will not be displaced when the Windows taskbar is docked on the top or left sides of the screen.
Change 3174916 on 2016/10/26 by Alexis.Matte
When re-importing fbx file, always log to the message log.
#jira UE-37639
Change 3174940 on 2016/10/26 by Alex.Delesky
Back out changelist 3174847 at request of platforms team. Was fixed on Main.
Change 3174995 on 2016/10/26 by Matt.Kuhlenschmidt
Import commandlet fixes
- Fixed crash when source control could not be contacted
- Fixed assets not importing correctly if they depended on other assets in a previous import group within the automated import
Change 3175217 on 2016/10/26 by Alexis.Matte
The FBX reimport animation code now return false if there was an error when importing
#jira UE-37755
Change 3175728 on 2016/10/26 by Alexis.Matte
Log a message when importing a skeletal mesh with more bone influence then the maximum supported
#2875
#jira UE-37613
Change 3177997 on 2016/10/28 by Nick.Darnell
Editor - Prevent re-entrant calls when EndPlayMap is called.
Change 3178429 on 2016/10/28 by Nick.Darnell
Engine - Bumping BaseEngine.ini to IOS_8, MinimumiOSVersion, as that is now the minimum allowed to fix an error on startup. Tweaking the location of where some importing files go when they're imported.
Change 3179774 on 2016/10/31 by Matt.Kuhlenschmidt
Guard against bad render targets in Slate RHI
#jira UE-37905
Change 3179900 on 2016/10/31 by Matt.Kuhlenschmidt
Added logging to track https://jira.it.epicgames.net/browse/UE-37900
#jira UE-37900
Change 3179920 on 2016/10/31 by Alex.Delesky
Removing LODs from skeletal meshes is now a transacted action and can be undone. Related to UE-25591.
#jira none
Change 3179921 on 2016/10/31 by Alex.Delesky
#jira UE-37725 - Adding safeguard against a potential crash in FTextureEditorViewportClient caused by a texture not having a valid texture resource
Change 3180119 on 2016/10/31 by Alexis.Matte
fbx importer avoid asset creation name clash
#jira UE-35100
Change 3181905 on 2016/11/01 by Alexis.Matte
Paint tool now allow users to paint on any vertex if they need it.
#jira UE-8372
Change 3182355 on 2016/11/01 by Alexis.Matte
We now support FBX LODs export for the asset exporter from the content browser.
#jira UE-35302
Change 3183286 on 2016/11/02 by Alexis.Matte
Make sure static mesh build settings are set properly when we re-import with different options. Specifically the normals, tangents and tangent space are dependent on the import options.
#jira UE-37520
Change 3183567 on 2016/11/02 by Shaun.Kime
#jira UE-38019
The Content Browser's View Options originally included both Engine and GameProject plugins only when clicking Show Plugin Content. Since there are quite a few Engine plugins, this produces quite a bit of content in the Folders panel. Most of the Engine plugins have classes or content that isn't really meant to be user-facing, so the experience of hunting for a game plugin-in's content is poor.
The new behavior is that GameProject plugins are controlled by the "View Plugin Content" option. In order to see the Engine plugins you'll need both Engine Content and Plugin Content checkboxes enabled. By default, the editor should enable the "View Plugin Content" checkbox since it should be limited to just the content in the game's Plugins folder.
Change 3184002 on 2016/11/02 by Jamie.Dale
Fixed crash during TSF IME shutdown
#jira UE-38073
Change 3185126 on 2016/11/03 by Shaun.Kime
Some of the plugin templates define Editor specific plugins. If created and a Standalone build is run, the application will attempt to link in editor libraries in game mode and will run into issues when you hit any key. The fix is to specify an Editor module description for these plugins.
Additionally, there appears to be a mismatch in pathing types when dealing with plugin path and GameDir. Plugin path is absolute and GameDir is relative by default. We check to see if the gameDir is a subset of the plugin path, but this fails due to the mismatch. The fix is to force both to be absolute (enforcing normalization of both paths as well).
#jira UE-38065
#jira UE-37645
Change 3185278 on 2016/11/03 by Nick.Darnell
UMG - Fixing some issues with HDPI mode in the widget designer.
Change 3185355 on 2016/11/03 by Nick.Darnell
UMG - Widget Component's Draw At Desired size now should also work correctly if it's in screenspace.
Change 3185510 on 2016/11/03 by Nick.Darnell
UMG - Restoring the ability of the Widget Component to directly recieve hardware input. The Widget Interaction Component is great for just about every interaction use case - the one it's not is when you actually want the 3D widgets to take focus, and to be able to be typed directly into by the user. The kind of situation where you might want to use them as a 3D menu, in a non-VR environment. By default - Widget Components will not behave in this manner, but you can now use the option bReceiveHardwareInput to enable the ability for Widget Components to function more like a widget in the screenspace of the viewport.
Slate - The scene viewport now correctly takes scale into account when drawing the 'software cursor', this fixes an issue with HDPI mode, and the cursor not being restored to the same location after moving a gizmo.
Change 3185514 on 2016/11/03 by Nick.Darnell
UMG - Fixing some HDPI mode problems with widget position calculation when projecting world to viewport / screen, absolute spaces.
Change 3185652 on 2016/11/03 by Nick.Darnell
Slate - Exposing a cached version of the widget geometry that comes in during Tick. Also performed a bit of optimization work on the class to make some space for the geometry object we now cache, by compacting the pointer event delegates we were storing.
Change 3185952 on 2016/11/03 by Nick.Darnell
UMG - Fixing another build error relating to local widget geometry.
Change 3185953 on 2016/11/03 by Nick.Darnell
UMG - Fixing a mac compiler warning.
Change 3186886 on 2016/11/04 by Matt.Kuhlenschmidt
Fixed collapse all hiding everything in the settings editors
#jira UE-38151
Change 3187014 on 2016/11/04 by Matt.Kuhlenschmidt
Fixed new assets opening in a minimized window not restoring that window.
Change 3187026 on 2016/11/04 by Shaun.Kime
UUnrealEdEngine::edactDeleteSelected calls out to FBlueprintEditorUtils::FindActorsThatReferenceActor. This checks the entire world for each actor to be deleted. When you have tens of thousands of actors in the world and are deleting tens of thousands of actors, this can take minutes. This change amortizes the cost of finding the actor references once for the world and for each actor to be deleted, we query the cached list of references. This brings the deletion time down to seconds.
#jira UE-38094
Change 3187073 on 2016/11/04 by Nick.Darnell
Automation - Changing the code that writes out json to force no BOM as is the json standard.
Change 3187113 on 2016/11/04 by Jamie.Dale
Removed double look-up in UTextProperty::SerializeItem
Change 3187114 on 2016/11/04 by Jamie.Dale
Feedback context now uses culture correct percentage formatting
Change 3187273 on 2016/11/04 by Alexis.Matte
Fbx importer for static mesh, make sure that we order the materials array to follow the section order.
Add also some fbx automation test
#jira UE-38242
Change 3187276 on 2016/11/04 by Matt.Kuhlenschmidt
Fix crash when an actor picker shows up in the struct editor. Structs do not have root property nodes
#jira UE-38268
Change 3187463 on 2016/11/04 by Nick.Darnell
Automation - Updating the blessed screenshots, and fixing the BOM issues with the json.
Change 3188638 on 2016/11/07 by Shaun.Kime
Making the UI for adding/removing parameters in custom blueprint functions behave similarly to the struct creation dialog in the content browser. There are no longer "New" buttons at the bottom of the panel and the parameter moving controls have been moved onto the main parameter row instead of being nested inside the collapse panel. A tooltip will now let you know the full parameter name and type when you hover over the editable name field. Made the move up/down icons more legible by increasing contrast between the arrow and the light grey background.
#jira UE-38240
Change 3189056 on 2016/11/07 by Nick.Darnell
Core/Editor - UObject::IsAsset() now returns false if the outermost package is RF_Transient. Also updating the creation of the transient package to be RF_Transient. This makes it so transient packages created by UMG or some other editor for things like previewing a streamed in level instance, no longer show up in the content browser.
Change 3189147 on 2016/11/07 by Jamie.Dale
Fixed potential race-condition where a UFont object could be GC'd while the loading screen was using the font cache
This queues up the pending removal until it's safe to execute it (by a thread that fully owns Slate rendering).
#jira UE-38309
Change 3189344 on 2016/11/07 by Matt.Kuhlenschmidt
Merging //UE4/Dev-Main to Dev-Editor (//UE4/Dev-Editor)
Change 3189380 on 2016/11/07 by Matt.Kuhlenschmidt
Guard against null object when creating details panel
Change 3190017 on 2016/11/08 by Alexis.Matte
FrontX support for scene importer
#jira UETOOL-1061
Change 3190058 on 2016/11/08 by Matt.Kuhlenschmidt
Fixed misaligned button in the new blueprint class dialog
Change 3190086 on 2016/11/08 by Nick.Darnell
UMG - Fixing the calculation for widget componets screen position if the camera aspect is constrained.
Change 3190159 on 2016/11/08 by Nick.Darnell
UMG - We no longer also take the platform DPI scale into account when applying UMG's UI scale. Since UMG already provides a DPI scaling system, compounding it with the native OSes produces undesirable results, since the DPI scale curve does not take into account some unknown platform scale set by a user.
Change 3190161 on 2016/11/08 by Nick.Darnell
UMG - UWidget is now Blueprintable. Improving some doc.
Change 3190545 on 2016/11/08 by Alexis.Matte
Support scaling when exporting skeleton (bind pose) to FBX
#jira UE-36120
Change 3191614 on 2016/11/09 by Simon.Tourangeau
Fix cooking crash after fbx import of a scene without meshes
#jira UE-38264
Change 3191659 on 2016/11/09 by Simon.Tourangeau
Cleanup Persona LOD section button layout
#jira UE-38339
Change 3191882 on 2016/11/09 by Jamie.Dale
Changed FBlackboardKeySelector::AddObjectFilter to use MakeUniqueObjectName so it generates more stable names, rather than relying on a static counter.
Also updated FBlackboardKeySelector::AddClassFilter, FBlackboardKeySelector::AddEnumFilter, and FBlackboardKeySelector::AddNativeEnumFilter to use MakeUniqueObjectName to ensure they don't conflict.
Change 3192092 on 2016/11/09 by Jamie.Dale
Deleting some test assets that were accidentally checked in, some of which no longer load
Change 3192281 on 2016/11/09 by Alex.Delesky
#jira UE-31866 - Widget Blueprints will no longer experience compile issues when dragging widgets between the hierarchy views of different Widget Blueprints.
Change 3192365 on 2016/11/09 by Shaun.Kime
Adding support for MaterialParameterCollections to Slate UI objects. For reasons of Blueprint controls amongst other things, MPC's are owned by individual UWorlds and transferred over to their respective Scenes. Since we want the latest values from those in-UWorld representations, Slate needs to know about the Scene on the render thread to properly map the materials to their MPC inputs. This involved keeping Scene arrays synchronized between the game logic thread and render thread, and adding a Scene index field to each batched draw element in Slate. SceneViewports are now responsible for registering their associated Scenes with the SlateRenderer. Since RetainerBoxes also draw their content as well, they too need to register their Scenes.
#jira UE-19022
Change 3192494 on 2016/11/09 by Alex.Delesky
#jira UE-37829 - Dynamically changing an option in the style for an Editable Text Box or Multiline Editable Text Box will now update it correctly.
Change 3193183 on 2016/11/10 by Alexis.Matte
When doing FBX scene re-import, the new staticmesh asset was not mark as dirty. So the system was not saving the new asset.
#jira UE-38450
Change 3193419 on 2016/11/10 by Alex.Delesky
Fixing UnrealTournament build error in SUTChatEditBox
#jira none
Change 3193456 on 2016/11/10 by Alex.Delesky
Fix to build warning C6011 in SWidgetHierarchyItem
#jira none
Change 3193704 on 2016/11/10 by Simon.Tourangeau
Create Cinematic Camera when importing camera from fbx
#jira UE-37764
Change 3194593 on 2016/11/11 by Nick.Darnell
Slate - Fixing the window reshaping logic to avoid work if we don't need to do it, rather than external calls attempting to do the check (poorly). This appears to fix the problem with popup menus being slightly off in size, creating scrollbars. This also prevents constant reshaping of windows, due to people performing the wrong checks over and over, because they were comparing against non-truncated or rounded values against truncated/rounded values.
Change 3194595 on 2016/11/11 by Nick.Darnell
Slate - Simplifying the Menu Anchor popup code for new Windows, and correcting it so that it does not take non-DPI scale into account when calculating the size of the window. Otherwise, popup menus on say, the blueprint editor change size depending upon the scale of the area.
Change 3194830 on 2016/11/11 by Richard.TalbotWatkin
Optimized pasting brushes, so geometry is not constantly rebuilt for every brush that's added. This improves performance by a couple of orders of magnitude!
#jira UE-38524 - Moving many brushes to another level is very slow
Change 3194859 on 2016/11/11 by Alexis.Matte
Fix fbx skeletal mesh cleanup material crash
#jira UE-38525
Change 3195199 on 2016/11/11 by Nick.Darnell
UMG - Updating the bindable widget searching code in sequencer to use the WidgetTree traversing code, instead of something custom. This fixes the issue where it wasn't finding widgets inside of named slots.
#jira UE-38536
Change 3196579 on 2016/11/14 by Matt.Kuhlenschmidt
Guard against rendering crashes when a mesh with no lod resources is opened.
#jira UE-38520
Change 3196614 on 2016/11/14 by Nick.Darnell
Slate - The ignore incoming scale option for the scale box should now behave as expected in more cases. It required modifying the GetRelativeLayoutScale function to also pass down the prepass scale, otherwise it can't extract out the incoming scale ahead of time before text is measured ahead of time.
Change 3196624 on 2016/11/14 by Matt.Kuhlenschmidt
PR #2927: UE-38473: Shadow outline color uses shadow color (Contributed by projectgheist)
Change 3196770 on 2016/11/14 by Matt.Kuhlenschmidt
Ensure instead of crash when updating the selection pivot if a component's actor is not selected (this is non fatal)
#jira UE-38544
Change 3196863 on 2016/11/14 by Nick.Darnell
Slate - Allowing font outline settings to be specified in native code when constructing a SlateFontInfo via a ctor.
Change 3196900 on 2016/11/14 by Nick.Darnell
Slate - Upgrading some cases that were using the older version of GetRelativeLayoutScale.
Change 3196947 on 2016/11/14 by Matt.Kuhlenschmidt
Guard against crashes in the details panel when an OS message causes the tree to refresh when a previous event has invalidate the contents of the details panel.
#jira UE-36499, UE-38497
Change 3197028 on 2016/11/14 by Alexis.Matte
Shift Drag is not moving the camera when the user is dragging the 3 axis in same time.
#jira UE-38382
Change 3197167 on 2016/11/14 by Matt.Kuhlenschmidt
Removed pivot updating code per frame for now. It changes on selection so I cant see a reason why it is needed every frame
Change 3197227 on 2016/11/14 by Nick.Darnell
UMG/Blueprint - Exposing a way to set the default schema a blueprint editor derivation uses. Updating all widget blueprints to finally use the WidgetGraphSchema.
Change 3197239 on 2016/11/14 by Nick.Darnell
UMG - Improving the ReceiveHardwareInput option to limit exposure of widgets to hit testing that did not register for it.
Change 3197538 on 2016/11/14 by Nick.Darnell
UMG - Making some progress on converting the schema over on load, now appear to correctly be loading it in time to be able to perform node conversions to convert older nodes to newer nodes. Required changing the UBlueprint interface to have a virtual for upgrading nodes, that could be overriden in WidgetBlueprint to make sure the schemas have all been updated, as Serialize is too early, and PostLoad is too late.
Change 3198211 on 2016/11/15 by Matt.Kuhlenschmidt
Guard against reimport factories being deleted while in use
#jira UE-37577
Change 3198589 on 2016/11/15 by Alex.Delesky
#jira UE-38527 - Curves editors will no longer crash when trying to scale to fit after resetting the curve to its default values. This also fixes an issue where selecting a key before resetting the curve to default would sometimes cause the timestamp to display for a now-invalid key.
Change 3198783 on 2016/11/15 by Nick.Darnell
The Widget Component's Allow Hardware Input should now correctly convert coordinates coming from a viewport scaled up by the OS DPI scaling code.
Change 3198933 on 2016/11/15 by Jamie.Dale
Changing the package localization ID used by a package now marks the package as dirty
Change 3198942 on 2016/11/15 by Jamie.Dale
Clearing the package localization ID used by a package now marks the package as dirty
Change 3200241 on 2016/11/16 by Shaun.Kime
Now allowing users to customize the Class Browser/Picker to filter out developer folders as well as hide internal use classes via INI settings. A ViewOptions button has been added to allow users to choose whether or not these filters are enabled.
By default, internal only classes will be hidden and you will be limited to your own developer folder.
Example change to DefaultEngine.ini or BaseEngine.ini to hide some classes as internal use
[/Script/ClassViewer.ClassViewerProjectSettings]
+InternalOnlyPaths=(Path="/Engine/VREditor")
+InternalOnlyClasses=/Script/VREditor.VREditorBaseUserWidget
The InternalOnlyPaths example will hide any classes in the VREditor folder or subfolders.
The InternalOnlyClasses example will hide any classes that derive from VREditorBaseUserWidget.
Both can be edited by the project settings UI so no manual INI tweaking is required. Please go to Project Settings->Class Viewer->Class Visibility Management
#jira UE-38313
Change 3200621 on 2016/11/16 by Matt.Kuhlenschmidt
Adding missing change needed post merge from main
Change 3200968 on 2016/11/16 by Jamie.Dale
Fixed localization gather including texts that were instanced or otherwise unchanged
- It now uses the archetype when exporting to diff against the default property value, and will only gather text that has changed from the default.
- UMG widgets that are instanced from another UMG asset now only gather overridden values, and skip all child instances.
Change 3201033 on 2016/11/16 by Cody.Albert
Fixed source control to properly notify when files need to be checked out if a blueprint node is dragged
Change 3201829 on 2016/11/17 by Shaun.Kime
Fixing issue where GEngine is null in early game loading, potentially causing a crash.
Change 3201832 on 2016/11/17 by Matt.Kuhlenschmidt
Fix build warning
Change 3201835 on 2016/11/17 by Nick.Darnell
Slate - Making it so explictly focusing a slate user that does not yet exist, creates the slate user so that the state is properly maintained in prepartion for that user's arrival / input.
Change 3201947 on 2016/11/17 by Matt.Kuhlenschmidt
Fix streaming pause rendering starting a movie if a movie was already playing
Change 3202089 on 2016/11/17 by Nick.Darnell
Editor - When replacing references, code that was added in 2729702, was allowing redirectors to be created that then might be abandoned and not renamed later if there was a collision on object name. There's no problem if two objects have the same name, as long as they have different paths (except for classes). So now the code records object paths in a seperate set, and avoids reprocessing / and creating multiple redirectors for the same objects, instead of just using object name.
Change 3202139 on 2016/11/17 by Jamie.Dale
Fix for adjusting text spacing when lines are removed from TextLayouts
Change 3202398 on 2016/11/17 by Cody.Albert
Updated UMG Sequencer to properly fire events once per loop
Change 3202591 on 2016/11/17 by Shaun.Kime
Fixing coding standards violations.
Change 3202744 on 2016/11/17 by Shaun.Kime
StaticMeshComponent's OverriddenLightMapRes current displays the value it was set to, even when the bOverrideLightMapRes is false. The behavior within UStaticMeshComponent::GetLightMapResolution is to use the LightMapResolution on the StaticMesh member instead when bOverrideLightMapRes is false. The UI was adjusted to reflect the more accurate behavior.
#jira UE-38315
Change 3203009 on 2016/11/17 by Alex.Delesky
Backing out changelist 3170522 per request
#jira UE-33031
Change 3204077 on 2016/11/18 by Nick.Darnell
Automation - Updating several bits of the screenshot automation piece to work a bit better, show names if we have them, and show preview dialogs for images.
Change 3204086 on 2016/11/18 by Jamie.Dale
Added FGCObjectScopeGuard and TStrongObjectPtr as a convenient way to keep a UObject alive without having to add it to the root-set
Both use FGCObject internally to reference the object and keep it alive.
FGCObjectScopeGuard is designed to be lean and used as a guard for an existing pointer, whereas TStrongObjectPtr is more "full-fat" and designed to be a replacement for a raw-pointer.
You should prefer FGCObjectScopeGuard where possible. Also note that TStrongObjectPtr isn't supported by UHT/UPROPERTY as you should just use a raw-pointer in that case (it would do the same thing).
Change 3204189 on 2016/11/18 by Alex.Delesky
Removing content from dev folder
Change 3204205 on 2016/11/18 by Jamie.Dale
Fix for being unable to delete folders that still have sub-folders in the Content Browser
#jira UE-38752
Change 3204270 on 2016/11/18 by Simon.Tourangeau
Fix StaticMesh socket reimports
- socket transforms are now updated correctly on reimport
- deleted socket from source will be removed on reimport
- fix SocketManager refresh after import
#jira UE-38195
Change 3204283 on 2016/11/18 by Alex.Delesky
#jira UE-38314 - Undoing a change in the Preview Scene Viewer in Static Mesh Editor will now properly update changes within the scene itself.
Change 3205757 on 2016/11/21 by Jamie.Dale
PR #2923: Slate: Fixed bug where NumCharactersInGlyph was set incorrectly for TAB characters (Contributed by pluranium)
Change 3205759 on 2016/11/21 by Matt.Kuhlenschmidt
PR #2958: Handle legacy Windows exe icon location (Contributed by projectgheist)
Change 3205816 on 2016/11/21 by Matt.Kuhlenschmidt
PR #2956: Add plane to basicshapes (Contributed by tommybear)
Change 3205831 on 2016/11/21 by Jamie.Dale
Speculative fix for UE-38492
This guards against null objects being passed to FAssetDeleteModel, as well as objects that become null due to the GC that happens in FAssetDeleteModel.
#jira UE-38492
Change 3205869 on 2016/11/21 by Alex.Delesky
#jira UE-38227 - Trying to transform a component on a blueprint while a spline mesh actor has the transform gizmo active in the editor will no longer modify the spline mesh actor
Change 3205873 on 2016/11/21 by Alex.Delesky
#jira UE-38379 - When editing a row in the data table, clicking on a different row before committing changes will now switch to that row. This also fixes the issue of data tables constantly regenerating cell widgets on data changes.
Should also address the issue mentioned in #jira UE-32965
Change 3205954 on 2016/11/21 by Shaun.Kime
Reverting changes from 3202744 that allowed override properties to show up as real properties in the list. There are several detail panel customizations that don't deal with this properly and rather than force everyone to upgrade, we'll just modify the static mesh detail customization to do the work.
#jira UE-38315
Change 3205965 on 2016/11/21 by Alex.Delesky
#jira UE-38749, UE-38755 - Space and Enter should now fire button OnClicked events when a button is focused
PR #2942
Change 3207157 on 2016/11/22 by Chris.Wood
Added UnrealWatchdog tool, run by the Editor, to improve abnormal shutdown tracking.
[UE-32952] - Watchdog - Show CRC when reporting abnormal shutdowns in internal builds
Change 3207344 on 2016/11/22 by Matthew.Griffin
Added UnrealWatchdog to the Binary Release
Change 3207396 on 2016/11/22 by Ben.Marsh
Add UnrealWatchdog to UGS precompiled binaries for Odin and Orion.
Change 3207418 on 2016/11/22 by Matt.Kuhlenschmidt
Redid blur changes from Paragon Dev-General
Blur widget updates
- Renamed to SBackgroundBlur/UBackgroundBlur
- Split SBackgroundBlur out into its own file
- Added bApplyAlphaToBlur - when true, the strength of the blur is modulated by the widget alpha
- Updated BlurRadius to be TOptional, so we auto-calculate radius when it isn't set
- Added a UBackgroundBlurSlot, but left it unattached so it can be done in dev-editor (and update based on the engine version)
- Updated OrionBlurWidget to export dll symbols and set up default low quality fallback image
Change 3207443 on 2016/11/22 by Chris.Wood
Fix CIS error on Mac from my change CL 3207157
Change 3207702 on 2016/11/22 by Matt.Kuhlenschmidt
Added missing files
Change 3207958 on 2016/11/22 by Matt.Kuhlenschmidt
Guard against crash clearing scenes from the slate RHI renderer during movie loading code.
Change 3207962 on 2016/11/22 by Matt.Kuhlenschmidt
Added a guard against the rendering thread timing out while on a breakpoint by checking if the debugger is present before performing the timeout check
Change 3208194 on 2016/11/22 by Matt.Kuhlenschmidt
Actually call correct method of checking for a debugger
Change 3209139 on 2016/11/23 by Cody.Albert
Adding support for "Show Only Modified Properties" filter to DetailWidgetRow
Change 3209206 on 2016/11/23 by Jamie.Dale
Moving folders now removes the old folder from disk if it's empty
This had already been done for deleting folders, but moving them was missed.
#jira UE-11796
Change 3209281 on 2016/11/23 by Jamie.Dale
PR #2932: Fix crash while updating cursor highlight (Contributed by nakosung)
Change 3210383 on 2016/11/25 by Chris.Wood
Documented Crash Report Client analytics events
[UE-32787] - Document Crash Report Client analytics events in code
Change 3210385 on 2016/11/25 by Alexis.Matte
Make sure the combine mesh option of the staticmesh import is stored in staticmeshimportdata so the re-import know if it must re-import in combined or not
#jira UE-38925
Change 3210983 on 2016/11/28 by Matt.Kuhlenschmidt
Merging //UE4/Dev-Main to Dev-Editor (//UE4/Dev-Editor)
Change 3211001 on 2016/11/28 by Matt.Kuhlenschmidt
Fix build errors
Change 3211009 on 2016/11/28 by Matt.Kuhlenschmidt
PR #2960: Git plugin: multiline initial commit message and other connect screen cleanup (Contributed by SRombauts)
Change 3211017 on 2016/11/28 by Matt.Kuhlenschmidt
Fix ATSC texture compression quality tooltip
#jira UE-38996
Change 3211045 on 2016/11/28 by Matt.Kuhlenschmidt
Fix compile errors
Change 3211081 on 2016/11/28 by Matt.Kuhlenschmidt
Fix post process anim blueprints on skeletal meshes not being clearable
#jira UE-39017
Change 3211094 on 2016/11/28 by Matt.Kuhlenschmidt
Added more logging for jira UE-39000
#jira UE-39000
Change 3211284 on 2016/11/28 by Matt.Kuhlenschmidt
Redid fix for UE-35822 in dev-editor
Change 3211544 on 2016/11/28 by Matt.Kuhlenschmidt
Fix deprecation warning
Change 3211769 on 2016/11/28 by Matt.Kuhlenschmidt
Disable motion blur in editor views by default
#jira 38424
Change 3211776 on 2016/11/28 by Matt.Kuhlenschmidt
Fix PS4 compile errors
Change 3211949 on 2016/11/28 by Matt.Kuhlenschmidt
Details panels changes
- Added the ability to create groups within groups in details panel customizations
- Added the ability for struct customizations to add categories to the parent
Change 3211954 on 2016/11/28 by Matt.Kuhlenschmidt
Reorganized the post process settings so they appear as categories in the parent and so that they have better categories to make it clear what all the settings do.
Change 3213158 on 2016/11/29 by Jamie.Dale
Updated User Defined Enum display names to use real FText instances so they can have stable keys
This avoids the issue where the FText display names were cached from an FString, resulting in them having a different identity each time they were re-cached, which lead to localization and deterministic cooking issues.
User Defined Enums no longer use meta-data to store their display names, and instead use a TMap in UUserDefinedEnum to map the raw enum entry name to its friendly display name. In addition to this, the enum editor has been updated to use STextPropertyEditableTextBox, which will keep the keys used by the display names stable where possible (allowing for delta-localization and historic tracking).
#jira UE-26274
Change 3213172 on 2016/11/29 by Jamie.Dale
Adding experimental support for content hot-reloading
The underlying support for this is in CoreUObject (see ReloadPackage and ReloadPackages in UObjectGlobals.h/.cpp), with editor specific support being added via PackageTools::ReloadPackages, and also hooks registered with FCoreUObjectDelegates::OnPackageReloaded (eg, UEditorEngine::HandlePackageReloaded).
The basic workflow for package reloading is as follows:
1) The current package is renamed, and the RF_NewerVersionExists flag is added to it and all its sub-objects.
2) The new package is loaded. Should this fail the old package is renamed back, and the RF_NewerVersionExists flag is removed.
3) We generate a mapping between objects in the old package and objects in the new package (see UObject::BuildSubobjectMapping).
4) We enumerate every object in memory, and fix-up any serialized or ARO object pointers referencing something from the old package, to reference the equivalent object from the new package (or null if no object could be found).
5) We run a GC, and verify that the old package was purged (printing any lingering references if it wasn't).
For efficiency reasons package reloading may be run in batches (the editor uses batches of 500), as this allows package reloading to happen faster (as the reference fix-up and GC only happens once per-batch) at the cost of consuming more memory.
In-editor there is an experimental setting to enable content hot-reloading. When this is enabled the SCC operations in the Content Browser will use content hot-reloading, rather than attempt to unload the reload the package as separate operations (which often fails). In order to allow the external SCC program to overwrite the files on disk, the linkers are detached from any packages that will be replaced prior to invoking the internal SCC operation.
Change 3213428 on 2016/11/29 by Jamie.Dale
Implemented clamping on FTextInputMethodContext::SetSelectionRange to fix an issue where composition could provide an invalid range if the text was changed while composing
#jira UE-37746
Change 3213442 on 2016/11/29 by Jamie.Dale
Workaround for a bug in TSF based MS IMEs on Windows 8+
They omit calling GetSelection and instead expect QueryInsert to return the current selection range. This also seems to fix an issue where composition no longer worked once some text had been deleted.
#jira UE-37309
Change 3213603 on 2016/11/29 by Cody.Albert
Changed PanelWidget::RemoveChildAt to not release slate resources if the child is a UserWidget
#jira UE-39106
Change 3213633 on 2016/11/29 by Matt.Kuhlenschmidt
Attempt to fix includetool cis warning
Change 3215159 on 2016/11/30 by Jamie.Dale
Fixing MakeShared forward declaration
Change 3215220 on 2016/11/30 by Alex.Delesky
#jira UE-38698 - Deleting a widget from the Widget Blueprint Hierarchy (or adding a new widget to the hierarchy directly) will no longer cause the scroll bar to return to the top of the hierarchy view.
Change 3215390 on 2016/11/30 by Jamie.Dale
Maps now end a hot-reload batch
Change 3215394 on 2016/11/30 by Matt.Kuhlenschmidt
Updating guard to track down worlds that have no package as an outer
#jira UE-35712
Change 3215500 on 2016/11/30 by Alexis.Matte
Color grading widget customization
#jira UETOOL-1070
Change 3215519 on 2016/11/30 by Jamie.Dale
Fixed crash caused by using TextNamespaceUtil::EnsurePackageNamespace in 'game' mode
Change 3215556 on 2016/11/30 by Cody.Albert
Fixed issue where check-out toast would not disappear
#jira UE-39146
Change 3215585 on 2016/11/30 by Jamie.Dale
Adding an explicit ESPMode to MakeShared to try and placate Android
Change 3215737 on 2016/11/30 by Alexis.Matte
Fix build warning
Change 3215748 on 2016/11/30 by Matt.Kuhlenschmidt
Guard against crashes due to duplicate items in the scene outliner if actors somehow end up attached to themselves
#jira UE-35935
Change 3215758 on 2016/11/30 by Ben.Marsh
Add a 'Custom...' build type for Dev-Editor.
Change 3216183 on 2016/11/30 by Alexis.Matte
Fix win32 build error
Change 3216362 on 2016/11/30 by Matt.Kuhlenschmidt
Fix mac build error.
Change 3216828 on 2016/12/01 by Jamie.Dale
Fixing MakeShared on Android
#jira UE-39204
Change 3216839 on 2016/12/01 by Matt.Kuhlenschmidt
PR #2997: Spelling fix for Actor.h's description of bEnableAutoLODGeneration. (Contributed by hgamiel)
Change 3216842 on 2016/12/01 by Matt.Kuhlenschmidt
Remove the ensure when pushing absolute transforms onto a canvas matrix stack. We can handle this properly now by just adding the transform to the stack if the stack is empty
#jira UE-36496
Change 3216874 on 2016/12/01 by Matt.Kuhlenschmidt
Fix a number of keybindings problems
- Removed editor keybindings from project settings. It should not have been in there (already in editor settings)
- Removed duplicate registration of editor keybindings from editor settings
- Fixed memory leak regenerating keybinding widgets when ending PIE world.
- Cleaned up styling a bit to make keybindings widgets clearer.
#jira UE-39211, UE-38718
Change 3216881 on 2016/12/01 by Shaun.Kime
Added support for reroute nodes to the material editor. These nodes should function identically to their counterparts in Blueprints. A new UMaterialExpression, UMaterialExpressionReroute has been added. It inserts no HLSL code, and instead just moves along its input to find the real UMaterialExpression that it is ultimately bound to.
Since the material system serializes its data as UMaterialExpressions, a more generalized approach across graph types isn't available as only the visual UI layer is shared between blueprints and material graphs.
Also modified the material palette and popup material expression menu to allow for c++ based material name and description customization. If we choose to expand this, it would make the C++ material nodes more discoverable and understandable.
Manually pulled in CL 3200823 and 3208490 to get bugfixes around material attribute usage.
Adding an reroute node should function identically to Blueprints (ie double-click on connection to add or Utility\Add Reroute Node from palette). You should be able to add as many reroute nodes as you want in a chain. A reroute node that only has a connected output and not an input should behave as if there were no reroute node present (i.e. triggering constants on Add). It should be possible to use reroute nodes between any two supported node types if they are connectable in isolation. Where possible, we should show the same type mismatch errors that you'd see if connecting nodes directly (ie dragging a boolean constant into a reroute node connected to an Add should result in a Float/Bool mismatch). A reroute node is purely visual, it should have no impact on the final instruction count.
In the event that an incomplete reroute input was completed by dragging to an invalid type, I tried to guarantee that the compiler would generate the appropriate errors. This can happen because we only know the inputs to a given node in code. If a reroute node doesn't have an input, it does not know what type it should be. However, the compiler should still detect these bad cases and error out.
#jira UE-6882
Change 3216968 on 2016/12/01 by Jamie.Dale
Syncing via source control now unloads (rather than reloads) packages that have been deleted from disk
Change 3216970 on 2016/12/01 by Jamie.Dale
Reverting files now uses hot-reloading (if enabled)
Change 3217233 on 2016/12/01 by Jamie.Dale
You can now choose to reload dirty packages via content hot-reloading
This will revert any in-memory changes to the asset, which may be useful when you want to roll it back to its initial state without restarting the editor.
Change 3217244 on 2016/12/01 by Matt.Kuhlenschmidt
WindowsMoviePlayer: Initialize the movie player texture on first frame regardless of whether or not the decoder has a sample ready. This prevents a white texture from showing up for a frame.
Change 3217466 on 2016/12/01 by Jamie.Dale
Fixed a bug where FTextFormatData::ConditionalCompile_NoLock would always compile the text even if it was up-to-date
Change 3217572 on 2016/12/01 by Jamie.Dale
Using FText::Format with an invalid argument no longer strips any associated argument modifier data from the resultant formatted text
Change 3217688 on 2016/12/01 by Jamie.Dale
Fixed crash reloading the active world package when it was dirty
#jira UE-39250
Change 3217978 on 2016/12/01 by Matt.Kuhlenschmidt
Fixed crash where the slate renderer holds into scenes during maps are loaded causing access to deleted data after the load is complete. We clean up cached scenes each frame but if slate doesnt tick the scenes are not cleaned up. This change moves the CleanupScenes code to a location that is called each tick and during map loads
#jira UE-39243
Change 3218834 on 2016/12/02 by Alexis.Matte
move some scene conversion import fbx options to staticmesh, skeletalmesh and animation import data so the re-import will have acces to those import options
#jira UE-38672
Change 3218838 on 2016/12/02 by Matt.Kuhlenschmidt
Fixed editing static mesh settings manually in the details panel not visually refreshing the collision primitives
#jira UE-39246
Change 3218864 on 2016/12/02 by Matt.Kuhlenschmidt
Fixed basic cube shape having a convex hull instead of a box for collision
Change 3218900 on 2016/12/02 by Matt.Kuhlenschmidt
Move static mesh collision properties to the collision category
Change 3219143 on 2016/12/02 by Michael.Dupuis
#jira UE-39124 We can now place single mesh at a time
#jira UE-39125 We can paint on the current level of the level containing the mesh we're painting on
Change the way GetRandomVectorInBrush generate the Start/end position to use the BrushNormal instead of the BrushDirection
Change 3219199 on 2016/12/02 by Matt.Kuhlenschmidt
Fixed a crash when changing Physical Surface Name and reassigning it on a physical material that uses it
#jira UE-37452
Change 3219358 on 2016/12/02 by Alexis.Matte
Fix fbx automation tests
Change 3219362 on 2016/12/02 by Alexis.Matte
Support for MAX multisub material
#jira UE-38467
#jira UE-38471
Change 3219774 on 2016/12/02 by Jamie.Dale
PR #2888: Add a setting to allow the Sources Panel to expand by default (Contributed by BhaaLseN)
Change 3219793 on 2016/12/02 by Jamie.Dale
SWindow now restores focus back to the widget that last had focus when it was deactivated
#jira UE-38965
Change 3221272 on 2016/12/05 by Matt.Kuhlenschmidt
UI background blur tweaks
- Adjust the downsample amount for lower kernel sizes
- Flush post process memory used by the blur when switching levels
Change 3221273 on 2016/12/05 by Matt.Kuhlenschmidt
Added guards against accesing scene caching methods of the slate resource manager on the rendering thread
Change 3221392 on 2016/12/05 by Matt.Kuhlenschmidt
Added basic support for playing safe movies very early in the engine startup sequence. A movie is considered safe to play very early if it is just a movie file and not some complex slate based UI loading screen
no platform actually supports this yet as none of the movie streamer modules are loaded early enough and many platforms cant render this early
Set PLATFORM_SUPPORTS_EARLY_MOVIE_PLAYBACK to 1 for your platform if it supports early loading
Change 3221831 on 2016/12/05 by Jamie.Dale
Fixed UNumericProperty::ReadEnumAsUint8 not considering enum redirects when resolving the name
Change 3221986 on 2016/12/05 by Jamie.Dale
Added an "Inline" font loading method
This can be used in a cooked build to store the font data within the Font Face asset itself (rather than a separate .ufont file) in order to guarantee a hitch free load, at the cost of potentially using more memory up-front.
The existing "PreLoad" loading method has been renamed to "LazyLoad" to better reflect what it actually does.
This also fixes a bug where FFontData::Serialize could try and use the referenced Font Face asset before it had been fully loaded.
Change 3222065 on 2016/12/05 by Jamie.Dale
Added log warning to detect hitches when lazily loading fonts
Change 3222225 on 2016/12/05 by Jamie.Dale
Fixing style-set typo
#jira UE-39333
Change 3223169 on 2016/12/06 by Matt.Kuhlenschmidt
Fix autosaving prompting to check out built data if the built data asset was dirty during autosave
#jira UE-39295
Change 3223184 on 2016/12/06 by Alexis.Matte
Support LOD group and combine mesh
#jira UE-1088
Change 3223212 on 2016/12/06 by Alex.Delesky
#jira UE-39260 - TMap and TSet struct values should now be editable when editing a component's properties.
Change 3223215 on 2016/12/06 by Alex.Delesky
#jira UE-38594 - The Widget Interaction Component will now default to tick while paused. Widget Components now contain a flag that will either allow or disallow interacting with them while the game is paused, which defaults to false.
Change 3223249 on 2016/12/06 by Matt.Kuhlenschmidt
Added back in missing code that was lost in a merge
Change 3223271 on 2016/12/06 by Alex.Delesky
#jira UE-38786 - The Color Picker will no longer stretch across the screen when exceptionally long strings are either entered or pasted inside one of the spin boxes. This also fixes an issue with editable text fields not validating string input on paste and will now prevent invalid data from being pasted inside a editable text block (e.g., pasting the string "I am a float" inside a spin box).
Change 3223275 on 2016/12/06 by Matt.Kuhlenschmidt
Fixed a race condition in WEX where the loading screen would render an external UI window that was referencing deleted materials
Change 3223276 on 2016/12/06 by Alexis.Matte
Staticmesh socket fbx import.
#jira UE-38284
Change 3223363 on 2016/12/06 by Alexis.Matte
Reimport must ask for missing file when re-importing a old asset that has no source files
#jira UE-39356
Change 3223423 on 2016/12/06 by Chris.Wood
Added option to place canvas panel children in same layer using explicit ZOrder setting.
[UETOOL-935] - Figure out a solution for canvas panel batching
Change 3223551 on 2016/12/06 by Alexis.Matte
UI mesh paint optimization, the slider now do not destroy the paint geometry adapter if the painted LOD has not change
#jira UE-39383
Change 3223844 on 2016/12/06 by Matt.Kuhlenschmidt
Back out change to change the defaults on vector and scalar expressions because this affects existing expressions that have not overridden the default
Change 3223880 on 2016/12/06 by Matt.Kuhlenschmidt
Update doc links for maps and sets
Change 3224746 on 2016/12/07 by Michael.Dupuis
#jira UE-39409 : Was'nt calling EndFoliageBrushTrace causing the transaction to never finish causing both jiras
#jira UE-39410 : Was'nt calling EndFoliageBrushTrace causing the transaction to never finish causing both jiras
Change 3224826 on 2016/12/07 by Michael.Dupuis
#jira UE-39095 : If a tool is active we simply consider inputs as handled to prevent this kind of behavior
Change 3224827 on 2016/12/07 by Simon.Tourangeau
Improve search for material match on fbx mesh import
- Add option to specify material search locations on mesh import
- On Import it will now perform a first match material search in the following order (suppose we are importing into /Game/Content/Assets/Meshes/MyMesh)
- Using Local as a search location will provide same behavior as before (search non recursively in /Game/Content/Assets/Meshes)
- If option is UnderParent or more, search recursively in destination folder (search recursively in /Game/Content/Assets/Meshes)
- If option is UnderParent or more, then recursively from parent folder (search recursively in /Game/Content/Assets)
- If option is UnderRoot or more, search recursively from root folder (search recursively in /Game)
- If option is AllAssets, search in every asset folder (Search recursively everywhere)
#jira UE-39020
Change 3224989 on 2016/12/07 by Chris.Wood
Fixed black callstack text in CrashReportClient.
[UE-38987] - CrashReportClient Callstack text is rendering Black
Change 3225142 on 2016/12/07 by Jamie.Dale
Added collapsing methods when exporting text for translation
You can now choose how to collapse your text for translation from three export modes:
- ELocalizedTextCollapseMode::IdenticalTextIdAndSource - Collapse texts with the same text identity (namespace + key) and source text (default 4.15+ behavior).
- ELocalizedTextCollapseMode::IdenticalPackageIdTextIdAndSource - Collapse texts with the same package ID, text identity (namespace + key), and source text (4.14 behavior).
- ELocalizedTextCollapseMode::IdenticalNamespaceAndSource - Collapse texts with the same namespace and source text (legacy pre-4.14 behavior).
The new default allows you to re-use the same text identity in different packages without having to translate the same text multiple times, and you can also now opt to get back to the legacy pre-4.14 behavior of collapsing all identical texts within the same namespace (in case you were reliant on that behavior).
You can change this setting via the Localization Dashboard, or add it to your gather configs as "LocalizedTextCollapseMode" (this needs to go into any configs that deal with exporting or importing PO files - the default if nothing is specified is "ELocalizedTextCollapseMode::IdenticalTextIdAndSource").
Change 3225509 on 2016/12/07 by Simon.Tourangeau
Static analysis fix, false positive
Change 3225859 on 2016/12/07 by Matt.Kuhlenschmidt
Fix broken physical surface details customization
- Scrolling now works properly
- Edit boxes dont change size while editing
- properly checks out or makes file writable once an edit has been made
#jira UE-39279
Change 3226840 on 2016/12/08 by Jamie.Dale
Fixing a bug in FText formatting where it would ignore the rebuild and Rebuild as Source arguments for the format string itself
#jira OPP-6485
Change 3226940 on 2016/12/08 by Alexis.Matte
Avoid changing the W value when playing with the color grading wheel.
#jira UE-39473
Change 3227814 on 2016/12/08 by Matt.Kuhlenschmidt
Temp disable lazy load font warnings to prevent infinite recursion crashes at startup
Change 3228010 on 2016/12/08 by Matt.Kuhlenschmidt
Fix for iOS compiling
Change 3228597 on 2016/12/09 by Jamie.Dale
Removed hard dependency between UFont and UFontFace during struct serialization as it doesn't work with the EDL
#jira UE-39529
Change 3228607 on 2016/12/09 by Jamie.Dale
Fixed infinite recursion caused by logging while the output log font was still being loaded
#jira UE-39523
Change 3228770 on 2016/12/09 by Jamie.Dale
Fixed UUserDefinedEnum::GetEnumText
it was using GetNameByIndex (which includes C++ scoping), rather than GetEnumName (which doesn't). This was causing all name look-ups to fail.
#jira UE-39531
Change 3228785 on 2016/12/09 by Matt.Kuhlenschmidt
Fix static analysis warning
[CL 3229477 by Matt Kuhlenschmidt in Main branch]
2016-12-09 15:05:28 -05:00
CommandIndex + + ;
2014-03-14 14:13:41 -04:00
}
2014-06-18 10:16:16 -04:00
for ( const auto & ToolBoxTab : ToolBoxTabs )
2014-03-14 14:13:41 -04:00
{
2014-06-18 10:16:16 -04:00
auto Tab = ToolBoxTab . Pin ( ) ;
if ( Tab . IsValid ( ) )
{
Tab - > OnEditorModeCommandsChanged ( ) ;
}
2014-03-14 14:13:41 -04:00
}
}
2014-10-30 12:29:36 -04:00
FReply SLevelEditor : : OnKeyDown ( const FGeometry & MyGeometry , const FKeyEvent & InKeyEvent )
2014-03-14 14:13:41 -04:00
{
2014-10-30 12:29:36 -04:00
// Check to see if any of the actions for the level editor can be processed by the current event
2014-03-14 14:13:41 -04:00
// If we are in debug mode do not process commands
2015-07-15 04:55:45 -04:00
if ( FSlateApplication : : Get ( ) . IsNormalExecution ( ) )
2014-03-14 14:13:41 -04:00
{
2015-07-15 04:55:45 -04:00
for ( const auto & ActiveToolkit : HostedToolkits )
2014-03-14 14:13:41 -04:00
{
2015-07-15 04:55:45 -04:00
// A toolkit is active, so direct all command processing to it
if ( ActiveToolkit - > ProcessCommandBindings ( InKeyEvent ) )
2014-03-14 14:13:41 -04:00
{
return FReply : : Handled ( ) ;
}
}
2015-07-15 04:55:45 -04:00
// No toolkit processed the key, so let the level editor have a chance at the keystroke
if ( LevelEditorCommands - > ProcessCommandBindings ( InKeyEvent ) )
2014-03-14 14:13:41 -04:00
{
2015-07-15 04:55:45 -04:00
return FReply : : Handled ( ) ;
2014-03-14 14:13:41 -04:00
}
}
return FReply : : Unhandled ( ) ;
}
2014-10-30 12:29:36 -04:00
FReply SLevelEditor : : OnKeyDownInViewport ( const FGeometry & MyGeometry , const FKeyEvent & InKeyEvent )
2014-03-14 14:13:41 -04:00
{
2014-10-30 12:29:36 -04:00
// Check to see if any of the actions for the level editor can be processed by the current keyboard from a viewport
if ( LevelEditorCommands - > ProcessCommandBindings ( InKeyEvent ) )
2014-03-14 14:13:41 -04:00
{
return FReply : : Handled ( ) ;
}
// NOTE: Currently, we don't bother allowing toolkits to get a chance at viewport keys
return FReply : : Unhandled ( ) ;
}
/** Callback for when the level editor layout has changed */
void SLevelEditor : : OnLayoutHasChanged ( )
{
// ...
}
void SLevelEditor : : SummonLevelViewportContextMenu ( )
{
2014-04-23 17:50:29 -04:00
FLevelEditorContextMenu : : SummonMenu ( SharedThis ( this ) , LevelEditorMenuContext : : Viewport ) ;
2014-03-14 14:13:41 -04:00
}
Copying //UE4/Dev-Editor to //UE4/Dev-Main (Source: //UE4/Dev-Editor @ 3082391)
#lockdown Nick.Penwarden
#rb none
==========================
MAJOR FEATURES + CHANGES
==========================
Change 3051464 on 2016/07/15 by Nick.Darnell
Regression Testing - Several upgrades to the functional testing system, better tracking of failure cases, some source line failure detection, trying to make it easier to run a specific test on a map. Some UI improvements, easier access to the automation system. Lots more refactoring to come, lots of improvements are still needed in transmitting screenshots and just generally building a automation report we could dump from the build machines.
Change 3051465 on 2016/07/15 by Nick.Darnell
Adding the "Engine Test" project our one stop shope for running automation tests in the engine to try and reduce regressions.
Change 3051847 on 2016/07/15 by Matt.Kuhlenschmidt
Fixed material editor viewport messages being blocked by viewport toolbar
Change 3052025 on 2016/07/15 by Nick.Darnell
Moving the placement mode hooks out of functional testing module, moving them into the editor automation module.
Change 3053508 on 2016/07/18 by Stephan.Jiang
Copy,Cut,Paste tracks, not for mastertracks yet.
#UE-31808
Change 3054723 on 2016/07/18 by Stephan.Jiang
Small fixes for typo & comments
Change 3055996 on 2016/07/19 by Trung.Le
PIE: No longer auto resume game in PIE on focus received
Change 3056106 on 2016/07/19 by Trung.Le
Back out changelist 3055996. Build break.
Change 3056108 on 2016/07/19 by Stephan.Jiang
Updating "SoundConcurrency" asseticon
Change 3056389 on 2016/07/19 by Trung.Le
PIE: No longer auto resume game in PIE on focus received
#jira UE-33339
Change 3056396 on 2016/07/19 by Matt.Kuhlenschmidt
More perf selection improvements:
- Static meshes now go through the static draw path when rendered for selection outline instead of just rendering using the dynamic path
Change 3056758 on 2016/07/19 by Stephan.Jiang
Update SelectedWidgets in WidgetblueprintEditor to match the selected tracks in sequencer.
Change 3057519 on 2016/07/20 by Matt.Kuhlenschmidt
Another fix for selecting lots of objects taking forever. This one is due to repeated Modify calls if there are groups in the selection. Each group actor selected iterates through each object selected during USelection::Modify!
Change 3057635 on 2016/07/20 by Stephan.Jiang
Updating visual logger icon UI
Change 3057645 on 2016/07/20 by Richard.TalbotWatkin
Fixed single player PIE so the window position is correctly fetched and saved, even when running a dedicated server. This does not interfere with stored positions for multiple PIE, which uses ULevelEditorPlaySettings::MultipleInstancePositions.
#jira UE-33416 - New Editor PIE window does not center to screen when running with a dedicated server
Change 3057868 on 2016/07/20 by Richard.TalbotWatkin
Spline component improvements, both tools and runtime:
- SplineComponentVisualizer now works within the Blueprint editor. This works via a generic extension added to the base ComponentVisualizer class which correctly propagates modified properties from the preview actor to the archetype, and then on to any instances whose properties are at the default value.
- The above feature required a breaking change to USplineComponent - namely, the three FInterpCurve properties have been collected together into a struct and added as a single property. This is so that changes to the length of one of the FInterpCurves marks all three as dirty and needing rebuilding.
- Added a custom version for SplineComponent and provded serialization fixes.
- Added a details customization to SplineComponent to hide the raw FInterpCurve properties.
- Added a custom detail builder category which polls the SplineComponentVisualizer each tick and provides numerical editing for spline points which are selected in the visualizer.
- Relaxed the limitation that SplineComponent keys need to have an increment of 1.0. Now any SplineComponent key can be set. The details customization enforces that the sequence remains strictly ascending.
- Allowed an explicit loop point to be specified for closed splines.
- Allowed discontinuous splines by no longer forcing the ArriveTangent and LeaveTangent to be equal.
- Added some new Blueprintable methods for building splines with an FSplinePoint struct, which allows all of a spline point's properties to be specified, and added to the FInterpCurves sorted by the input key.
- Fixed the logic which determines whether the UCS has modified the spline curves.
- Added UActorComponent::RemoveUCSModifiedProperties, which allows a component to remove any properties from the cached list which it doesn't want to be considered as 'modified'. This is used to distinguish the case of properties preserved by the SplineInstanceDataCache from those genuinely modified by the UCS.
- Fixed "Apply Instance Changes to Blueprint" so that edited spline data can be applied to the archetype.
- Fixed some issues with the spline component visualizer to make it generate appropriate up vectors if scale and rotation are enabled.
#jira UETOOL-766 - Spline tool improvements
#jira UE-33049 - Transform widget visible in blueprint viewport when editing spline points in editor viewport
#jira UE-9062 - Spline editing: It would be nice to be able to type in a specific value for a point
#jira UE-7476 - Add ability to edit SplineComponent in BP editor (not just instance in level)
#jira UE-13082 - Users would like a snapping feature for splines
#jira UE-13568 - Additional Spline Component Functionality
#jira UE-17822 - It would be useful to be able to update a bp spline layout from the editor viewport.
Change 3057895 on 2016/07/20 by Richard.TalbotWatkin
Mesh paint bugfixes and improvements.
Changes to RerunConstructionScript so that OnObjectsReplaced is called correctly on all components, whether they have been created by the SCS or the UCS. Previously, components created by the UCS were not being handled, and components created by the SCS were not always being matched. Now a serialized index is maintained for UCS-created objects, which is matched after the construction scripts have been executed.
This will fix issues with the mesh paint tool, and any other editor tool which hooks into the OnObjectsReplaced callback in order to update its internal cache of component pointers, for example, the component visualizer render list.
#jira UE-33010 - Crash changing mesh paint material in blueprint, then changing to a different mode tab
#jira UE-32279 - Editor crashes when reselecting a mesh in paint mode
#jira UE-31763 - [CrashReport] UE4Editor_MeshPaint!FMulticastDelegateBase<FWeakObjectPtr>::RemoveAll() [multicastdelegatebase.h:75]
#jira UE-30661 - Vertex Painting changes collision complexity if the asset is saved while vertex painting
Change 3057966 on 2016/07/20 by Richard.TalbotWatkin
Renamed IsEditingArchetype to IsVisualizingArchetype in the ComponentVisualizer API.
#jira UE-33049 - Transform widget visible in blueprint viewport when editing spline points in editor viewport
Change 3058009 on 2016/07/20 by Richard.TalbotWatkin
Fixed build failure due to changes to FComponentVisualizer API, as of CL 3057868.
Change 3058047 on 2016/07/20 by Stephan.Jiang
Fixing error on previous CL: 3056758
(extra qualification)
Change 3058266 on 2016/07/20 by Nick.Darnell
Automation - Work continues on automation integrating some ideas form a licensee. Continuing to work on the usability aspects, I've made it possible for tests to provide custom open commands, as well as have complex subclasses that do different things. The functional tests now have a custom open command they emit that makes it so clicking on a test opens not the C++ location where the functional test macro lives, but instead the map, AND focuses the functional test actor.
Change 3058282 on 2016/07/20 by Matt.Kuhlenschmidt
PR #2611: Fix spurious component diff when properties are in subcategories (Contributed by CA-ADuran)
Change 3059214 on 2016/07/21 by Richard.TalbotWatkin
Further fixes to visualizers following Component Visualizer API change.
Change 3059260 on 2016/07/21 by Richard.TalbotWatkin
Template specialization not allowed in class scope, but Visual Studio allows it anyway. Fixed for clang.
Change 3059543 on 2016/07/21 by Stephan.Jiang
Changeing level details icon
Change 3059732 on 2016/07/21 by Stephan.Jiang
Directional Light icon update
Change 3060095 on 2016/07/21 by Stephan.Jiang
Directional Light editor icon asset changed
Change 3060129 on 2016/07/21 by Nick.Darnell
Automation - The session browser now attempts to select the app instance if no other thing is selected when it refreshes. This is to try and make it easier to use when you first bring it up and nothing is selected when most of the time you're going to use it on your own instance.
Change 3061735 on 2016/07/22 by Stephan.Jiang
Improve UMG replace with in HierarchyView function
#UE-33582
Change 3062059 on 2016/07/22 by Stephan.Jiang
Strip off "b" in propertyname in replace with function for tracks.
Change 3062146 on 2016/07/22 by Stephan.Jiang
checkin with CL: 3061735
Change 3062182 on 2016/07/22 by Stephan.Jiang
Change both animation bindings' widget name when renameing the widget so the slot content is still valid
Change 3062257 on 2016/07/22 by Stephan.Jiang
comments
Change 3062381 on 2016/07/22 by Nick.Darnell
Build - Adding #undef LOCTEXT_NAMESPACE to try and fix the build.
Change 3062924 on 2016/07/25 by Chris.Wood
Fix a crash in CrashReportClient that happens when the CrashReportReceiver is not responding to pings and there are no PendingReportDirectories.
This is a change in the UE4 stream depot based on a fix in the Fortnite stream depot -> JIRA FORT-27570
Change 3063017 on 2016/07/25 by Matt.Kuhlenschmidt
PR #2618: DebuggerCommand not recording PlayLocationString (Contributed by ungalyant)
Change 3063021 on 2016/07/25 by Matt.Kuhlenschmidt
PR #2619: added a search box to ModuleUI (Contributed by straymist)
Change 3063084 on 2016/07/25 by Matt.Kuhlenschmidt
Fix "YesToAll" when deleting referenced actors overriding the "YesToAll" state for other referenced messages.
https://jira.ol.epicgames.net/browse/UE-33651
#jira UE-33651
Change 3063091 on 2016/07/25 by Alex.Delesky
#jira UE-32949 - Truncating the hue inside the theme color block tooltip to only display whole numbers, to match how the color picker displays the hue value inside the hue scrubber.
Change 3063388 on 2016/07/25 by Matt.Kuhlenschmidt
Selection Perf:
- Fix large FName creation time when selecting thousands of objects
Change 3063568 on 2016/07/25 by Matt.Kuhlenschmidt
Selection Perf:
- Modified how USelection stores classes. Classes are now in a TSet and can be accessed efficiently using IsClassSelected. The old unused way of checking if a selection has a class by iterating through them is deprecated
- USelection no longer directly checks if an item is already selected with a costly n^2 search. The check is done by using the already existing UObject selected annotation
- Object property nodes no longer perform an n^2 check for object uniqueness when objects are added to details panels. This is now left up to the caller to avoid
- Eliminated useless work on FObjectPropertyNode::GetReadAddressUncached. If a read address list is not passed in we'll not attempt to the work to populate it
- Removed expensive checking for brush actors when any actor is selected
Change 3063749 on 2016/07/25 by Stephan.Jiang
Disallow naming the widgetanimation to the same name with a override function in uuserwidget, because it will trigger a breakpoint in Rename()
#jira UE-33711
Change 3064585 on 2016/07/26 by Matt.Kuhlenschmidt
Merging //UE4/Dev-Main to Dev-Editor (//UE4/Dev-Editor)
Change 3064612 on 2016/07/26 by Alex.Delesky
#jira UE-33712 - Deleting many assets at once will now batch SourceControl commands rather than executing one for each asset.
Change 3064647 on 2016/07/26 by Alexis.Matte
#jira UE-33274 dont hash the same file over and over when importing multiple asset from one fbx file.
Change 3064739 on 2016/07/26 by Matt.Kuhlenschmidt
Fixed typo
Change 3064795 on 2016/07/26 by Jamie.Dale
Fixed typo in FLocalizationModule::GetLocalizationTargetByName
#jira UE-32961
Change 3066461 on 2016/07/27 by Jamie.Dale
Enabled stable localization keys
Change 3066463 on 2016/07/27 by Jamie.Dale
Set "Build Engine Localization" to upload all cultures to ensure we don't lose translation due to the archive keying changes
Change 3066467 on 2016/07/27 by Jamie.Dale
Updated internationalization archives to store translations per-identity
This allows translators to translate each instance of a piece of text based upon their context, rather than requiring a content producer to go back and give the entry a unique namespace. It also allows us to optionally compile out-of-date translations, as they are now mapped to their source identity (namespace + key) rather than their source text.
Major changes:
- Added FLocTextHelper. This acts as a high-level API for uncompiled localized text, and replaces all the old ad-hoc loading/saving of manifests and archives, ensuring that everything is consistently using source control, and that older archives can be upgraded correctly to the new format. It also takes care of some of the quirks of our archives, such as native translations. All major localization commandlets have been updated to use FLocTextHelper.
- Moved FTextLocalizationResourceGenerator from Core to Internationalization. This also allows IJsonInternationalizationManifestSerializer and IJsonInternationalizationArchiveSerializer to be removed, and for FJsonInternationalizationManifestSerializer and FJsonInternationalizationArchiveSerializer to have all their functions become static.
- FTextLocalizationResourceGenerator being moved from Core meant that FTextLocalizationManager::LoadFromManifestAndArchives was also removed. This functionality is now handled by FTextLocalizationResourceGenerator::GenerateAndUpdateLiveEntriesFromConfig.
- The RepairLocalizationData commandlet has been removed. This existed to fix a change that pre-dated 4.0 so no such data should exist in the wild, and the commandlet couldn't be updated to work with the new API (we handle format upgrades in-place now).
- Removed FInternationalizationArchive::FindEntryBySource as it is no-longer safe to use. All existing code has been updated to use FInternationalizationArchive::FindEntryByKey instead.
Workflow changes:
- Archive conditioning now only adds new entries if they don't exist in the archive. This allows us to persist any existing translations, even if they're for old source text (caveat: native archives still update existing entries if the source is changed).
- PO export now sets the msgctx for each entry to be "namespace,key", rather than only doing it when the entry had key meta-data.
- PO import will now update both the source and translation stored in the archive to match the current PO data. This is the primary method by which stale source->translation pairs are updated.
- LocRes compilation may now optionally compile stale translations. There's an option controlling this (defaulted to off) that can be changed via the Localization Dashboard (or added to an existing config file).
Format changes:
- The archive version was bumped to 2.
- Archive entries now use the "Key" entry to store the key from the source text. Previously this "Key" entry was used to store the key meta-data, but that now exists within a "MetaData" sub-object. Loading handles this correctly based upon the archive version.
#jira UETOOL-897
#jira UETOOL-898
#jira UE-29481
Change 3066487 on 2016/07/27 by Matt.Kuhlenschmidt
Attempt to fix linux compilation
Change 3066504 on 2016/07/27 by Matt.Kuhlenschmidt
Fixed data tables with structs crashing due to recent editor selection optimizations
Change 3066886 on 2016/07/27 by Jamie.Dale
Added required data to accurately detect TZ (needed for DST)
#jira UE-28511
Change 3067122 on 2016/07/27 by Jamie.Dale
Added AsTime, AsDateTime, and AsDate overrides to BP to let you format a UTC time in a given timezone (default is the local timezone).
Previously you could only format times using the "invariant" timezone, which assumed that the time was already specified in the correct timezone for display.
Change 3067227 on 2016/07/27 by Jamie.Dale
Added a test to verify that the ICU timezone is set correctly to produce local time (including DST)
Change 3067313 on 2016/07/27 by Richard.TalbotWatkin
Fixed SplineComponent constructor so that old assets (prior to the property changes) load correctly if they had properties at default values.
#jira UE-33669 - Crash in Dev-Editor
Change 3067736 on 2016/07/27 by Stephan.Jiang
Border changes for experimental classes warning
Change 3067769 on 2016/07/27 by Stephan.Jiang
HERE BE DRAGONS
for experimental class warning
#UE-33780
Change 3068192 on 2016/07/28 by Alexis.Matte
#jira UE-33586 make sure we remove any false warning when running fbx automation test.
Change 3068264 on 2016/07/28 by Jamie.Dale
Removed some code that was no longer needed and could cause a crash
#jira UE-33342
Change 3068293 on 2016/07/28 by Alex.Delesky
#jira UE-33620 - Comments on constant and parameter nodes in the Material Editor will now persist when converting them.
Change 3068481 on 2016/07/28 by Stephan.Jiang
Adding Options to show/hide soft & hard references & dependencies in References Viewer
#jira UE-33746
Change 3068585 on 2016/07/28 by Richard.TalbotWatkin
Fix to Spline Mesh collision building so that geometry does not default to being auto-inflated in PhysX.
Change 3068701 on 2016/07/28 by Matt.Kuhlenschmidt
Fixed some issues with the selected classes not updating when objects are deselected
Change 3069335 on 2016/07/28 by Jamie.Dale
Fixed unintended error when trying to load a manifest/archive that didn't exist
Fixed a warning when trying to load a PO file that didn't exist
Change 3069408 on 2016/07/28 by Alex.Delesky
#jira UE-33429 - The editor should no longer hit an ensure if the user attempts to drop a tab into a tab well before the tab well has a chance to acknowledge its been dragged into a tab well.
Change 3069878 on 2016/07/29 by Jamie.Dale
Fixed include casing
#jira UE-33910
Change 3071807 on 2016/08/01 by Matt.Kuhlenschmidt
PR #2654: Fix the spell'ing of "diff'ing" and "diff'd". (Contributed by geary)
Change 3071813 on 2016/08/01 by Jamie.Dale
Fixed include casing
#jira UE-33936
Change 3072043 on 2016/08/01 by Jamie.Dale
Fixed FText formatting of pre-Gregorian dates
We now convert to an ICU UDate via an ICU GregorianCalendar, as UE4 and ICU have a different time scale for pre-Gregorian dates.
#jira UE-14504
Change 3072066 on 2016/08/01 by Jamie.Dale
PR #2590: FEATURE: Collapse/expand folders in the outliner (Contributed by projectgheist)
Change 3072149 on 2016/08/01 by Jamie.Dale
We no longer use the editor culture when running with -game
Change 3072169 on 2016/08/01 by Richard.TalbotWatkin
A couple of changes to the BSP code:
* Fixed longstanding issue where sometimes BSP geometry is not rebuilt correctly after editing it. This was due to poly normals not being recalculated after translating vertices in Geometry Mode.
* Fixed corruption to FPoly::iLink as it is overloaded to have two meanings: when building BSP, it represents the surface index of the next coplanar surface (and adding a new BSP node uses this to determine whether a new surface needs to be added or not). In other operations it represents an FPoly index, in general this is used more in editor geometry operations. This fixes various crashes which arose from rebuilding BSP resulting in invalid FPoly indices.
#jira UE-12157 - BSP brushes break when non-standard subtractive bsp brushes are used
#jira UE-32087 - Crash occurs when creating Static Mesh from Trigger Volume
Change 3072221 on 2016/08/01 by Jamie.Dale
Fixed "Launch On" not providing the correct cultures to StartCookByTheBookInEditor
#jira UE-33001
Change 3073389 on 2016/08/02 by Matt.Kuhlenschmidt
Added ability to vsync the editor. Disabled by default. Set r.VSyncEditor to 1 to enable it.
Reimplemented this change from the siggraph demo stream
Change 3073396 on 2016/08/02 by Matt.Kuhlenschmidt
Removed unused code as suggested by a pull request
Change 3073750 on 2016/08/02 by Richard.TalbotWatkin
Fixed formatting (broken in CL 3057895) in anticipation of merge from Main.
Change 3073789 on 2016/08/02 by Jamie.Dale
Added a way to mark text in text properties as culture invariant
This allows you to flag properties containing text that doesn't need to be gathered.
#jira UE-33713
Change 3073825 on 2016/08/02 by Stephan.Jiang
Material Editor: Highligh all Nodes connect to an input.
#jira UE-32502
Change 3073947 on 2016/08/02 by Stephan.Jiang
UMG Project settings to show/hide different classes and categories in Palette view.
--under Project Settings ->Editor->UMG Editor
Change 3074012 on 2016/08/02 by Stephan.Jiang
Minor changes and comments for CL: 3073947
Change 3074029 on 2016/08/02 by Jamie.Dale
Deleting folders in the Content Browser now removes the folder from disk
#jira UE-24303
Change 3074054 on 2016/08/02 by Matt.Kuhlenschmidt
Added missing stats to track pooled vertex and index buffer cpu memory
A new slate allocator was added to track memory usage for this case.
Change 3074056 on 2016/08/02 by Matt.Kuhlenschmidt
Renamed a few slate stats for consistency
Change 3074810 on 2016/08/02 by Matt.Kuhlenschmidt
Moved geometry cache asset type to the animation category. It is not a basic asset type
Change 3074826 on 2016/08/02 by Matt.Kuhlenschmidt
Fix a few padding and sizing issues
Change 3075322 on 2016/08/03 by Matt.Kuhlenschmidt
Settings UI improvements
* Added the ability to search through all settings at once
* Settings files which are not checked out are no longer grayed out. The editor now attempts to check out the file automatically if connected to source control and if that fails it marks the settings file writiable so it can save the setting properly
-------
* This change adds a refactor to the details panel to support multiple top level objects existing in the details panel at once instead of combining all passed in objects to a single common base class. This is disabled by default but can be turned on setting bAllowMultipleTopLevelObjects to true in FDetailsViewArgs when creating a details panel.
* Each top level object in a details panel will get their own customization instance. This made it necessary to deprecate a IDetailsView::GetBaseClass since there is no longer guaranteed to be one base class.
*Details panels can have their own customization for each "root object header" in order to customize the look of having multiple top level objects in the details panel.
Change 3075369 on 2016/08/03 by Matt.Kuhlenschmidt
Removed FBX scene as a top level option in asset filter menu in the content browser.
Change 3075556 on 2016/08/03 by Matt.Kuhlenschmidt
Mac warning fix
Change 3075603 on 2016/08/03 by Nick.Darnell
Adding two new plugins to engine, one for editor and one for runtime based testing. Currently the only consumer of these plugins is going to be the EngineTest project.
Change 3075605 on 2016/08/03 by Nick.Darnell
Functional Testing - Continued work on cleanup, reorganization, trying to improve the workflow for using the session browser.
Change 3076084 on 2016/08/03 by Jamie.Dale
Added basic support for localizing plugins
You can now localize plugins! There's no localization dashboard integration for this so it has to be done manually.
You need to define the localization targets your plugin uses in its .uplugin file, eg)
"LocalizationTargets": [
{
"Name": "Paper2D",
"LoadingPolicy": "Always"
}
]
"Name" should match a localization config under the Config/Localization folder for your plugin. These configs are set-up the same as any other localization config.
"LoadingPolicy" may be one of Never, Always, Editor, Game, PropertyNames, or ToolTips. This allows you to control under what conditions your localizations should be loaded (eg, if your plugin has both game and editor data, you can separate the editor data off into its own localization target that's only loaded by the editor).
UAT has been updated to support gathering from plugins. You can use the "IncludePlugins" flag to have it gather all plugins, or you can specify a whitelist of plugins to gather as an argument to "IncludePlugins", or alternatively, may blacklist certain plugins via "ExcludePlugins". It can now also support out-of-source gathering via the "UEProjectRoot" argument (previously it assumed that everything would be under the UE4 install/checkout directory).
UAT has been updated to support staging plugin LocRes files. It will stage any plugin targets that are enabled for a game/client build, and are also from a plugin that's enabled for your project.
#jira UE-4217
Change 3076123 on 2016/08/03 by Stephan.Jiang
Extend "Select all input nodes" function to general blueprint editor
Change 3077103 on 2016/08/04 by Jamie.Dale
Added support for underlined text rendering (including with drop-shadows)
FTextBlockStyle can now specify a brush to use to draw an underline for text (a suitable default would be "DefaultTextUnderline" from FCoreStyle). When a brush is specified here, we inject FSlateTextUnderlineLineHighlighter highlights into the text layout to draw the underline under the relevant pieces of text, using the correct color, position, and thickness.
FSlateFontCache::GetUnderlineMetrics and FSlateFontRenderer::GetUnderlineMetrics have been added to handle getting the underline metrics (which are slightly different to the baseline).
This change also adds FTextLayout::RemoveRunRenderer and FTextLayout::RemoveLineHighlight to fix some bad assumptions that FSlateEditableTextLayout and FTextBlockLayout were making about ownership of run renderers and line highlighters that could cause them to remove instances they didn't own (such as the new underline highlighter) when updating things like the cursor position or highlight.
Change 3077842 on 2016/08/04 by Jamie.Dale
Fixed fallout from API changes
Change 3077999 on 2016/08/04 by Jamie.Dale
Ensured that BULKDATA_SingleUse is only set by UFontBulkData::Serialize when loading
This prevents it being incorrectly set by other operations, such as counting memory used by font data.
#jira UE-34252
Change 3078000 on 2016/08/04 by Trung.Le
Categories VREditor-specific UMG widget assets as "VR Editor"
#jira UE-34134
Change 3078056 on 2016/08/04 by Nick.Darnell
Build - Fixing a mac compiler warning, reodering constructor initializers.
Change 3078813 on 2016/08/05 by Nick.Darnell
Reorganizing editor tests, establishing plugins in the EditorTest project that will house the tests.
Change 3078818 on 2016/08/05 by Nick.Darnell
Additional rename and cleanup associated with test moving.
Change 3078819 on 2016/08/05 by Nick.Darnell
Removing the Oculus performance automation test, not running, and was unclaimed.
Change 3078842 on 2016/08/05 by Nick.Darnell
Continued reorganizing tests.
Change 3078897 on 2016/08/05 by Nick.Darnell
Additional changes to get some moved tests compiling
Change 3079157 on 2016/08/05 by Nick.Darnell
Making it possible to browse provider names thorugh the source control module interface.
Change 3079176 on 2016/08/05 by Stephan.Jiang
Add shortcut Ctrl+Shift+Space to rotate through different viewport options
#jira UE-34140
Change 3079208 on 2016/08/05 by Stephan.Jiang
Fix new animation name check in UMG
Change 3079278 on 2016/08/05 by Nick.Darnell
Fixing the build
Change 3080555 on 2016/08/08 by Matt.Kuhlenschmidt
Merging //UE4/Dev-Main to Dev-Editor (//UE4/Dev-Editor)
Change 3081155 on 2016/08/08 by Nick.Darnell
Fixing some issues with the editor tests / runtime tests under certain build configs.
Change 3081243 on 2016/08/08 by Stephan.Jiang
Add gesture in LevelViewport to switch between Top/Bottom...etc.
Change 3082226 on 2016/08/09 by Matt.Kuhlenschmidt
Work around animations not playing in paragon due to bsp rebuilds (UE-34391)
Change 3082254 on 2016/08/09 by Stephan.Jiang
DragTool_ViewportChange init changes
[CL 3082411 by Matt Kuhlenschmidt in Main branch]
2016-08-09 11:28:56 -04:00
void SLevelEditor : : SummonLevelViewportViewOptionMenu ( const ELevelViewportType ViewOption )
{
FLevelEditorContextMenu : : SummonViewOptionMenu ( SharedThis ( this ) , ViewOption ) ;
}
2014-03-14 14:13:41 -04:00
const TArray < TSharedPtr < IToolkit > > & SLevelEditor : : GetHostedToolkits ( ) const
{
return HostedToolkits ;
}
TArray < TSharedPtr < ILevelViewport > > SLevelEditor : : GetViewports ( ) const
{
TArray < TSharedPtr < ILevelViewport > > OutViewports ;
for ( int32 TabIndex = 0 ; TabIndex < ViewportTabs . Num ( ) ; + + TabIndex )
{
TSharedPtr < FLevelViewportTabContent > ViewportTab = ViewportTabs [ TabIndex ] . Pin ( ) ;
if ( ViewportTab . IsValid ( ) )
{
2016-02-08 13:35:28 -05:00
const TMap < FName , TSharedPtr < IViewportLayoutEntity > > * LevelViewports = ViewportTab - > GetViewports ( ) ;
2014-03-14 14:13:41 -04:00
if ( LevelViewports ! = NULL )
{
2016-02-08 13:35:28 -05:00
for ( auto & Pair : * LevelViewports )
2014-11-13 22:30:33 -05:00
{
2016-02-08 13:35:28 -05:00
TSharedPtr < SLevelViewport > Viewport = Pair . Value - > AsLevelViewport ( ) ;
if ( Viewport . IsValid ( ) )
{
OutViewports . Add ( Viewport ) ;
}
2014-11-13 22:30:33 -05:00
}
}
2014-03-14 14:13:41 -04:00
}
}
2016-03-11 17:29:00 -05:00
// Also add any standalone viewports
{
for ( const TWeakPtr < SLevelViewport > & StandaloneViewportWeakPtr : StandaloneViewports )
{
const TSharedPtr < SLevelViewport > Viewport = StandaloneViewportWeakPtr . Pin ( ) ;
if ( Viewport . IsValid ( ) )
{
OutViewports . Add ( Viewport ) ;
}
}
}
2014-03-14 14:13:41 -04:00
return OutViewports ;
}
2015-05-14 12:08:55 -04:00
TSharedPtr < ILevelViewport > SLevelEditor : : GetActiveViewportInterface ( )
{
return GetActiveViewport ( ) ;
}
2014-03-14 14:13:41 -04:00
TSharedPtr < class FAssetThumbnailPool > SLevelEditor : : GetThumbnailPool ( ) const
{
return ThumbnailPool ;
}
2015-07-15 04:55:45 -04:00
void SLevelEditor : : AppendCommands ( const TSharedRef < FUICommandList > & InCommandsToAppend )
{
LevelEditorCommands - > Append ( InCommandsToAppend ) ;
}
2014-03-14 14:13:41 -04:00
UWorld * SLevelEditor : : GetWorld ( ) const
{
return World ;
}
void SLevelEditor : : HandleEditorMapChange ( uint32 MapChangeFlags )
{
ResetViewportTabInfo ( ) ;
if ( WorldSettingsView . IsValid ( ) )
{
WorldSettingsView - > SetObject ( GetWorld ( ) - > GetWorldSettings ( ) , true ) ;
}
}
2015-01-06 13:49:19 -05:00
2015-02-21 17:44:56 -05:00
void SLevelEditor : : OnActorSelectionChanged ( const TArray < UObject * > & NewSelection , bool bForceRefresh )
2015-01-06 13:49:19 -05:00
{
for ( auto It = AllActorDetailPanels . CreateIterator ( ) ; It ; + + It )
{
TSharedPtr < SActorDetails > ActorDetails = It - > Pin ( ) ;
if ( ActorDetails . IsValid ( ) )
{
2015-02-21 17:44:56 -05:00
ActorDetails - > SetObjects ( NewSelection , bForceRefresh ) ;
2015-01-06 13:49:19 -05:00
}
else
{
// remove stray entries here
}
}
2015-01-26 18:13:04 -05:00
}
2016-03-11 17:29:00 -05:00
void SLevelEditor : : AddStandaloneLevelViewport ( const TSharedRef < SLevelViewport > & LevelViewport )
{
CleanupPointerArray ( StandaloneViewports ) ;
StandaloneViewports . Add ( LevelViewport ) ;
}
TSharedRef < SWidget > SLevelEditor : : CreateActorDetails ( const FName TabIdentifier )
{
Copying //UE4/Dev-Sequencer to //UE4/Dev-Main (Source: //UE4/Dev-Sequencer @ 3237992)
#lockdown Nick.Penwarden
#rb none
==========================
MAJOR FEATURES + CHANGES
==========================
Change 3136778 on 2016/09/22 by Max.Preussner
Merged Dev-Main to Dev-Sequencer
Change 3179199 on 2016/10/29 by Max.Chen
Sequencer: Fade only oin the current player context, not on all worlds.
Copy from Release-4.14. Copied fix to FadeTrackInstance to FadeTemplate.
#jira UE-37939
Change 3179340 on 2016/10/29 by Max.Preussner
PS4Media: Fixed audio track dropping first frame
Change 3180391 on 2016/10/31 by Max.Preussner
UdpMessaging: nulling out message processor in destructor
Change 3180459 on 2016/10/31 by Max.Chen
Sequencer: Fix copy/paste crash in UMG.
Change 3180607 on 2016/10/31 by Andrew.Rodham
UMG: Fixed parent bindings not being adhered to correctly. Fixed slot widgets that get recreated not having their object bindings updated.
#jira UE-38021
#jira UE-38018
Change 3181405 on 2016/11/01 by Lina.Halper
#ANIM/SEQUCNER: sequencer animation blending support including additive
- created multiway blend node - extension of two way blend
- created anim sequencer instance to be used in sequencer for blending multiple animations and additives
- hooked up to sequencer track players
- renamed AnimationNode_TwoWay to AnimNode_TwoWay to be consistent with other node names.
- Make sure you can't choose montage when selecting animation in Sequencer
- Fixed Anim BP playing with multi group montages
#code review: Max.Chen
Change 3181870 on 2016/11/01 by Andrew.Rodham
Sequencer: Made sequence pointers stored in sequence template instances weak object ptrs
- We can't guarantee the lifetime of the objects here
#jira UE-38051
Change 3182851 on 2016/11/02 by Andrew.Rodham
Sequencer: Assert that a GetScriptStructImpl has been overridden correctly on templates
Change 3182852 on 2016/11/02 by Andrew.Rodham
Sequencer: Added 'Restore Animated State' command (CTRL+R) and button to sequencer toolbar
Change 3183161 on 2016/11/02 by Max.Preussner
Media: Added supported file extensions & URL schemes
Change 3183476 on 2016/11/02 by Max.Preussner
Merged Dev-Main to Dev-Sequencer
Change 3185181 on 2016/11/03 by Max.Chen
Sequencer: Refactor general options button menu into play options and select options. Add Select Sections in Selection Range and Select All in Selection Range.
Fix issues with convert to spawanble and convert to possessable. Convert to possessable now deletes the spawn track so that it's not left lying around, which when deleted would end up deleting the converted possessable actor.
#jira UE-37854
Change 3185184 on 2016/11/03 by Max.Chen
Sequencer: Add hotkey to toggle camera cut track lock/unlock camera.
Change 3185409 on 2016/11/03 by Max.Chen
Sequencer: Fix crash in skeletal mesh section drawing.
#jira UE-38090
Change 3185444 on 2016/11/03 by Max.Chen
UMG: Expose label browser for UMG
Change 3185662 on 2016/11/03 by Max.Chen
Sequencer: Paste track fixes.
- Loosen restrictions on paste track destination. This allows the paste to operate on spawnables and on properties that don't have an explicit Set function.
- Allow pasting onto all types of tracks, not just property tracks.
- Fix when pasting the copied tracks onto multiple objects.
Tested pasting transform tracks from possessable to spawnables.
Tested pasting skeletal animation tracks from spawnable to possessables.
#jira UETOOL-1206
Change 3185920 on 2016/11/03 by Andrew.Porter
Adding test content for multiple audio video tracks.
Change 3186404 on 2016/11/03 by Max.Preussner
Merged Dev-Main to Dev-Sequencer
Change 3187957 on 2016/11/04 by Max.Preussner
MediaAssets: Exposed CanPlaySource in BP
Change 3187988 on 2016/11/05 by Max.Preussner
Fixed documentation
Change 3188035 on 2016/11/05 by Max.Chen
Sequencer: Show camera name in cinematic viewport.
#jira UE-28115
Change 3188603 on 2016/11/07 by Max.Preussner
WmfMedia: Added missing nullptr check
Change 3188788 on 2016/11/07 by Max.Preussner
MediaPlayerEditor: Removed property buttons from PlatformMediaSource customization (UE-37948)
#jira UE-37948
Change 3188808 on 2016/11/07 by Max.Preussner
MediaAssets: Moved media player implementation into reusable class
Also moved overlay text handling into separate asset.
Change 3188919 on 2016/11/07 by Max.Preussner
Media: Changed the handling of invalid media and media that failed to open (UE-38014)
#jira UE-38014
Change 3189112 on 2016/11/07 by Max.Preussner
WmfMedia: Added rudimentary H.265 HEVC support for Windows 10 (UE-38324)
#jira UE-38324
Change 3189376 on 2016/11/07 by Max.Preussner
WmfMedia: Removed Windows specific code from factory module
Change 3189381 on 2016/11/07 by Max.Preussner
Atrac9Audio: Fixed log category
Change 3189497 on 2016/11/07 by Max.Preussner
Media: Added binary sinks support
Change 3189666 on 2016/11/07 by Max.Chen
Curve Editor: Add option to show time in frame numbers
#jira UE-27210
Change 3190339 on 2016/11/08 by Max.Preussner
MediaAssets: Removed SetDesiredPlayerName since the field is public
Change 3190342 on 2016/11/08 by Andrew.Porter
Adding sequencer test content for animation blueprint
Change 3190398 on 2016/11/08 by Max.Preussner
Media: Renamed binary tracks to metadata tracks
Change 3190458 on 2016/11/08 by andrew.porter
Updating Skeleton with new slots.
Change 3191167 on 2016/11/08 by Max.Chen
Sequencer: Fix crash in validating paste tracks buffer. Validate the tracks instead of actually pasting into temp.
#jira UE-38353
Change 3191336 on 2016/11/09 by Andrew.Rodham
Slate: Added the ability to set and retrieve a host tab manager from a details view
Change 3191338 on 2016/11/09 by Andrew.Rodham
Editor: Added the ability to extend default layouts
- FLayoutExtender can be used to provide basic tab layout extensions on default themes.
- This can be used by external plugins to inject tabs to other interfaces where necessary.
- Currently this is supported by the blueprint editor's unified component layout, and the level editor layout.
Change 3191346 on 2016/11/09 by Andrew.Rodham
Sequencer: Added new (experimental) ActorSequence module and editor
- Sequences can now be added to actors via the UActorSequenceComponent.
- An embedded sequencer will appear on details panels, with the option to break it out into a tab.
- Separated common playback elements from ULevelSequencePlayer into UMovieSceneSequencePlayer, from which specific players can derive.
- The majority of level editorintegration with sequencer has been separated out into a separate singleton class that can manage multiple sequencers.
- All movie scene data now defaults to instanced, such that it can be duplicated and instanced correctly.
- Added read-only mode for sequencer which is used for actor sequence components that come from a blueprint archetype to prevent erroneous editing.
Change 3191387 on 2016/11/09 by Andrew.Rodham
Orion: Fixed deprecation warnings
Change 3191388 on 2016/11/09 by Andrew.Rodham
Orion: Added dependency on MovieScene module
Change 3191403 on 2016/11/09 by Andrew.Rodham
Sequencer: Fix initialization order warning
Change 3191428 on 2016/11/09 by Andrew.Rodham
Sequencer: Added missing include
Change 3191510 on 2016/11/09 by Andrew.Rodham
Header include fixes
Change 3191599 on 2016/11/09 by Max.Chen
Sequencer: Add option to lock the playback range per movie scene. The toggle is stored as editor only and should be a saved value so that it can persist as the asset is passed from user to user.
#jira UE-34677
Change 3191664 on 2016/11/09 by Andrew.Rodham
Sequencer: Ensure keyframe handlers are only added once
Change 3192373 on 2016/11/09 by Max.Preussner
MediaAssets: Fixed regression: playlists no longer open
Change 3192408 on 2016/11/09 by Max.Preussner
MediaAssets: Fixed OpenPlaylistIndex crashing
Change 3192878 on 2016/11/09 by Max.Chen
Camera Rig: Fix log spam trying to unregister component.
#jira UE-38435
Change 3192989 on 2016/11/10 by Andrew.Rodham
Slate: Added constructor to appease old VS2013 compiler warning about non-constructible type
Change 3192991 on 2016/11/10 by Andrew.Rodham
Sequencer: Moved lambda out-of-line to fix static analysis warning
Change 3193420 on 2016/11/10 by Max.Preussner
MediaAssets: Replaced CopyToResolveTarget with new TransitionTarget API
Change 3193478 on 2016/11/10 by Max.Chen
Sequencer: Moved Fix Actor References back under the General Options menu.
Change 3193870 on 2016/11/10 by Max.Preussner
MediaPlayerEditor: Removed additional buttons in per-platform overrides (UE-37948)
#jira UE-37948
Change 3193873 on 2016/11/10 by Lina.Halper
- Sequencer fix with anim instance reinit
- Fixed TMap issue with memory by changing to pointer from ref.
#code review: Max.Chen
Change 3194184 on 2016/11/10 by Max.Chen
Sequencer: Only expand section when setting keys when there are keys. Otherwise if you set the default value while the time position is outside of the section range, the section will expand, which seems undesirable.
Change 3194187 on 2016/11/10 by Max.Chen
Sequencer: Backwards compatibility if a track no longer supports multiple rows, its sections are split to other duplicate tracks.
Change 3194191 on 2016/11/10 by Max.Chen
Sequencer: Add audio volume and pitch curves.
#jira UE-30009
Change 3194256 on 2016/11/10 by Max.Chen
Merging //UE4/Dev-Main to Dev-Sequencer (//UE4/Dev-Sequencer)
Change 3194282 on 2016/11/10 by Max.Chen
Movie Capture: Add some frame rate bounds. Max frame rate for recording is 200. Min is 1.
#jira UE-38502
Change 3194355 on 2016/11/11 by Max.Chen
Sequencer: Minimum handle size for time slider scrubber.
#jira UE-34676
Change 3194767 on 2016/11/11 by Max.Chen
Sequencer: Mark duplicated tracks as changed so that their template gets regenerated.
Change 3195094 on 2016/11/11 by Max.Preussner
Media: Removing game thread dependencies
This change removes game thread dependencies from all media players so that we can use the media framework for startup movies where the game thread is block while loading the Engine. The players now have two new methods, TickPlayer and TickVideo, which need to be called from the external code that owns the players. On the Engine side, this is taken care of by UMediaPlayer, which calls TickPlayer from the game thread and TickVideo from the render thread. In startup movies, this will be taken care of by a special thread.
AvfMedia: This change does not fully remove game thread dependencies in AvfMediaPlayer yet. There are some async callbacks scheduled to execute on the game thread that need to be refactored. The execution of these events should be performed in TickPlayer instead.
All platform owners, please review these changes for your platform and make sure that everything still works. I have not had time to test all platforms yet.
Change 3195396 on 2016/11/11 by Max.Preussner
AvfMedia: Removed remaining game thread dependencies
Change 3195670 on 2016/11/11 by Max.Preussner
MediaUtils: Renamed function
Change 3195690 on 2016/11/11 by Max.Preussner
MediaAssets: MediaPlayerBase instance is now a field instead of pointer.
Change 3195802 on 2016/11/11 by Max.Preussner
Media: Removed UMediaPlayer::GetNativePlayer
Change 3195843 on 2016/11/11 by Max.Preussner
Kismet: Fixed non-unity
Change 3195851 on 2016/11/11 by Max.Preussner
Fixed typo.
Change 3195854 on 2016/11/11 by Max.Preussner
MediaUtils: Added missing forward declaration
Change 3195937 on 2016/11/11 by Max.Chen
Media: CIS Fix
Change 3196120 on 2016/11/13 by Max.Chen
Sequencer: Weight curve for skeletal animation section.
Changed skeletal template evaluation so that it works with multiple animation tracks. The shared track clears all the weights, the section gathers up all the data, and the shared track evaluates the data. Otherwise, the multiple track evaluations would conflict with each other in setting states back and forth.
#jira UE-38374, UEFW-128
Change 3196265 on 2016/11/13 by Max.Chen
Sequencer: Fix audio waveforms so that they're regenrated when audio start time is changed.
#jira UE-38543
Change 3196421 on 2016/11/14 by Andrew.Rodham
Sequencer: Fixed modified tracks not being written to the transaction buffer when replacing object bindings
#jira UE-38423
Change 3197131 on 2016/11/14 by Max.Chen
Sequencer: Null checks.
#jira UE-38570, UE-38593
Change 3197209 on 2016/11/14 by Max.Chen
Cine Camera: Reset focus smoothing interpolation on PostEditChangeProperty. This fixes an issue where if you enable focus smoothing, the manual focus distance that is input isn't used since the interpolation happens from the last current focus distance.
#jira UE-27055
Change 3198691 on 2016/11/15 by Max.Chen
Sequence Recorder: Optimize record transforms by setting all the keyframes at once. Also, added option to toggle removing redundant keyframes from the recorded tracks.
#jira UE-38489
Change 3198711 on 2016/11/15 by andrew.porter
Adding test content for MEdia Framework Track Switching.
Change 3199174 on 2016/11/15 by Lina.Halper
Sequencer backward compatibility fix with root motion
Make sure you could remove root motion fine
#jira : UE-38591
Change 3199260 on 2016/11/15 by tim.gautier
Updated QA-Media_TrackSwitch - changed Trigger Collision to only detect overlap from PlayerPawn
Change 3199663 on 2016/11/15 by Max.Chen
Anim Sequencer: Fix deprecation warning for bCanUseParallelUpdateAnimation. Updated to use bUseMultiThreadedAnimationUpdate.
Change 3199727 on 2016/11/15 by Max.Chen
Matinee to Level Sequence: Set default scale when converting matinee move tracks to sequencer.
#jira UE-38688
Change 3199847 on 2016/11/16 by Max.Chen
Sequencer: Add menu option to reduce keys of all sections in the current level sequence
Change 3200351 on 2016/11/16 by Max.Chen
Level Editor/Sequencer: Fixes to allow for component keyframing. The transform track operates on the components that changed, not the actor. The level editor viewport broadcasts begin/end movement on the components that changed.
#jira UE-38649, UE-38646
Change 3200474 on 2016/11/16 by Max.Chen
Sequencer: Move reduce keys to section context menu.
Change 3200888 on 2016/11/16 by Max.Chen
Sequencer: Clamp skeletal animation evaluation remapping of time to section bounds. This is necessary when evaluating nearest is enabled and the time is beyond the section bounds.
Also, set the shared track template to have higher priority so that it always clears/initializes weights before each section's template adds section params for evaluation.
Change 3201633 on 2016/11/17 by Max.Chen
Matinee to Level Sequence: Fix matinee 3d scale track conversion to level sequence.
Also, added paste matinee vector track to sequencer's vector track.
#jira UE-38688
Change 3202458 on 2016/11/17 by Max.Chen
Sequencer: Fix track editor commands getting unregistered when switching from one level sequence to another. The sequence of events is: track editor commands get bound when a level sequence is edited. When switching to another level sequence, the existing track editor is released after the new one is registered, causing the commands to ultimately get unbound.
#jira UE-38693
Change 3202606 on 2016/11/17 by Max.Chen
Actor Sequence: Null check in CanPossessObject for a component's owner.
#jira UE-38514
Change 3203522 on 2016/11/17 by Max.Chen
Sequencer: Audio start time deprecated in favor of start offset which is an offset into the audio clip. Also, limit the start offset to positive values since you can just crop into the audio clip by dragging the section's start time.
Audio track no longer supports multiple rows (should have been checked in along with the audio volume and pitch multiplier curves).
#jira UE-38549, UE-38554, UE-38547
Change 3203863 on 2016/11/18 by Andrew.Rodham
Engine: Ensure that world settings actor is considered by network object list when sorting the actor list for a level
Change 3203865 on 2016/11/18 by Andrew.Rodham
Sequencer: Fixed play rate track interaction between servers and clients
- The logic for evaluation was previously flawed (it would only run in editor builds). Play rate is now only evaluated on servers and standalone clients, with the time dilation being replicated to network clients.
Change 3203900 on 2016/11/18 by Andrew.Rodham
Sequencer: Changed CreateLevelSequencePlayer to create a transient level sequence actor
#jira UE-37277
Change 3205038 on 2016/11/18 by Max.Preussner
Slate: Corrected comment
Change 3205046 on 2016/11/18 by Max.Preussner
WmfMedia: Added missing nullptr check
#jira UE-38825
Change 3205073 on 2016/11/18 by Max.Chen
Sequencer: Fix audio upgrade case when start time is 0.
Change 3205277 on 2016/11/19 by Max.Preussner
Merging //UE4/Dev-Main to Dev-Sequencer (//UE4/Dev-Sequencer)
Please take a look at SequencerEdMode.cpp and Sequencer.cpp. I ended up accepting latest Dev-Sequencer, which seemed to be the right thing to do.
Change 3205465 on 2016/11/20 by Max.Preussner
MovieScene: Fixed non-unity build
Change 3205467 on 2016/11/20 by Max.Preussner
Engine: Fixed spelling
Change 3206264 on 2016/11/21 by Max.Preussner
Kismet: Added missing forward declaration
Change 3206493 on 2016/11/21 by Max.Preussner
PS4Media: Added remaining changes for removing game thread dependencies
Change 3206512 on 2016/11/21 by Andrew.Porter
Adding test content to QAGame for Sequencer animation weight blending.
Change 3206529 on 2016/11/21 by Lina.Halper
Fixed anim notifes to work in Sequencer Instance
- Give proper delta in editor preview
- Make sure not to recreate AnimInstance
#jira: UE-38849
#code review:Max.Chen
Change 3206552 on 2016/11/21 by Max.Preussner
QAGame: Enabled looping by default
Change 3207462 on 2016/11/22 by andrew.porter
QAGame: updating QA-Sequencer with changes to animation blending test cases
Change 3207499 on 2016/11/22 by tim.gautier
Added Streaming Sources, added Streaming Source options for BP_MediaPlayer. Specified Media Option Categories with BP_MediaPlayer to clean up details panel.
#jira none
Change 3207571 on 2016/11/22 by Max.Chen
Curve Editor: Expose curve editor settings to Editor Preferences.
#jira UE-38907
Change 3207690 on 2016/11/22 by Max.Chen
Sequencer: Speculative crash fix for switching UMG animations.
#jira UE-29333
Change 3207744 on 2016/11/22 by tim.gautier
Removed unnecessary nodes from BP_MediaPlayer. Created a variable visible in the Details Panel to allow the user to specify a URL to Stream media without specifying a Source in-editor.
#jira none
Change 3207935 on 2016/11/22 by Max.Chen
Sequencer: Temporary fix for skeletal animation track scrubbing. Verified that anim notifies still fire when playing and scrubbing.
#jira UE-38964
Change 3207938 on 2016/11/22 by Max.Chen
Sequence Recorder: Set reduce keys back to true so that there's no change in current behavior. This should be toggled off for performance reasons but in general is nice to have reduced keys.
Change 3207950 on 2016/11/22 by Lina.Halper
- Fixed so that mesh space additive won't show up in sequencer
- Added warning if you change type later or existing ones
#jira: UE-38062?
Change 3208278 on 2016/11/22 by andrew.porter
QAGame: Adjusting level blueprint for test case.
Change 3208285 on 2016/11/22 by andrew.porter
QAGame: adding SequencerBP animation blueprint.
Change 3208538 on 2016/11/23 by Max.Chen
Actor Sequence: Fix plugin filename.
Change 3208916 on 2016/11/23 by Max.Chen
Sequencer: Fix material parameter initialization so that the value is retrieved from the material instance and not the parent material.
#jira UE-34317
Change 3208924 on 2016/11/23 by Max.Chen
Save As: Cancel should not save over the existing asset. It should just return.
Change 3208939 on 2016/11/23 by andrew.porter
QAGame: reset some content back to its default state for testing
Change 3209053 on 2016/11/23 by Max.Chen
Sequencer: Ensure the section id is unique.
Change 3209161 on 2016/11/23 by Max.Chen
Save As: Follow up fix for cancelling save as.
Change 3210540 on 2016/11/26 by Max.Preussner
WmfMedia: Reworked fallback stride calculations to fix issues with some exotic video formats
Change 3210546 on 2016/11/26 by Max.Preussner
WmfMedia: Fixed NV12 vertical buffer alignment
Change 3211567 on 2016/11/28 by Max.Preussner
Merging //UE4/Dev-Main to Dev-Sequencer (//UE4/Dev-Sequencer)
Step 1 of 2
Change 3212408 on 2016/11/28 by Max.Preussner
Fixed fallout from Dev-Main merge
Change 3212456 on 2016/11/28 by Max.Preussner
ActorSequenceEditor: Removed monolithic header dependencies
Change 3212562 on 2016/11/28 by Max.Preussner
ActorSequenceEditor: Removed monolithic header usage
Change 3212649 on 2016/11/28 by Max.Chen
Fix CIS
Change 3212671 on 2016/11/28 by Max.Chen
Sequencer: Add option to restore to the pre animated state.
#jira UE-38862
#2953
Change 3212672 on 2016/11/28 by Max.Chen
Sequencer: Select object binding node corresponding to selected components and vice versa (select components in level when object binding node is selected)
Change 3212673 on 2016/11/28 by Max.Chen
Sequencer: Follow-up fix for component keyframing - key area needs to be updated by component.
#jira UE-38649
Change 3212676 on 2016/11/28 by Max.Chen
Level Editor: PostEditMove should only be called on the actor if it is moved.
#jira UE-38646
Change 3212688 on 2016/11/29 by Max.Chen
Sequencer: Force refresh event parameters customization when struct contents change but not a full refresh when struct child contents change.
#jira UE-39094
Change 3212831 on 2016/11/29 by Andrew.Rodham
Disabled ActorSequenceEditor plugin by default while it's experimental
Change 3213219 on 2016/11/29 by Max.Preussner
AvfMedia: Added missing include
Change 3213333 on 2016/11/29 by Andrew.Rodham
Sequencer: Added the ability to override bindings when playing back a level sequence on a level sequence actor
#jira UETOOL-746
Change 3213905 on 2016/11/29 by Max.Preussner
More IWYU fixes for macOS
Change 3214203 on 2016/11/29 by Michael.Gay
Some demo files to test Sequencer timing.
Change 3214205 on 2016/11/29 by Max.Preussner
More IWYU fixes for macOS
Change 3214548 on 2016/11/29 by Max.Preussner
More IWYU fixes for macOS
Change 3214564 on 2016/11/29 by Max.Preussner
More IWYU fixes
Change 3214567 on 2016/11/29 by Max.Chen
More IWYU fixes for Win32
Change 3214573 on 2016/11/29 by Max.Preussner
More IWYU fixes
Change 3214576 on 2016/11/29 by Max.Preussner
More IWYU fixes
Change 3214621 on 2016/11/30 by Max.Preussner
Atrac9Decoder: Fixed log category declaration
Change 3214630 on 2016/11/30 by Max.Preussner
More IWYU fixes
Change 3214747 on 2016/11/30 by Andrew.Rodham
Sequencer: Fixed shadow variable
Change 3214957 on 2016/11/30 by Andrew.Rodham
Core: Changed Algo::Find to use TElementType
- This allows it to support c style arrays
Change 3215127 on 2016/11/30 by Andrew.Rodham
Sequencer: Made burn-in options and init settings instanced
- This ensures they work correctly when defined on archetypes and blueprints
#jira UE-38645
Change 3215754 on 2016/11/30 by Max.Chen
Sequencer: Fix skeletal animation track evaluating tracks in the wrong time space. Cache the evalulation time and weight value in each section's template and then execute with those values in the shared track's template.
#jira UE-39145
Change 3216603 on 2016/12/01 by Max.Chen
Sequencer: Set audio volume/pitch only if changed.
Change 3216613 on 2016/12/01 by Max.Chen
Sequencer: Add component selector when there are multiple components that have sockets. This fixes a crash when there are multiple components to attach to.
#jira UE-39167
Change 3217175 on 2016/12/01 by Max.Chen
Sequencer: Set skeletal animation track evaluation to be upper bound exclusive. This gives better behavior when two clips butt up against each other since the sections would overlap in time and evaluation would normalize they weighted contribution of each.
#jira UE-37184
Change 3217292 on 2016/12/01 by Max.Chen
Sequencer: Rework upgrading track rows to include overlapping sections. For skeletal animation sections, set weight values based on the evaluation bounds since there was no blending prior to 4.15.
Change 3217860 on 2016/12/01 by Max.Preussner
Media: Fall-through for media options
Change 3217965 on 2016/12/01 by Max.Preussner
MediaAssets: Renamed media option name
Change 3218470 on 2016/12/01 by Max.Chen
Sequencer: Fix start time deprecation value so that negative values are supported.
#jira UE-39259
Change 3218473 on 2016/12/01 by Max.Chen
Sequencer: Fix crash if start seq length is negative.
Change 3219021 on 2016/12/02 by Max.Chen
Sequencer: Add multiply and divide to transform box.
Change 3219374 on 2016/12/02 by Max.Chen
Sequencer: Teleport simulating components when moving them through the transform track. This fixes bugs with recording simulating actors (ie. vehicle game) where recorded actors don't playback with the recorded positions and there are warnings about attempting to move a fully simulated skeletal mesh.
#jira UE-38442, UE-38444, UE-38852
Change 3219638 on 2016/12/02 by Max.Preussner
Projects: Fixed error message
Change 3220584 on 2016/12/03 by Andrew.Rodham
Sequencer: Blueprint generated classes are now always removed from level sequences on load in the editor
- This ensures that old (and perhaps corrupt) BP generated classes are destroyed
#jira UE-39173
Change 3220585 on 2016/12/03 by Andrew.Rodham
Editor: Fix EditInstanceOnly properties that aren't variables on the generated class being editable in blueprints
Change 3220973 on 2016/12/04 by Max.Chen
Fix CIS
Change 3222833 on 2016/12/05 by Max.Chen
Sequencer: Fixed some recorded components not being generated.
#jira UE-34289
Change 3224450 on 2016/12/06 by Max.Chen
Sequencer: Fix convert spawnable to posessable. Logic for setting the parent was mistakenly removed in runtime eval.
#jira UE-39419
Change 3225301 on 2016/12/07 by Max.Preussner
AvfMedia: Added settings class
Change 3225304 on 2016/12/07 by Max.Preussner
Fixed typo
Change 3225723 on 2016/12/07 by Max.Preussner
Fixed typo.
Change 3225871 on 2016/12/07 by Max.Preussner
Forgot to check in
Change 3225932 on 2016/12/07 by Max.Preussner
Added missing header
Change 3226266 on 2016/12/07 by Max.Preussner
Media: Fixed various module dependencies
Change 3226451 on 2016/12/07 by Max.Preussner
Include fixes
Change 3226455 on 2016/12/07 by Max.Preussner
LevelSequence: Added missing include
Change 3227135 on 2016/12/08 by Max.Preussner
Merging //UE4/Dev-Main to Dev-Sequencer (//UE4/Dev-Sequencer)
Change 3227143 on 2016/12/08 by Max.Preussner
LevelSequencer: Added missing header
Change 3227731 on 2016/12/08 by Max.Preussner
LevelSequencer: Added missing include
Change 3228222 on 2016/12/08 by Max.Preussner
UBT: Fixed delay load library support for remote compilation to macOS
Change 3228266 on 2016/12/08 by Max.Preussner
PluginBrowser: Added missing includes
Change 3228755 on 2016/12/09 by Andrew.Rodham
Sequencer: Fixed copy-paste of event keys
- Also added a key-value iterator to TCurveInterface (both const and non-const)
#jira UE-39526
Change 3228777 on 2016/12/09 by Luke.Thatcher
[PLATFORM] [PS4] [!] Reimplement fixes from Fortnite for PS4 media framework in //UE4/Dev-Sequencer.
Based on Original CL 3227137
- Event callback from AvPlayer was enqueing the processing of events over to the player thread, so the "State" member of FPS4MediaPlayer doesn't get updated until the following frame. This breaks cases with multiple calls to SetRate within a single frame.
- Removed time check in FPS4MediavideoSampler::Tick. There are cases where the time check failed, even when a new frame was available from the AvPlayer libs. The video sampler now always calls sceAvPlayerGetVideoDataEx. This returns immediately if no frame data is available.
- FPS4MediaPlayer::Seek was failing if the video is in a playing/paused state. We now restart the stream if a seek command occurs after the video has stopped (e.g. due to EOF reached).
- Shared a single critical section between the FPS4MediaTracks, FPS4MediaVideoSampler and FPS4MediaPlayer objects. Fixes deadlocks between the decoder/player threads where each will be waiting on each others' critical section.
[~] Enabled debug warnings from AvPlayer library in non-shipping builds.
[~] Changed log levels of UE_LOGs to match their severity.
-------------------------
[!] Also, fixed rendering artifacts on videos using a cropping rectangle
- e.g. 1080p videos are actually decoded as 1920x1088, with an extra 8 pixels height, which contained garbage.
- We determine the final media texture size as the size of the cropping rectangle, and use modified UVs during the YCbCr->RGB converstion shader to do the mapping.
Change 3228793 on 2016/12/09 by Andrew.Rodham
Sequencer: Edits to actor sequences now correctly mark their parent blueprints for compilation
#jira UE-38723
Change 3228877 on 2016/12/09 by Luke.Thatcher
[PLATFORM] [PS4] [!] Fix track switching issues in PS4 media player.
- Sony's AvPlayer library does not support switching tracks (audio or video) on-the-fly after a stream has begun playback.
- The higher level UMediaPlayer enables track 0 automatically, which would be committed to the AvPlayer, and therefore lock out other streams.
- Actual track selection is now deferred until the stream is started, after which changing tracks is prohibited.
- Tracks must be selected before calling SetRate for the first time.
#jira UE-37225
Change 3229501 on 2016/12/09 by Max.Preussner
Media: Better display names for media player plug-ins
Change 3229515 on 2016/12/09 by Max.Preussner
MediaPlayerEditor: Sorting player plug-ins alphabetically; consistent display in both media player editor and media source customization
Change 3229716 on 2016/12/09 by andrew.porter
Adding PlayRate sequence to my dev folder
Change 3230554 on 2016/12/12 by Andrew.Rodham
Back out changelist 3220584
- Currently this causes actor instances to fail to load because they are instanced of dead classes. Need to think of a more robust solution here.
#jira UE-39398
Change 3230922 on 2016/12/12 by Max.Preussner
Merging //UE4/Dev-Main to Dev-Sequencer (//UE4/Dev-Sequencer)
Change 3232059 on 2016/12/12 by Max.Preussner
MediaUtils: Better error message for when no suitable media player plug-in was found
Change 3232097 on 2016/12/13 by Max.Preussner
Switch: Temp fix for borked folder name on case-sensitive platforms
Change 3232100 on 2016/12/13 by Max.Preussner
MediaAssets: Split up UMediaSource into UBaseMediaSource
Also added color space related properties
Change 3232101 on 2016/12/13 by Max.Preussner
Media: Started to implement support for color spaces
Change 3232119 on 2016/12/13 by Max.Preussner
MediaAssets: Fixed buffer not recreated if color space changed
Change 3232799 on 2016/12/13 by Max.Preussner
PS4Media: Fixed build
#jira UE-39706
Change 3233170 on 2016/12/13 by Max.Preussner
Merging //UE4/Dev-Main to Dev-Sequencer (//UE4/Dev-Sequencer)
Change 3233250 on 2016/12/13 by Max.Preussner
MediaPlayerEditor: Added separator in track menu
Change 3233309 on 2016/12/13 by andrew.porter
QAGame: Edited text render actors in QA-Media_TrackSwitch
Change 3233439 on 2016/12/13 by Chris.Babcock
Standardize Android media track DisplayName
Change 3233817 on 2016/12/13 by Chris.Babcock
Fix virtual keyboard EditableTextBox update when comitted text matches current text from change updates
#jira UE-39424
#ue4
#mobile
Change 3234421 on 2016/12/14 by Andrew.Rodham
Sequencer: Fixed nullptr crash
Change 3234423 on 2016/12/14 by Andrew.Rodham
Sequencer: Fixed incorrect copying of base-class from compiler rules
Change 3234429 on 2016/12/14 by Andrew.Rodham
Sequencer: Fixed empty space not being added between the last and penultimate segments when required
#jira UE-39442
Change 3234635 on 2016/12/14 by Max.Preussner
MediaAssets: Exposed UTexture properties in UMediaTexture
Change 3234681 on 2016/12/14 by Max.Preussner
MediaAssets: Made MediaTextureResources support -onethread
Change 3234878 on 2016/12/14 by Andrew.Rodham
Sequencer: Fixed crash with "Evaluate Sub Sequences in Isolation" enabled
- This occurred when there were tracks at the root level of the sub sequence, because it would incorrectly hash in the parent ID, rather than just using it directly
Change 3234901 on 2016/12/14 by Max.Preussner
MediaPlayerEditor: Detail customization improvements
Change 3235275 on 2016/12/14 by Chris.Babcock
Fix WMF stream ordering to match other players
#jira UE-39703
#ue4
#mediaframework
Change 3235390 on 2016/12/14 by Max.Preussner
DesktopPlatform: Added IniPlatformName to FPlatformInfo; fixed up indentation
Change 3235402 on 2016/12/14 by Max.Preussner
MediaAssets: Fixed platform player name overrides ignored in packaged builds (UE-39771)
#jira UE-39771
Change 3235667 on 2016/12/14 by Max.Preussner
Media: Moved enums into separate header file, so they can be shared
Change 3235984 on 2016/12/14 by Max.Preussner
Back out changelist 3235667
Change 3236040 on 2016/12/14 by Max.Preussner
Core: Added modulus operator to FTimespan
Change 3236139 on 2016/12/15 by Max.Preussner
Core: Added FTimespan::IsZero
Change 3236527 on 2016/12/15 by Max.Preussner
Fixed initialization order
Change 3237101 on 2016/12/15 by Andrew.Rodham
Sequencer: Skeletal animation and audio tracks now support multiple rows again.
- In practice there were too many edge-cases to account for whilst considering backwards compatability
- The impossible scenario was 2 sections on different rows, but evaluating nearest section - this cannot be represented as separate tracks.
- Reorganised animation runtime template to use execution tokens rather than ::Initialize to ensure that animation operates correctly on the first frame for spawned objects
#jira UE-39442
#jira UE-39725
Change 3237213 on 2016/12/15 by Andrew.Rodham
Sequencer: Fixed crash when setting event key properties
#jira UE-39347
Change 3237255 on 2016/12/15 by Chris.Babcock
Fix Multi with ETC2 and PVRTC selecting ES3.0 instead of 2.0
#jira UE-39839
#ue4
#android
Change 3237294 on 2016/12/15 by Andrew.Rodham
Sequencer: Fixed shadowed variable warnings
Change 3237366 on 2016/12/15 by Max.Preussner
Media: Removed color space changes; we'll do these in material graphs instead
Change 3237436 on 2016/12/15 by Andrew.Rodham
Sequencer: Fixed montages not being stopped for specific animation slots when animation sections were no longer evaluated
#jira UE-39847
Change 3237458 on 2016/12/15 by Andrew.Rodham
Sequencer: Always force regeneration of templates when PIE to eliminate the posibility of combining stale data
Change 3237516 on 2016/12/15 by Max.Preussner
Media: Attempting to fix Crash in fortnite just before exiting onboarding (UE-39841)
#jira UE-39841
Change 3237532 on 2016/12/15 by Max.Preussner
Added missing scope lock
Change 3237991 on 2016/12/16 by Max.Preussner
PS4Media: Fixed build
[CL 3238204 by Max Preussner in Main branch]
2016-12-16 11:17:44 -05:00
TSharedRef < SActorDetails > ActorDetails = SNew ( SActorDetails , TabIdentifier , LevelEditorCommands , GetTabManager ( ) ) ;
2016-03-11 17:29:00 -05:00
// Immediately update it (otherwise it will appear empty)
{
TArray < UObject * > SelectedActors ;
for ( FSelectionIterator It ( GEditor - > GetSelectedActorIterator ( ) ) ; It ; + + It )
{
AActor * Actor = static_cast < AActor * > ( * It ) ;
checkSlow ( Actor - > IsA ( AActor : : StaticClass ( ) ) ) ;
if ( ! Actor - > IsPendingKill ( ) )
{
SelectedActors . Add ( Actor ) ;
}
}
const bool bForceRefresh = true ;
ActorDetails - > SetObjects ( SelectedActors , bForceRefresh ) ;
}
AllActorDetailPanels . Add ( ActorDetails ) ;
return ActorDetails ;
}
TSharedRef < SWidget > SLevelEditor : : CreateToolBox ( )
{
TSharedRef < SLevelEditorToolBox > NewToolBox =
SNew ( SLevelEditorToolBox , SharedThis ( this ) )
. IsEnabled ( FSlateApplication : : Get ( ) . GetNormalExecutionAttribute ( ) ) ;
ToolBoxTabs . Add ( NewToolBox ) ;
return NewToolBox ;
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
}
2016-12-21 09:11:53 -05:00