1 个不稳定版本
0.1.0 | 2019年2月24日 |
---|
#1066 在 图形 API 中
90KB
2K SLoC
nobs-vulkanism
编译 vulkanism 模块以在窗口中渲染
该库是所有 vulkanism 模块的精选。包括
重新排列模块命名空间,以便我们只需使用单个 外部 crate nobs_vulkanism
指令。
示例
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::DEBUG_REPORT_ERROR_BIT_EXT | vk::DEBUG_REPORT_WARNING_BIT_EXT)
.application("awesome app", 0)
.add_extension(vk::KHR_SURFACE_EXTENSION_NAME)
.add_extension(vk::KHR_XLIB_SURFACE_EXTENSION_NAME)
.create(lib)
.unwrap();
let (pdevice, device) = vk::device::PhysicalDevice::enumerate_all(inst.handle)
.remove(0)
.into_device()
.add_extension(vk::KHR_SWAPCHAIN_EXTENSION_NAME)
.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);
//...
}
依赖项
~3–13MB
~137K SLoC