[vulkan] Add a FIXME for the flashing Q icon

As I had suspected, it's due to a synchronization problem between the
scrap and drawing. There's actually a double problem in that data
uploaded to the scrap isn't flushed until the first frame is rendered
causing a quick init-shutdown sequence to take at least five seconds due
to the staging buffer waiting (and timing out) on a stuck fence.
Rendering just one frame "fixes" the problem (draw was one of the
earliest subsystems to get going in vulkan).
This commit is contained in:
Bill Currie 2022-04-23 10:46:55 +09:00
parent b649638400
commit f15abcea53

View file

@ -276,6 +276,11 @@ pic_data (const char *name, int w, int h, const byte *data, drawctx_t *dctx)
*picdata++ = *col++;
*picdata++ = (pix == 255) - 1;
}
//FIXME live updates of the scrap aren't
//syncronized properly for some reason and result in stale texels being
//rendered (flashing pink around the Q menu cursor the first time it's
//displayed). I suspect simple barriers aren't enough and more
//sophisticated syncronization (events? semaphores?) is needed.
return pic;
}