This commit is contained in:
2026-09-05 18:01:13 +08:00
parent 770127478c
commit 9a9e0b0d23
3 changed files with 30 additions and 32 deletions
@@ -55,6 +55,13 @@ decltype(auto) trace_vulkan_submit(Submit&& submit) {
AETHERA_TRACE_ZONE("Vulkan.Submit");
return std::invoke(std::forward<Submit>(submit));
}
inline void trace_vulkan_submitted(const Vulkan_Submission_Context& submission) noexcept {
#ifdef TRACY_ENABLE
AETHERA_TRACE_MESSAGE_TAGS(submission);
#else
static_cast<void>(submission);
#endif
}
inline void trace_vulkan_completed(const Vulkan_Submission_Context& submission, std::uint64_t latency_ns) noexcept {
#ifdef TRACY_ENABLE
const auto value = make_vulkan_completion_context(submission, latency_ns);
@@ -81,6 +88,16 @@ inline void trace_vulkan_gpu_timing(const Vulkan_Submission_Context& submission,
#endif
}
template <class Sink>
void trace_serialize(Sink& sink, const Vulkan_Submission_Context& value) {
sink.field("event", "vulkan_submit");
trace_serialize(sink, value.context);
if (value.frame_bound) {
sink.field("frame", value.frame);
sink.field("generation", value.generation);
}
if (value.queue != 0) sink.field("queue", value.queue);
}
template <class Sink>
void trace_serialize(Sink& sink, const Vulkan_GPU_Timing_Context& value) {
sink.field("event", "vulkan_gpu_timing");
trace_serialize(sink, value.context);