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

Add hal_features parameter to Adapter::request_device(). #3535

Closed
JMS55 opened this issue Feb 27, 2023 · 4 comments
Closed

Add hal_features parameter to Adapter::request_device(). #3535

JMS55 opened this issue Feb 27, 2023 · 4 comments
Labels
area: api Issues related to API surface type: enhancement New feature or request

Comments

@JMS55
Copy link
Contributor

JMS55 commented Feb 27, 2023

Is your feature request related to a problem? Please describe.
I would like to enable specific Vulkan extensions, that don't (and probably shouldn't) have corresponding wgpu features.

Describe the solution you'd like
Add a hal_features: &[&CStr] parameter to Adapter::request_device().

Describe alternatives you've considered
Currently you can make the device yourself using Adapter::device_from_raw() and Adapter::create_device_from_hal(), but this is a lot of unnecessary boilerplate and duplicate code that needs to be kept up-to-date with wgpu's internals.

@teoxoy
Copy link
Member

teoxoy commented Feb 28, 2023

Which Vulkan extensions are you interested in enabling?

@JMS55
Copy link
Contributor Author

JMS55 commented Feb 28, 2023

I need whatever the list of extensions DLSS returns. Currently, on my system, that seems to be:

VK_NVX_binary_import
VK_NVX_image_view_handle
VK_EXT_buffer_device_address
VK_KHR_push_descriptor

@teoxoy teoxoy added type: enhancement New feature or request area: api Issues related to API surface labels Feb 28, 2023
@teoxoy
Copy link
Member

teoxoy commented Feb 28, 2023

I see, it's a bit unfortunate that there doesn't seem to be a nice way to implement those on top of our current API.

There has been some talk recently in the group about an upscaling API. The next step is an investigation to see where the middle-ground of DLSS/FSR/MetalFX/XeSS is and how the API could look. There doesn't seem to be an issue opened for this but if you are interested in this being available on the web, I'd encourage you to file one and contribute your findings.

@cwfitzgerald
Copy link
Member

#4067 is what will also get you this.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
area: api Issues related to API surface type: enhancement New feature or request
Projects
None yet
Development

No branches or pull requests

3 participants