projects
/
vktest3
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
ugh
[vktest3]
/
src
/
vk.c
diff --git
a/src/vk.c
b/src/vk.c
index
f5557b3
..
29628f9
100644
(file)
--- a/
src/vk.c
+++ b/
src/vk.c
@@
-244,7
+244,17
@@
int vk_reshape(int xsz, int ysz)
return 0;
}
return 0;
}
-int vk_next_image(VkSemaphore sem)
+int vk_num_swap_images(void)
+{
+ return vksc_numimg;
+}
+
+VkImageView vk_swap_image(int idx)
+{
+ return vksc_view[idx];
+}
+
+int vk_next_swap_image(VkSemaphore sem)
{
uint32_t idx;
if(vkAcquireNextImageKHR(vkdev, vksc, UINT64_MAX, sem, 0, &idx) != 0) {
{
uint32_t idx;
if(vkAcquireNextImageKHR(vkdev, vksc, UINT64_MAX, sem, 0, &idx) != 0) {
@@
-582,9
+592,11
@@
void vk_free_fb(int fb)
void vk_fb_size(int fb, int x, int y)
{
void vk_fb_size(int fb, int x, int y)
{
- framebufs[fb].width = x;
- framebufs[fb].height = y;
- framebufs[fb].vkobj_valid = 0;
+ if(x != framebufs[fb].width || y != framebufs[fb].height) {
+ framebufs[fb].width = x;
+ framebufs[fb].height = y;
+ framebufs[fb].vkobj_valid = 0;
+ }
}
void vk_fb_rpass(int fb, int rpass)
}
void vk_fb_rpass(int fb, int rpass)
@@
-1055,6
+1067,16
@@
void vk_free_sem(VkSemaphore sem)
vkDestroySemaphore(vkdev, sem, 0);
}
vkDestroySemaphore(vkdev, sem, 0);
}
+
+void vk_rect(VkRect2D *r, int x, int y, int w, int h)
+{
+ r->offset.x = x;
+ r->offset.y = y;
+ r->extent.width = w;
+ r->extent.height = h;
+}
+
+
#define ARRSZ(arr) (sizeof arr / sizeof *arr)
static const char *known_layer_list[] = {
"VK_LAYER_GOOGLE_threading",
#define ARRSZ(arr) (sizeof arr / sizeof *arr)
static const char *known_layer_list[] = {
"VK_LAYER_GOOGLE_threading",