KalaWindow is a C++20 multimedia framework library for Windows, built for native desktop applications ranging from lightweight tools to full-featured game engines.
Features built into KalaWindow:
- windowing with support for multiple windows
- input (keyboard and mouse)
- native message loop
- built in crash handler (previously known as KalaCrashHandler, now only maintained in this repository codebase)
- OpenGl 3.3 context
- shader system with compilation and hot reload (recompile shaders at runtime)
- texture system with hot reload (can modify raw pixel data for each texture)
- audio framework through MiniAudio wrapper
Platform | Status | Notes |
---|---|---|
Windows | Supported | Requires Windows 10 (build 1809 / 17763) or higher |
Linux | Planned | Support coming in a future version |
WebGL | Planned | Support coming in a future version |
Mac | Not Supported | No plans for macOS compatibility |
ARM | Not Supported | ARM architecture will not be targeted |
Console | Not Supported | No plans for console platforms |
Mobile | Not Supported | No plans for mobile platforms |
Render Pipeline | Status | Notes |
---|---|---|
OpenGL | Supported | Internally locked to OpenGL 3.3 |
Vulkan | Planned | Support for Vulkan 1.3 coming in a future version |
DirectX | Not Supported | No plans for DirectX compatibility |
MoltenVK | Not Supported | No plans for MoltenVK compatibility |
Some KalaWindow headers pull in official GL extension headers:
opengl_functions_core.hpp
includesglcorearb.h
andglext.h
opengl_functions_win.hpp
includeswgleht.hpp
opengl_functions_linux.hpp
includesglxeht.hpp
Send me an email at sanderveski@gmail.com
or message me on discord at greenlaser
if you want your game or program you made with KalaWindow to be listed here
Official website (currently down for maintenance)
Track development on the Trello board