Awesome
I will not maintain CVulkan anymore, I have developed a better Vulkan wrapper: vulkan. This wrapper is written in plain C whereas vulkan uses CFFI internally.**
Presentation
CVulkan is a complete Vulkan wrapper. It keeps the original Vulkan API and try to limit the differences induced by Python.
How to install
Pip
You can install directly CVulkan with pip:
pip install cvulkan
Manual install
You can install it manually if you want the last version:
git clone https://github.com/realitix/cvulkan
cd cvulkan
python setup.py install
How to contribute
To contribute, you should first read the How it works
section.
Any contribution is welcome and I answer quickly.
## How it works
CVulkan is a C module generated by a Python script. To proceed, the script vulkan_generator.py
computes a model of Vulkan API based on vk.xml
(the file from Kronos describing the API) and then
uses jinja2
templates to write the vulkanmodule.c
file.
Here the basic steps:
- Load vk.xml
- Use
xmltodict
to parse the xml document - Generate a good data model from it
- Pass the model to the
jinja2
template engine - The template engine generate the final c file
Community
You can checkout my blog, I speak about CVulkan: Blog
Supported By
CVulkan is supported by helpful 3rd parties via code contributions, test devices and so forth. Make our supporters happy and visit their sites!