Skip to content
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

Refactor the khr_display implementation #2295

Merged
merged 3 commits into from
Aug 24, 2023

Conversation

Rua
Copy link
Contributor

@Rua Rua commented Aug 19, 2023

Changelog:

### Breaking changes
Changes to the `khr_display` extension:
- The API is completely refactored.
- Getting displays and display planes is now done from the physical device.
- All features are now available.

### Additions
- Support for the `khr_get_display_properties2` extension.

This extension is a bit of a mess even in Vulkan form, but I think I managed to do an ok job of it. The trickiest part was ensuring that existing objects are reused when they appear in return values. This is especially problematic with display_plane_properties, which returns a display handle but doesn't give you any of the other properties of the display. So, the current implementation retrieves the display properties if it finds any are missing, then creates new objects.

@marc0246
Copy link
Contributor

Very cute.

@marc0246 marc0246 merged commit 43db3ea into vulkano-rs:master Aug 24, 2023
3 checks passed
marc0246 added a commit that referenced this pull request Aug 24, 2023
Rua added a commit that referenced this pull request Aug 24, 2023
@Rua Rua deleted the display-refactor branch October 25, 2023 14:24
hakolao pushed a commit to hakolao/vulkano that referenced this pull request Feb 20, 2024
* Refactor the `khr_display` implementation

* Doc fixes

* Move display out of the swapchain module, as it's usable independently
hakolao pushed a commit to hakolao/vulkano that referenced this pull request Feb 20, 2024
hakolao pushed a commit to hakolao/vulkano that referenced this pull request Feb 20, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants