1519: Add TEXTURE_ADAPTER_SPECIFIC_FORMAT_FEATURES to supported for Vulkan and Metal. r=kvark a=ElectronicRU

Adapter callbacks are already there, so this is likely an oversight.

**Description**
Adapter callbacks for texture capabilities were there, but feature flags weren't enabled, which prevented use of them.


Co-authored-by: Alex S <alex0player@gmail.com>
This commit is contained in:
bors[bot] 2021-06-19 14:29:45 +00:00 committed by GitHub
commit 77e57ebcc6
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
2 changed files with 5 additions and 3 deletions

View File

@ -843,7 +843,8 @@ impl super::PrivateCapabilities {
| F::DEPTH_CLAMPING | F::DEPTH_CLAMPING
| F::TEXTURE_COMPRESSION_BC | F::TEXTURE_COMPRESSION_BC
| F::MAPPABLE_PRIMARY_BUFFERS | F::MAPPABLE_PRIMARY_BUFFERS
| F::VERTEX_WRITABLE_STORAGE; | F::VERTEX_WRITABLE_STORAGE
| F::TEXTURE_ADAPTER_SPECIFIC_FORMAT_FEATURES;
features.set( features.set(
F::SAMPLED_TEXTURE_BINDING_ARRAY F::SAMPLED_TEXTURE_BINDING_ARRAY

View File

@ -208,7 +208,8 @@ impl PhysicalDeviceFeatures {
| F::ADDRESS_MODE_CLAMP_TO_BORDER | F::ADDRESS_MODE_CLAMP_TO_BORDER
| F::SAMPLED_TEXTURE_BINDING_ARRAY | F::SAMPLED_TEXTURE_BINDING_ARRAY
| F::STORAGE_TEXTURE_BINDING_ARRAY | F::STORAGE_TEXTURE_BINDING_ARRAY
| F::BUFFER_BINDING_ARRAY; | F::BUFFER_BINDING_ARRAY
| F::TEXTURE_ADAPTER_SPECIFIC_FORMAT_FEATURES;
let mut dl_flags = Df::all(); let mut dl_flags = Df::all();
dl_flags.set(Df::CUBE_ARRAY_TEXTURES, self.core.image_cube_array != 0); dl_flags.set(Df::CUBE_ARRAY_TEXTURES, self.core.image_cube_array != 0);
@ -802,7 +803,7 @@ impl crate::Adapter<super::Api> for super::Adapter {
.instance .instance
.raw .raw
.get_physical_device_format_properties(self.raw, vk_format); .get_physical_device_format_properties(self.raw, vk_format);
let features = properties.linear_tiling_features; let features = properties.optimal_tiling_features;
let mut flags = Tfc::empty(); let mut flags = Tfc::empty();
flags.set( flags.set(