Commit Graph

363 Commits

Author SHA1 Message Date
dan elksnitis
6cc4950575 [shaders]
- modify versioning mechanisms to use UEMETADATA pragmas
- update commands which generate version.ush files to generate such pragmas instead of comments
- include the above pragma-driven version(s) in the input hash when preprocessed job cache is enabled (not needed for the disabled case since as before the entire contents of the version files are hashed)
- fix bug in stb_preprocessor that was causing it to stop expanding macros if any diagnostic was encountered (and rename the array field storing diagnostic messages to diagnostics, since it contains more than just errors)

#rb Yuriy.ODonnell

[CL 27515060 by dan elksnitis in ue5-main branch]
2023-08-31 04:49:18 -04:00
patrick enfedaque
45acc164dc New FExternalContentDragDropOp: Subclasses FAssetDragDropOp with unique Guid.
New FEditorDelegates::FOnExternalContentResolved(const FGuid& Guid, const FAssetData& PlaceholderAsset, const FAssetData& ResolvedAsset)

#rb jordan.chavez, ahmed.rizwan, sebastien.lussier
#rnx

[CL 27199571 by patrick enfedaque in ue5-main branch]
2023-08-18 08:11:32 -04:00
david harvey
bdb4199eeb Remove unnecessary WindowsHWrapper.h & MinWindows.h include - both files will be automatically included by AllowWindowsPlatformTypes.h
#jira UE-152863
#rnx
#rb Josh.Adams

[CL 26912096 by david harvey in ue5-main branch]
2023-08-08 05:50:53 -04:00
julien stjean
3a24e47037 Fixed an issue with the api of the asset definitions. The GetSourceFiles function didn't allow to resolve the source file paths in a way that is independant of the asset implementation details.
Added the capacitity to the AssetImportData to resolve a source file name without a loaded package.

This also fixes the issues where the editor is not able to find the source file during a reimport or simply navigating to that file via the content browser.

#jira UE-180553
#rb Kerim.Borchaev

[CL 26609365 by julien stjean in ue5-main branch]
2023-07-26 11:46:14 -04:00
jeanluc corenthin
ebd7e7aec7 Improved workflow on a level import/reimport
- Added logic to detect that an asset was part of a level import and not an asset import
  - Added properties on the level pipeline to allow the user to control the handling of deleted assets and actors
  - Added logic to delete actors and assets on a level re-import


#jira UE-175145
#rb alexis.matte
#rnx

[CL 26572898 by jeanluc corenthin in ue5-main branch]
2023-07-25 10:25:37 -04:00
kirill zorin
de8db5ff76 Converting ARO-facing raw pointers to TObjectPtr ahead of raw pointer ARO API deprecation.
#rb zousar.shaker
#rb markus.breyer
#rb robert.manuszewski

#preflight 646391406b1406b54ab15460

[CL 25489627 by kirill zorin in ue5-main branch]
2023-05-16 10:52:49 -04:00
JeanLuc Corenthin
b28b269aea Fixed issue with 'Reimport Scene With File' menu
#jira UE-184642
#rb alexis.matte
#preflight 645e89cdea1c7ba4d62fc53d

[CL 25457316 by JeanLuc Corenthin in ue5-main branch]
2023-05-12 15:01:32 -04:00
charles bloom
717d95428e fix Interchange crash on reimport if source file is no longer valid
#rb none
#preflight none
#jira none
#rnx
#fyi alexis.matte

[CL 25127528 by charles bloom in ue5-main branch]
2023-04-20 10:47:38 -04:00
mark lintott
e63c334048 EpicStudioAnalytics plugin rewrite
High Level Vision:
https://docs.google.com/document/d/13R4nJ2UNMJZlf6JCjYssFMSY-5CrURazE4tqxW77yBw/edit#heading=h.bpycydduomgi

Details of changes:
Removed "most" references to FStudioAnalytics from Engine code.
Deprecated use of FStudioAnalytics::FireEvent_Loading(), will deprecate FStudioAnalytics in due course.
Added FAnalyticsFlowTracker to the engine code base based on the flow system used in UEFN.
Added explicit DDC Resource and DDC Summary events to track DDC usage by resource type.
Moved common Editor analytics callbacks into EpicStudioAnalytics plugin
Added a variety of delegates to the engine code to so that analytics capture can be defined in the plugin code or within the game code instead of the engine code ( eg. load map, editor initialization, cooking, slow task )
Added JSON serializer for analytics events to provide facility to capture analytics in restriced environments ( eg. UEFN CookWorker ). Though this fetaure is not enabled yet.
This will temporarily break Loading and Cooking analytics for Lyra, ShooterGame, CitySample but not Fortnite or UEFN. The remainder will need to be "fixed up" in UE5/Main once the changes have propogated (stakeholders have been notified)

[FYI] zousar.shaker, devin.doucette, eric.knapik, francis.hurteau
#rb wes.hunt
#preflight 643e45150a5a4b944e603be8

