-
Notifications
You must be signed in to change notification settings - Fork 781
Add sample demonstrating VK_EXT_layer_settings usage #1419
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: main
Are you sure you want to change the base?
Conversation
|
This does work, but it feels a bit too minimalist. Wouldn't it make more sense to actually trigger some best practices thing (e.g. using wrong buffer flags or doing non-optimal transitions) and have them show up in the application's UI instead? Otherwise one has to scroll to the very top of the terminal to see some validation infos. And that does only work on platforms where you actually have a terminal. |
|
I had thought keeping it simple was going to make it easier to take and use elsewhere; but went ahead and made the changes recommended. |
|
So this is just supposed to be a black screen with some UI messages (that get cropped at the right side of the screen)? |
# Conflicts: # samples/extensions/README.adoc
…aching Transforms layer_settings sample into an interactive demonstration with three toggleable validation scenarios (wrong buffer flags, suboptimal transitions, small allocations). Executes validation-triggering operations once during setup using one-time command buffers to work with message caching. Adds per-scenario warning/error counters, message caching, and resource cleanup. Updates UI with checkboxes, statistics display, and scrollable message viewer with improved styling.
…rnize C++ usage Replaces `std::array` with `std::unordered_map<Scenario, ScenarioState>` for scenario state storage, removing the `Scenario::Count` sentinel. Adds custom hash functor for the enum key. Modernizes code with `std::format`, `std::ranges`, and direct use of `vkCreateDebugUtilsMessengerEXT`. Updates README list formatting, adds `validation_features_supported()` helper, and initializes scenario map entries in constructor. Improves code consistency with better whitespace and comment cleanup.
|
To be clear, when you toggle the three items in the UI, you will see the warnings assiated with those 3 items. The background is clear as I thought this the best way to demonstrate the feature. |
|
Successful CI Building will depend upon the updated clang tidy call in #1418 Please ensure that is taken before validating that this one is CI clean. |
|
This has the same std::format build problems for me as the pipeline_binary sample. We'll need to discuss (and hopefully undo) those format changes so that Broadcom can build the samples. |
| // Check if all scenarios are disabled and clear log if so | ||
| bool any_enabled = false; | ||
| for (const auto &state : scenario_states_) | ||
| for (const auto &kv : scenario_states_) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
What does kv stand for?
Description
Demonstrate and provide a tutorial for using VK_EXT_layer_settings
Fixes #
General Checklist:
Please ensure the following points are checked:
Note: The Samples CI runs a number of checks including:
If this PR contains framework changes:
batchcommand line argument to make sure all samples still work properlySample Checklist
If your PR contains a new or modified sample, these further checks must be carried out in addition to the General Checklist: