projects
/
demo
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
some descriptor functions in vkutil - wip
[demo]
/
src
/
vulkan
/
uniforms-vk.cc
diff --git
a/src/vulkan/uniforms-vk.cc
b/src/vulkan/uniforms-vk.cc
index
1c87a55
..
6a02110
100644
(file)
--- a/
src/vulkan/uniforms-vk.cc
+++ b/
src/vulkan/uniforms-vk.cc
@@
-1,7
+1,11
@@
+#include <stdio.h>
+#include <string.h>
+
#include "uniforms-vk.h"
UniformBufferVK::UniformBufferVK()
{
#include "uniforms-vk.h"
UniformBufferVK::UniformBufferVK()
{
+ ubo = 0;
}
UniformBufferVK::~UniformBufferVK()
}
UniformBufferVK::~UniformBufferVK()
@@
-10,17
+14,32
@@
UniformBufferVK::~UniformBufferVK()
bool UniformBufferVK::create(int size)
{
bool UniformBufferVK::create(int size)
{
- return true;
+ if(!(ubo = vku_create_buffer(size, VK_BUFFER_USAGE_UNIFORM_BUFFER_BIT))) {
+ fprintf(stderr, "Failed to create uniform buffer object.\n");
+ return false;
+ }
+
+ return UniformBuffer::create(size);
}
void UniformBufferVK::destroy()
{
}
void UniformBufferVK::destroy()
{
+ vku_destroy_buffer(ubo);
}
void UniformBufferVK::bind(int binding) const
{
}
void UniformBufferVK::bind(int binding) const
{
+ if(vkBindBufferMemory(vk_device, ubo->buf, ubo->mem_pool, 0) !=
+ VK_SUCCESS) {
+ fprintf(stderr, "Failed to bind ubo.\n");
+ }
}
}
-void UniformBufferVK::update(void *data)
+bool UniformBufferVK::update(void *data)
{
{
+ if(!vku_update_buffer(ubo, size, data)) {
+ fprintf(stderr, "Failed to update ubo.\n");
+ return false;
+ }
+ return true;
}
}