diff --git a/docs/weather-system-docs/WeatherVariableRegistration.md b/docs/weather-system-docs/WeatherVariableRegistration.md index afc6ca519a..6b1fe80ae2 100644 --- a/docs/weather-system-docs/WeatherVariableRegistration.md +++ b/docs/weather-system-docs/WeatherVariableRegistration.md @@ -135,7 +135,7 @@ The system now automatically: - Saves/loads weather-specific settings to JSON - Interpolates variables during weather transitions -- Appears in the weather editor UI with per-weather toggle buttons +- Appears in the CS Editor UI with per-weather toggle buttons - Handles default values and missing data - Shows weather-controlled status in feature settings UI @@ -278,7 +278,7 @@ Weather-specific settings are stored in: ``` Data/SKSE/Plugins/CommunityShaders/Weathers/ - WeatherEditorID_FormID.json + WeatherFormEditorID_FormID.json ``` Each file contains settings for all features: diff --git a/features/Weather Editor/CORE b/features/CS Editor/CORE similarity index 100% rename from features/Weather Editor/CORE rename to features/CS Editor/CORE diff --git a/features/CS Editor/Shaders/Features/CSEditor.ini b/features/CS Editor/Shaders/Features/CSEditor.ini new file mode 100644 index 0000000000..629d28c0f7 --- /dev/null +++ b/features/CS Editor/Shaders/Features/CSEditor.ini @@ -0,0 +1,2 @@ +[Info] +Version = 2-0-2 diff --git a/features/Weather Editor/Shaders/Features/WeatherEditor.ini b/features/Weather Editor/Shaders/Features/WeatherEditor.ini deleted file mode 100644 index 9a577382c4..0000000000 --- a/features/Weather Editor/Shaders/Features/WeatherEditor.ini +++ /dev/null @@ -1,2 +0,0 @@ -[Info] -Version = 2-0-1 diff --git a/src/WeatherEditor/EditorWindow.cpp b/src/CSEditor/EditorWindow.cpp similarity index 99% rename from src/WeatherEditor/EditorWindow.cpp rename to src/CSEditor/EditorWindow.cpp index 9d31591f82..30077298f4 100644 --- a/src/WeatherEditor/EditorWindow.cpp +++ b/src/CSEditor/EditorWindow.cpp @@ -2,7 +2,7 @@ #include "Features/HDRDisplay.h" #include "Features/Upscaling.h" -#include "Features/WeatherEditor.h" +#include "Features/CSEditor.h" #include "Globals.h" #include "InteriorOnlyPanel.h" #include "Menu.h" @@ -180,7 +180,7 @@ std::string EditorWindow::ResolveEditorId(RE::TESForm* form, const WidgetVec& wi void EditorWindow::ShowObjectsWindow() { - Util::BeginWithRoundedClose("Weather and Lighting Browser", nullptr); + Util::BeginWithRoundedClose("CS Editor Browser", nullptr); // Reset filter state when the user switches categories so stale column // selections (e.g. Status) don't hide all items in the new category. @@ -215,7 +215,7 @@ void EditorWindow::ShowObjectsWindow() // List of categories const char* categories[] = { "Weather", "ImageSpace", "Lighting Template", "Cell Lighting", "Volumetric Lighting", "Shader Particle Geometry", "Lens Flare", "Visual Effect", - "Interior Only", "Lighting editor" }; + "Interior Only", "Light Editor" }; for (int i = 0; i < IM_ARRAYSIZE(categories); ++i) { // Highlight the selected category if (ImGui::Selectable(categories[i], m_selectedCategory == categories[i])) { @@ -240,7 +240,7 @@ void EditorWindow::ShowObjectsWindow() return; } - if (m_selectedCategory == "Lighting editor") { + if (m_selectedCategory == "Light Editor") { BeginScrollableContent("##LightEditorScroll"); lightEditor.DrawSettings(); EndScrollableContent(); @@ -1006,7 +1006,7 @@ void EditorWindow::RenderUI() if (hdrActive) ImGui::BeginDisabled(); if (ImGui::Checkbox("Viewport", &settings.showViewport)) { - BackgroundBlur::SetWeatherEditorActive(settings.showViewport); + BackgroundBlur::SetCSEditorActive(settings.showViewport); Save(); } if (hdrActive) { @@ -1039,7 +1039,7 @@ void EditorWindow::RenderUI() ImGui::EndMenu(); } if (ImGui::BeginMenu("Help")) { - ImGui::Text("Weather Editor"); + ImGui::Text("CS Editor"); ImGui::Separator(); ImGui::TextColored(Menu::GetSingleton()->GetTheme().StatusPalette.InfoColor, "Keyboard Shortcuts:"); ImGui::BulletText("Ctrl+F: Focus search"); @@ -1152,7 +1152,7 @@ void EditorWindow::RenderUI() char previewStatusBuf[128] = {}; bool showPreviewStatus = previewMode != PreviewMode::None; if (showPreviewStatus) { - std::string hotkey = Util::Input::KeyIdToString(menu->GetSettings().WeatherEditorToggleKey); + std::string hotkey = Util::Input::KeyIdToString(menu->GetSettings().CSEditorToggleKey); if (previewMode == PreviewMode::FreeCamera) std::snprintf(previewStatusBuf, sizeof(previewStatusBuf), " [ %s ] FREE CAMERA (Speed: %.0f)", hotkey.c_str(), flySpeed); else if (previewMode == PreviewMode::FreeCameraLocked) @@ -1264,7 +1264,7 @@ void EditorWindow::RenderUI() ImGui::SetCursorScreenPos(ImVec2(xButtonX, cursorY)); if (Util::ErrorButton("X", ImVec2(closeButtonSize, closeButtonSize))) open = false; - Util::AddTooltip("Close Weather Editor (Esc)"); + Util::AddTooltip("Close CS Editor (Esc)"); ImGui::PopClipRect(); // End bottom-border clip rect @@ -1411,13 +1411,13 @@ void EditorWindow::UpdateOpenState() if (open && !wasOpen) { DisableVanityCamera(); HideGameMenus(); - BackgroundBlur::SetWeatherEditorActive(IsViewportActive()); + BackgroundBlur::SetCSEditorActive(IsViewportActive()); } else if (!open && wasOpen) { lightEditor.ResetOverrides(); RestoreVanityCamera(); ShowGameMenus(); - BackgroundBlur::SetWeatherEditorActive(false); + BackgroundBlur::SetCSEditorActive(false); } wasOpen = open; @@ -1433,7 +1433,7 @@ void EditorWindow::Draw() static bool prevViewportActive = false; const bool viewportActive = IsViewportActive(); if (viewportActive != prevViewportActive) { - BackgroundBlur::SetWeatherEditorActive(viewportActive); + BackgroundBlur::SetCSEditorActive(viewportActive); prevViewportActive = viewportActive; } } @@ -1959,7 +1959,7 @@ void EditorWindow::HideGameMenus() if (auto ui = RE::UI::GetSingleton()) { ui->ShowMenus(false); gameMenusHidden = true; - logger::info("Game menus hidden for weather editor"); + logger::info("Game menus hidden for CS editor"); } } @@ -1971,7 +1971,7 @@ void EditorWindow::ShowGameMenus() if (auto ui = RE::UI::GetSingleton()) { ui->ShowMenus(true); gameMenusHidden = false; - logger::info("Game menus restored after weather editor"); + logger::info("Game menus restored after CS editor"); } } diff --git a/src/WeatherEditor/EditorWindow.h b/src/CSEditor/EditorWindow.h similarity index 100% rename from src/WeatherEditor/EditorWindow.h rename to src/CSEditor/EditorWindow.h diff --git a/src/WeatherEditor/InteriorOnlyPanel.cpp b/src/CSEditor/InteriorOnlyPanel.cpp similarity index 100% rename from src/WeatherEditor/InteriorOnlyPanel.cpp rename to src/CSEditor/InteriorOnlyPanel.cpp diff --git a/src/WeatherEditor/InteriorOnlyPanel.h b/src/CSEditor/InteriorOnlyPanel.h similarity index 96% rename from src/WeatherEditor/InteriorOnlyPanel.h rename to src/CSEditor/InteriorOnlyPanel.h index a282feb358..5d087f5ceb 100644 --- a/src/WeatherEditor/InteriorOnlyPanel.h +++ b/src/CSEditor/InteriorOnlyPanel.h @@ -2,7 +2,7 @@ #include "Utils/UI.h" -/// UI panel for managing Interior Only scene settings within the Weather Editor. +/// UI panel for managing Interior Only scene settings within the CS Editor. /// Renders the list of entries with add/pause/delete controls. namespace InteriorOnlyPanel { diff --git a/src/WeatherEditor/LightEditor.cpp b/src/CSEditor/LightEditor.cpp similarity index 100% rename from src/WeatherEditor/LightEditor.cpp rename to src/CSEditor/LightEditor.cpp diff --git a/src/WeatherEditor/LightEditor.h b/src/CSEditor/LightEditor.h similarity index 100% rename from src/WeatherEditor/LightEditor.h rename to src/CSEditor/LightEditor.h diff --git a/src/WeatherEditor/PaletteWindow.cpp b/src/CSEditor/PaletteWindow.cpp similarity index 100% rename from src/WeatherEditor/PaletteWindow.cpp rename to src/CSEditor/PaletteWindow.cpp diff --git a/src/WeatherEditor/PaletteWindow.h b/src/CSEditor/PaletteWindow.h similarity index 100% rename from src/WeatherEditor/PaletteWindow.h rename to src/CSEditor/PaletteWindow.h diff --git a/src/WeatherEditor/Weather/CellLightingWidget.cpp b/src/CSEditor/Weather/CellLightingWidget.cpp similarity index 100% rename from src/WeatherEditor/Weather/CellLightingWidget.cpp rename to src/CSEditor/Weather/CellLightingWidget.cpp diff --git a/src/WeatherEditor/Weather/CellLightingWidget.h b/src/CSEditor/Weather/CellLightingWidget.h similarity index 100% rename from src/WeatherEditor/Weather/CellLightingWidget.h rename to src/CSEditor/Weather/CellLightingWidget.h diff --git a/src/WeatherEditor/Weather/ImageSpaceWidget.cpp b/src/CSEditor/Weather/ImageSpaceWidget.cpp similarity index 100% rename from src/WeatherEditor/Weather/ImageSpaceWidget.cpp rename to src/CSEditor/Weather/ImageSpaceWidget.cpp diff --git a/src/WeatherEditor/Weather/ImageSpaceWidget.h b/src/CSEditor/Weather/ImageSpaceWidget.h similarity index 100% rename from src/WeatherEditor/Weather/ImageSpaceWidget.h rename to src/CSEditor/Weather/ImageSpaceWidget.h diff --git a/src/WeatherEditor/Weather/LensFlareWidget.cpp b/src/CSEditor/Weather/LensFlareWidget.cpp similarity index 100% rename from src/WeatherEditor/Weather/LensFlareWidget.cpp rename to src/CSEditor/Weather/LensFlareWidget.cpp diff --git a/src/WeatherEditor/Weather/LensFlareWidget.h b/src/CSEditor/Weather/LensFlareWidget.h similarity index 100% rename from src/WeatherEditor/Weather/LensFlareWidget.h rename to src/CSEditor/Weather/LensFlareWidget.h diff --git a/src/WeatherEditor/Weather/LightingTemplateWidget.cpp b/src/CSEditor/Weather/LightingTemplateWidget.cpp similarity index 100% rename from src/WeatherEditor/Weather/LightingTemplateWidget.cpp rename to src/CSEditor/Weather/LightingTemplateWidget.cpp diff --git a/src/WeatherEditor/Weather/LightingTemplateWidget.h b/src/CSEditor/Weather/LightingTemplateWidget.h similarity index 100% rename from src/WeatherEditor/Weather/LightingTemplateWidget.h rename to src/CSEditor/Weather/LightingTemplateWidget.h diff --git a/src/WeatherEditor/Weather/PrecipitationWidget.cpp b/src/CSEditor/Weather/PrecipitationWidget.cpp similarity index 100% rename from src/WeatherEditor/Weather/PrecipitationWidget.cpp rename to src/CSEditor/Weather/PrecipitationWidget.cpp diff --git a/src/WeatherEditor/Weather/PrecipitationWidget.h b/src/CSEditor/Weather/PrecipitationWidget.h similarity index 100% rename from src/WeatherEditor/Weather/PrecipitationWidget.h rename to src/CSEditor/Weather/PrecipitationWidget.h diff --git a/src/WeatherEditor/Weather/ReferenceEffectWidget.cpp b/src/CSEditor/Weather/ReferenceEffectWidget.cpp similarity index 100% rename from src/WeatherEditor/Weather/ReferenceEffectWidget.cpp rename to src/CSEditor/Weather/ReferenceEffectWidget.cpp diff --git a/src/WeatherEditor/Weather/ReferenceEffectWidget.h b/src/CSEditor/Weather/ReferenceEffectWidget.h similarity index 100% rename from src/WeatherEditor/Weather/ReferenceEffectWidget.h rename to src/CSEditor/Weather/ReferenceEffectWidget.h diff --git a/src/WeatherEditor/Weather/SimpleFormWidget.h b/src/CSEditor/Weather/SimpleFormWidget.h similarity index 100% rename from src/WeatherEditor/Weather/SimpleFormWidget.h rename to src/CSEditor/Weather/SimpleFormWidget.h diff --git a/src/WeatherEditor/Weather/VolumetricLightingWidget.cpp b/src/CSEditor/Weather/VolumetricLightingWidget.cpp similarity index 100% rename from src/WeatherEditor/Weather/VolumetricLightingWidget.cpp rename to src/CSEditor/Weather/VolumetricLightingWidget.cpp diff --git a/src/WeatherEditor/Weather/VolumetricLightingWidget.h b/src/CSEditor/Weather/VolumetricLightingWidget.h similarity index 100% rename from src/WeatherEditor/Weather/VolumetricLightingWidget.h rename to src/CSEditor/Weather/VolumetricLightingWidget.h diff --git a/src/WeatherEditor/Weather/WeatherWidget.cpp b/src/CSEditor/Weather/WeatherWidget.cpp similarity index 100% rename from src/WeatherEditor/Weather/WeatherWidget.cpp rename to src/CSEditor/Weather/WeatherWidget.cpp diff --git a/src/WeatherEditor/Weather/WeatherWidget.h b/src/CSEditor/Weather/WeatherWidget.h similarity index 100% rename from src/WeatherEditor/Weather/WeatherWidget.h rename to src/CSEditor/Weather/WeatherWidget.h diff --git a/src/WeatherEditor/WeatherUtils.cpp b/src/CSEditor/WeatherUtils.cpp similarity index 100% rename from src/WeatherEditor/WeatherUtils.cpp rename to src/CSEditor/WeatherUtils.cpp diff --git a/src/WeatherEditor/WeatherUtils.h b/src/CSEditor/WeatherUtils.h similarity index 100% rename from src/WeatherEditor/WeatherUtils.h rename to src/CSEditor/WeatherUtils.h diff --git a/src/WeatherEditor/Widget.cpp b/src/CSEditor/Widget.cpp similarity index 100% rename from src/WeatherEditor/Widget.cpp rename to src/CSEditor/Widget.cpp diff --git a/src/WeatherEditor/Widget.h b/src/CSEditor/Widget.h similarity index 100% rename from src/WeatherEditor/Widget.h rename to src/CSEditor/Widget.h diff --git a/src/Deferred.cpp b/src/Deferred.cpp index cecfb90483..62146505f6 100644 --- a/src/Deferred.cpp +++ b/src/Deferred.cpp @@ -14,7 +14,7 @@ #include "Features/TerrainBlending.h" #include "Features/Upscaling.h" #include "Features/VR.h" -#include "Features/WeatherEditor.h" +#include "Features/CSEditor.h" #include "Hooks.h" diff --git a/src/Feature.cpp b/src/Feature.cpp index b5e7287a79..9cfad1278e 100644 --- a/src/Feature.cpp +++ b/src/Feature.cpp @@ -36,7 +36,7 @@ #include "Features/VolumetricLighting.h" #include "Features/VolumetricShadows.h" #include "Features/WaterEffects.h" -#include "Features/WeatherEditor.h" +#include "Features/CSEditor.h" #include "Features/WetnessEffects.h" #include "Menu.h" #include "SettingsOverrideManager.h" @@ -241,7 +241,7 @@ const std::vector& Feature::GetFeatureList() &globals::features::extendedTranslucency, &globals::features::upscaling, &globals::features::renderDoc, - &globals::features::weatherEditor, + &globals::features::csEditor, &globals::features::screenshotFeature, &globals::features::linearLighting, &globals::features::unifiedWater, diff --git a/src/Features/WeatherEditor.cpp b/src/Features/CSEditor.cpp similarity index 92% rename from src/Features/WeatherEditor.cpp rename to src/Features/CSEditor.cpp index 8f6ff39e43..7ff0c15f2f 100644 --- a/src/Features/WeatherEditor.cpp +++ b/src/Features/CSEditor.cpp @@ -1,4 +1,4 @@ -#include "WeatherEditor.h" +#include "CSEditor.h" #include "Deferred.h" #include "Feature.h" @@ -9,7 +9,7 @@ #include "Utils/UI.h" #include "WeatherManager.h" -#include "WeatherEditor/EditorWindow.h" +#include "CSEditor/EditorWindow.h" #include #include #include @@ -20,18 +20,18 @@ namespace } NLOHMANN_DEFINE_TYPE_NON_INTRUSIVE_WITH_DEFAULT( - WeatherEditor::WeatherDetailsWindowSettings, + CSEditor::WeatherDetailsWindowSettings, Enabled, ShowInOverlay, Position, PositionSet) -void WeatherEditor::DataLoaded() +void CSEditor::DataLoaded() { s_dataAvailable = true; } -bool WeatherEditor::HasWidgetJsonFiles() +bool CSEditor::HasWidgetJsonFiles() { if (s_checkedWidgetJsonFiles) return s_hasWidgetJsonFiles; @@ -42,7 +42,7 @@ bool WeatherEditor::HasWidgetJsonFiles() std::error_code ec; const bool isDirectory = std::filesystem::is_directory(widgetSettingsPath, ec); if (ec) { - logger::warn("[WeatherEditor] Failed to inspect widget settings path '{}': {}", widgetSettingsPath.string(), ec.message()); + logger::warn("[CSEditor] Failed to inspect widget settings path '{}': {}", widgetSettingsPath.string(), ec.message()); continue; } if (!isDirectory) @@ -52,7 +52,7 @@ bool WeatherEditor::HasWidgetJsonFiles() std::error_code entryEc; const bool isRegularFile = it->is_regular_file(entryEc); if (entryEc) { - logger::warn("[WeatherEditor] Failed to inspect widget settings file '{}': {}", it->path().string(), entryEc.message()); + logger::warn("[CSEditor] Failed to inspect widget settings file '{}': {}", it->path().string(), entryEc.message()); continue; } if (isRegularFile && _stricmp(it->path().extension().string().c_str(), kJsonExtension) == 0) { @@ -62,7 +62,7 @@ bool WeatherEditor::HasWidgetJsonFiles() } } if (ec) { - logger::warn("[WeatherEditor] Failed to scan widget settings path '{}': {}", widgetSettingsPath.string(), ec.message()); + logger::warn("[CSEditor] Failed to scan widget settings path '{}': {}", widgetSettingsPath.string(), ec.message()); continue; } } @@ -71,12 +71,12 @@ bool WeatherEditor::HasWidgetJsonFiles() return false; } -bool WeatherEditor::ShouldPreloadEditorResources() +bool CSEditor::ShouldPreloadEditorResources() { return s_dataAvailable && !s_resourcesInitialized && EditorWindow::CanBeOpen() && HasWidgetJsonFiles(); } -void WeatherEditor::EnsureWeatherListLoaded() +void CSEditor::EnsureWeatherListLoaded() { if (!s_dataAvailable) return; @@ -84,7 +84,7 @@ void WeatherEditor::EnsureWeatherListLoaded() LoadAllWeathers(); } -void WeatherEditor::EnsureDataLoaded() +void CSEditor::EnsureDataLoaded() { if (!s_dataAvailable) return; @@ -96,7 +96,7 @@ void WeatherEditor::EnsureDataLoaded() LoadAllWeathers(); } -void WeatherEditor::OpenEditorWindow() +void CSEditor::OpenEditorWindow() { if (!EditorWindow::CanBeOpen()) return; @@ -105,7 +105,7 @@ void WeatherEditor::OpenEditorWindow() EditorWindow::GetSingleton()->open = true; } -void WeatherEditor::ToggleEditorWindow() +void CSEditor::ToggleEditorWindow() { auto* editorWindow = EditorWindow::GetSingleton(); if (!editorWindow) @@ -154,26 +154,26 @@ void LerpDirectional(RE::BGSDirectionalAmbientLightingColors::Directional& oldCo LerpColor(oldColor.z.min, newColor.z.min, changePct); } -void WeatherEditor::DrawSettings() +void CSEditor::DrawSettings() { EnsureWeatherListLoaded(); bool canOpen = EditorWindow::CanBeOpen(); ImGui::BeginDisabled(!canOpen); - if (ImGui::Button("Open Editor", { -1, 0 })) + if (ImGui::Button("Open CS Editor", { -1, 0 })) OpenEditorWindow(); ImGui::EndDisabled(); // Time controls DrawTimeControls(); - // Basic weather editor info + // Basic CS editor info DrawWeatherStatusPanel(); // Integrated Weather Picker UI DrawWeatherPickerSection(); } -void WeatherEditor::Prepass() +void CSEditor::Prepass() { if (ShouldPreloadEditorResources()) { EnsureDataLoaded(); @@ -193,7 +193,7 @@ void WeatherEditor::Prepass() editorWindow->UpdateTimeState(); } -void WeatherEditor::DrawWeatherPickerSection() +void CSEditor::DrawWeatherPickerSection() { ImGui::Spacing(); Util::DrawSectionHeader("Weather Details"); @@ -221,7 +221,7 @@ void WeatherEditor::DrawWeatherPickerSection() RenderFeatureWeatherAnalysis(); } -void WeatherEditor::LerpWeather(RE::TESWeather* oldWeather, RE::TESWeather* newWeather, float currentWeatherPct) +void CSEditor::LerpWeather(RE::TESWeather* oldWeather, RE::TESWeather* newWeather, float currentWeatherPct) { if (!oldWeather || !newWeather) { // Avoid dereferencing null pointers; nothing to lerp. @@ -294,7 +294,7 @@ void WeatherEditor::LerpWeather(RE::TESWeather* oldWeather, RE::TESWeather* newW } } -void WeatherEditor::DrawTimeControls() +void CSEditor::DrawTimeControls() { ImGui::Spacing(); Util::DrawSectionHeader("Time Controls"); @@ -303,7 +303,7 @@ void WeatherEditor::DrawTimeControls() ImGui::Spacing(); } -void WeatherEditor::DrawWeatherStatusPanel() +void CSEditor::DrawWeatherStatusPanel() { ImGui::Spacing(); Util::DrawSectionHeader("Weather Status"); @@ -364,7 +364,7 @@ void WeatherEditor::DrawWeatherStatusPanel() // Weather Picker functionality (integrated from WeatherPicker feature) // ================================================================================ -void WeatherEditor::RenderWeatherDetailsWindow(bool* open) +void CSEditor::RenderWeatherDetailsWindow(bool* open) { if (!open || !*open) return; @@ -406,7 +406,7 @@ void WeatherEditor::RenderWeatherDetailsWindow(bool* open) ImGui::End(); } -ImVec4 WeatherEditor::GetWeatherTypeColor(RE::TESWeather* weather) +ImVec4 CSEditor::GetWeatherTypeColor(RE::TESWeather* weather) { if (!weather) { return Menu::GetSingleton()->GetTheme().StatusPalette.InfoColor; @@ -440,7 +440,7 @@ ImVec4 WeatherEditor::GetWeatherTypeColor(RE::TESWeather* weather) } // --- Helper: Display basic weather info (name, flags, percentage) --- -void WeatherEditor::DisplayWeatherBasicInfo(RE::TESWeather* weather, float weatherPct) +void CSEditor::DisplayWeatherBasicInfo(RE::TESWeather* weather, float weatherPct) { if (!weather) { ImGui::BulletText("No Weather Found"); @@ -449,13 +449,13 @@ void WeatherEditor::DisplayWeatherBasicInfo(RE::TESWeather* weather, float weath std::string weatherText = Util::FormatWeather(weather); ImGui::Bullet(); ImGui::SameLine(); - bool showTooltip = WeatherEditor::RenderMultiColorWeatherName(weather, weatherText); + bool showTooltip = CSEditor::RenderMultiColorWeatherName(weather, weatherText); if (showTooltip) { ImGui::BeginTooltip(); ImGui::Text("Name: %s", weather->GetName() ? weather->GetName() : "Unnamed"); ImGui::Text("Editor ID: %s", weather->GetFormEditorID() ? weather->GetFormEditorID() : "None"); ImGui::Text("Form ID: 0x%08X", weather->GetFormID()); - auto flagNames = WeatherEditor::GetWeatherFlagNames(weather); + auto flagNames = CSEditor::GetWeatherFlagNames(weather); if (!flagNames.empty()) { std::string joinedFlags = flagNames[0]; for (size_t j = 1; j < flagNames.size(); ++j) { @@ -472,7 +472,7 @@ void WeatherEditor::DisplayWeatherBasicInfo(RE::TESWeather* weather, float weath } } -void WeatherEditor::DisplayPrecipitationInfo(RE::TESWeather* weather) +void CSEditor::DisplayPrecipitationInfo(RE::TESWeather* weather) { if (!weather || !weather->precipitationData) { ImGui::BulletText("Particle Density: No precipitation data"); @@ -500,7 +500,7 @@ void WeatherEditor::DisplayPrecipitationInfo(RE::TESWeather* weather) } } -void WeatherEditor::DisplayLightningInfo(RE::TESWeather* weather, bool showInteractiveElements) +void CSEditor::DisplayLightningInfo(RE::TESWeather* weather, bool showInteractiveElements) { if (!weather || (uint8_t)weather->data.thunderLightningFrequency == 0) return; @@ -554,7 +554,7 @@ void WeatherEditor::DisplayLightningInfo(RE::TESWeather* weather, bool showInter } } -void WeatherEditor::DisplayWindInfo(RE::TESWeather* weather) +void CSEditor::DisplayWindInfo(RE::TESWeather* weather) { auto sky = globals::game::sky; if (!weather || (weather->data.windSpeed <= 0 && (!sky || sky->windSpeed <= 0.0f))) @@ -616,15 +616,15 @@ void WeatherEditor::DisplayWindInfo(RE::TESWeather* weather) } // --- Main function: now just delegates to helpers --- -void WeatherEditor::DisplayWeatherInfo(RE::TESWeather* weather, float weatherPct, bool showInteractiveElements) +void CSEditor::DisplayWeatherInfo(RE::TESWeather* weather, float weatherPct, bool showInteractiveElements) { - WeatherEditor::DisplayWeatherBasicInfo(weather, weatherPct); - WeatherEditor::DisplayPrecipitationInfo(weather); - WeatherEditor::DisplayLightningInfo(weather, showInteractiveElements); - WeatherEditor::DisplayWindInfo(weather); + CSEditor::DisplayWeatherBasicInfo(weather, weatherPct); + CSEditor::DisplayPrecipitationInfo(weather); + CSEditor::DisplayLightningInfo(weather, showInteractiveElements); + CSEditor::DisplayWindInfo(weather); } -void WeatherEditor::RenderWeatherControls(RE::Sky* sky) +void CSEditor::RenderWeatherControls(RE::Sky* sky) { // Weather Selection Section (only show interactive elements in inline mode) static bool weatherControlsExpanded = true; @@ -706,7 +706,7 @@ void WeatherEditor::RenderWeatherControls(RE::Sky* sky) sky->ResetWeather(); // Update the selection box to reflect the reset weather without double-applying s_selectedWeatherIdx = FindWeatherIndex(sky->defaultWeather); - logger::info("[WeatherEditor] Reset weather to default"); + logger::info("[CSEditor] Reset weather to default"); } if (auto _tt = Util::HoverTooltipWrapper()) { @@ -788,7 +788,7 @@ void WeatherEditor::RenderWeatherControls(RE::Sky* sky) editorWindow->LockWeather(selectedWeather); Util::ClearComboSearch(kWeatherSearchId); - logger::info("[WeatherEditor] Changed weather to: {}", Util::FormatWeather(selectedWeather)); + logger::info("[CSEditor] Changed weather to: {}", Util::FormatWeather(selectedWeather)); break; } @@ -809,7 +809,7 @@ void WeatherEditor::RenderWeatherControls(RE::Sky* sky) } } -void WeatherEditor::RenderWeatherInformationDisplay(RE::Sky* sky, bool showInteractiveElements) +void CSEditor::RenderWeatherInformationDisplay(RE::Sky* sky, bool showInteractiveElements) { ImGui::Spacing(); ImGui::Spacing(); @@ -845,7 +845,7 @@ void WeatherEditor::RenderWeatherInformationDisplay(RE::Sky* sky, bool showInter } } -void WeatherEditor::RenderCoreWeatherDetails(bool showInteractiveElements) +void CSEditor::RenderCoreWeatherDetails(bool showInteractiveElements) { const auto showError = [](const char* msg) { auto menu = Menu::GetSingleton(); @@ -868,7 +868,7 @@ void WeatherEditor::RenderCoreWeatherDetails(bool showInteractiveElements) } } -void WeatherEditor::LoadAllWeathers() +void CSEditor::LoadAllWeathers() { if (s_weathersLoaded) return; @@ -892,7 +892,7 @@ void WeatherEditor::LoadAllWeathers() } } -void WeatherEditor::UpdateFilteredWeathers() +void CSEditor::UpdateFilteredWeathers() { s_filteredWeathers.clear(); for (auto weather : s_allWeathers) { @@ -931,7 +931,7 @@ void WeatherEditor::UpdateFilteredWeathers() } } -int WeatherEditor::FindWeatherIndex(RE::TESWeather* targetWeather) +int CSEditor::FindWeatherIndex(RE::TESWeather* targetWeather) { if (!targetWeather) return -1; @@ -943,13 +943,13 @@ int WeatherEditor::FindWeatherIndex(RE::TESWeather* targetWeather) return -1; } -void WeatherEditor::RenderFeatureWeatherAnalysis() +void CSEditor::RenderFeatureWeatherAnalysis() { // Iterate through all loaded features to show their weather analysis for (auto* feature : Feature::GetFeatureList()) { if (feature->loaded) { - // Skip the WeatherEditor itself to avoid recursion - if (feature == &globals::features::weatherEditor) { + // Skip the CSEditor itself to avoid recursion + if (feature == &globals::features::csEditor) { continue; } @@ -980,7 +980,7 @@ void WeatherEditor::RenderFeatureWeatherAnalysis() } } -std::vector WeatherEditor::GetWeatherFlagNames(RE::TESWeather* weather) +std::vector CSEditor::GetWeatherFlagNames(RE::TESWeather* weather) { std::vector flagNames; if (!weather) { @@ -1032,7 +1032,7 @@ std::vector WeatherEditor::GetWeatherFlagNames(RE::TESWeather* weat return flagNames; } -bool WeatherEditor::RenderMultiColorWeatherName(RE::TESWeather* weather, const std::string& weatherName) +bool CSEditor::RenderMultiColorWeatherName(RE::TESWeather* weather, const std::string& weatherName) { if (!weather) { ImGui::Text("%s", weatherName.c_str()); @@ -1094,7 +1094,7 @@ bool WeatherEditor::RenderMultiColorWeatherName(RE::TESWeather* weather, const s } // Helper function to get color for a specific weather flag -ImVec4 WeatherEditor::GetWeatherFlagColor(RE::TESWeather::WeatherDataFlag flag) +ImVec4 CSEditor::GetWeatherFlagColor(RE::TESWeather::WeatherDataFlag flag) { const auto& theme = Menu::GetSingleton()->GetTheme(); @@ -1117,7 +1117,7 @@ ImVec4 WeatherEditor::GetWeatherFlagColor(RE::TESWeather::WeatherDataFlag flag) } // Helper function to get color for a specific flag name -ImVec4 WeatherEditor::GetWeatherFlagColorByName(const std::string& flagName) +ImVec4 CSEditor::GetWeatherFlagColorByName(const std::string& flagName) { // Map display flag names back to enum values // Note: We use manual mapping here because the display names (from GetWeatherFlagNames) @@ -1140,7 +1140,7 @@ ImVec4 WeatherEditor::GetWeatherFlagColorByName(const std::string& flagName) return Menu::GetSingleton()->GetTheme().StatusPalette.Warning; } -std::string WeatherEditor::GetDisplayName(const RE::TESWeather* weather) +std::string CSEditor::GetDisplayName(const RE::TESWeather* weather) { if (!weather) { return "Unknown"; @@ -1156,7 +1156,7 @@ std::string WeatherEditor::GetDisplayName(const RE::TESWeather* weather) return std::to_string(weather->GetFormID()); } -void WeatherEditor::DrawOverlay() +void CSEditor::DrawOverlay() { auto player = RE::PlayerCharacter::GetSingleton(); if (!player || !player->parentCell) @@ -1175,7 +1175,7 @@ void WeatherEditor::DrawOverlay() s_prevOverlayVisible = overlayVisible; } -bool WeatherEditor::IsOverlayVisible() const +bool CSEditor::IsOverlayVisible() const { return WeatherDetailsWindow.ShowInOverlay; } diff --git a/src/Features/WeatherEditor.h b/src/Features/CSEditor.h similarity index 93% rename from src/Features/WeatherEditor.h rename to src/Features/CSEditor.h index a09f1b25fe..0948a13c6b 100644 --- a/src/Features/WeatherEditor.h +++ b/src/Features/CSEditor.h @@ -5,18 +5,18 @@ #include "OverlayFeature.h" #include "State.h" -struct WeatherEditor : OverlayFeature +struct CSEditor : OverlayFeature { public: - static WeatherEditor* GetSingleton() + static CSEditor* GetSingleton() { - static WeatherEditor singleton; + static CSEditor singleton; return &singleton; } - virtual inline std::string GetName() override { return "Weather Editor"; } - virtual inline std::string GetShortName() override { return "WeatherEditor"; } - virtual inline std::string_view GetShaderDefineName() override { return "WEATHER"; } + virtual inline std::string GetName() override { return "CS Editor"; } + virtual inline std::string GetShortName() override { return "CSEditor"; } + virtual inline std::string_view GetShaderDefineName() override { return "CS_EDITOR"; } virtual inline std::string_view GetCategory() const override { return FeatureCategories::kUtility; } virtual bool SupportsVR() override { return true; } virtual bool IsCore() const override { return true; } @@ -25,7 +25,7 @@ struct WeatherEditor : OverlayFeature virtual inline std::pair> GetFeatureSummary() override { return { - "Development tool for editing weather, testing weather transitions, and managing weather-related feature settings.", + "Development tool for inspecting, editing, and previewing renderer-facing data in-game.", { "Provides weather editing functionality", "Includes dynamic saving and loading of vanilla post processing and weather settings.", "Real-time editing and previewing of effects", @@ -158,7 +158,7 @@ struct WeatherEditor : OverlayFeature { bool operator()(const RE::TESWeather* a, const RE::TESWeather* b) const { - return WeatherEditor::GetDisplayName(a) < WeatherEditor::GetDisplayName(b); + return CSEditor::GetDisplayName(a) < CSEditor::GetDisplayName(b); } }; diff --git a/src/Features/InverseSquareLighting.cpp b/src/Features/InverseSquareLighting.cpp index 03e830456d..bf70373120 100644 --- a/src/Features/InverseSquareLighting.cpp +++ b/src/Features/InverseSquareLighting.cpp @@ -1,7 +1,7 @@ #include "InverseSquareLighting.h" #include "Features/InverseSquareLighting/Common.h" #include "LightLimitFix.h" -#include "WeatherEditor/EditorWindow.h" +#include "CSEditor/EditorWindow.h" #include void InverseSquareLighting::PostPostLoad() diff --git a/src/Features/WetnessEffects.cpp b/src/Features/WetnessEffects.cpp index dd077abf04..15025d78ad 100644 --- a/src/Features/WetnessEffects.cpp +++ b/src/Features/WetnessEffects.cpp @@ -1,6 +1,6 @@ #include "WetnessEffects.h" #include "Menu.h" -#include "WeatherEditor.h" +#include "CSEditor.h" NLOHMANN_DEFINE_TYPE_NON_INTRUSIVE_WITH_DEFAULT( WetnessEffects::Settings, @@ -477,14 +477,14 @@ void WetnessEffects::DrawSettings() ImGui::Spacing(); ImGui::Spacing(); - auto& weatherEditor = globals::features::weatherEditor; - if (weatherEditor.loaded) { - if (ImGui::SmallButton(("Open " + weatherEditor.GetName()).c_str())) { + auto& csEditor = globals::features::csEditor; + if (csEditor.loaded) { + if (ImGui::SmallButton(("Open " + csEditor.GetName()).c_str())) { // Navigate to the replacement feature in the menu - Menu::GetSingleton()->SelectFeatureMenu(weatherEditor.GetShortName()); + Menu::GetSingleton()->SelectFeatureMenu(csEditor.GetShortName()); } if (auto _tt = Util::HoverTooltipWrapper()) { - ImGui::Text("Open the installed %s feature", weatherEditor.GetShortName().c_str()); + ImGui::Text("Open the installed %s feature", csEditor.GetShortName().c_str()); } } diff --git a/src/Globals.cpp b/src/Globals.cpp index e1b60fc56b..15cba11777 100644 --- a/src/Globals.cpp +++ b/src/Globals.cpp @@ -35,7 +35,7 @@ #include "Features/VolumetricLighting.h" #include "Features/VolumetricShadows.h" #include "Features/WaterEffects.h" -#include "Features/WeatherEditor.h" +#include "Features/CSEditor.h" #include "Features/WetnessEffects.h" #include "Menu.h" #include "ShaderCache.h" @@ -87,7 +87,7 @@ namespace globals HDRDisplay hdrDisplay{}; RenderDoc renderDoc{}; ScreenshotFeature screenshotFeature{}; - WeatherEditor weatherEditor{}; + CSEditor csEditor{}; ExponentialHeightFog exponentialHeightFog{}; TruePBR truePBR{}; Skin skin{}; diff --git a/src/Globals.h b/src/Globals.h index 326b9a34eb..9fd5bb081c 100644 --- a/src/Globals.h +++ b/src/Globals.h @@ -33,7 +33,7 @@ struct WetnessEffects; struct ExtendedTranslucency; struct Upscaling; class Profiler; -struct WeatherEditor; +struct CSEditor; struct ExponentialHeightFog; struct HDRDisplay; struct ScreenshotFeature; @@ -95,7 +95,7 @@ namespace globals extern HDRDisplay hdrDisplay; extern RenderDoc renderDoc; extern ScreenshotFeature screenshotFeature; - extern WeatherEditor weatherEditor; + extern CSEditor csEditor; extern ExponentialHeightFog exponentialHeightFog; extern TruePBR truePBR; extern Skin skin; diff --git a/src/Menu.cpp b/src/Menu.cpp index cb6b9c253e..cde6f6fc5d 100644 --- a/src/Menu.cpp +++ b/src/Menu.cpp @@ -44,8 +44,8 @@ #include "Features/PerformanceOverlay/ABTesting/ABTesting.h" #include "Features/ScreenshotFeature.h" #include "Features/VR.h" -#include "Features/WeatherEditor.h" -#include "WeatherEditor/EditorWindow.h" +#include "Features/CSEditor.h" +#include "CSEditor/EditorWindow.h" NLOHMANN_DEFINE_TYPE_NON_INTRUSIVE_WITH_DEFAULT( Menu::ThemeSettings::PaletteColors, @@ -163,7 +163,7 @@ NLOHMANN_DEFINE_TYPE_NON_INTRUSIVE_WITH_DEFAULT( OverlayToggleKey, ShaderBlockPrevKey, ShaderBlockNextKey, - WeatherEditorToggleKey, + CSEditorToggleKey, EnableShaderBlocking, FirstTimeSetupCompleted, SkipClearCacheConfirmation, @@ -342,7 +342,7 @@ void Menu::Load(json& o_json) migrateKey(o_json, "OverlayToggleKey", settings.OverlayToggleKey); migrateKey(o_json, "ShaderBlockPrevKey", settings.ShaderBlockPrevKey); migrateKey(o_json, "ShaderBlockNextKey", settings.ShaderBlockNextKey); - migrateKey(o_json, "WeatherEditorToggleKey", settings.WeatherEditorToggleKey); + migrateKey(o_json, "CSEditorToggleKey", settings.CSEditorToggleKey); migrateKey(o_json, "ScreenshotKey", settings.ScreenshotKey); // Helper for new smart serialization with error handling @@ -363,7 +363,7 @@ void Menu::Load(json& o_json) loadComboList(o_json, "OverlayToggleKey", settings.OverlayToggleKey); loadComboList(o_json, "ShaderBlockPrevKey", settings.ShaderBlockPrevKey); loadComboList(o_json, "ShaderBlockNextKey", settings.ShaderBlockNextKey); - loadComboList(o_json, "WeatherEditorToggleKey", settings.WeatherEditorToggleKey); + loadComboList(o_json, "CSEditorToggleKey", settings.CSEditorToggleKey); loadComboList(o_json, "ScreenshotKey", settings.ScreenshotKey); // Legacy support: If old config has Theme data and no SelectedThemePreset, load it @@ -428,7 +428,7 @@ void Menu::Save(json& o_json) InputCombo::ComboList::to_json(o_json["OverlayToggleKey"], settings.OverlayToggleKey); InputCombo::ComboList::to_json(o_json["ShaderBlockPrevKey"], settings.ShaderBlockPrevKey); InputCombo::ComboList::to_json(o_json["ShaderBlockNextKey"], settings.ShaderBlockNextKey); - InputCombo::ComboList::to_json(o_json["WeatherEditorToggleKey"], settings.WeatherEditorToggleKey); + InputCombo::ComboList::to_json(o_json["CSEditorToggleKey"], settings.CSEditorToggleKey); InputCombo::ComboList::to_json(o_json["ScreenshotKey"], settings.ScreenshotKey); } @@ -759,7 +759,7 @@ void Menu::DrawGeneralSettings() .settingOverlayToggleKey = settingOverlayToggleKey, .settingShaderBlockPrevKey = settingShaderBlockPrevKey, .settingShaderBlockNextKey = settingShaderBlockNextKey, - .settingWeatherEditorToggleKey = settingWeatherEditorToggleKey, + .settingCSEditorToggleKey = settingCSEditorToggleKey, .settingScreenshotKey = settingScreenshotKey }; @@ -885,7 +885,7 @@ void Menu::DrawOverlay() * @note This method contains Menu-specific logic and state management that makes it * inappropriate for extraction to a utility class. */ -static std::vector DeriveWeatherEditorKey(const std::vector& menuKey) +static std::vector DeriveCSEditorKey(const std::vector& menuKey) { bool hasShift = false; uint32_t baseKey = 0; @@ -981,14 +981,14 @@ void Menu::ProcessInputEventQueue() settings.ToggleKey = keys; settingToggleKey = false; if (!settings.FirstTimeSetupCompleted) - settings.WeatherEditorToggleKey = DeriveWeatherEditorKey(keys); + settings.CSEditorToggleKey = DeriveCSEditorKey(keys); } }, { &settings.SkipCompilationKey, &settingSkipCompilationKey, [this](std::vector keys) { settings.SkipCompilationKey = keys; settingSkipCompilationKey = false; } }, { &settings.EffectToggleKey, &settingsEffectsToggle, [this](std::vector keys) { settings.EffectToggleKey = keys; settingsEffectsToggle = false; } }, { &settings.OverlayToggleKey, &settingOverlayToggleKey, [this](std::vector keys) { settings.OverlayToggleKey = keys; settingOverlayToggleKey = false; } }, { &settings.ShaderBlockPrevKey, &settingShaderBlockPrevKey, [this](std::vector keys) { settings.ShaderBlockPrevKey = keys; settingShaderBlockPrevKey = false; } }, { &settings.ShaderBlockNextKey, &settingShaderBlockNextKey, [this](std::vector keys) { settings.ShaderBlockNextKey = keys; settingShaderBlockNextKey = false; } }, - { &settings.WeatherEditorToggleKey, &settingWeatherEditorToggleKey, [this](std::vector keys) { settings.WeatherEditorToggleKey = keys; settingWeatherEditorToggleKey = false; } }, + { &settings.CSEditorToggleKey, &settingCSEditorToggleKey, [this](std::vector keys) { settings.CSEditorToggleKey = keys; settingCSEditorToggleKey = false; } }, { &settings.ScreenshotKey, &settingScreenshotKey, [this](std::vector keys) { settings.ScreenshotKey = keys; settingScreenshotKey = false; } }, }; bool handled = false; @@ -1054,7 +1054,7 @@ void Menu::ProcessInputEventQueue() { settings.ShaderBlockPrevKey, [this, shaderCache]() { if (settings.EnableShaderBlocking) shaderCache->IterateShaderBlock(); } }, { settings.ShaderBlockNextKey, [this, shaderCache]() { if (settings.EnableShaderBlocking) shaderCache->IterateShaderBlock(false); } }, { settings.OverlayToggleKey, []() { Menu::GetSingleton()->overlayVisible = !Menu::GetSingleton()->overlayVisible; } }, - { settings.WeatherEditorToggleKey, []() { + { settings.CSEditorToggleKey, []() { auto* ew = EditorWindow::GetSingleton(); if (!ew) return; @@ -1065,7 +1065,7 @@ void Menu::ProcessInputEventQueue() // Locked or PlayMode → fully exit preview ew->ExitPreviewMode(); } else { - WeatherEditor::ToggleEditorWindow(); + CSEditor::ToggleEditorWindow(); } } }, { settings.ScreenshotKey, []() { @@ -1101,7 +1101,7 @@ void Menu::ProcessInputEventQueue() const std::vector* hotkeys[] = { &settings.ToggleKey, &settings.EffectToggleKey, &settings.OverlayToggleKey, &settings.ShaderBlockPrevKey, &settings.ShaderBlockNextKey, - &settings.WeatherEditorToggleKey, + &settings.CSEditorToggleKey, &settings.ScreenshotKey }; bool isHotkey = ShouldSwallowInput() && std::any_of(std::begin(hotkeys), std::end(hotkeys), @@ -1132,7 +1132,7 @@ void Menu::ProcessInputEventQueue() bool Menu::IsCapturingHotkeyInput() const { return settingToggleKey || settingSkipCompilationKey || settingsEffectsToggle || - settingOverlayToggleKey || settingShaderBlockPrevKey || settingShaderBlockNextKey || settingWeatherEditorToggleKey || settingScreenshotKey; + settingOverlayToggleKey || settingShaderBlockPrevKey || settingShaderBlockNextKey || settingCSEditorToggleKey || settingScreenshotKey; } void Menu::addToEventQueue(KeyEvent e) @@ -1197,22 +1197,22 @@ void Menu::SelectFeatureMenu(const std::string& featureName) /** * @brief Renders the standalone weather details window when enabled * - * Delegates to the WeatherEditor feature for rendering the weather details window + * Delegates to the CSEditor feature for rendering the weather details window * that can remain open even when the main menu is closed. This provides a simple - * coordination layer between the Menu system and the WeatherEditor feature. + * coordination layer between the Menu system and the CSEditor feature. */ void Menu::DrawWeatherDetailsWindow() { - if (!globals::features::weatherEditor.WeatherDetailsWindow.Enabled) { + if (!globals::features::csEditor.WeatherDetailsWindow.Enabled) { return; } - if (!globals::features::weatherEditor.loaded) { + if (!globals::features::csEditor.loaded) { return; } // Use Weather core feature for all window management and rendering - auto& weather = globals::features::weatherEditor; - bool* p_open = &globals::features::weatherEditor.WeatherDetailsWindow.Enabled; + auto& weather = globals::features::csEditor; + bool* p_open = &globals::features::csEditor.WeatherDetailsWindow.Enabled; weather.RenderWeatherDetailsWindow(p_open); } diff --git a/src/Menu.h b/src/Menu.h index 2e2b05774d..2add98b636 100644 --- a/src/Menu.h +++ b/src/Menu.h @@ -140,7 +140,7 @@ class Menu bool settingOverlayToggleKey = false; bool settingShaderBlockPrevKey = false; // Debug: capture shader block prev key bool settingShaderBlockNextKey = false; // Debug: capture shader block next key - bool settingWeatherEditorToggleKey = false; // Weather Editor toggle key + bool settingCSEditorToggleKey = false; // CS Editor toggle key bool settingScreenshotKey = false; // Screenshot capture key // Font caching (made public for ThemeManager and OverlayRenderer access) @@ -203,11 +203,11 @@ class Menu UIIcon logo; // New logo icon UIIcon search; // Search icon for search bars UIIcon featureSettingRevert; // Feature revert settings icon - UIIcon applyToGame; // Apply changes to game icon (weather editor) - UIIcon pauseTime; // Pause time icon (weather editor) - UIIcon undo; // Undo icon (weather editor) - UIIcon freeCamera; // Free camera preview icon (weather editor) - UIIcon playMode; // Play mode preview icon (weather editor) + UIIcon applyToGame; // Apply changes to game icon (CS editor) + UIIcon pauseTime; // Pause time icon (CS editor) + UIIcon undo; // Undo icon (CS editor) + UIIcon freeCamera; // Free camera preview icon (CS editor) + UIIcon playMode; // Play mode preview icon (CS editor) // Social media/external link icons UIIcon discord; @@ -405,7 +405,7 @@ class Menu std::vector OverlayToggleKey = { InputCombo::Keyboard(VK_F10) }; // Global overlay toggle key for all overlays std::vector ShaderBlockPrevKey = { InputCombo::Keyboard(VK_PRIOR) }; // Debug: cycle backward through shaders (PageUp) std::vector ShaderBlockNextKey = { InputCombo::Keyboard(VK_NEXT) }; // Debug: cycle forward through shaders (PageDown) - std::vector WeatherEditorToggleKey = { InputCombo::Keyboard(VK_SHIFT), InputCombo::Keyboard(VK_END) }; // Weather Editor toggle key + std::vector CSEditorToggleKey = { InputCombo::Keyboard(VK_SHIFT), InputCombo::Keyboard(VK_END) }; // CS Editor toggle key std::vector ScreenshotKey = { InputCombo::Keyboard(VK_SNAPSHOT) }; // Screenshot capture key bool EnableShaderBlocking = false; // Enable shader blocking hotkeys for debugging bool FirstTimeSetupCompleted = false; // Track if first-time setup has been completed @@ -507,4 +507,4 @@ class Menu void ProcessInputEventQueue(); bool IsCapturingHotkeyInput() const; winrt::com_ptr dxgiAdapter3; -}; \ No newline at end of file +}; diff --git a/src/Menu/BackgroundBlur.cpp b/src/Menu/BackgroundBlur.cpp index 6f6f41426f..625840782a 100644 --- a/src/Menu/BackgroundBlur.cpp +++ b/src/Menu/BackgroundBlur.cpp @@ -47,7 +47,7 @@ namespace BackgroundBlur { std::mutex resourceMutex; bool enabled = false; - bool weatherEditorActive = false; + bool csEditorActive = false; // DirectX resources (RAII managed) winrt::com_ptr vertexShader; @@ -475,7 +475,7 @@ namespace BackgroundBlur windowConstants.windowParams[0] = cornerRadius; windowConstants.windowParams[1] = static_cast(sourceDesc.Width); windowConstants.windowParams[2] = static_cast(sourceDesc.Height); - windowConstants.windowParams[3] = weatherEditorActive ? 1.0f : 0.0f; + windowConstants.windowParams[3] = csEditorActive ? 1.0f : 0.0f; context->UpdateSubresource(windowConstantBuffer.get(), 0, nullptr, &windowConstants, 0, 0); auto windowConstantBufferPtr = windowConstantBuffer.get(); context->PSSetConstantBuffers(1, 1, &windowConstantBufferPtr); @@ -548,14 +548,14 @@ namespace BackgroundBlur enabled = enable; } - void SetWeatherEditorActive(bool active) + void SetCSEditorActive(bool active) { - weatherEditorActive = active; + csEditorActive = active; } - bool IsWeatherEditorActive() + bool IsCSEditorActive() { - return weatherEditorActive; + return csEditorActive; } void RenderBackgroundBlur() @@ -654,8 +654,8 @@ namespace BackgroundBlur CreateBlurTextures(texDesc.Width, texDesc.Height, texDesc.Format); } - // Weather editor mode: single fullscreen blur pass (better perf than per-window) - if (weatherEditorActive) { + // CS editor mode: single fullscreen blur pass (better perf than per-window) + if (csEditorActive) { ImVec2 screenMin = { 0, 0 }; ImVec2 screenMax = { static_cast(texDesc.Width), static_cast(texDesc.Height) }; PerformBlur(currentTexture.get(), sourceSRV, currentRTV.get(), screenMin, screenMax, 0.0f, uiBuffer.srv, uiBuffer.rtv); diff --git a/src/Menu/BackgroundBlur.h b/src/Menu/BackgroundBlur.h index 0919fe7a90..955f97b620 100644 --- a/src/Menu/BackgroundBlur.h +++ b/src/Menu/BackgroundBlur.h @@ -27,8 +27,8 @@ namespace BackgroundBlur void SetEnabled(bool enable); - /// When true, a single fullscreen blur replaces per-window blur (weather editor mode) - void SetWeatherEditorActive(bool active); - bool IsWeatherEditorActive(); + /// When true, a single fullscreen blur replaces per-window blur (CS editor mode) + void SetCSEditorActive(bool active); + bool IsCSEditorActive(); } // namespace BackgroundBlur diff --git a/src/Menu/HomePageRenderer.cpp b/src/Menu/HomePageRenderer.cpp index df8dde47ec..7cf6a55ceb 100644 --- a/src/Menu/HomePageRenderer.cpp +++ b/src/Menu/HomePageRenderer.cpp @@ -523,15 +523,15 @@ void HomePageRenderer::RenderFirstTimeSetupDialog() ImGui::TextDisabled("%s", pressKeyText); } - // Weather Editor hotkey status — updates live as user picks keys + // CS Editor hotkey status — updates live as user picks keys { - auto& weatherKey = menu->GetSettings().WeatherEditorToggleKey; + auto& weatherKey = menu->GetSettings().CSEditorToggleKey; if (weatherKey.empty()) { - const char* warnText = "Weather Editor hotkey unbound \xe2\x80\x94 chosen key uses Shift"; + const char* warnText = "CS Editor hotkey unbound \xe2\x80\x94 chosen key uses Shift"; centerText(warnText); ImGui::TextColored(ImVec4(1.0f, 0.75f, 0.0f, 1.0f), "%s", warnText); } else { - std::string infoStr = "Weather Editor hotkey will be: " + Util::Input::KeyIdToString(weatherKey); + std::string infoStr = "CS Editor hotkey will be: " + Util::Input::KeyIdToString(weatherKey); centerText(infoStr.c_str()); ImGui::TextDisabled("%s", infoStr.c_str()); } diff --git a/src/Menu/OverlayRenderer.cpp b/src/Menu/OverlayRenderer.cpp index 01d5f619e9..d399339e05 100644 --- a/src/Menu/OverlayRenderer.cpp +++ b/src/Menu/OverlayRenderer.cpp @@ -18,7 +18,7 @@ #include "ShaderCache.h" #include "State.h" #include "Util.h" -#include "WeatherEditor/EditorWindow.h" +#include "CSEditor/EditorWindow.h" #include "Features/PerformanceOverlay.h" #include "Features/PerformanceOverlay/ABTesting/ABTesting.h" diff --git a/src/Menu/SettingsTabRenderer.cpp b/src/Menu/SettingsTabRenderer.cpp index 4caf0a1aa0..a0322dbeb7 100644 --- a/src/Menu/SettingsTabRenderer.cpp +++ b/src/Menu/SettingsTabRenderer.cpp @@ -372,10 +372,10 @@ void SettingsTabRenderer::RenderKeybindingsTab( "Change##OverlayToggle"); Util::InputComboWidget( - "Weather Editor Toggle Key:", - settings.WeatherEditorToggleKey, - state.settingWeatherEditorToggleKey, - "Change##WeatherEditorToggle"); + "CS Editor Toggle Key:", + settings.CSEditorToggleKey, + state.settingCSEditorToggleKey, + "Change##CSEditorToggle"); Util::InputComboWidget( "Screenshot Key:", @@ -1226,4 +1226,4 @@ void SettingsTabRenderer::RenderColorsTab() ImGui::EndTabItem(); } -} \ No newline at end of file +} diff --git a/src/Menu/SettingsTabRenderer.h b/src/Menu/SettingsTabRenderer.h index 7d6b1542b0..b7cea06884 100644 --- a/src/Menu/SettingsTabRenderer.h +++ b/src/Menu/SettingsTabRenderer.h @@ -19,7 +19,7 @@ class SettingsTabRenderer bool& settingOverlayToggleKey; bool& settingShaderBlockPrevKey; // Debug: shader block previous key bool& settingShaderBlockNextKey; // Debug: shader block next key - bool& settingWeatherEditorToggleKey; // Weather Editor toggle key + bool& settingCSEditorToggleKey; // CS Editor toggle key bool& settingScreenshotKey; // Screenshot capture key }; @@ -38,4 +38,4 @@ class SettingsTabRenderer static void RenderFontsTab(); static void RenderStylingTab(); static void RenderColorsTab(); -}; \ No newline at end of file +}; diff --git a/src/State.cpp b/src/State.cpp index 253efca58e..ad8f6cd098 100644 --- a/src/State.cpp +++ b/src/State.cpp @@ -16,7 +16,7 @@ #include "Features/Upscaling.h" #include "Features/VRStereoOptimizations.h" #include "Features/VolumetricShadows.h" -#include "Features/WeatherEditor.h" +#include "Features/CSEditor.h" #include "Menu.h" #include "SceneSettingsManager.h" #include "SettingsOverrideManager.h" @@ -53,7 +53,7 @@ void State::Draw() auto& terrainBlending = globals::features::terrainBlending; auto& terrainHelper = globals::features::terrainHelper; auto& cloudShadows = globals::features::cloudShadows; - auto& weatherEditor = globals::features::weatherEditor; + auto& csEditor = globals::features::csEditor; auto& skin = globals::features::skin; auto& truePBR = globals::features::truePBR; auto context = globals::d3d::context; @@ -63,7 +63,7 @@ void State::Draw() // Process deferred cell transitions (interior detection) SceneSettingsManager::GetSingleton()->Update(); - if (weatherEditor.loaded) { + if (csEditor.loaded) { ZoneScopedN("WeatherManager::UpdateFeatures"); WeatherManager::GetSingleton()->UpdateFeatures(); } diff --git a/src/Utils/UI.cpp b/src/Utils/UI.cpp index 404d7cfdb8..045b55147c 100644 --- a/src/Utils/UI.cpp +++ b/src/Utils/UI.cpp @@ -1,6 +1,6 @@ #include "UI.h" -#include "../WeatherEditor/EditorWindow.h" +#include "../CSEditor/EditorWindow.h" #include "D3D.h" #include "FileSystem.h" #include "Menu.h" @@ -2108,7 +2108,7 @@ namespace Util ImGui::TextWrapped("This setting is controlled by the current weather (%s).", currentWeathers.currentWeather ? currentWeathers.currentWeather->GetFormEditorID() : "Unknown"); ImGui::Separator(); - ImGui::TextColored(ImVec4(0.6f, 0.9f, 0.6f, 1.0f), "Click to open Weather Editor"); + ImGui::TextColored(ImVec4(0.6f, 0.9f, 0.6f, 1.0f), "Click to open CS Editor"); ImGui::PopTextWrapPos(); ImGui::EndTooltip(); } @@ -2162,7 +2162,7 @@ namespace Util ImGui::TextWrapped("This setting is controlled by the current weather (%s).", currentWeathers.currentWeather ? currentWeathers.currentWeather->GetFormEditorID() : "Unknown"); ImGui::Separator(); - ImGui::TextColored(ImVec4(0.6f, 0.9f, 0.6f, 1.0f), "Click to open Weather Editor"); + ImGui::TextColored(ImVec4(0.6f, 0.9f, 0.6f, 1.0f), "Click to open CS Editor"); ImGui::PopTextWrapPos(); ImGui::EndTooltip(); } @@ -2213,7 +2213,7 @@ namespace Util ImGui::TextWrapped("This setting is controlled by the current weather (%s).", currentWeathers.currentWeather ? currentWeathers.currentWeather->GetFormEditorID() : "Unknown"); ImGui::Separator(); - ImGui::TextColored(ImVec4(0.6f, 0.9f, 0.6f, 1.0f), "Click to open Weather Editor"); + ImGui::TextColored(ImVec4(0.6f, 0.9f, 0.6f, 1.0f), "Click to open CS Editor"); ImGui::PopTextWrapPos(); ImGui::EndTooltip(); } @@ -2264,7 +2264,7 @@ namespace Util ImGui::TextWrapped("This setting is controlled by the current weather (%s).", currentWeathers.currentWeather ? currentWeathers.currentWeather->GetFormEditorID() : "Unknown"); ImGui::Separator(); - ImGui::TextColored(ImVec4(0.6f, 0.9f, 0.6f, 1.0f), "Click to open Weather Editor"); + ImGui::TextColored(ImVec4(0.6f, 0.9f, 0.6f, 1.0f), "Click to open CS Editor"); ImGui::PopTextWrapPos(); ImGui::EndTooltip(); }