projects
/
demo
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
bind buf memory
[demo]
/
src
/
vulkan
/
mesh-vk.cc
diff --git
a/src/vulkan/mesh-vk.cc
b/src/vulkan/mesh-vk.cc
index
494389b
..
729e24c
100644
(file)
--- a/
src/vulkan/mesh-vk.cc
+++ b/
src/vulkan/mesh-vk.cc
@@
-91,20
+91,43
@@
bool MeshVK::update_vertex_data()
/* write the buffers */
if(!vku_write_memory(vk_vertices->mem_pool, vsz, (void*)vertices.data())) {
/* write the buffers */
if(!vku_write_memory(vk_vertices->mem_pool, vsz, (void*)vertices.data())) {
- fprintf(stderr, "Failed to write the vertices on GPU.\n");
+ fprintf(stderr, "Failed to write the vertices to GPU.\n");
return false;
}
return false;
}
+ if(vkBindBufferMemory(vk_device, vk_vertices->buf, vk_vertices->mem_pool,
+ 0) != VK_SUCCESS) {
+ fprintf(stderr, "Failed to bind the vertex buffer memory\n");
+ return false;
+ }
+
if(!vku_write_memory(vk_normals->mem_pool, nsz, (void*)normals.data())) {
if(!vku_write_memory(vk_normals->mem_pool, nsz, (void*)normals.data())) {
- fprintf(stderr, "Failed to write the normalson GPU.\n");
+ fprintf(stderr, "Failed to write the normals to GPU.\n");
return false;
}
return false;
}
+ if(vkBindBufferMemory(vk_device, vk_normals->buf, vk_normals->mem_pool, 0)
+ != VK_SUCCESS) {
+ fprintf(stderr, "Failed to bind the normal buffer memory\n");
+ return false;
+ }
+
if(!vku_write_memory(vk_tex_coords->mem_pool, tsz,
(void*)tex_coords.data())) {
if(!vku_write_memory(vk_tex_coords->mem_pool, tsz,
(void*)tex_coords.data())) {
- fprintf(stderr, "Failed to write the texture coordinates on GPU.\n");
+ fprintf(stderr, "Failed to write the texture coordinates to GPU.\n");
return false;
}
return false;
}
+ if(vkBindBufferMemory(vk_device, vk_tex_coords->buf,
+ vk_tex_coords->mem_pool, 0) != VK_SUCCESS) {
+ fprintf(stderr, "Failed to bind the tex coordinates buffer memory.\n");
+ return false;
+ }
+
if(!vku_write_memory(vk_indices->mem_pool, isz, (void*)indices.data())) {
if(!vku_write_memory(vk_indices->mem_pool, isz, (void*)indices.data())) {
- fprintf(stderr, "Failed to write the indices on GPU.\n");
+ fprintf(stderr, "Failed to write the indices to GPU.\n");
+ return false;
+ }
+ if(vkBindBufferMemory(vk_device, vk_indices->buf, vk_indices->mem_pool, 0)
+ != VK_SUCCESS) {
+ fprintf(stderr, "Failed to bind the index buffer memory.\n");
return false;
}
return false;
}