A fast, native C implementation for toggling NVIDIA display color settings. Near-instant execution with no runtime dependencies.
- Digital Vibrance - Color saturation control (50-100%)
- Hue - Color wheel rotation (0-359°)
- Brightness / Contrast / Gamma - Display calibration via Windows API
- Color Temperature - Warm/cool tint adjustment (-100 to +100)
- Toggle behavior - Run once to apply settings, run again to reset to defaults
Get the latest release from the Releases page.
Download both files:
native_nvcp_toggle.exe- The executablenative_nvcp_config.ini- Configuration file
Place them in the same folder.
- Edit
native_nvcp_config.iniwith your desired settings - Run
native_nvcp_toggle.exeto apply your custom settings - Run again to reset to defaults
- Tip: Pin to taskbar or create a keyboard shortcut for quick access
Edit native_nvcp_config.ini to customize your display settings:
# General
toggleAllDisplays=false # true = all displays, false = primary only
keyPressToExit=false # true = wait for keypress, false = exit immediately
# NVIDIA settings (requires NVIDIA GPU)
vibrance=60 # 50 (default) to 100 (max saturation)
hue=0 # 0-359 degrees
# Windows gamma ramp (works with any GPU)
brightness=0.5 # 0.0 to 1.0 (default 0.5)
contrast=0.5 # 0.0 to 1.0 (default 0.5)
gamma=1.0 # 0.5 to 3.0 (default 1.0)
temperature=0 # -100 (cool/blue) to +100 (warm/yellow)- Windows 10/11
- NVIDIA GPU with drivers installed (for vibrance/hue control)
If you want to build the project yourself:
- Visual Studio 2019+ with C++ build tools
- NVAPI SDK from NVIDIA
- Clone this repository
- Download the NVAPI SDK and extract it
- Rename/move the SDK folder to
nvapi/inside this project directory
Your folder structure should look like:
native_nvcp_toggle/
├── nvapi/
│ ├── nvapi.h
│ ├── x86/
│ │ └── nvapi.lib
│ └── amd64/
│ └── nvapi64.lib
├── native_nvcp_toggle.c
├── build.bat
└── ...
- Open Developer Command Prompt for VS (x86 version)
- Navigate to directory
- Run:
build.bat
- Output:
native_nvcp_toggle.exe
- Digital vibrance and hue use undocumented NVAPI functions (may break with future driver updates)
- Gamma ramp settings are applied via Windows GDI, not NVIDIA Control Panel
- The toggle detects state by comparing current values against defaults (vibrance=50%, hue=0, linear gamma)
MIT License