| Age | Commit message (Collapse) | Author |
|
Vulkan-Hpp now compares this with 1 instead of using `#if defined()`.
|
|
Avoids relying on Vulkan-Hpp for fixing vkcubepp regression
|
|
Otherwise layers won't work on Apple
|
|
Add volk as a repo dependency to replace the dependency on the Vulkan-Loader.
This makes it easier to build the repo as the vulkan-loader has a much more
complex build than volk does. It also allows vkcube to launch without vulkan
being installed on the system, allowing for better error handling.
Because volk can be used on all platforms, there is no longer a need for
android_wrapper. Thus it has been removed.
|
|
This removes vkcubepp's linking to the vulkan-loader in order to build. That way
the Vulkan-Loader isn't a dependency for vkcubepp.
|
|
|
|
Addresses various other issues with setting compiler flags.
CMAKE_C_FLAGS / CMAKE_CXX_FLAGS should NOT be used anymore.
Addressed one minor C++17 issue caused by [[nodiscard]].
Remove compiler flags from Application.mk since they weren't
needed and will soon be entirely replaced by CMake.
closes #711
|
|
Additionally add support for RGB565 and RGBA5551 pixel formats, because
some Vulkan drivers under QNX report these formats first as preferable.
|
|
|
|
|
|
|
|
|
|
|
|
The code would correctly reject widhth & height command line prameters
that weren't greater than 0, but without a helpful error message about
what was actually wrong.
|
|
This check was present in cube but wasn't added to cubepp.
Because width and height are stored as uint32_t, we first need to read them
in as int32_t and make sure they aren't negative.
|
|
Previously the code assumed that all types were convertable to void*, since
they happened to have the same size on 64 bit platforms. But in 32 bit, this
is not true.
Now the code converts dispatchable handles to uintptr_t then to void* only for
dispatchable types, printing all other types as non-dispatchable 64 bit ints.
|
|
- Vulkan::Registry was removed
- vk_sdk_platform.h is deprecated
NOTE: Need to update loader due to shared dependency.
|
|
Previously, a negative gpu number (other than -1) would cause the program to
assert. It is simple enough to handle it gracefully, so best to do so.
|
|
|
|
Currently cubepp fails on Debug builds and triggers an assert.
This avoids the assert by calling the appropriate presentKHR.
|
|
|
|
|
|
Encountered the crash on a compositor without keyboard, this seems to
fix it.
|
|
Vulkan-Hpp Implicit-cast operators on vk::ResultValue were previously
deprecated and finally removed in the v1.3.213 headers. Fix the
resulting compiler error in cubepp by explicitly using the value member
of vk:ResultValue.
Change-Id: Ie441bd56dfb9dfe26e966e0ec3fb3139712a351a
|
|
Make vulkaninfo and vkcube/vkcubepp enable the portability enumeration bit if it is
available.
|
|
|
|
|
|
|
|
The width and height parameters don't need to be ints, use uint32_t for consistency.
Demo& is more idiomatic C++ than Demo*.
|
|
|
|
The differing logic led to vkcube choosing a different swapchain image format
to vkcubepp.
|
|
Many changes to better utilize C++ and vulkan.hpp's features.
Includes:
* range-for loop usage where appropriate
* References instead of pointers
* using std::vector and std::array
* Using C++11's default struct values
* Making use of vulkan.hpp functions which return vectors
* Passing objects by reference to vulkan.hpp instead of by pointer
* Rename in application title to vkcubepp
|
|
Change-Id: I650958a8b2607eb3402eb6531909881d4a2ccc0f
|
|
During tests, it's hard to determine if the --validation option is
actually working properly. So add an option (--force_errors) to
intentionally force a few validation error messages to make sure
that validation is working properly.
|
|
Expect and deny negative window dimensions.
|
|
Made some changes for Vulkan-Tools to compile on FreeBSD.
|
|
Change-Id: Iedc4929547cd58063481e0cf19dda6ba38846a16
|
|
Change-Id: I8064d5e97700cb1a233b61d37aba92ca5f752560
|
|
This change ports vkcube in both C and C++ versions to use the stable
xdg-shell protocol for Wayland compositors. The original wl-shell
protocol has been deprecated and is being removed from major compositor
libraries; wlroots has already dropped support.
New cmake modules have been added to look for Wayland-Protocols
(containing XML descriptions of all common protocols) and
`wayland-scanner`, the tool used to convert the XML files to a usable C
interface.
The change also adds support for the xdg-decoration protocol, which for
some compositors is provided and needed to let them know that they
should draw a titlebar, borders with resize controls, and other standard
features.
Change-Id: I39bedda93a7c5d0aeeb59c68023552723b413567
|
|
Change-Id: I199d4064f0e034cb747a87844c250203fcf22157
|
|
Change-Id: I6421c661880695ba359969fb5e8752e2140167f5
|
|
vkcube computes the model matrix for the cube by repeatedly multiplying
a rotation matrix with it. After a sufficient number of iterations the
matrix becomes disturbed (likely due to numerical errors) and stops
being orthogonal and the cube vertices start scaling increasingly on the
XY plane.
* Orthonormalize the model matrix after each multiplication to prevent
the scaling.
* Use mat4x4_rotate_Y() instead of mat4x4_rotate() as it is less
verbose.
* Remove unused duplicate vkcube_vs_uniform struct.
|
|
Change-Id: I3075c06220d9b02a3eb9b2e6846a13b9ceea1abe
|
|
Change-Id: Ie2533ad22e4bf9672f749138baddc0313169d09b
|
|
Instead of selecting GPU 0, prefer dGPU, iGPU, vGPU, CPU, OTHER.
In that order.
If user selects specific gpu_number (including 0), use only
that and don't fallback to anything else, even when incorrect.
|
|
|
|
VK_KHR_PORTABILITY_SUBSET_EXTENSION_NAME would be defined
|
|
|
|
|
|
|