8#ifdef VISUTWIN_HAS_VULKAN
10#include <vulkan/vulkan.h>
11#include <vk_mem_alloc.h>
20 VulkanIndexBuffer(GraphicsDevice* device, IndexFormat format,
int numIndices);
21 ~VulkanIndexBuffer()
override;
23 void* nativeBuffer()
const override {
return reinterpret_cast<void*
>(_buffer); }
24 bool setData(
const std::vector<uint8_t>& data)
override;
26 [[nodiscard]] VkBuffer buffer()
const {
return _buffer; }
29 void uploadStaging(
const void* data,
size_t size);
31 VkBuffer _buffer = VK_NULL_HANDLE;
32 VmaAllocation _allocation = VK_NULL_HANDLE;
33 VmaAllocator _allocator = VK_NULL_HANDLE;