Vookoo
|
Vookoo high level C++ Vulkan interface. More...
Classes | |
struct | BlockParams |
Description of blocks for compressed formats. More... | |
class | ColorAttachmentImage |
An image to use as a colour buffer on a renderpass. More... | |
class | ComputePipelineMaker |
A class for building compute pipelines. More... | |
class | DepthStencilImage |
An image to use as a depth buffer on a renderpass. More... | |
class | DescriptorSetLayoutMaker |
A factory class for descriptor set layouts. (An interface to the shaders) More... | |
class | DescriptorSetMaker |
A factory class for descriptor sets (A set of uniform bindings) More... | |
class | DescriptorSetUpdater |
Convenience class for updating descriptor sets (uniforms) More... | |
class | Framework |
class | GenericBuffer |
class | GenericImage |
class | HostIndexBuffer |
This class is a specialisation of GenericBuffer for low performance vertex buffers in CPU memory. More... | |
class | HostVertexBuffer |
This class is a specialisation of GenericBuffer for low performance vertex buffers on the host. More... | |
class | IndexBuffer |
class | KTXFileLayout |
Layout of a KTX file in a buffer. More... | |
class | PipelineLayoutMaker |
class | PipelineMaker |
class | RenderpassMaker |
class | SamplerMaker |
class | ShaderModule |
Class for building shader modules and extracting metadata from shaders. More... | |
class | TextureImage2D |
A 2D texture image living on the GPU or a staging buffer visible to the CPU. More... | |
class | TextureImageCube |
A cube map texture image living on the GPU or a staging buffer visible to the CPU. More... | |
class | UniformBuffer |
This class is a specialisation of GenericBuffer for uniform buffers. More... | |
class | VertexBuffer |
class | Window |
This class wraps a window, a surface and a swap chain for that surface. More... | |
Functions | |
template<class... Args> | |
std::string | format (const char *fmt, Args...args) |
Printf-style formatting function. | |
int | findMemoryTypeIndex (const vk::PhysicalDeviceMemoryProperties &memprops, uint32_t memoryTypeBits, vk::MemoryPropertyFlags search) |
Utility function for finding memory types for uniforms and images. | |
void | executeImmediately (vk::Device device, vk::CommandPool commandPool, vk::Queue queue, const std::function< void(vk::CommandBuffer cb)> &func) |
Execute commands immediately and wait for the device to finish. | |
uint32_t | mipScale (uint32_t value, uint32_t mipLevel) |
Scale a value by mip level, but do not reduce to zero. | |
std::vector< uint8_t > | loadFile (const std::string &filename) |
BlockParams | getBlockParams (vk::Format format) |
Get the details of vulkan texture formats. | |
vk::Format | GLtoVKFormat (uint32_t glFormat) |
KTX files use OpenGL format values. This converts some common ones to Vulkan equivalents. | |
Vookoo high level C++ Vulkan interface.
(C) Andy Thomason 2017 MIT License This is a utility set alongside the vkcpp C++ interface to Vulkan which makes constructing Vulkan pipelines and resources very easy for beginners. It is expected that once familar with the Vulkan C++ interface you may wish to "go it alone" but we hope that this will make the learning experience a joyful one. You can use it with the demo framework, stand alone and mixed with C or C++ Vulkan objects. It should integrate with game engines nicely.
|
inline |
Load a binary file into a vector. The vector will be zero-length if this fails.