Browse by type
SKSE core plugin for community-driven advanced graphics modifications.
PATH environment variable and add the Git.exe install path as a new valueCMake & Vcpkg comes with Visual Studio in Developer Command Prompts already.
Install them manually only if you want them in everywhere.
PATH environment variable and add the cmake.exe install path as a new valuePATH environment variable can be found hereVCPKG_ROOT with the value as the path to the folder containing vcpkgbuiltin-baseline in vcpkg.json otherwise you might get another version of a non pinned vcpkg dependency causing undefined behaviourTo clone the repository with all submodules, run the following command in your terminal:
git clone https://github.com/doodlum/skyrim-community-shaders.git --recursive
cd skyrim-community-shaders
To build the project, just open ./skyrim-community-shaders with Visual Studio's "Open Folder" feature. (Ensure you have CMake Tools for Windows selected when installing VS)
Follow the prompts to Configure and Build the project.
It should generate the AIO package in the ./build/ALL/aio folder by default.
If you change the Solution Explorer into CMake Targets View, you can find optional targets to create zip packages for each feature.
Right click on the target and select Build to create the zip package in ./dist/.
Open the "Developer PowerShell for VS 2026" or the "x64 Native Tools Command Prompt" (these set up the Visual Studio toolchain for you).
Then from the repository root run:
# Generate the build files (uses the ALL preset)
cmake --preset ALL
# Build using the preset
cmake --build --preset ALL
# Install an AIO package somewhere, e.g. $MOD_FOLDER
cmake --install --preset ALL -- --prefix $MOD_FOLDER
BuildRelease.bat also captures these steps.You can build zip packages for optional cmake targets.
Currently support AIO_ZIP_PACKAGE, Package-AIO-Manual, Package-Core, and Package-<Feature>:
# Create a AIO package in ./dist/
# Automated AIO zip (requires AIO_ZIP_TO_DIST=ON)
cmake --build ./build/ALL --config Release --target AIO_ZIP_PACKAGE
# Manual AIO package (install + tar)
cmake --build ./build/ALL --config Release --target Package-AIO-Manual
# Create a CommunityShaders core package in ./dist/
cmake --build ./build/ALL --config Release --target Package-Core
# Create a feature package in ./dist/ (example: GrassLighting)
cmake --build ./build/ALL --config Release --target Package-GrassLighting
For more details about packaging targets, options, and the difference between automated and manual packaging, see the "Manual packaging targets (detailed)" section in .claude/CLAUDE.md.
If you want an example CMakeUserPreset to start off with you can copy the CMakeUserPresets.json.template -> CMakeUserPresets.json
"OFF""AUTO_PLUGIN_DEPLOYMENT" is set to "ON" in CMakeUserPresets.json"CommunityShadersOutputDir" value to match your desired outputs, if you want multiple folders you can separate them by ; is shown in the template example"OFF"When using custom preset you can call BuildRelease.bat with an parameter to specify which preset to configure eg:
.\BuildRelease.bat ALL-WITH-AUTO-DEPLOYMENT
When switching between different presets you might need to remove the build folder
For those who prefer to not install Visual Studio or other build dependencies on their machine, this encapsulates it. This uses Windows Containers, so no WSL for now.
& 'C:\Program Files\Docker\Docker\DockerCli.exe' -SwitchWindowsEngine; `
docker build -t skyrim-community-shaders .
docker run -it --rm -v .:C:/skyrim-community-shaders skyrim-community-shaders:latest
build/aio folder.If you run into Access violation build errors during step 3, you can try adding --isolation=process:
docker run -it --rm --isolation=process -v .:C:/skyrim-community-shaders skyrim-community-shaders:latest
ModOrganizer.exe (MO2 Folder) to your PATH, or use the path of it# Change Working Directory
cd "C:/Program Files (x86)/Steam/steamapps/common/Skyrim Special Edition"
# Launch SKSE with MO2
ModOrganizer.exe --log run "C:\Program Files (x86)\Steam\steamapps\common\Skyrim Special Edition\skse64_loader.exe"
In Launch Application Menu, use the following settings:
PATH/TO/ModOrganizer.exeC:/Program Files (x86)/Steam/steamapps/common/Skyrim Special Edition--log run "C:\Program Files (x86)\Steam\steamapps\common\Skyrim Special Edition\skse64_loader.exe"GPL-3.0-or-later WITH Modding Exception AND GPL-3.0 Linking Exception (with Corresponding Source).
Specifically, the Modded Code includes:
The Modding Libraries include:
See LICENSE within each directory; if none, it's Default
$ claude mcp add skyrim-community-shaders \
-- python -m otcore.mcp_server <graph>