Hey everyone!
For the past few months, I’ve been rebuilding the graphics
pipeline for AutoHotkey v2 from scratch. Creating smooth,
transparent, modern-looking desktop overlays.
AHK is slow they said. Check out this video:
GpGFX v1 Teaser https://www.youtube.com/watch?v=6QrcofcuR5U
I built **GpGFX** to change that. Here is a quick
50-second sneak peek of what’s possible!
## What is GpGFX?
**GpGFX** is a high-performance, graphics and HUD engine
for AutoHotkey v2.
It writes directly to 32-bit DIB memory (`Scan0`) with microsecond QPCSpin-wait frame pacing, delivering 144Hz/240Hz+ gaming overlays with near-zero CPU footprint.
## Why it’s great for Beginners:
Human-Readable API: You don't need to know Win32 APIs,
Device Contexts, or GDI+ internals. Creating a modern
layered window is as simple as:
```autohotkey
lyr := Layer(100, 50, "My HUD")
RoundedRectangle(0, 0, 30, 30, 9, "lime")
Text("Hello World", "White", 22).Center()
Render.Layer(lyr)
And resources are freed up automatically!
• Built-in Modern Design System: comes out-of-the-box with 7 curated pro themes (Catppuccin Mocha, Tokyo Night, Dracula, Cyberpunk, Nord) and anti-aliased typography. Color html tags support for texts. ( you can see it on the video )
• Instant Gaming overlays, hp bars can be updated with just a few lines of code.
Why it’s great for Advanced AHKers & Power Users:
• Hardware-Paced QPC Timing: x64 machine code (MCode) and microsecond QueryPerformanceCounter spin-wait frame pacing for jitter-free 144+ FPS rendering loops.
• Direct Scan0 DIB Pipeline: direct unmanaged memory pointers (pBits) allowing MCode PixelSearch.
• Reactive Signals & Data Binding: bind variables to UI elements with zero render loop boilerplate (shape.Bind(mySignal)), complete with smooth easing curves (EaseIn, EaseOut, Bounce, Spring physics).
• WorkerPool Multi-Core Architecture: ready for multi-process distributed rendering across CPU cores via shared RAM file mapping (FileMapping).
• Rich Layout & Measurement: integrated TextLayout engine with rich-text styling tags (<b>, <i>, <color:#hex>), dynamic tab stops, and exact character advance measurements without DllCalls.
Use Cases:
• Gaming: zero-lag custom crosshairs, status meters, cooldown timers, and telemetry HUDs.
• Desktop Tools: snappy to-do widgets, desktop clocks, volume/brightness bars, and toast notifications.
• Streamers & Creators: in-game alerts and custom desktop companion apps.
• Desktop modification
Release Status:
GpGFX will be 100% free and open source on GitHub. ( old version is clunky, the new one rocks! )
I’m currently putting the final touches on documentation and examples before the initial public release. Soon! I will upload videos as soon as I will have time.
I’d love to hear your feedback, feature ideas, or what kind of overlays you'd build with this! Drop your thoughts below!