additional features
This commit is contained in:
+57
-5
@@ -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()
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user