open questions

This commit is contained in:
maik klein 2016-12-09 20:06:50 +01:00
parent 62e8b8266e
commit 867d3cddc8
2 changed files with 20 additions and 1 deletions

View file

@ -109,6 +109,26 @@ The triangle example is written from top to bottom without many helper functions
![screenshot](http://i.imgur.com/PQZcL6w.jpg)
## Open questions
### Unsafe?
Currently ash can be used without any unsafe keyword. I have looked at a few other c wrappers and it seems this is common practice. But Ash is not particular safe and I am thinking of marking every function `unsafe`.
### Optional extension loading
Currently extensions are loaded like normal vulkan functions. This means some extenstions can be loaded, for example the win32 surface on linux. Accessing a unloaded function currently triggers a `debug_assert`. I am thinking of seperating extensions into their own struct.
```Rust
impl Device{
pub fn load_swapchain(&self) -> Result<SwapchainExtension, Err>;
}
// Instead of
//let swapchain = device.create_swapchain_khr(&swapchain_create_info).unwrap();
let swapchain_ext = device.load_swapchain().unwrap();
let swapchain = swapchain_ext.create_swapchain_khr(&swapchain_create_info).unwrap();
```
## Roadmap
### Complete

View file

@ -1,4 +1,3 @@
#![feature(conservative_impl_trait)]
#![allow(dead_code)]
extern crate ash;