[CL 25083739 by mark lintott in ue5-main branch]
2023-04-18 07:16:36 -04:00
jamie dale
933348f856 Use the FMessageDialog overloads that pass the optional title by-value
#jira
#rb none
#rnx

[CL 25062589 by jamie dale in ue5-main branch]
2023-04-15 19:49:32 -04:00
graham wihlidal
9a5baecfae Modified UWorld::PurgeScene to internally flush Slate scene ptr cache instead of SetPlayInEditorWorld to avoid repeated calls per frame in some cases.
#jira UE-180926
#preflight trivial

[CL 24810960 by graham wihlidal in ue5-main branch]
2023-03-27 18:26:02 -04:00
chris varnsverry
a0694e7483 - Add support for delegating editor relaunch behaviour
[REVIEW] [at]Rob.Cannaday [at]Michael.Atchison [at]Sam.Zamani

[CL 24739083 by chris varnsverry in ue5-main branch]
2023-03-21 16:38:48 -04:00
graham wihlidal
3cb623e797 Fix non-unity compile error in Editor.cpp
#preflight trivial
#jira none
#lockdown richard.ugarte

[CL 24708801 by graham wihlidal in ue5-main branch]
2023-03-18 22:54:48 -04:00
graham wihlidal
6ca5d9b4d2 Fixed editor world scene purge to happen later on when safer to do so. The previous location would trigger a component scene proxy reinit where some components (audio, UMG, etc..) would cache the (now) stale world or scene ptrs, and cause missing render target contents or audio. The new purge location is well after editor world is no longer assigned to GWorld, so any reinit will grab the right ptrs. There was a special case with Slate explicitly holding on to scene ptrs that I flush prior to purging the scene.
[FYI] yuriy.odonnell, dan.reynolds
#lockdown michal.valient
#jira none
#preflight trivial

[CL 24704138 by graham wihlidal in ue5-main branch]
2023-03-18 03:49:22 -04:00
Matt Peters
7bbd3c4bf0 Cooker,AssetRegistry,AssetManager: Remove deprecation handling for fields deprecated in 5.1 and earlier.
Make AssetManager required; engine startup gives a fatal error if AssetManager is not present.
#rn Minor, Cooking
#rb Zousar.Shaker
#preflight 63ffd322df66ed5fc11d963e

[CL 24493164 by Matt Peters in ue5-main branch]
2023-03-02 19:37:50 -05:00
jared cotton
84a5ebded4 SOL-4203 - User can load a project with Validaiton errors without being forced to accept risk of data-loss first
FORT-570648 - Closing the 'compile errors' dialog leaves you unable to interact with editor

Editor team related changes:
- added 'OnPreMapOpen' delegate to Editor.h, used in FEditorFileUtils::LoadMap to trigger a build check if it is bound. If it returns false we don't open the map

Validation changes:
- Moved build errors check to trigger on 'OnMapLoad' instead of just on project open as this consolidates validation code into the same module and is more reliable (We want to validate devices as close to when they are loaded into memory and offer users a chance to fix)
- Added dialog for validation triggered by 'OnMapLoad' which offers user option to recompile which now fixes issues and is faster than the previous option of reloading the entire project.

- If either dialog chooses to 'cancel' the map is not loaded. The project is opened and the user can attempt to open the level/map again after fixing errors. This seems better than the previous behaviour of closing the project and being forced back to the project open menu.

Minor Changes:
- All related dialog's had their 'close' buttons removed
- This fixes error reported by Phillip Kavan in which a cached 'last successful open' of a project lead to skipping these warning dialogs

#rnx
#rb yiliang.siew
#rb dave.belanger
#rb rex.hill
#rb conan.reis
[FYI] marcus.wassmer
#preflight 63fffd80f43e53f681756e99

[CL 24486810 by jared cotton in ue5-main branch]
2023-03-02 14:05:15 -05:00
jeanluc corenthin
112468f602 Fixed issue when overwriting a texture
#rb alexis.matte
#preflight 63eea36a52460c3a1fd9eea1

[CL 24282740 by jeanluc corenthin in ue5-main branch]
2023-02-17 11:00:28 -05:00
alexis matte
a20c1131ce Change asset tools import extension support to FNamePermissionList instead of FString. This allow to control the permissions like all the other permission.
#rb jeanluc.corenthin
#preflight 63e24fad07207b2570b72285

[CL 24049361 by alexis matte in ue5-main branch]
2023-02-07 10:49:14 -05:00
alexis matte
b93fee971d Create a system to control which extension importer should support.
#rb jeanluc.corenthin
#rnx
#preflight 63d7eb4cba4fadeef006c7d7

[CL 23923306 by alexis matte in ue5-main branch]
2023-01-31 01:12:25 -05:00
nick darnell
ae774ca1eb AssetDefinition - Upgrading the Data/Curve tables to use the new AssetDefinition.
AssetDefinition - Changing how getting the SourceFiles works a bit, wanted it to be easier to just get the real data and not have to wrap it myself, and also to not need to needlessly put it into a container if it's not needed.

