VK_IMAGE_USAGE_TRANSFER_SRC_BIT|VK_IMAGE_USAGE_TRANSFER_DST_BIT);
vkh_cmd_begin (ctx->cmd, VK_COMMAND_BUFFER_USAGE_ONE_TIME_SUBMIT_BIT);
+ ctx->cmdStarted = true;
vkh_image_set_layout (ctx->cmd, ctx->pSurf->stencilMS, VK_IMAGE_ASPECT_STENCIL_BIT,
VK_IMAGE_LAYOUT_DEPTH_STENCIL_ATTACHMENT_OPTIMAL, VK_IMAGE_LAYOUT_TRANSFER_SRC_OPTIMAL,
ctx->pushConsts = sav->pushConsts;
- _update_cur_pattern(ctx, sav->pattern);
+ if (sav->pattern)
+ _update_cur_pattern(ctx, sav->pattern);
_flush_cmd_buff(ctx);
vkh_cmd_begin (ctx->cmd, VK_COMMAND_BUFFER_USAGE_ONE_TIME_SUBMIT_BIT);
+ ctx->cmdStarted = true;
vkh_image_set_layout (ctx->cmd, ctx->pSurf->stencilMS, VK_IMAGE_ASPECT_STENCIL_BIT,
VK_IMAGE_LAYOUT_DEPTH_STENCIL_ATTACHMENT_OPTIMAL, VK_IMAGE_LAYOUT_TRANSFER_DST_OPTIMAL,
--- /dev/null
+#include "test.h"
+
+void test(){
+ VkvgContext ctx = vkvg_create(surf);
+
+ vkvg_set_source_rgba(ctx,1,0,0,1);
+ vkvg_set_line_width(ctx,10);
+ vkvg_rectangle(ctx,100,100,200,200);
+ vkvg_stroke(ctx);
+ vkvg_set_source_rgba(ctx,0,1,0,1);
+
+ vkvg_save(ctx);
+
+ vkvg_set_source_rgba(ctx,0,1,1,1);
+ vkvg_set_line_width(ctx,1);
+ vkvg_rectangle(ctx,200,200,200,200);
+ vkvg_fill(ctx);
+
+ vkvg_restore(ctx);
+
+ vkvg_rectangle(ctx,100,100,200,200);
+ vkvg_stroke(ctx);
+
+ vkvg_destroy(ctx);
+}
+
+int main(int argc, char *argv[]) {
+
+ perform_test (test, 600, 800);
+
+ return 0;
+}