Skip to content

refactor: centralize feature category names#2007

Merged
alandtse merged 1 commit into
community-shaders:devfrom
mvanhorn:refactor/1265-centralize-category-names
Mar 24, 2026
Merged

refactor: centralize feature category names#2007
alandtse merged 1 commit into
community-shaders:devfrom
mvanhorn:refactor/1265-centralize-category-names

Conversation

@mvanhorn
Copy link
Copy Markdown
Contributor

@mvanhorn mvanhorn commented Mar 23, 2026

Summary

Replaces all hard-coded category string literals in GetCategory() overrides with constexpr std::string_view constants from a new FeatureCategories namespace.

Changes

  • New file: src/FeatureCategories.h - 10 constants (Characters, Display, Grass, Landscape & Textures, Lighting, Materials, Other, Sky, Utility, Water)
  • src/Feature.h: Default GetCategory() now returns FeatureCategories::kOther
  • 33 feature headers: Each GetCategory() override updated to use the corresponding constant

34 files changed, 35 insertions(+), 34 deletions(-).

Closes #1265

This contribution was developed with AI assistance (Claude Code).

Summary by CodeRabbit

  • Refactor
    • Centralized feature category definitions for improved code maintainability and consistency across the system.

Replace hard-coded string literals in GetCategory() with
constexpr string_view constants from a new FeatureCategories
namespace. Eliminates typo risks and provides a single location
to manage all category names.

Closes community-shaders#1265

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
@coderabbitai
Copy link
Copy Markdown
Contributor

coderabbitai Bot commented Mar 23, 2026

📝 Walkthrough

Walkthrough

This PR centralizes feature category names from hardcoded string literals scattered across 34 feature implementations into a dedicated FeatureCategories namespace with inline constexpr std::string_view constants, then updates all features and the base Feature class to reference these centralized constants.

Changes

Cohort / File(s) Summary
FeatureCategories Centralization
src/FeatureCategories.h
New header defining 10 category constants (kCharacters, kDisplay, kGrass, kLandscapeAndTextures, kLighting, kMaterials, kOther, kSky, kUtility, kWater) as inline constexpr std::string_view values.
Base Feature Update
src/Feature.h
Added #include FeatureCategories.h and updated default GetCategory() implementation to return FeatureCategories::kOther instead of string literal "Other".
Lighting Features
src/Features/ExponentialHeightFog.h, src/Features/IBL.h, src/Features/InteriorSun.h, src/Features/InverseSquareLighting.h, src/Features/LightLimitFix.h, src/Features/LinearLighting.h, src/Features/ScreenSpaceGI.h, src/Features/ScreenSpaceShadows.h, src/Features/Skylighting.h, src/Features/VolumetricLighting.h, src/Features/VolumetricShadows.h
Updated GetCategory() overrides to return FeatureCategories::kLighting instead of string literal "Lighting".
Material Features
src/Features/DynamicCubemaps.h, src/Features/ExtendedMaterials.h, src/Features/ExtendedTranslucency.h
Updated GetCategory() overrides to return FeatureCategories::kMaterials instead of string literal "Materials".
Landscape & Terrain Features
src/Features/LODBlending.h, src/Features/TerrainBlending.h, src/Features/TerrainHelper.h, src/Features/TerrainShadows.h, src/Features/TerrainVariation.h
Updated GetCategory() overrides to return FeatureCategories::kLandscapeAndTextures instead of string literal "Landscape & Textures".
Water Features
src/Features/UnifiedWater.h, src/Features/WaterEffects.h, src/Features/WetnessEffects.h
Updated GetCategory() overrides to return FeatureCategories::kWater instead of string literal "Water".
Sky Features
src/Features/CloudShadows.h, src/Features/SkySync.h
Updated GetCategory() overrides to return FeatureCategories::kSky instead of string literal "Sky".
Character Features
src/Features/HairSpecular.h, src/Features/SubsurfaceScattering.h
Updated GetCategory() overrides to return FeatureCategories::kCharacters instead of string literal "Characters".
Grass Features
src/Features/GrassCollision.h, src/Features/GrassLighting.h
Updated GetCategory() overrides to return FeatureCategories::kGrass instead of string literal "Grass".
Utility Features
src/Features/OverlayFeature.h, src/Features/RenderDoc.h, src/Features/VR.h, src/Features/WeatherEditor.h
Updated GetCategory() overrides to return FeatureCategories::kUtility instead of string literal "Utility".
Display Feature
src/Features/Upscaling.h
Updated GetCategory() override to return FeatureCategories::kDisplay instead of string literal "Display".

Estimated code review effort

🎯 2 (Simple) | ⏱️ ~12 minutes

Possibly related PRs

  • PR #1155: Introduced the category string literals that this PR centralizes into constants and references across all features.
  • PR #1178: Implements menu categorization using Feature::GetCategory(); these centralized constants ensure consistent categorization throughout the codebase.
  • PR #1713: Previously reclassified several features into different categories; this PR ensures those category labels are now maintained via centralized constants.

Suggested reviewers

  • davo0411
  • alandtse
  • jiayev

Poem

🐰 String literals scattered far and wide,
Now gather 'round with constants as their guide,
A tidy namespace keeps them safe and sound,
No typos lurk where centralization's found! ✨

🚥 Pre-merge checks | ✅ 4 | ❌ 1

❌ Failed checks (1 warning)

Check name Status Explanation Resolution
Docstring Coverage ⚠️ Warning Docstring coverage is 2.13% which is insufficient. The required threshold is 80.00%. Write docstrings for the functions missing them to satisfy the coverage threshold.
✅ Passed checks (4 passed)
Check name Status Explanation
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.
Title check ✅ Passed The pull request title clearly and concisely summarizes the main change: centralizing feature category names into a new FeatureCategories.h header file.
Linked Issues check ✅ Passed The PR successfully implements all coding requirements from issue #1265: creates a FeatureCategories namespace with centralized constexpr string_view constants, updates Feature.h default implementation, and modifies all 33 feature headers to use these constants instead of hardcoded strings.
Out of Scope Changes check ✅ Passed All changes are directly related to centralizing feature category names as specified in issue #1265; no out-of-scope modifications detected.

