Skip to content

User-defined debug markers.#82

Merged
crud89 merged 13 commits intomainfrom
debug-markers
Mar 22, 2023
Merged

User-defined debug markers.#82
crud89 merged 13 commits intomainfrom
debug-markers

Conversation

@crud89
Copy link
Copy Markdown
Owner

@crud89 crud89 commented Mar 21, 2023

Describe the pull request

This PR adds support for user-defined debug markers. Command queues now expose three additional methods for this purpose:

// Begin/End debug region:
void BeginDebugRegion(const String& label, const Vectors::ByteVector3& color);
void EndDebugRegion();

// Insert single debug marker:
void SetDebugMarker(const String& label, const Vectors::ByteVector3& color);

All three methods are optional and are only ever built for debug builds in the default backends. Additionally, the methods are only implemented for x64 builds in the DirectX 12 backend. If the methods are not available, they will no-op.

Under the hood, this PR introduces some additional changes to debugging. First of all, the DirectX 12 backend now uses the official WinPixEventRuntime, which is integrated as an overlay-port and loaded from NuGet. For this reason, vcpkg has been updated to version 2022.10.19. For the Vulkan backend, the extension VK_EXT_debug_utils is now enabled by default in debug builds.

@crud89 crud89 added Type: Requirement Vulkan πŸŒ‹ The issue involves the Vulkan backend. DX12 ❎ The issue involves the DX12 backend. labels Mar 21, 2023
@crud89 crud89 added this to the Alpha #04 milestone Mar 21, 2023
@crud89 crud89 self-assigned this Mar 21, 2023
@crud89 crud89 marked this pull request as ready for review March 21, 2023 21:27
@crud89 crud89 merged commit 72e38c8 into main Mar 22, 2023
@crud89 crud89 deleted the debug-markers branch March 22, 2023 09:31
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

DX12 ❎ The issue involves the DX12 backend. Vulkan πŸŒ‹ The issue involves the Vulkan backend.

Projects

Status: v0.4.1

Development

Successfully merging this pull request may close these issues.

1 participant