nobs-vulkanism

Compilation of vulkanism modules to render to a window

This library is a curation of the all vulkanism modules. Including: - nobs-vk - nobs-vkcmd - nobs-vkmem - nobs-vkpipes - nobs-vkwnd

Rearranges module namespaces, so that we only have to use a single external crate nobs_vulkanism instruction.

Example

```rust extern crate nobs_vulkanism as vk;

fn main() { // nobs-vk Symbols remain in vk::* let lib = vk::Core::new(); let inst = vk::instance::new() .validate(vk::DEBUGREPORTERRORBITEXT | vk::DEBUGREPORTWARNINGBITEXT) .application("awesome app", 0) .addextension(vk::KHRSURFACEEXTENSIONNAME) .addextension(vk::KHRXLIBSURFACEEXTENSION_NAME) .create(lib) .unwrap();

let (pdevice, device) = vk::device::PhysicalDevice::enumerateall(inst.handle) .remove(0) .intodevice() .addextension(vk::KHRSWAPCHAINEXTENSIONNAME) .add_queue(vk::device::QueueProperties { present: false, graphics: true, compute: true, transfer: true, }) .create() .unwrap();

// Symbols of dependent moduls are put in their own namespace within vk:: // e.g.: let mut allocator = vk::mem::Allocator::new(pdevice.handle, device.handle); //... } ```