1 type UniformBuffer = 2 inherit Buffer type = BufferType/Uniform 3 offset = 0 4 5 let device : VkDevice 6 val memory : VkMemory 7 8 def discard = 9 vk/destroy_buffer device object null 10 vk/free_memory device memory null 11 12 object UniformBuffer = 13 def create (size : u32) = 14 let instance : Instance @auto 15 let device = instance.device 16 let flags = MemoryPropertyFlags/HostVisible | MemoryPropertyFlags/HostCoherent 17 let usage = BufferUsageFlags/UniformBuffer | BufferUsageFlags/TransferDst 18 let (buffer, memory) = buffer/create instance.physical_device device 19 size.as<u64> usage flags 20 UniformBuffer object = buffer 21 =size =usage =device =memory 22