diff --git a/.gitmodules b/.gitmodules index 2221fc41..05465fcd 100644 --- a/.gitmodules +++ b/.gitmodules @@ -1,3 +1,6 @@ [submodule "CUE4Parse"] path = CUE4Parse url = https://github.com/FabianFG/CUE4Parse +[submodule "EpicManifestParser"] + path = EpicManifestParser + url = https://github.com/FModel/EpicManifestParser diff --git a/CUE4Parse b/CUE4Parse index 807d4712..c33075ab 160000 --- a/CUE4Parse +++ b/CUE4Parse @@ -1 +1 @@ -Subproject commit 807d471212cc7a5953223c337324943d0ae5281f +Subproject commit c33075abbeb030c0a7d6fc12ea0913c982232e64 diff --git a/EpicManifestParser b/EpicManifestParser new file mode 160000 index 00000000..0c633f3d --- /dev/null +++ b/EpicManifestParser @@ -0,0 +1 @@ +Subproject commit 0c633f3d3ad6f1eed9df9cee60917e1e169a0101 diff --git a/FModel/Creator/Bases/FN/BaseCommunity.cs b/FModel/Creator/Bases/FN/BaseCommunity.cs index 0967d38a..1f95a6bc 100644 --- a/FModel/Creator/Bases/FN/BaseCommunity.cs +++ b/FModel/Creator/Bases/FN/BaseCommunity.cs @@ -1,4 +1,4 @@ -using CUE4Parse.FN.Enums; +using CUE4Parse.GameTypes.FN.Enums; using CUE4Parse.UE4.Assets.Exports; using CUE4Parse.UE4.Objects.GameplayTags; using CUE4Parse.UE4.Objects.UObject; diff --git a/FModel/Creator/Bases/FN/BaseIcon.cs b/FModel/Creator/Bases/FN/BaseIcon.cs index 15f792e6..897fbbfd 100644 --- a/FModel/Creator/Bases/FN/BaseIcon.cs +++ b/FModel/Creator/Bases/FN/BaseIcon.cs @@ -2,7 +2,6 @@ using System; using System.Collections.Generic; using System.Linq; using System.Windows; -using CUE4Parse.FN.Enums; using CUE4Parse.UE4.Assets.Exports; using CUE4Parse.UE4.Assets.Exports.Engine; using CUE4Parse.UE4.Assets.Exports.Material; @@ -13,6 +12,7 @@ using CUE4Parse.UE4.Objects.Core.Math; using CUE4Parse.UE4.Objects.GameplayTags; using CUE4Parse.UE4.Objects.UObject; using CUE4Parse_Conversion.Textures; +using CUE4Parse.GameTypes.FN.Enums; using FModel.Settings; using SkiaSharp; diff --git a/FModel/Creator/Bases/FN/BaseIconStats.cs b/FModel/Creator/Bases/FN/BaseIconStats.cs index 3a8e374f..3a25871f 100644 --- a/FModel/Creator/Bases/FN/BaseIconStats.cs +++ b/FModel/Creator/Bases/FN/BaseIconStats.cs @@ -1,6 +1,6 @@ using System; using System.Collections.Generic; -using CUE4Parse.FN.Enums; +using CUE4Parse.GameTypes.FN.Enums; using CUE4Parse.UE4.Assets.Exports; using CUE4Parse.UE4.Assets.Exports.Engine; using CUE4Parse.UE4.Assets.Objects; diff --git a/FModel/FModel.csproj b/FModel/FModel.csproj index dddd4b49..ce82fa53 100644 --- a/FModel/FModel.csproj +++ b/FModel/FModel.csproj @@ -111,7 +111,6 @@ - @@ -128,6 +127,7 @@ + diff --git a/FModel/FModel.sln b/FModel/FModel.sln index 238d1b59..52492681 100644 --- a/FModel/FModel.sln +++ b/FModel/FModel.sln @@ -9,6 +9,8 @@ Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "CUE4Parse", "..\CUE4Parse\C EndProject Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "CUE4Parse-Conversion", "..\CUE4Parse\CUE4Parse-Conversion\CUE4Parse-Conversion.csproj", "{D0E1E8F7-F56D-469A-8E24-C2439B9FFD83}" EndProject +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "EpicManifestParser", "..\EpicManifestParser\src\EpicManifestParser\EpicManifestParser.csproj", "{D4958A8B-815B-421D-A988-2A4E8E2B582D}" +EndProject Global GlobalSection(SolutionConfigurationPlatforms) = preSolution Debug|Any CPU = Debug|Any CPU @@ -27,6 +29,10 @@ Global {D0E1E8F7-F56D-469A-8E24-C2439B9FFD83}.Debug|Any CPU.Build.0 = Debug|Any CPU {D0E1E8F7-F56D-469A-8E24-C2439B9FFD83}.Release|Any CPU.ActiveCfg = Release|Any CPU {D0E1E8F7-F56D-469A-8E24-C2439B9FFD83}.Release|Any CPU.Build.0 = Release|Any CPU + {D4958A8B-815B-421D-A988-2A4E8E2B582D}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {D4958A8B-815B-421D-A988-2A4E8E2B582D}.Debug|Any CPU.Build.0 = Debug|Any CPU + {D4958A8B-815B-421D-A988-2A4E8E2B582D}.Release|Any CPU.ActiveCfg = Release|Any CPU + {D4958A8B-815B-421D-A988-2A4E8E2B582D}.Release|Any CPU.Build.0 = Release|Any CPU EndGlobalSection GlobalSection(SolutionProperties) = preSolution HideSolutionNode = FALSE diff --git a/FModel/Settings/UserSettings.cs b/FModel/Settings/UserSettings.cs index 785fe030..6cc6e7c8 100644 --- a/FModel/Settings/UserSettings.cs +++ b/FModel/Settings/UserSettings.cs @@ -46,7 +46,7 @@ namespace FModel.Settings return false; endpoint = endpoints[(int) type]; - return endpoint.IsValid; + return endpoint.Overwrite || endpoint.IsValid; } private bool _showChangelog = true; @@ -140,7 +140,7 @@ namespace FModel.Settings set => SetProperty(ref _isLoggerExpanded, value); } - private GridLength _avalonImageSize = GridLength.Auto; + private GridLength _avalonImageSize = new (200); public GridLength AvalonImageSize { get => _avalonImageSize; diff --git a/FModel/ViewModels/CUE4ParseViewModel.cs b/FModel/ViewModels/CUE4ParseViewModel.cs index 440a821e..91384f6f 100644 --- a/FModel/ViewModels/CUE4ParseViewModel.cs +++ b/FModel/ViewModels/CUE4ParseViewModel.cs @@ -334,7 +334,7 @@ public class CUE4ParseViewModel : ViewModel FLogger.AppendInformation(); FLogger.AppendText($"Mappings pulled from '{endpoint.FilePath.SubstringAfterLast("\\")}'", Constants.WHITE, true); } - else + else if (endpoint.IsValid) { var mappingsFolder = Path.Combine(UserSettings.Default.OutputDirectory, ".data"); var mappings = _apiEndpointView.DynamicApi.GetMappings(cancellationToken, endpoint.Url, endpoint.Path); diff --git a/FModel/ViewModels/ModelViewerViewModel.cs b/FModel/ViewModels/ModelViewerViewModel.cs index 34018f77..d19d5dce 100644 --- a/FModel/ViewModels/ModelViewerViewModel.cs +++ b/FModel/ViewModels/ModelViewerViewModel.cs @@ -315,7 +315,7 @@ public class ModelViewerViewModel : ViewModel st.Materials[SelectedModel.SelectedGeometry.MaterialIndex] = obj; break; case USkeletalMesh sk: - sk.Materials[SelectedModel.SelectedGeometry.MaterialIndex].Material = obj; + sk.SkeletalMaterials[SelectedModel.SelectedGeometry.MaterialIndex].Material = obj; break; case UMaterialInstance: SelectedModel.SwapExport(materialInstance);