Like for Direct3D 12, the Vulkan support is far from complete, but most of the basic functionalities are available. You can render meshes, loading textures, creating pipeline objects and GPU buffers, loading SPIR-V shaders. You can check this thread on Geeks3D forums for latest news about Vulkan support in GeeXLab.
It’s incredible to see the number of lines of code you need just to draw a RGB triangle in Vulkan. The low level nature of these APIs (VK and D3D12) explains why it takes a lot of time to get the most out of Direct3D 12 and Vulkan. New features (render targets, shadow mapping, multi-GPU rendering, etc.) will be added as soon as possible.
I will post details about how to vulkanize a GeeXLab demo, but now, if you want to play with Vulkan, several code samples are available in the vk/ folder of the code sample pack.
GeeXLab + Linux + Vulkan + True Type fonts
A phong textured mesh in Vulkan
All Vulkan code samples work fine with NVIDIA GPUs (tested with latest R364.91 on Windows 10 and with R364.12 on Linux). Most of the code samples work with Intel GPUs (tested with Intel v4404 graphics driver). Some code samples do not work and crash with AMD GPUs (tested with latest Crimson 16.4.1 on Windows 10). Do not hesitate to post feedbacks here or in the forum, that will help me to improve the Vulkan plugin.
The Vulkan support is not the only change in GeeXLab 0.10.x. Here are the main:
– a new startup scene
– a fully revamped code sample pack
– a new True Type font lib
– the support of STL objects
– bugfixes and improvements (vertex pool initialization)
These changes are important ingredients of this new version. All details about GeeXLab 0.10.0 can be found in THIS POST.
The Mac OS X, Raspberry Pi and Windows 32-bit versions of GeeXLab will be released shortly with an up to date reference guide (my nightmare!).
You can download GeeXLab 0.10.0.0 and the code sample pack from THIS PAGE.