diff --git a/CHANGELOG.md b/CHANGELOG.md index 5f9d3db..91b62f8 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -2,6 +2,7 @@ ## [0.7.3] - UNRELEASED +- Added a warning for simplicity of snow users if PBR or CM is enabled (SoS is incompatible with these shaders) - Fixed thread gridlock that casued mesh patching to get suck occasionally - Fixed PBR JSON delete: true not working - Fixed uncaught exception if mod folder does not exist in MO2 diff --git a/ParallaxGen/src/main.cpp b/ParallaxGen/src/main.cpp index 1a42755..861eb38 100644 --- a/ParallaxGen/src/main.cpp +++ b/ParallaxGen/src/main.cpp @@ -75,8 +75,7 @@ auto getGameTypeMapStr() -> string { return GameTypeStr; } -auto deployAssets(const filesystem::path &OutputDir, - const filesystem::path &ExePath) -> void { +auto deployAssets(const filesystem::path &OutputDir, const filesystem::path &ExePath) -> void { // Install default cubemap file if needed static const filesystem::path DynCubeMapPath = "textures/cubemaps/dynamic1pxcubemap_black.dds"; @@ -200,6 +199,20 @@ void mainRunner(ParallaxGenCLIArgs &Args, const filesystem::path &ExePath) { exit(1); } + // Check if dyndolod.esp exists + const auto ActivePlugins = BG.getActivePlugins(false, true); + if (find(ActivePlugins.begin(), ActivePlugins.end(), L"dyndolod.esp") != ActivePlugins.end()) { + spdlog::critical("DynDoLOD and TexGen outputs must be disabled prior to running ParallaxGen. It is recommended to " + "generate LODs after running ParallaxGen with the ParallaxGen output enabled."); + exit(1); + } + + if (find(ActivePlugins.begin(), ActivePlugins.end(), L"simplicity of snow.esp") != ActivePlugins.end() && + (Params.ShaderPatcher.TruePBR || Params.ShaderPatcher.ComplexMaterial)) { + spdlog::warn("You have Simplicity of Snow installed. SoS is incompatible with complex material and PBR. Use a " + "single-pass snow mod such as Better Dynamic Snow v3 instead."); + } + // Init PGP library if (Params.Processing.PluginPatching) { spdlog::info("Initializing plugin patcher"); @@ -229,14 +242,6 @@ void mainRunner(ParallaxGenCLIArgs &Args, const filesystem::path &ExePath) { exit(1); } - // Check if dyndolod.esp exists - const auto ActivePlugins = BG.getActivePlugins(false, true); - if (find(ActivePlugins.begin(), ActivePlugins.end(), L"dyndolod.esp") != ActivePlugins.end()) { - spdlog::critical("DynDoLOD and TexGen outputs must be disabled prior to running ParallaxGen. It is recommended to " - "generate LODs after running ParallaxGen with the ParallaxGen output enabled."); - exit(1); - } - // Init file map PGD.populateFileMap(Params.Processing.BSA);