################################################################################ # # This file contains per-layer settings that configure layer behavior at # execution time. Comments in this file are denoted with the "#" char. # Settings lines are of the form: # ". = " # # is typically the official layer name, minus the VK_LAYER # prefix and all lower-camel-case -- i.e., for VK_LAYER_KHRONOS_validation, # the layer identifier is 'khronos_validation'. # ################################################################################ ################################################################################ # Validation Layer Common Settings: # ================================= # # DEBUG_ACTION: # ============= # .debug_action : This is an enum value indicating what # action is to be taken when a layer wants to report information. # Possible settings values are defined in the vk_layer.h header file. # These settings are: # VK_DBG_LAYER_ACTION_IGNORE - Take no action. # VK_DBG_LAYER_ACTION_LOG_MSG - Log a txt message to stdout or to a log filename # specified via the .log_filename setting (see below). # VK_DBG_LAYER_ACTION_CALLBACK - Call user defined callback function(s) that # have been registered via the VK_EXT_debug_report extension. Since # app must register callback, this is a NOOP for the settings file. # VK_DBG_LAYER_ACTION_DEBUG_OUTPUT [Windows only] - Log a txt message using the # Windows OutputDebugString function -- messages will show up in the # Visual Studio output window, for instance. # VK_DBG_LAYER_ACTION_BREAK - Trigger a breakpoint. # # REPORT_FLAGS: # ============= # .report_flags : This is a comma-delineated list of options # telling the layer what types of messages it should report back. # Options are: # info - Report informational messages. # warn - Report warnings from using the API in a manner which may lead to # undefined behavior or to warn the user of common trouble spots. # A warning does NOT necessarily signify illegal application behavior. # perf - Report using the API in a way that may cause suboptimal performance. # error - Report errors in API usage. # debug - For layer development. Report messages for debugging layer # behavior. # # LOG_FILENAME: # ============= # .log_filename : output filename. Can be relative to # location of vk_layer_settings.txt file, or an absolute path. If no # filename is specified or if filename has invalid path, then stdout # is used by default. # # DISABLES: # ============= # .disables : comma separated list of feature/flag/disable enums # These can include VkValidationFeatureDisableEXT flags defined in the Vulkan # specification, or ValidationCheckDisables enums defined in chassis.h. # Effects of setting these flags are described in the specification (or the # source code in the case of the ValidationCheckDisables). The most useful # flags are briefly described here: # VK_VALIDATION_FEATURE_DISABLE_UNIQUE_HANDLES_EXT - disables handle wrapping. # Disable this feature if you are running into crashes when authoring new extensions # or developing new Vulkan objects/structures # VK_VALIDATION_FEATURE_DISABLE_THREAD_SAFETY_EXT - disables thread checks. It may # help with performance to run with thread-checking disabled most of the time, # enabling it occasionally for a quick sanity check, or when debugging difficult # application behaviors. # VK_VALIDATION_FEATURE_DISABLE_CORE_CHECKS_EXT - disables the main, heavy-duty # validation checks. This may be valuable early in the development cycle to # reduce validation output while correcting paramter/object usage errors. # VK_VALIDATION_FEATURE_DISABLE_API_PARAMETERS_EXT - disables stateless parameter # checks. This may not always be necessary late in a development cycle. # VK_VALIDATION_FEATURE_DISABLE_OBJECT_LIFETIMES_EXT - disables object tracking. # This may not always be necessary late in a development cycle. # # ENABLES: # ============= # .enables : comma separated list of feature enable enums # These can include VkValidationFeatureEnableEXT flags defined in the Vulkan # specification, where their effects are described. The most useful # flags are briefly described here: # VK_VALIDATION_FEATURE_ENABLE_GPU_ASSISTED_EXT - enables intrusive GPU-assisted # shader validation in core/khronos validation layers # # VK_LAYER_KHRONOS_validation Settings khronos_validation.debug_action = VK_DBG_LAYER_ACTION_LOG_MSG khronos_validation.report_flags = error,warn,perf khronos_validation.log_filename = stdout # Example entry showing how to disable threading checks and validation at DestroyPipeline time #khronos_validation.disables = VK_VALIDATION_FEATURE_DISABLE_THREAD_SAFETY_EXT,VALIDATION_CHECK_DISABLE_DESTROY_PIPELINE # VK_LAYER_LUNARG_core_validation Settings lunarg_core_validation.debug_action = VK_DBG_LAYER_ACTION_LOG_MSG lunarg_core_validation.report_flags = error,warn,perf lunarg_core_validation.log_filename = stdout # VK_LAYER_LUNARG_object_tracker Settings lunarg_object_tracker.debug_action = VK_DBG_LAYER_ACTION_LOG_MSG lunarg_object_tracker.report_flags = error,warn,perf lunarg_object_tracker.log_filename = stdout # VK_LAYER_LUNARG_parameter_validation Settings lunarg_parameter_validation.debug_action = VK_DBG_LAYER_ACTION_LOG_MSG lunarg_parameter_validation.report_flags = error,warn,perf lunarg_parameter_validation.log_filename = stdout # VK_LAYER_GOOGLE_threading Settings google_threading.debug_action = VK_DBG_LAYER_ACTION_LOG_MSG google_threading.report_flags = error,warn,perf google_threading.log_filename = stdout # VK_LAYER_GOOGLE_unique_objects Settings google_unique_objects.debug_action = VK_DBG_LAYER_ACTION_LOG_MSG google_unique_objects.report_flags = error,warn,perf google_unique_objects.log_filename = stdout ################################################################################