✏️ Tip: You can configure your own custom pre-merge checks in the settings.

✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands and usage tips.

@github-actions
Copy link
Copy Markdown

No actionable suggestions for changed features.

Copy link
Copy Markdown
Contributor

@coderabbitai coderabbitai Bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🧹 Nitpick comments (1)
src/FeatureCategories.h (1)

6-15: Add kPostProcessing to complete category centralization.

"Post-Processing" still exists as a hardcoded category in menu/icon paths, so this header is not yet a full single source of truth for category names.

Suggested diff
 namespace FeatureCategories
 {
 	inline constexpr std::string_view kCharacters = "Characters";
 	inline constexpr std::string_view kDisplay = "Display";
 	inline constexpr std::string_view kGrass = "Grass";
 	inline constexpr std::string_view kLandscapeAndTextures = "Landscape & Textures";
 	inline constexpr std::string_view kLighting = "Lighting";
 	inline constexpr std::string_view kMaterials = "Materials";
 	inline constexpr std::string_view kOther = "Other";
+	inline constexpr std::string_view kPostProcessing = "Post-Processing";
 	inline constexpr std::string_view kSky = "Sky";
 	inline constexpr std::string_view kUtility = "Utility";
 	inline constexpr std::string_view kWater = "Water";
 }
🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.

In `@src/FeatureCategories.h` around lines 6 - 15, Add a centralized constant for
the missing Post-Processing category: define inline constexpr std::string_view
kPostProcessing = "Post-Processing" alongside the other constants in
FeatureCategories (the existing kCharacters, kDisplay, kGrass, etc.), and
replace any remaining hardcoded "Post-Processing" occurrences (e.g., menu or
icon path usages) to reference FeatureCategories::kPostProcessing so the header
becomes the single source of truth for category names.
🤖 Prompt for all review comments with AI agents
Verify each finding against the current code and only fix it if needed.

Nitpick comments:
In `@src/FeatureCategories.h`:
- Around line 6-15: Add a centralized constant for the missing Post-Processing
category: define inline constexpr std::string_view kPostProcessing =
"Post-Processing" alongside the other constants in FeatureCategories (the
existing kCharacters, kDisplay, kGrass, etc.), and replace any remaining
hardcoded "Post-Processing" occurrences (e.g., menu or icon path usages) to
reference FeatureCategories::kPostProcessing so the header becomes the single
source of truth for category names.

ℹ️ Review info
⚙️ Run configuration

Configuration used: Path: .coderabbit.yaml

Review profile: CHILL

Plan: Pro

Run ID: 212ac0a9-cec6-4d64-86d2-b62ea1dbca17

📥 Commits

Reviewing files that changed from the base of the PR and between 3616a17 and 3dc1d6d.

📒 Files selected for processing (35)
  • src/Feature.h
  • src/FeatureCategories.h
  • src/Features/CloudShadows.h
  • src/Features/DynamicCubemaps.h
  • src/Features/ExponentialHeightFog.h
  • src/Features/ExtendedMaterials.h
  • src/Features/ExtendedTranslucency.h
  • src/Features/GrassCollision.h
  • src/Features/GrassLighting.h
  • src/Features/HairSpecular.h
  • src/Features/IBL.h
  • src/Features/InteriorSun.h
  • src/Features/InverseSquareLighting.h
  • src/Features/LODBlending.h
  • src/Features/LightLimitFix.h
  • src/Features/LinearLighting.h
  • src/Features/OverlayFeature.h
  • src/Features/RenderDoc.h
  • src/Features/ScreenSpaceGI.h
  • src/Features/ScreenSpaceShadows.h
  • src/Features/SkySync.h
  • src/Features/Skylighting.h
  • src/Features/SubsurfaceScattering.h
  • src/Features/TerrainBlending.h
  • src/Features/TerrainHelper.h
  • src/Features/TerrainShadows.h
  • src/Features/TerrainVariation.h
  • src/Features/UnifiedWater.h
  • src/Features/Upscaling.h
  • src/Features/VR.h
  • src/Features/VolumetricLighting.h
  • src/Features/VolumetricShadows.h
  • src/Features/WaterEffects.h
  • src/Features/WeatherEditor.h
  • src/Features/WetnessEffects.h

@github-actions
Copy link
Copy Markdown

✅ A pre-release build is available for this PR:
Download

Copy link
Copy Markdown
Collaborator

@alandtse alandtse left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks!

