GoCL is a cross‑generational Vulkan optimisation engine that adapts rendering to the GPU's real capabilities. It works as a static library for custom engines, or as an implicit Vulkan layer that injects into pre‑built games.
Key features:
- Dynamic shader patching – rewrites SPIR‑V for hardware without FP16 or large descriptor sets.
- ASTC → ETC2 transcoding – automatic texture conversion on GPUs lacking hardware ASTC decode.
- Device‑Generated Commands (DGC) – offloads indirect draws to the GPU, falling back seamlessly.
- VRAM‑aware adaptation – adjusts swapchain and resolution under memory pressure.
- Zero per‑frame overhead – measured identical FPS and ~3.8% fewer CPU instructions than native.
The same codebase powers both the library and the proxy, keeping maintenance simple.
| Project | Description | Status |
|---|---|---|
| GoCL | Vulkan optimisation proxy & texture tools | Active |
| Vulkan Examples benchmarks | Sascha Willems benchmark suite | Complete |
- C++20, Vulkan, CMake, GitHub Actions
- Mesa Lavapipe, LLVM, Basis Universal, ASTC Encoder

