additional features

This commit is contained in:
2025-12-28 18:54:28 +00:00
parent 6e6d74ef5a
commit 36acb1fe4c
+57 -5
View File
@@ -6,6 +6,7 @@ const PIPELINE_CACHING: bool = false;
const IGNORE_STENCIL: bool = true; const IGNORE_STENCIL: bool = true;
const VSYNC: bool = true; const VSYNC: bool = true;
const COMPUTE_FUZZING: bool = false; const COMPUTE_FUZZING: bool = false;
const ROBUST: bool = false;
const DEFAULT_SUBDIVISION: u32 = 16; const DEFAULT_SUBDIVISION: u32 = 16;
const MAXIMUM_SUBDIVISION: u32 = 64; const MAXIMUM_SUBDIVISION: u32 = 64;
@@ -289,6 +290,8 @@ impl App {
InstanceCreateInfo { InstanceCreateInfo {
enabled_extensions: InstanceExtensions { enabled_extensions: InstanceExtensions {
ext_swapchain_colorspace: true, ext_swapchain_colorspace: true,
khr_get_surface_capabilities2: true,
ext_surface_maintenance1: true,
..required_extensions ..required_extensions
}, },
engine_name: Some("Tape Drive".to_owned()), engine_name: Some("Tape Drive".to_owned()),
@@ -302,27 +305,76 @@ impl App {
let device_extensions = DeviceExtensions { let device_extensions = DeviceExtensions {
khr_swapchain: true, khr_swapchain: true,
ext_swapchain_maintenance1: true,
khr_ray_tracing_pipeline: true, khr_ray_tracing_pipeline: true,
khr_ray_tracing_maintenance1: true, khr_ray_tracing_maintenance1: true,
khr_synchronization2: true,
khr_deferred_host_operations: true, khr_deferred_host_operations: true,
khr_acceleration_structure: true, khr_acceleration_structure: true,
khr_fragment_shader_barycentric: true,
khr_map_memory2: true,
khr_ray_query: true,
khr_shader_maximal_reconvergence: true,
ext_robustness2: ROBUST,
..DeviceExtensions::empty() ..DeviceExtensions::empty()
}; };
let device_features = DeviceFeatures { let device_features = DeviceFeatures {
// core
shader_int16: true, shader_int16: true,
shader_int64: true,
shader_int8: true, shader_int8: true,
shader_float16: true,
shader_float64: true,
storage_buffer8_bit_access: true, storage_buffer8_bit_access: true,
storage_buffer16_bit_access: true, storage_buffer16_bit_access: true,
maintenance4: true, storage_input_output16: true,
storage_push_constant16: true,
storage_push_constant8: true,
uniform_and_storage_buffer8_bit_access: true,
uniform_and_storage_buffer16_bit_access: true,
shader_buffer_int64_atomics: true,
shader_shared_int64_atomics: true,
fill_mode_non_solid: true, fill_mode_non_solid: true,
shader_draw_parameters: true, shader_draw_parameters: true,
shader_demote_to_helper_invocation: true, descriptor_indexing: true,
acceleration_structure: true, uniform_buffer_standard_layout: true,
ray_tracing_pipeline: true, shader_subgroup_extended_types: true,
separate_depth_stencil_layouts: true,
host_query_reset: true,
buffer_device_address: true, buffer_device_address: true,
vulkan_memory_model: true,
vulkan_memory_model_device_scope: true,
robust_buffer_access: ROBUST,
robust_image_access: ROBUST,
inline_uniform_block: true,
maintenance4: true,
shader_demote_to_helper_invocation: true,
shader_terminate_invocation: true,
compute_full_subgroups: true,
synchronization2: true, synchronization2: true,
shader_zero_initialize_workgroup_memory: true,
dynamic_rendering: true,
shader_integer_dot_product: true,
// ext_swapchain_maintenance1
swapchain_maintenance1: true,
// khr_ray_tracing_pipeline
ray_tracing_pipeline: true,
ray_tracing_pipeline_trace_rays_indirect: true,
// khr_ray_tracing_maintenance1
ray_tracing_maintenance1: true,
ray_tracing_pipeline_trace_rays_indirect2: true,
// khr_acceleration_structure
acceleration_structure: true,
// khr_fragment_shader_barycentric
fragment_shader_barycentric: true,
// khr_ray_query
ray_query: true,
// khr_shader_maximal_reconvergence
shader_maximal_reconvergence: true,
// ext_robustness2
null_descriptor: true,
robust_buffer_access2: ROBUST,
robust_image_access2: ROBUST,
..DeviceFeatures::empty() ..DeviceFeatures::empty()
}; };