@alandtse alandtse changed the title refactor: centralize feature category names into FeatureCategories.h refactor: centralize feature category names Mar 24, 2026
@alandtse alandtse merged commit 1ecfe2a into community-shaders:dev Mar 24, 2026
16 checks passed
davo0411 added a commit to davo0411/skyrim-community-shaders that referenced this pull request Mar 28, 2026
* fix(weather overrides): ensure json format for features (community-shaders#1748)

Co-authored-by: SkrubbySkrubInAShrub <skrubbyskrubinashrub@gmail.com>

* perf(terrain blending): tweak defaults (community-shaders#1771)

* fix(lighting): vanilla envcolor mult the correct value (community-shaders#1775)

* fix(water): remove final colour saturate (community-shaders#1778)

* fix(unified-water): LOD water cache mismatch (community-shaders#1779)

* fix(weather editor): override desync with weather transitions (community-shaders#1782)

* fix(weather editor): no-override weather file deletion (community-shaders#1777)

* fix(weather editor): apply weather settings post-load (community-shaders#1776)

* fix(weather editor): handling of weathers without overrides (community-shaders#1773)

* feat(UI): feature headings (community-shaders#1786)

Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>

* feat(VR): add wand pointing (community-shaders#1790)

* chore(UI): theme consistency (community-shaders#1787)

* fix(upscaling): warn about max nvidia resolution (community-shaders#1795)

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>

* chore(linear lighting): UI settings changes (community-shaders#1785)

Co-authored-by: Jiaye <l936249247@hotmail.com>

* fix(grass-lighting) better basic grass brightness default (community-shaders#1780)

* chore(UI): remove settings and about tabs (community-shaders#1794)

Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>

* fix(terrain shadows): fix compiler warnings (community-shaders#1798)

* fix: fix flickering particles (community-shaders#1791)

* fix(terrain blending): disable vr support (community-shaders#1799)

* refactor(upscaling): standardize behavior and tune settings (community-shaders#1783)

Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>

* feat(UI): add auto-hide featurelist option (community-shaders#1793)

* fix: match grass brightness of vanilla (community-shaders#1801)

Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>

* refactor(perfoverlay): remove color from "Other" and "Total" (community-shaders#1806)

Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>

* fix(unified water): fix for mesh water jitter (community-shaders#1809)

* fix: clear shader cache on plugin version change (community-shaders#1739)

* feat(filewatcher): add hlsli tracking (community-shaders#1796)

* feat(linear lighting): add ambient multiplier (community-shaders#1805)

* fix(unified-water): underwater fog flicker (community-shaders#1807)

* fix(UI): conflicting esc key on welcome hotkey dialogue (community-shaders#1811)

Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>

* chore(UI): add subtext font to tooltips (community-shaders#1810)

Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>

* build: bump streamline to 2.10.3 (community-shaders#1813)

* build: resolve shader warnings (community-shaders#1818)

* feat(ui): add combo hotkey support (community-shaders#1808)

* feat: add feature constraints (community-shaders#1804)

* build: update version to 1.4.8 (community-shaders#1802)

* fix(VR): apply per eye upscaling (community-shaders#1819)

- Split upscaling across each eye for correctness and to avoid DLSS failing over 8k x 8k limit
- Changes HMD mask color to black to hide artifacts with fast movement

* build: bump common lib to 4.2.0 (community-shaders#1821)

Co-authored-by: doodlum <15017472+doodlum@users.noreply.github.com>

* fix(grass collision): catch trashed actor pointers (community-shaders#1765)

* fix(weather editor): desynced override transitions (community-shaders#1820)

* fix(upscaling): fix preset and allocation handling (community-shaders#1824)

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* build: remove linear lighting from core whilst in development (community-shaders#1826)

* chore: bump version to 1.4.9 (community-shaders#1827)

* fix: add back LLF core file and remove LL core file (community-shaders#1828)

* fix: dont save shader debug toggles (community-shaders#1831)

* fix: remove IBL from core, unfinished (community-shaders#1830)

* chore: update version to 1.4.10 (community-shaders#1832)

* chore(dynamic cubemaps): lessen normalisation darkening (community-shaders#1833)

* chore(llf): remove LightsVisualisationMode settings loading (community-shaders#1834)

* revert: "fix: dont save shader debug toggles (community-shaders#1831)"

This reverts commit f55f195.

* revert: "chore(llf): remove LightsVisualisationMode settings loading (community-shaders#1834)"

This reverts commit b3db5a7.

* fix: default enabledClasses true

* build: bump version

* feat(upscaling): custom DLSS preset (community-shaders#1837)

* fix(weather editor): sync UI for full transition (community-shaders#1822)

* fix(linearlighting): return correct buffer when ll feature off (community-shaders#1838)

* fix(PBR): skip IrradianceToLinear on specular in vanilla (community-shaders#1839)

* feat(weather editor): adjust slider ranges (community-shaders#1847)

Co-authored-by: SkrubbySkrubInAShrub <skrubbyskrubinashrub@gmail.com>

* feat(weather editor): replace volumetric Lighting RGB sliders with color picker (community-shaders#1846)

Co-authored-by: SkrubbySkrubInAShrub <skrubbyskrubinashrub@gmail.com>

* fix(grass collision): collision radius math  (community-shaders#1849)

* chore: move new feature information into docs (community-shaders#1848)

Co-authored-by: doodlum <15017472+doodlum@users.noreply.github.com>

* fix(ui): background blur with upscaling (community-shaders#1815)

Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>

* refactor: move some features to core (community-shaders#1852)

* fix: fix blown out water specular (community-shaders#1853)

* feat(weather editor): toggle hotkey (community-shaders#1856)

Co-authored-by: SkrubbySkrubInAShrub <skrubbyskrubinashrub@gmail.com>
Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>

* feat(color picker): add an original color reference to all color pickers (community-shaders#1857)

Co-authored-by: SkrubbySkrubInAShrub <skrubbyskrubinashrub@gmail.com>

* perf(emat): alternate tweaks (community-shaders#1850)

Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>

* feat(weather-editor): merge weather picker and editor (community-shaders#1845)

Co-authored-by: SkrubbySkrubInAShrub <skrubbyskrubinashrub@gmail.com>
Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>

* chore(llf): remove LLF settings loading (community-shaders#1859)

* feat: exponential height fog (community-shaders#1708)

Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>

* feat(weather editor): block editor access in loading screens (community-shaders#1871)

Co-authored-by: SkrubbySkrubInAShrub <skrubbyskrubinashrub@gmail.com>

* feat(weather editor): improve weather picker UI and functionality (community-shaders#1863)

Co-authored-by: SkrubbySkrubInAShrub <skrubbyskrubinashrub@gmail.com>
Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>

* feat(weather editor): repurpose unsaved changes tracking (community-shaders#1860)

Co-authored-by: SkrubbySkrubInAShrub <skrubbyskrubinashrub@gmail.com>
Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>

* fix: sync grass lighting defaults to match ENB (community-shaders#1844)

* fix: stop shader compilation on game exit (community-shaders#1867)

closes community-shaders#1130

* fix(weather editor): prevent inputs when editor is open (community-shaders#1872)

* fix(weather editor): add ctd guards (community-shaders#1864)

* feat(weather editor): remove WorldSpace widget and associated code (community-shaders#1878)

Co-authored-by: SkrubbySkrubInAShrub <skrubbyskrubinashrub@gmail.com>

* feat(vr): add OpenComposite menu support (community-shaders#1880)

* revert: "feat(vr): add OpenComposite VR menu" (community-shaders#1881)

* revert: "fix: stop shader compilation on game exit" (community-shaders#1882)

* feat(vr): add OpenComposite menu support (community-shaders#1883)

* feat(weather editor): add time controls (community-shaders#1877)

* feat: add shadowmap rasterizer override (community-shaders#1690)

* fix(weather editor): clear feature overrides with revert (community-shaders#1884)

* feat(UI): Interior Only (community-shaders#1854)

* fix(VR): fix Shadowmap Cascade Rasterizer (community-shaders#1888)

* fix(unified water): distance calculation for raindrops & LOD fade (community-shaders#1890)

* refactor: clarify core feature version mismatch text (community-shaders#1886)

* fix: stop shader compilation on game exit (community-shaders#1885)

* build: exclude hlsl tests from packaging (community-shaders#1894)

* chore: disable feature constraints in dev mode (community-shaders#1893)

* fix(vr): improve stereo UV handling (community-shaders#1899)

* fix(weather editor): move esc key to native input system (community-shaders#1897)

Co-authored-by: SkrubbySkrubInAShrub <skrubbyskrubinashrub@gmail.com>

* fix: move ResolveMonoUVForEye outside VR guard (community-shaders#1906)

* fix(grass collision): validate actor  (community-shaders#1905)

Co-authored-by: doodlum <15017472+doodlum@users.noreply.github.com>

* fix(terrain shadows): height map regression (community-shaders#1911)

* fix: util vertical fov math (community-shaders#1904)

Co-authored-by: doodlum <15017472+doodlum@users.noreply.github.com>

* test: add float4 overload test (community-shaders#1902)

* refactor: move all features to globals::game::calendar (community-shaders#1909)

Co-authored-by: SkrubbySkrubInAShrub <skrubbyskrubinashrub@gmail.com>
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* fix(UI): resolution based font (community-shaders#1907)

Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>

* feat(weather editor): make objects window be independently scrollable (community-shaders#1908)

Co-authored-by: SkrubbySkrubInAShrub <skrubbyskrubinashrub@gmail.com>
Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>

* feat(UI): consolidate searchbar to util and add to weather editor (community-shaders#1898)

Co-authored-by: SkrubbySkrubInAShrub <skrubbyskrubinashrub@gmail.com>
Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>

* feat(weather editor): add filled star for favourites. (community-shaders#1913)

Co-authored-by: SkrubbySkrubInAShrub <skrubbyskrubinashrub@gmail.com>

* feat(weather editor): add delete json button to objects window (community-shaders#1914)

Co-authored-by: SkrubbySkrubInAShrub <skrubbyskrubinashrub@gmail.com>
Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>

* fix(VR): resolution-based font (community-shaders#1923)

* refactor: use depthbuffer helper (community-shaders#1925)

* refactor: move TurboColormap into Color.hlsli (community-shaders#1924)

* fix(weather editor): expand clickable area of feature override (community-shaders#1921)

* feat(weather editor): enable snapping to viewport (community-shaders#1917)

* feat(weather editor): highlight enabled cloud layers (community-shaders#1916)

* fix(VR): SSGI discrepancies (community-shaders#1926)

* feat: volumetric shadows (community-shaders#1874)

* ci: enhance feature version audit (community-shaders#1927)

* feat(weather editor): add filter options for objects window (community-shaders#1922)

* feat(weather editor): sticky headers and scrollable content (community-shaders#1930)

* fix(UI): ImGui scaling for borderless mode (community-shaders#1929)

* ci: don't fail on feature audits (community-shaders#1934)

* fix(pbr): use scrap heap allocation (community-shaders#1928)

* chore(UI): add subsurface scattering to Interior Only (community-shaders#1932)

* fix(weather editor): align highlights, fix tooltip (community-shaders#1918)

* fix(ssgi): guard VR only compilation (community-shaders#1938)

* build: update template to avoid extra directory (community-shaders#1812)

* style: fix hlsl formatting (community-shaders#1939)

* fix(UI): improve theme management UI flow (community-shaders#1933)

closes community-shaders#1919

* build(deps): update pre-commit hooks (community-shaders#1768)

* feat(UI): delete theme button (community-shaders#1940)

* feat(UI): open log file button (community-shaders#1942)

* fix(hair): marschner volumetric shadow tint (community-shaders#1944)

* fix(VR): screen space shadows desync (community-shaders#1946)

closes community-shaders#1840

* fix(VR): depth culling during upscaling/Terrain Blending (community-shaders#1858)

* feat(VR): add edge detection for stereo blending (community-shaders#1948)

* refactor: allocate trampoline once (community-shaders#1951)

* fix(UI): PBR MATO color scale RGB settings corrected (community-shaders#1957)

* fix(weather editor): guard against loadorder changes (community-shaders#1953)

Co-authored-by: SkrubbySkrubInAShrub <skrubbyskrubinashrub@gmail.com>
Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
Co-authored-by: davo0411 <davidkehoe0411@outlook.com>

* fix(UI): feature description text wrapping (community-shaders#1960)

* fix(VR): exponential height fog stereo mismatch (community-shaders#1961)

* chore: pbr consistency changes (community-shaders#1841)

Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: jiayev <l936249247@hotmail.com>

* fix(skylighting): remove PBR lighting scale (community-shaders#1963)

* fix(skysync): effect mesh blackout during shadow caster transitions (community-shaders#1965)

* ci: fix wiki deletion with buffer update (community-shaders#1967)

* feat(weather-editor): option to hide viewport (community-shaders#1970)

Co-authored-by: SkrubbySkrubInAShrub <skrubbyskrubinashrub@gmail.com>
Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>

* test(shader): fallback to warp on invalidarg (community-shaders#1956)

Co-authored-by: LukeFrankio <loren@example.com>
Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>

* feat: triplanar projected materials (community-shaders#1950)

Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>

* fix(ao): better ao calculations (community-shaders#1968)

Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>

* fix(pbr): fix improper kD terms (community-shaders#1971)

Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>

* perf(emat): tweak fade and shadow intensity (community-shaders#1892)

Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>

* feat(ibl): revamp ibl and dalc sh (community-shaders#1947)

* build: bump commonlib to 4.7.1 (community-shaders#1977)

* fix: upscaling monitor detection fixes (community-shaders#1978)

* fix(weather editor): prevent overrides resetting settings (community-shaders#1980)

* fix(VR): bad llf offset (community-shaders#1984)

* perf: cache frequent ui checks (community-shaders#1985)

* fix: preserve vanilla water TAA when no upscaler is active (community-shaders#1986)

Co-authored-by: jturnley <jturnley@users.noreply.github.com>

* fix(UI): first-time dialog fade affects all overlays (community-shaders#1976)

* fix(skysync): remove sunlight fade and volumetric lighting overrides (community-shaders#1966)

* refactor(HLSL): standardize epsilon constants (community-shaders#1992)

closes community-shaders#1227

* feat(UI): require Shift to dock windows (community-shaders#1989)

* fix(UI): input spam after alt-tab (community-shaders#1993)

* fix(sky sync): early return for invalid cells (community-shaders#1991)

Co-authored-by: SkrubbySkrubInAShrub <skrubbyskrubinashrub@gmail.com>
Co-authored-by: jiayev <l936249247@hotmail.com>

* fix(sky sync): remove undeclared variable (community-shaders#1994)

* refactor(pbr): clear up semantics (community-shaders#1995)

* fix(UI): scale layout values for high-DPI (community-shaders#1987)

Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>

* fix(water): hdr water taa blend (community-shaders#1988)

* refactor(color): clarify gamma conversion functions (community-shaders#1996)

* feat(ISL-editor): add light counters and fix filtering (community-shaders#1997)

* fix(UI): DPI-aware window layouts (community-shaders#2000)

* fix(weather-editor): save color palette window (community-shaders#2001)

* refactor: centralize feature category names (community-shaders#2007)

closes community-shaders#1265

Co-authored-by: Matt Van Horn <455140+mvanhorn@users.noreply.github.com>
Co-authored-by: Claude Opus 4.6 <noreply@anthropic.com>

* chore: bump versions (community-shaders#2010)

* fix(water): sample history mask from current mask (community-shaders#2011)

* chore(wetness-effects): set default MaxPuddleWetness to 1.5 (community-shaders#1981)

Co-authored-by: SkrubbySkrubInAShrub <skrubbyskrubinashrub@gmail.com>

* feat(weather-editor): add free camera and play mode (community-shaders#2008)

Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>

* build: bump versions and reduce false positives (community-shaders#2013)

* fix(VR): LLF cluster building and culling (community-shaders#2012)

* build: update to VS 2026 (community-shaders#1990)

* ci: fix preset in vs2022 mode (community-shaders#2015)

* ci: remove v2022 from shader jobs (community-shaders#2016)

* feat(upscaling): integrate Streamline Reflex controls (community-shaders#1958)

* fix(unified-water): BSWaterShaderProperty.plane (community-shaders#1998)

---------

Co-authored-by: Skrubby Skrub In A Shrub <87662196+SkrubbySkrubInAShrub@users.noreply.github.com>
Co-authored-by: SkrubbySkrubInAShrub <skrubbyskrubinashrub@gmail.com>
Co-authored-by: doodlum <15017472+doodlum@users.noreply.github.com>
Co-authored-by: jiayev <l936249247@hotmail.com>
Co-authored-by: Dlizzio <77717521+Dlizzio@users.noreply.github.com>
Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
Co-authored-by: Alan Tse <alandtse@users.noreply.github.com>
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
Co-authored-by: Bruce <44987693+brucenguyen@users.noreply.github.com>
Co-authored-by: Copilot <198982749+Copilot@users.noreply.github.com>
Co-authored-by: Dawntic <197450198+Dawntic@users.noreply.github.com>
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: Alan Tse <alandtse@gmail.com>
Co-authored-by: Vanni Giachin <vanni.giachin@qlik.com>
Co-authored-by: zxcvbn <66063766+zndxcvbn@users.noreply.github.com>
Co-authored-by: ParticleTroned <248299730+ParticleTroned@users.noreply.github.com>
Co-authored-by: soda <130315225+soda3000@users.noreply.github.com>
Co-authored-by: YtzyFvra <59631290+YtzyFvra@users.noreply.github.com>
Co-authored-by: LukeFrankio <lorenzogrutzmann@gmail.com>
Co-authored-by: LukeFrankio <loren@example.com>
Co-authored-by: jturnley <32892261+jturnley@users.noreply.github.com>
Co-authored-by: jturnley <jturnley@users.noreply.github.com>
Co-authored-by: Igor Alan Albuquerque de Sousa <50077829+IgorAlanAlbuquerque@users.noreply.github.com>
Co-authored-by: Matt Van Horn <mvanhorn@users.noreply.github.com>
Co-authored-by: Matt Van Horn <455140+mvanhorn@users.noreply.github.com>
Co-authored-by: Claude Opus 4.6 <noreply@anthropic.com>
davo0411 added a commit to davo0411/skyrim-community-shaders that referenced this pull request Mar 29, 2026
* fix(weather overrides): ensure json format for features (community-shaders#1748)

Co-authored-by: SkrubbySkrubInAShrub <skrubbyskrubinashrub@gmail.com>

* perf(terrain blending): tweak defaults (community-shaders#1771)

* fix(lighting): vanilla envcolor mult the correct value (community-shaders#1775)

* fix(water): remove final colour saturate (community-shaders#1778)

* fix(unified-water): LOD water cache mismatch (community-shaders#1779)

* fix(weather editor): override desync with weather transitions (community-shaders#1782)

* fix(weather editor): no-override weather file deletion (community-shaders#1777)

* fix(weather editor): apply weather settings post-load (community-shaders#1776)

* fix(weather editor): handling of weathers without overrides (community-shaders#1773)

* feat(UI): feature headings (community-shaders#1786)

Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>

* feat(VR): add wand pointing (community-shaders#1790)

* chore(UI): theme consistency (community-shaders#1787)

* fix(upscaling): warn about max nvidia resolution (community-shaders#1795)

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>

* chore(linear lighting): UI settings changes (community-shaders#1785)

Co-authored-by: Jiaye <l936249247@hotmail.com>

* fix(grass-lighting) better basic grass brightness default (community-shaders#1780)

* chore(UI): remove settings and about tabs (community-shaders#1794)

Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>

* fix(terrain shadows): fix compiler warnings (community-shaders#1798)

* fix: fix flickering particles (community-shaders#1791)

* fix(terrain blending): disable vr support (community-shaders#1799)

* refactor(upscaling): standardize behavior and tune settings (community-shaders#1783)

Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>

* feat(UI): add auto-hide featurelist option (community-shaders#1793)

* fix: match grass brightness of vanilla (community-shaders#1801)

Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>

* refactor(perfoverlay): remove color from "Other" and "Total" (community-shaders#1806)

Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>

* fix(unified water): fix for mesh water jitter (community-shaders#1809)

* fix: clear shader cache on plugin version change (community-shaders#1739)

* feat(filewatcher): add hlsli tracking (community-shaders#1796)

* feat(linear lighting): add ambient multiplier (community-shaders#1805)

* fix(unified-water): underwater fog flicker (community-shaders#1807)

* fix(UI): conflicting esc key on welcome hotkey dialogue (community-shaders#1811)

Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>

* chore(UI): add subtext font to tooltips (community-shaders#1810)

Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>

* build: bump streamline to 2.10.3 (community-shaders#1813)

* build: resolve shader warnings (community-shaders#1818)

* feat(ui): add combo hotkey support (community-shaders#1808)

* feat: add feature constraints (community-shaders#1804)

* build: update version to 1.4.8 (community-shaders#1802)

* fix(VR): apply per eye upscaling (community-shaders#1819)

- Split upscaling across each eye for correctness and to avoid DLSS failing over 8k x 8k limit
- Changes HMD mask color to black to hide artifacts with fast movement

* build: bump common lib to 4.2.0 (community-shaders#1821)

Co-authored-by: doodlum <15017472+doodlum@users.noreply.github.com>

* fix(grass collision): catch trashed actor pointers (community-shaders#1765)

* fix(weather editor): desynced override transitions (community-shaders#1820)

* fix(upscaling): fix preset and allocation handling (community-shaders#1824)

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* build: remove linear lighting from core whilst in development (community-shaders#1826)

* chore: bump version to 1.4.9 (community-shaders#1827)

* fix: add back LLF core file and remove LL core file (community-shaders#1828)

* fix: dont save shader debug toggles (community-shaders#1831)

* fix: remove IBL from core, unfinished (community-shaders#1830)

* chore: update version to 1.4.10 (community-shaders#1832)

* chore(dynamic cubemaps): lessen normalisation darkening (community-shaders#1833)

* chore(llf): remove LightsVisualisationMode settings loading (community-shaders#1834)

* revert: "fix: dont save shader debug toggles (community-shaders#1831)"

This reverts commit f55f195.

* revert: "chore(llf): remove LightsVisualisationMode settings loading (community-shaders#1834)"

This reverts commit b3db5a7.

* fix: default enabledClasses true

* build: bump version

* feat(upscaling): custom DLSS preset (community-shaders#1837)

* fix(weather editor): sync UI for full transition (community-shaders#1822)

* fix(linearlighting): return correct buffer when ll feature off (community-shaders#1838)

* fix(PBR): skip IrradianceToLinear on specular in vanilla (community-shaders#1839)

* feat(weather editor): adjust slider ranges (community-shaders#1847)

Co-authored-by: SkrubbySkrubInAShrub <skrubbyskrubinashrub@gmail.com>

* feat(weather editor): replace volumetric Lighting RGB sliders with color picker (community-shaders#1846)

Co-authored-by: SkrubbySkrubInAShrub <skrubbyskrubinashrub@gmail.com>

* fix(grass collision): collision radius math  (community-shaders#1849)

* chore: move new feature information into docs (community-shaders#1848)

Co-authored-by: doodlum <15017472+doodlum@users.noreply.github.com>

* fix(ui): background blur with upscaling (community-shaders#1815)

Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>

* refactor: move some features to core (community-shaders#1852)

* fix: fix blown out water specular (community-shaders#1853)

* feat(weather editor): toggle hotkey (community-shaders#1856)

Co-authored-by: SkrubbySkrubInAShrub <skrubbyskrubinashrub@gmail.com>
Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>

* feat(color picker): add an original color reference to all color pickers (community-shaders#1857)

Co-authored-by: SkrubbySkrubInAShrub <skrubbyskrubinashrub@gmail.com>

* perf(emat): alternate tweaks (community-shaders#1850)

Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>

* feat(weather-editor): merge weather picker and editor (community-shaders#1845)

Co-authored-by: SkrubbySkrubInAShrub <skrubbyskrubinashrub@gmail.com>
Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>

* chore(llf): remove LLF settings loading (community-shaders#1859)

* feat: exponential height fog (community-shaders#1708)

Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>

* feat(weather editor): block editor access in loading screens (community-shaders#1871)

Co-authored-by: SkrubbySkrubInAShrub <skrubbyskrubinashrub@gmail.com>

* feat(weather editor): improve weather picker UI and functionality (community-shaders#1863)

Co-authored-by: SkrubbySkrubInAShrub <skrubbyskrubinashrub@gmail.com>
Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>

* feat(weather editor): repurpose unsaved changes tracking (community-shaders#1860)

Co-authored-by: SkrubbySkrubInAShrub <skrubbyskrubinashrub@gmail.com>
Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>

* fix: sync grass lighting defaults to match ENB (community-shaders#1844)

* fix: stop shader compilation on game exit (community-shaders#1867)

closes community-shaders#1130

* fix(weather editor): prevent inputs when editor is open (community-shaders#1872)

* fix(weather editor): add ctd guards (community-shaders#1864)

* feat(weather editor): remove WorldSpace widget and associated code (community-shaders#1878)

Co-authored-by: SkrubbySkrubInAShrub <skrubbyskrubinashrub@gmail.com>

* feat(vr): add OpenComposite menu support (community-shaders#1880)

* revert: "feat(vr): add OpenComposite VR menu" (community-shaders#1881)

* revert: "fix: stop shader compilation on game exit" (community-shaders#1882)

* feat(vr): add OpenComposite menu support (community-shaders#1883)

* feat(weather editor): add time controls (community-shaders#1877)

* feat: add shadowmap rasterizer override (community-shaders#1690)

* fix(weather editor): clear feature overrides with revert (community-shaders#1884)

* feat(UI): Interior Only (community-shaders#1854)

* fix(VR): fix Shadowmap Cascade Rasterizer (community-shaders#1888)

* fix(unified water): distance calculation for raindrops & LOD fade (community-shaders#1890)

* refactor: clarify core feature version mismatch text (community-shaders#1886)

* fix: stop shader compilation on game exit (community-shaders#1885)

* build: exclude hlsl tests from packaging (community-shaders#1894)

* chore: disable feature constraints in dev mode (community-shaders#1893)

* fix(vr): improve stereo UV handling (community-shaders#1899)

* fix(weather editor): move esc key to native input system (community-shaders#1897)

Co-authored-by: SkrubbySkrubInAShrub <skrubbyskrubinashrub@gmail.com>

* fix: move ResolveMonoUVForEye outside VR guard (community-shaders#1906)

* fix(grass collision): validate actor  (community-shaders#1905)

Co-authored-by: doodlum <15017472+doodlum@users.noreply.github.com>

* fix(terrain shadows): height map regression (community-shaders#1911)

* fix: util vertical fov math (community-shaders#1904)

Co-authored-by: doodlum <15017472+doodlum@users.noreply.github.com>

* test: add float4 overload test (community-shaders#1902)

* refactor: move all features to globals::game::calendar (community-shaders#1909)

Co-authored-by: SkrubbySkrubInAShrub <skrubbyskrubinashrub@gmail.com>
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* fix(UI): resolution based font (community-shaders#1907)

Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>

* feat(weather editor): make objects window be independently scrollable (community-shaders#1908)

Co-authored-by: SkrubbySkrubInAShrub <skrubbyskrubinashrub@gmail.com>
Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>

* feat(UI): consolidate searchbar to util and add to weather editor (community-shaders#1898)

Co-authored-by: SkrubbySkrubInAShrub <skrubbyskrubinashrub@gmail.com>
Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>

* feat(weather editor): add filled star for favourites. (community-shaders#1913)

Co-authored-by: SkrubbySkrubInAShrub <skrubbyskrubinashrub@gmail.com>

* feat(weather editor): add delete json button to objects window (community-shaders#1914)

Co-authored-by: SkrubbySkrubInAShrub <skrubbyskrubinashrub@gmail.com>
Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>

* fix(VR): resolution-based font (community-shaders#1923)

* refactor: use depthbuffer helper (community-shaders#1925)

* refactor: move TurboColormap into Color.hlsli (community-shaders#1924)

* fix(weather editor): expand clickable area of feature override (community-shaders#1921)

* feat(weather editor): enable snapping to viewport (community-shaders#1917)

* feat(weather editor): highlight enabled cloud layers (community-shaders#1916)

* fix(VR): SSGI discrepancies (community-shaders#1926)

* feat: volumetric shadows (community-shaders#1874)

* ci: enhance feature version audit (community-shaders#1927)

* feat(weather editor): add filter options for objects window (community-shaders#1922)

* feat(weather editor): sticky headers and scrollable content (community-shaders#1930)

* fix(UI): ImGui scaling for borderless mode (community-shaders#1929)

* ci: don't fail on feature audits (community-shaders#1934)

* fix(pbr): use scrap heap allocation (community-shaders#1928)

* chore(UI): add subsurface scattering to Interior Only (community-shaders#1932)

* fix(weather editor): align highlights, fix tooltip (community-shaders#1918)

* fix(ssgi): guard VR only compilation (community-shaders#1938)

* build: update template to avoid extra directory (community-shaders#1812)

* style: fix hlsl formatting (community-shaders#1939)

* fix(UI): improve theme management UI flow (community-shaders#1933)

closes community-shaders#1919

* build(deps): update pre-commit hooks (community-shaders#1768)

* feat(UI): delete theme button (community-shaders#1940)

* feat(UI): open log file button (community-shaders#1942)

* fix(hair): marschner volumetric shadow tint (community-shaders#1944)

* fix(VR): screen space shadows desync (community-shaders#1946)

closes community-shaders#1840

* fix(VR): depth culling during upscaling/Terrain Blending (community-shaders#1858)

* feat(VR): add edge detection for stereo blending (community-shaders#1948)

* refactor: allocate trampoline once (community-shaders#1951)

* fix(UI): PBR MATO color scale RGB settings corrected (community-shaders#1957)

* fix(weather editor): guard against loadorder changes (community-shaders#1953)

Co-authored-by: SkrubbySkrubInAShrub <skrubbyskrubinashrub@gmail.com>
Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
Co-authored-by: davo0411 <davidkehoe0411@outlook.com>

* fix(UI): feature description text wrapping (community-shaders#1960)

* fix(VR): exponential height fog stereo mismatch (community-shaders#1961)

* chore: pbr consistency changes (community-shaders#1841)

Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: jiayev <l936249247@hotmail.com>

* fix(skylighting): remove PBR lighting scale (community-shaders#1963)

* fix(skysync): effect mesh blackout during shadow caster transitions (community-shaders#1965)

* ci: fix wiki deletion with buffer update (community-shaders#1967)

* feat(weather-editor): option to hide viewport (community-shaders#1970)

Co-authored-by: SkrubbySkrubInAShrub <skrubbyskrubinashrub@gmail.com>
Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>

* test(shader): fallback to warp on invalidarg (community-shaders#1956)

Co-authored-by: LukeFrankio <loren@example.com>
Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>

* feat: triplanar projected materials (community-shaders#1950)

Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>

* fix(ao): better ao calculations (community-shaders#1968)

Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>

* fix(pbr): fix improper kD terms (community-shaders#1971)

Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>

* perf(emat): tweak fade and shadow intensity (community-shaders#1892)

Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>

* feat(ibl): revamp ibl and dalc sh (community-shaders#1947)

* build: bump commonlib to 4.7.1 (community-shaders#1977)

* fix: upscaling monitor detection fixes (community-shaders#1978)

* fix(weather editor): prevent overrides resetting settings (community-shaders#1980)

* fix(VR): bad llf offset (community-shaders#1984)

* perf: cache frequent ui checks (community-shaders#1985)

* fix: preserve vanilla water TAA when no upscaler is active (community-shaders#1986)

Co-authored-by: jturnley <jturnley@users.noreply.github.com>

* fix(UI): first-time dialog fade affects all overlays (community-shaders#1976)

* fix(skysync): remove sunlight fade and volumetric lighting overrides (community-shaders#1966)

* refactor(HLSL): standardize epsilon constants (community-shaders#1992)

closes community-shaders#1227

* feat(UI): require Shift to dock windows (community-shaders#1989)

* fix(UI): input spam after alt-tab (community-shaders#1993)

* fix(sky sync): early return for invalid cells (community-shaders#1991)

Co-authored-by: SkrubbySkrubInAShrub <skrubbyskrubinashrub@gmail.com>
Co-authored-by: jiayev <l936249247@hotmail.com>

* fix(sky sync): remove undeclared variable (community-shaders#1994)

* refactor(pbr): clear up semantics (community-shaders#1995)

* fix(UI): scale layout values for high-DPI (community-shaders#1987)

Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>

* fix(water): hdr water taa blend (community-shaders#1988)

* refactor(color): clarify gamma conversion functions (community-shaders#1996)

* feat(ISL-editor): add light counters and fix filtering (community-shaders#1997)

* fix(UI): DPI-aware window layouts (community-shaders#2000)

* fix(weather-editor): save color palette window (community-shaders#2001)

* refactor: centralize feature category names (community-shaders#2007)

closes community-shaders#1265

Co-authored-by: Matt Van Horn <455140+mvanhorn@users.noreply.github.com>
Co-authored-by: Claude Opus 4.6 <noreply@anthropic.com>

* chore: bump versions (community-shaders#2010)

* fix(water): sample history mask from current mask (community-shaders#2011)

* chore(wetness-effects): set default MaxPuddleWetness to 1.5 (community-shaders#1981)

Co-authored-by: SkrubbySkrubInAShrub <skrubbyskrubinashrub@gmail.com>

* feat(weather-editor): add free camera and play mode (community-shaders#2008)

Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>

* build: bump versions and reduce false positives (community-shaders#2013)

* fix(VR): LLF cluster building and culling (community-shaders#2012)

* build: update to VS 2026 (community-shaders#1990)

* ci: fix preset in vs2022 mode (community-shaders#2015)

* ci: remove v2022 from shader jobs (community-shaders#2016)

* feat(upscaling): integrate Streamline Reflex controls (community-shaders#1958)

* fix(unified-water): BSWaterShaderProperty.plane (community-shaders#1998)

---------

Co-authored-by: Skrubby Skrub In A Shrub <87662196+SkrubbySkrubInAShrub@users.noreply.github.com>
Co-authored-by: SkrubbySkrubInAShrub <skrubbyskrubinashrub@gmail.com>
Co-authored-by: doodlum <15017472+doodlum@users.noreply.github.com>
Co-authored-by: jiayev <l936249247@hotmail.com>
Co-authored-by: Dlizzio <77717521+Dlizzio@users.noreply.github.com>
Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
Co-authored-by: Alan Tse <alandtse@users.noreply.github.com>
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
Co-authored-by: Bruce <44987693+brucenguyen@users.noreply.github.com>
Co-authored-by: Copilot <198982749+Copilot@users.noreply.github.com>
Co-authored-by: Dawntic <197450198+Dawntic@users.noreply.github.com>
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: Alan Tse <alandtse@gmail.com>
Co-authored-by: Vanni Giachin <vanni.giachin@qlik.com>
Co-authored-by: zxcvbn <66063766+zndxcvbn@users.noreply.github.com>
Co-authored-by: ParticleTroned <248299730+ParticleTroned@users.noreply.github.com>
Co-authored-by: soda <130315225+soda3000@users.noreply.github.com>
Co-authored-by: YtzyFvra <59631290+YtzyFvra@users.noreply.github.com>
Co-authored-by: LukeFrankio <lorenzogrutzmann@gmail.com>
Co-authored-by: LukeFrankio <loren@example.com>
Co-authored-by: jturnley <32892261+jturnley@users.noreply.github.com>
Co-authored-by: jturnley <jturnley@users.noreply.github.com>
Co-authored-by: Igor Alan Albuquerque de Sousa <50077829+IgorAlanAlbuquerque@users.noreply.github.com>
Co-authored-by: Matt Van Horn <mvanhorn@users.noreply.github.com>
Co-authored-by: Matt Van Horn <455140+mvanhorn@users.noreply.github.com>
Co-authored-by: Claude Opus 4.6 <noreply@anthropic.com>
ParticleTroned pushed a commit to ParticleTroned/skyrim-community-shaders that referenced this pull request May 2, 2026
closes community-shaders#1265

Co-authored-by: Matt Van Horn <455140+mvanhorn@users.noreply.github.com>
Co-authored-by: Claude Opus 4.6 <noreply@anthropic.com>
(cherry picked from commit 1ecfe2a)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Centralize feature category names to avoid hard-coded string literals

2 participants