| Age | Commit message (Collapse) | Author |
|
Change-Id: I7ba803a11de29e65ae65fbf0a0168561a2e6739f
|
|
Allows layers to output error messages even if no vk_layer_settings.txt
config file is present. Sets defaults to LOG_MSG, error, stdout.
A layer settings file will override any default values. If no settings
file is present and an app creates a debug callback, the default
callbacks will be removed and unregistered.
Change-Id: I49f37189665816df58c258b9e9629f2bf76751c8
|
|
Since each of the layer library contains only a layer, we can simplify v0
functions by making them wrappers to the contained layer's corresponding
commands.
While we have to make changes to each layer individually, all the changes
should be the same in spirit. The exception is vk-layer-generate.py where
the missing vkEnumerateDeviceExtensionProperties is also added.
|
|
vk_layer_utils has function vk_format_is_depth_or_stencil() that is
exactly the same as local is_depth() function so kill local function
and use utility function.
|
|
This adds two new checks to make sure that CmdClearColorImage is
not called with depth/stencil format image and that
CmdClearDepthStencilImage is not called with color format image.
Also add getImageState() helper function to image layer to
simplify/unify code for lookup of IMAGE_STATE from imageMap.
|
|
With new checks in place for CreateImage, old check in CreateRenderPass
is redundant and can be removed.
Change-Id: I53e5201f453041b3c8ba17edc193c1f3b142f4cb
|
|
CreateImage was checking that format caps weren't null, but was not
validating against color or depth/stencil attachment types.
Change-Id: Ic8996829033f552f6ef7477bdefdaba702ae2403
|
|
1) Introduce convention of explicitly placing "0x" before hex
format requests for clarity (don't use "%#")
2) All lower case in hex output (except w/stringstream which refuses
to do anything but uppercase, possibly only on windows).
3) Decorated pointers are printed for all Vulkan structure types.
3) Some intelligence in generators based on Vulkan variable name:
if the Vulkan variable name contains ("flag", "bit", "offset",
"handle", "buffer", "object", "mask") it will be output in
hexadecimal format
4) Remove "using namespace std;" from global scope of vk_struct_string_helper_cpp.h
Change-Id: Idbae73bfdaa3bc059543d43b209373cd0bcbc099
|
|
Fixes compilation problems on CentOS.
Change-Id: I92c5ea0ebea8684c40e67e9b386732e55cb47cc8
|
|
Change-Id: Ia59e796dd6b7dd6acebb1e3e6b7dbbcbb4b23fed
|
|
Save VkInstance in layer_data so that we query vkCreateDevice with a valid
instance.
|
|
Handle device commands as well. Move handling of interface functions to
v0's vkGetInstanceProcAddr.
|
|
Split command intercepting out to intercept_core_instance_command.
|
|
It returns the function pointers for all intercepted core device commands.
Call intercept_core_device_command from GetDeviceProcAddr. Assert that
device is valid in GetDeviceProcAddr.
|
|
Call down the next layer unless pLayerName is image.
|
|
Replace pc_global_layers with global_layer. There is no plan to define
more than one layer in the same namespace.
|
|
Drop VK_LAYER_EXPORT as well.
|
|
Put all layer fucntions/data into image namespace. I had to add some
wrappers to make everything work.
|
|
Move them toward the end of the file.
|
|
Change-Id: Id447f4c8c53d33f9192940bdd3ae727b7b738a97
|
|
Change-Id: Ie132289c0e601397f54b06c1ef758c65b712f906
|
|
Check only the valid dimensions for the imageType provided in
the create info.
Change-Id: I11d484caf1085b7b0ae4a402453b5fdcadd7b67d
|
|
Fixes the MSVS warnings regarding unsafe mix of VkBool32 and bool for the
device_limits, image, parameter_validation, and threading layers.
Converts all Boolean usage internal to the layers to bool/true/false. The
VK_TRUE and VK_FALSE values continue to be used with the Vulkan API
components.
Change-Id: I612d3f26050fadcd77ffca4d8723a7c734613816
|
|
Also added many of the CmdCopyImage valid usage checks.
Change-Id: I398adf18b48eccacbd8e44ce53e50f3bf43f58ad
|
|
Change-Id: Idf7a9d40278b796e16effa54e9b60668d275b8ec
|
|
|
|
Change-Id: I75382973eacf80e3ee84fb390c79bc7c19cc14d7
|
|
Also removed dead code from the layer generation script.
Change-Id: I64fdcaaf1aed8152de62079568c8e247333d8c61
|
|
Change-Id: I318e3759829f33441e57aafedec1e9ec06d658c4
|
|
Change-Id: Ib527e646aabbd0aecbadf9071ca9e271a8729735
|
|
|
|
|
|
Change-Id: I427cd1fcc6ecf115dbaf521387a909f117c13d07
|
|
Change-Id: Iede6dcf3bc83a5663b80b62c3239ef54bc74278a
|
|
|
|
|
|
|
|
Removed vk_ext_debug_report.h (contents moved into vulkan.h)
Renamed debug report message enums
|
|
|
|
|
|
This reverts commit e260acfb96ea20945149ede6a250ef622ca7fd03.
The clang-format changes need to be postponed until just prior
to public release to facilitate MRs.
|
|
|
|
|
|
Conflicts:
include/vulkan/vk_ext_debug_report.h
Conflicts:
include/vulkan/vk_ext_debug_report.h
|
|
New layer init method requires the construction of
Link information for CreateInstance and CreateDevice
that is accessible to layers via the CreateInfo.pNext pointer.
The layer can then use the Get*ProcAddr from the Link
structure to initialize their dispatch table if the
call down the chain returns successfully.
This removes the need to do special initialization work
at Get*ProcAddr time.
Layer Get*ProcAddr now return their internal function
pointers regardless of the value of instance or device.
Only need to have valid instance & device when looking
up extensions or when passing the request down the chain.
This mechanism allows us to remove object wrapping used
by the loader previously. Also simplifies the dispatch table
setup.
Conflicts:
layers/device_limits.cpp
layers/draw_state.cpp
loader/loader.c
loader/trampoline.c
|
|
When using an imageView of a depth/stencil image to populate a descriptor set,
the aspectMask must only include one bit and selects whether the imageView is
used for depth reads or stencil reads.
|
|
|
|
|
|
|
|
|