Commit Graph

18 Commits

Author SHA1 Message Date
andrew0229 3f7fe7b7b4 update to v1.3.275
Signed-off-by: andrew0229 <zhangzhao62@huawei.com>
Change-Id: Ifc4224db2c6ea7c159d3cabe8f075475d47a41a8
2024-05-21 08:09:09 +00:00
Charles Giessen 8623a30ef7 Allow implicit layers for all API versions
This change makes the loader conform to the latests specification
update, 1.3.227, which removes the requirement that implicit layers
API version is at least as high as the application provided API
version.

This change reduces friction for layer developers and API users.
2022-09-08 13:48:46 -06:00
Charles Giessen 0dbe5db838 Add 32 & 64 bit field to json manifests
Allows drivers and layers to specify if they are 32 bit or 64 bit in the
manifest file. This makes the loader able to prune manifests without
loading the library and finding that it failed to load.
2022-06-22 10:28:18 -06:00
Charles Giessen c9e9ac6a07 Update layer and driver vkGetPhysDevProcAddr docs
Better describe the function's purpose and behavior, moving the
reason for introducing vk_layer|icdGetPhysicalDeviceProcAddr to
a following section for clarity.
2022-05-31 14:51:38 -06:00
Mark Young aa9489cca6 Clarify JSON Manifest "api_version"
Clarify what is indicated by the "api_version" field in both
layer and driver manifest files.

Fixes issue #336.
2022-05-25 15:53:52 -06:00
Ludovico de Nittis a85509f69f Update supported versions in the docs
Mention the supported versions that were missing.

Signed-off-by: Ludovico de Nittis <ludovico.denittis@collabora.com>
2022-05-20 20:03:51 -06:00
Mark Young 6cf552d432 Update layer manifest file
Some fields specific to manifest files were missing.  Also updated
file to clearly indicate where fields are valid and usable.
2022-05-04 16:04:38 -06:00
Charles Giessen 01cac032ad Document VK_KHR_portability_enumeration support 2022-04-07 11:49:53 -06:00
Mark Young 7bb8735100 Modify loader VK_ADD_DRIVER_FILES behavior
Modify the loader to only use VK_ADD_DRIVER_FILES if
VK_DRIVER_FILES or VK_ICD_FILENAMES is not used.
This could have caused weird issues with systems where VK_DRIVER_FILES
was used to force drivers in a specific order/location for testing.

Resolves issue #871
2022-03-10 13:55:26 -07:00
Mark Young 759d5b4c94 Add "additive" environment variables
Add "additive" environment variables for adding additional layer
paths or driver JSON files instead of replacing default ones.

Also, rename VK_ICD_FILENAMES to VK_DRIVER_FILES since we're trying
to remove references to ICDs because software driver implementations
of Vulkan aren't ICDs (but continue to support the old name as well).

Added documentation around these changes to reflect the new name and
the new variables.
2022-03-04 15:38:46 -07:00
Charles Giessen ef44cdd106 Clarify behavior of override_paths + VK_LAYER_PATH
If a meta layer which contains `override_paths` is active, all of the paths in
VK_LAYER_PATH are ignored when searchign for explicit layers. This may be changed
changed in the future but for now is better tested and documented.
2022-02-11 14:16:05 -07:00
Charles Giessen 57affb6363 Update Docs table of contents 2022-02-07 16:14:20 -07:00
Charles Giessen db2d52b5aa Update LoaderLayerInterface.md documentation
Expand override layer documentation to include override_paths

Add Versioning and Activation Interactions section which details some of the
more complex rules around when a layer is activated or not.
2022-01-25 12:32:56 -07:00
Mark Young a90e003839 Add loader policy statements
Define expected behavior for a well-behaved loader, layers, and drivers.
This has been reviewed with other companies so that when issues arise,
it is easy to clearly communicate where one of the components has failed
to properly behave.

Add warnings/errors in the loader output when cases of policy that can
be detected are noticed.
2021-12-13 11:05:15 -07:00
Mark Young 06e6ed8683 Add bundling section and rename "desktop loader"
Add a section warning about possible issues with bundling the
Khronos loader with an application/engine.
Also, rename "desktop loader" to "Khronos loader" since it is now
used for more than the original desktop targets.
2021-11-04 09:39:34 -06:00
Mark Young a7761317b8 Added layer debug section and pre-instance info
Add a section in the application documentation on how to debug possible
layer issues.
Also add a small note on why a layer may need to intercept pre-instance
functions.
2021-10-27 14:00:40 -06:00
Mark Young 0406fe43f6 Change Implementation->Drivers
Feedback from Khronos was that "Implementation" was for the entire
set of Vulkan components underlying the application (including the
loader, layers, and drivers).  Instead, what I had been calling
implementation should be called "Driver" including software
implementations of Vulkan at that level.

Also update the LOADER_DEBUG option "implem" to take "driver" as well.
All images also updated.
2021-10-20 16:27:28 -06:00
Mark Young 908f209d85 Re-arrange/update loader docs
Update the loader documentation in the following ways:
 1. Move documentation to new "docs" folder"
 2. Split LoaderAndLayerInterface.md into multiple docs to focus
    on target audience:
      - Top-Level     LoaderInterfaceArchitecture.md
      - Applications  LoaderApplicationInterface.md
      - Layers        LoaderLayerInterface.md
      - ICDs          LoaderImplementationInterface.md
 3. Upload newer images and their corresponding original Inkscape files.
 4. Cleanup and update sections on Linux directory search
 5. Add new sections to detail items missing
      - VkConfig
      - Handling undef Fuchsia
 6. Language cleanup

Thanks to @charles-lunarg and @smcv for feedback and various section language
corrections.
2021-10-15 13:42:00 -06:00