| Age | Commit message (Collapse) | Author |
|
This change was originally in Fuchsia's Vulkan-Tools fork
(https://fxrev.dev/441056). It adds Fuchsia OS
(https://fuchsia.dev) support to vkcubepp.
Fuchsia has two WSI platforms available: It can render directly to
display frame buffer (fuchsia_display), or use Fuchsia's Scenic
compositor (fuchsia_scenic).
All Fuchsia-specific code is under VK_USE_PLATFORM_FUCHSIA ifdef
build guards and is only compiled for Fuchsia targets.
This change also adds a BUILD.gn file used for Fuchsia in-tree
builds.
Test: vkcube-on-fb and vkcube-on-scenic on Fuchsia
Bug: https://fxbug.dev/378964821
Change-Id: Id4627bf209b4fc9400ce7f6847324cad2060c31c
|
|
1. std::tolower() returns an `int` value. Implicit converting an `int`
to a `char` may trigger compiler warnings (-Wconversion on gcc
and clang).
This change adds an explicit cast to suppress the implicit conversion
warnings.
2. Previously we used `assert(!"....")` to show error messages. This
does an implicit conversion from `const char*` to `bool` which
triggers compiler warnings (-Wconversion).
This change replaces it with `assert(false && "...")` which doesn't
trigger the warning.
Bug: https://fxbug.dev/378964821
Change-Id: I51be6858db558568619d0d2e6bc01a544d3459e4
|
|
This change adds Fuchsia-specific build files and metadata for
vulkaninfo so that it builds on Fuchsia.
Test: vulkaninfo on Fuchsia
Bug: https://fxbug.dev/378964821
Change-Id: I069b808394995db94b109c15d18dd6797a97c534
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Switch pfnUserCallback from PFN_vkDebugUtilsMessengerCallbackEXT to
vk::PFN_DebugUtilsMessengerCallbackEXT
|
|
It may contain a different/incompatible vulkan.h/vulkan.hpp than the
known good version.
|
|
|
|
|
|
Set demo.caMetalLayer before attempting to create the surface
|
|
|
|
|
|
Fix bug on checking and refine logic of selection.
|
|
|
|
This was accidentally undone during the changes to cube to handle runtime
WSI selection. By not linking, vkcube does not work unless the SDK is
installed globally (ie, moltenvk is available globally).
|
|
|
|
|
|
This change makes calls using GetVectorInit() to start with an already created
buffer of size 64, allowing for the Vulkan implementation to immediately fill
in the buffer, rather than having to call the enumerate function twice. This
change is primarily motivated to reduce the spam VK_LOADER_DEBUG=all produces
when run with vulkaninfo.
|
|
|
|
|
|
Allow the registry path argument to also be the base directory
containing the Vulkan-Headers repo (eg. ./external) to save
redundant typing.
|
|
|
|
|
|
The documentation states that users can override where to take a
dependency from via variables like VULKAN_HEADERS_INSTALL_DIR, however
the helper.cmake written by the scripts/CMakeLists.txt FORCE updates
the cache variable to the location inside known_good.json, practically
overwriting the user-provided path given on the CLI using -D, also
going into the cache.
|
|
Without going through an intricate dance with git to change the remote
URL of a repository, it's simplest to just nuke the cloned folder, as
we have to do a clean clone anyway.
|
|
|
|
If the visual passed to XCreateWindow is not the default one, it can
cause a BadMatch error. Usually the first one returned does work, but in
certain cases we need to search through all the visuals to find one that
matches the default visual. This was seen on an xrdp session on Rocky 9.
|
|
|
|
The docs lists 3.10 as a minimum required but only used 3.7 in github
actions.
|
|
|
|
By changing the selection of a WSI platform from a build time choice to a
runtime choice, this allows the removal of vkcube-wayland as a separate
binary.
Use `--wsi <platform>` to choose the WSI platform that vkcube will render
with. The chosen platform must be one that vkcube was compiled with
support for, so directfb will be unavailable without changing the build
parameters to enable it.
These changes have been made to both vkcube and vkcubepp.
This includes enabling VK_KHR_display where applicable, which is supported
on linux and windows at the current time.
|
|
|
|
The --validate-checks-disabled flag was unused, so will be removed.
|
|
|
|
|
|
Updated MoltenVK to latest known good
|
|
|
|
|
|
The previous implementation did not differentiate when a single queue
supported a specific surface. It will now print 'true' if all surfaces
support presentation with a queue, 'false' if none, and otherwise prints
each surface type's support if they aren't uniform in value.
This makes the info regarding which queue supports presentation on a
surface much easier to validate the correctness of.
|
|
Previous implementation would always run the function 3 times no matter what.
|
|
|
|
Instead of unconditionally querying properties twice,
only call the query again if the given output struct has array members.
Also fix the case where if there are no output structs with array properties (VulkanSC),
then don't end up with unresolved external symbols.
|