This is an old project from 2022 that I no longer work on and that I've decided to put up publicly. The code is outdated and might be missing important features.
gdi3d is a library written in C that allows GDI applications to render hardware accelerated graphics using Direct3D 9 with little setup to do.
Its main feature is plotting D3D9 surfaces such as the back buffer onto a GDI device context with a bitmap selected. You can also create scenes with the basic scene system.
Many parts of Direct3D and GDI are abstracted into optimized higher level wrappers, some of which use SIMD instructions.
Writing a basic demo with gdi3d is straightforward. See the samples in the Tests subdirectory.
-
Toolchain: A C89 compiler supporting MSVC extensions, such as the MSVC 2017 toolset.
Visual Studio is required to build the project, no makefiles or other build systems are used. - Target platform: Windows XP or above.
- Dependencies: Direct3D 9 (d3d9.dll) and D3DX (d3dx9_43.dll).