# `vulkanic` Ultra-thin Vulkan API wrapper sitting on top of [vk-sys](https://docs.rs/vk-sys). Checkout [Examples](https://docs.rs/vulkanic). ## Why another Vulkan wrapper? Vulkan API is a very performant, low-level graphics and computation API. Drawbacks are the complex usage and e.g. a simple "hello world"-triangle with Vulkan has about 1000 lines of code using the the plain vk-sys bindings and that's a lot. Many resources out there about Vulkan are (still) in C++. It's way easier to adapt C++ examples without any library indirection, so using Vulkan through `vulkanic` crate will allow you to understand the API reading the official specs. ## Other Vulkan wrappers / libraries - [ash](https://docs.rs/ash): *A very lightweight wrapper around Vulkan.* - [vulkano](https://docs.rs/vulkano): *A Rust wrapper around the Vulkan graphics API.* ## `vulkanic` features - adapter for vk-sys ✅ - `vk::EntryPoints` ✅ - `vk::InstancePointers` ✅ - `vk::DevicePointers` ✅ - fewer `unsafe`s ✅ - zero-cost adapter ✅ - no Vulkan allocation-callback utilization ❌ - no window creation ❌ - no validatation ❌ - no builder patterns ❌ - no Vulkan abstraction ❌ - no shader compilation ❌