#jira UE-165574

[CL 23686064 by nick darnell in ue5-main branch]
2023-01-13 16:11:10 -05:00
aditya ravichandran
f8b7ee5555 Replace any instances of "Source Control" with "Revision Control" in text in the Editor
#rb JeanMichel.Dignard, Robb.Surridge
#preflight 637d180efa348e8480e8837e

[CL 23250808 by aditya ravichandran in ue5-main branch]
2022-11-23 11:57:50 -05:00
nick darnell
e85b0cd48c AssetDefinition - This is the seed of a long term replacement of IAssetTypeActions. IAssetTypeActions is woefully inadiquit now. It puts a lot of functionality in one place, which wouldn't be a terrible thing, except for the GetActions, and some of the menu stuff being built into this class. We need to make an effort to not have to load every single asset just to open the context menu you have selected, to-wit, a previous CL made it so that summoning the menu no longer *Had* to load the assets, however several remaining issues remained with the Blueprint Utility Actions, and the fact that we don't "KNOW" if we need to call GetActions for an asset. We could introduce a replacement in the class, but that would just get inherited, causing other issues. So instead the parallel UObject based AssetDefinition now exists. In large part it will probably be very similar to the other one, but several things in it probably need to chnage. For now there is a bridging concept in the form of the AssetDefinitionAssetTypeProxy.
Several amounts of effort went into the newer design of UAssetDefinition to make it easier to change over time, more things are structs now for input and output so additional parameters can be added.

AssetDefinition module is an editor module instead of being a developer module.
AssetDefinition does not include a myraid of things it shouldn't such as the blueprint module and UnrealEd.

#jira UE-165574
#preflight 636c0ec4d0174259cca85e37

[CL 23083536 by nick darnell in ue5-main branch]
2022-11-10 13:13:41 -05:00
bob tellez
635e0d776e [Backout] - CL23068129 and 23069638
[FYI] Nick.Darnell
Original CL Desc
-----------------------------------------------------------------
AssetDefinition - This is the seed of a long term replacement of IAssetTypeActions.  IAssetTypeActions is woefully inadiquit now.  It puts a lot of functionality in one place, which wouldn't be a terrible thing, except for the GetActions, and some of the menu stuff being built into this class.  We need to make an effort to not have to load every single asset just to open the context menu you have selected, to-wit, a previous CL made it so that summoning the menu no longer *Had* to load the assets, however several remaining issues remained with the Blueprint Utility Actions, and the fact that we don't "KNOW" if we need to call GetActions for an asset.  We could introduce a replacement in the class, but that would just get inherited, causing other issues.  So instead the parallel UObject based AssetDefinition now exists.  In large part it will probably be very similar to the other one, but several things in it probably need to chnage.  For now there is a bridging concept in the form of the AssetDefinitionAssetTypeProxy.

Several amounts of effort went into the newer design of UAssetDefinition to make it easier to change over time, more things are structs now for input and output so additional parameters can be added.

AssetDefinition module is an editor module instead of being a developer module.
AssetDefinition does not include a myraid of things it shouldn't such as the blueprint module and UnrealEd.

#jira UE-165574
#preflight 636c0ec4d0174259cca85e37

[CL 23072024 by bob tellez in ue5-main branch]
2022-11-10 01:18:44 -05:00
nick darnell
fd6f4a29b1 AssetDefinition - This is the seed of a long term replacement of IAssetTypeActions. IAssetTypeActions is woefully inadiquit now. It puts a lot of functionality in one place, which wouldn't be a terrible thing, except for the GetActions, and some of the menu stuff being built into this class. We need to make an effort to not have to load every single asset just to open the context menu you have selected, to-wit, a previous CL made it so that summoning the menu no longer *Had* to load the assets, however several remaining issues remained with the Blueprint Utility Actions, and the fact that we don't "KNOW" if we need to call GetActions for an asset. We could introduce a replacement in the class, but that would just get inherited, causing other issues. So instead the parallel UObject based AssetDefinition now exists. In large part it will probably be very similar to the other one, but several things in it probably need to chnage. For now there is a bridging concept in the form of the AssetDefinitionAssetTypeProxy.
Several amounts of effort went into the newer design of UAssetDefinition to make it easier to change over time, more things are structs now for input and output so additional parameters can be added.

AssetDefinition module is an editor module instead of being a developer module.
AssetDefinition does not include a myraid of things it shouldn't such as the blueprint module and UnrealEd.

#jira UE-165574
#preflight 636c0ec4d0174259cca85e37
[REVIEW]

[CL 23072002 by nick darnell in ue5-main branch]
2022-11-10 01:17:07 -05:00
charles bloom
5c0122a04d Fix crash when exiting the editor
#jira FORT-529032
#rb jeanmichel.dignard
#rnx
#preflight 6352f6aff92c32502433caf3
#lockdown jeanmichel.dignard

[CL 22712133 by charles bloom in ue5-main branch]
2022-10-22 15:31:48 -04:00