From c402275112651ef61f90e42f311339b778f8f4dd Mon Sep 17 00:00:00 2001 From: Bill Currie Date: Thu, 2 Dec 2021 22:48:50 +0900 Subject: [PATCH] [vulkan] Add some more debug stack contexts --- libs/models/alias/vulkan_model_alias.c | 3 +++ libs/models/brush/vulkan_model_brush.c | 3 +++ libs/video/renderer/vulkan/vulkan_alias.c | 4 ++++ libs/video/renderer/vulkan/vulkan_bsp.c | 3 +++ libs/video/renderer/vulkan/vulkan_compose.c | 5 +++++ libs/video/renderer/vulkan/vulkan_draw.c | 4 ++++ libs/video/renderer/vulkan/vulkan_lighting.c | 4 ++++ 7 files changed, 26 insertions(+) diff --git a/libs/models/alias/vulkan_model_alias.c b/libs/models/alias/vulkan_model_alias.c index d001909a4..c29eb50e0 100644 --- a/libs/models/alias/vulkan_model_alias.c +++ b/libs/models/alias/vulkan_model_alias.c @@ -40,6 +40,7 @@ #include +#include "QF/cvar.h" #include "QF/va.h" #include "QF/modelgen.h" @@ -114,6 +115,7 @@ Vulkan_Mod_LoadSkin (mod_alias_ctx_t *alias_ctx, byte *skinpix, int skinsize, int snum, int gnum, qboolean group, maliasskindesc_t *skindesc, vulkan_ctx_t *ctx) { + qfvPushDebug (ctx, va (ctx->va_ctx, "alias.load_skin: %s", alias_ctx->mod->name)); qfv_device_t *device = ctx->device; qfv_devfuncs_t *dfunc = device->funcs; aliashdr_t *header = alias_ctx->header; @@ -219,6 +221,7 @@ Vulkan_Mod_LoadSkin (mod_alias_ctx_t *alias_ctx, byte *skinpix, int skinsize, free (tskin); + qfvPopDebug (ctx); return skinpix + skinsize; } diff --git a/libs/models/brush/vulkan_model_brush.c b/libs/models/brush/vulkan_model_brush.c index 5132daf13..f83869b0f 100644 --- a/libs/models/brush/vulkan_model_brush.c +++ b/libs/models/brush/vulkan_model_brush.c @@ -53,6 +53,7 @@ #include "QF/Vulkan/debug.h" #include "QF/Vulkan/device.h" #include "QF/Vulkan/image.h" +#include "QF/Vulkan/instance.h" #include "QF/Vulkan/staging.h" #include "qfalloca.h" @@ -163,6 +164,7 @@ copy_mips (qfv_packet_t *packet, texture_t *tx, qfv_tex_t *tex, static void load_textures (model_t *mod, vulkan_ctx_t *ctx) { + qfvPushDebug (ctx, va (ctx->va_ctx, "brush.load_textures: %s", mod->name)); qfv_device_t *device = ctx->device; qfv_devfuncs_t *dfunc = device->funcs; modelctx_t *mctx = mod->data; @@ -310,6 +312,7 @@ load_textures (model_t *mod, vulkan_ctx_t *ctx) QFV_PacketSubmit (packet); QFV_DestroyStagingBuffer (stage); free (barriers); + qfvPopDebug (ctx); } void diff --git a/libs/video/renderer/vulkan/vulkan_alias.c b/libs/video/renderer/vulkan/vulkan_alias.c index 50aacfe4a..b842d85d4 100644 --- a/libs/video/renderer/vulkan/vulkan_alias.c +++ b/libs/video/renderer/vulkan/vulkan_alias.c @@ -60,6 +60,7 @@ #include "QF/Vulkan/debug.h" #include "QF/Vulkan/descriptor.h" #include "QF/Vulkan/device.h" +#include "QF/Vulkan/instance.h" #include "QF/Vulkan/renderpass.h" #include "r_internal.h" @@ -304,6 +305,8 @@ Vulkan_Alias_Init (vulkan_ctx_t *ctx) { qfv_device_t *device = ctx->device; + qfvPushDebug (ctx, "alias init"); + aliasctx_t *actx = calloc (1, sizeof (aliasctx_t)); ctx->alias_context = actx; @@ -365,6 +368,7 @@ Vulkan_Alias_Init (vulkan_ctx_t *ctx) } } //free (sets); + qfvPopDebug (ctx); } void diff --git a/libs/video/renderer/vulkan/vulkan_bsp.c b/libs/video/renderer/vulkan/vulkan_bsp.c index 7a009943f..11403a607 100644 --- a/libs/video/renderer/vulkan/vulkan_bsp.c +++ b/libs/video/renderer/vulkan/vulkan_bsp.c @@ -1411,6 +1411,8 @@ Vulkan_Bsp_Init (vulkan_ctx_t *ctx) { qfv_device_t *device = ctx->device; + qfvPushDebug (ctx, "bsp init"); + bspctx_t *bctx = calloc (1, sizeof (bspctx_t)); ctx->bsp_context = bctx; @@ -1475,6 +1477,7 @@ Vulkan_Bsp_Init (vulkan_ctx_t *ctx) bframe->descriptors[k].pImageInfo = &bframe->imageInfo[j]; } } + qfvPopDebug (ctx); } void diff --git a/libs/video/renderer/vulkan/vulkan_compose.c b/libs/video/renderer/vulkan/vulkan_compose.c index 4288ca462..b188cae95 100644 --- a/libs/video/renderer/vulkan/vulkan_compose.c +++ b/libs/video/renderer/vulkan/vulkan_compose.c @@ -41,6 +41,7 @@ #include "qfalloca.h" +#include "QF/cvar.h" #include "QF/sys.h" #include "QF/Vulkan/qf_compose.h" @@ -48,6 +49,7 @@ #include "QF/Vulkan/descriptor.h" #include "QF/Vulkan/device.h" #include "QF/Vulkan/image.h" +#include "QF/Vulkan/instance.h" #include "QF/Vulkan/renderpass.h" #include "r_internal.h" @@ -126,6 +128,8 @@ Vulkan_Compose_Init (vulkan_ctx_t *ctx) { qfv_device_t *device = ctx->device; + qfvPushDebug (ctx, "compose init"); + composectx_t *cctx = calloc (1, sizeof (composectx_t)); ctx->compose_context = cctx; @@ -167,6 +171,7 @@ Vulkan_Compose_Init (vulkan_ctx_t *ctx) } } free (attach_set); + qfvPopDebug (ctx); } void diff --git a/libs/video/renderer/vulkan/vulkan_draw.c b/libs/video/renderer/vulkan/vulkan_draw.c index 2d3dc4156..6a2d792ae 100644 --- a/libs/video/renderer/vulkan/vulkan_draw.c +++ b/libs/video/renderer/vulkan/vulkan_draw.c @@ -59,6 +59,7 @@ #include "QF/Vulkan/descriptor.h" #include "QF/Vulkan/device.h" #include "QF/Vulkan/image.h" +#include "QF/Vulkan/instance.h" #include "QF/Vulkan/renderpass.h" #include "QF/Vulkan/scrap.h" #include "QF/Vulkan/staging.h" @@ -353,6 +354,8 @@ Vulkan_Draw_Init (vulkan_ctx_t *ctx) qfv_device_t *device = ctx->device; qfv_devfuncs_t *dfunc = device->funcs; + qfvPushDebug (ctx, "draw init"); + drawctx_t *dctx = calloc (1, sizeof (drawctx_t)); ctx->draw_context = dctx; @@ -435,6 +438,7 @@ Vulkan_Draw_Init (vulkan_ctx_t *ctx) va (ctx->va_ctx, "cmd:draw:%zd", i)); } free (sets); + qfvPopDebug (ctx); } static inline void diff --git a/libs/video/renderer/vulkan/vulkan_lighting.c b/libs/video/renderer/vulkan/vulkan_lighting.c index de7bc409f..754ba242a 100644 --- a/libs/video/renderer/vulkan/vulkan_lighting.c +++ b/libs/video/renderer/vulkan/vulkan_lighting.c @@ -41,6 +41,7 @@ #include "qfalloca.h" +#include "QF/cvar.h" #include "QF/dstring.h" #include "QF/plist.h" #include "QF/progs.h" @@ -298,6 +299,8 @@ Vulkan_Lighting_Init (vulkan_ctx_t *ctx) qfv_device_t *device = ctx->device; qfv_devfuncs_t *dfunc = device->funcs; + qfvPushDebug (ctx, "lighting init"); + lightingctx_t *lctx = calloc (1, sizeof (lightingctx_t)); ctx->lighting_context = lctx; @@ -418,6 +421,7 @@ Vulkan_Lighting_Init (vulkan_ctx_t *ctx) } free (attach_set); free (lights_set); + qfvPopDebug (ctx); } static void