Low level implementation of buffers.
Wraps directly around Vulkan buffers, with the exceptions of a few safety checks.
UnsafeBuffer type is the lowest-level buffer object provided by this library. It is used
internally by the higher-level buffer types. You are strongly encouraged to have excellent
knowledge of the Vulkan specs if you want to use an
Here is what you must take care of when you use an
- Synchronization, ie. avoid reading and writing simultaneously to the same buffer.
- Memory aliasing considerations. If you use the same memory to back multiple resources, you must ensure that they are not used together and must enable some additional flags.
- Binding memory correctly and only once. If you use sparse binding, respect the rules of sparse binding.
- Type safety.
Data storage in a GPU-accessible location.
Error that can happen when creating a buffer.