ImgViewer is a lightweight, high-performance image viewer designed for graphics programmers. It is inspired by tools like WinPIX and RenderDoc, providing a quick way to inspect image files without the overhead of heavy debugging suites.
NOTE This app is mostly vibed with AI. So don't expect a tasty code. I start with Copilot/ClaudeCode and then I use Antigravity to complete last 70% work.
- High Dynamic Range (HDR) Support: View
.hdrand.exr(via stb_image) and other floating point formats. - DDS Support: Native support for DirectDraw Surface formats including compressed textures (BC1-BC7) and float formats (RGBA32F, RGBA16F).
- Pixel Inspection: Hover over any pixel to see its exact RGBA values in float precision.
- Histogram: Real-time RGB histogram visualization.
- Value Range Analysis: Automatically detects min/max values and allows manual range remapping (useful for depth maps or HDR values > 1.0).
- Magnifier: Inspect pixel-level details with a built-in magnifier tool.
- Modern UI: Clean, borderless window with docking support using ImGui.
- Performance: GPU-accelerated rendering using DirectX 12.
- Common: PNG, BMP, TGA, JPG, GIF
- HDR: HDR (Radiance RGBE)
- DirectX: DDS (BC1-BC7, Uncompressed, Float)
- Windows 10/11
- Visual Studio 2022 (with "Desktop development with C++" workload)
- CMake 3.23+
# Generate build files (using Ninja or Visual Studio)
cmake -B build
# Build project
cmake --build build --config Release- Open the folder in Visual Studio.
- Let CMake configure the project.
- Select
imgViewer.exeas the startup target. - Build and Run.
- Open Image: Drag and drop an image file into the window, or paste from clipboard (
Ctrl+Vsupport arrived). - Pan: Middle Mouse Button drag.
- Zoom: Mouse Wheel.
- Magnify: Right-click to show the magnifier.
- Inspect: Hover over the image to see pixel values in the Info panel.
This project is open source.
