22 VkBufferView vk_buffer_view_ = VK_NULL_HANDLE;
24 bool data_uploaded_ =
false;
34 void read(
void *
data)
const override;
38 return buffer_.vk_handle();
43 return buffer_.device_address_get();
49 return vk_buffer_view_;
69 void upload_data_direct(
const VKBuffer &host_buffer);
70 void upload_data_via_staging_buffer(
VKContext &context);
unsigned long long int uint64_t
VkDeviceAddress device_address_get() const
void release_data() override
void acquire_data() override
void update_sub(uint start, uint len, const void *data) override
VkBufferView vk_buffer_view_get() const
void upload_data() override
VkBuffer vk_handle() const
void wrap_handle(uint64_t handle) override
void bind_as_ssbo(uint binding) override
void ensure_buffer_view()
void bind_as_texture(uint binding) override
void resize_data() override
static Context * unwrap(GPUContext *ctx)
VkFormat to_vk_format(const TextureFormat format)
constexpr TextureFormat to_texture_format(TextureTargetFormat format)