Commit graph

167 commits

Author SHA1 Message Date
SRSaunders
bdfd4709ff
macOS/iOS fixes plus other generic fixes for clang and validation warnings (#1117)
* Fix clang Objective-C++ flags for macOS command line builds

* Fix getAssetPath() and getShaderBasePath() for macOS command line builds

* Protect debugUtilsMessageCallback() from failing when pMessageIdName is NULL

* Fix a few clang function override and mismatched type warnings

* Fix validation layer warnings on exit for computeraytracing example

* Fix regression in text visibility toggle for textOverlay example

* Support VK_USE_PLATFORM_METAL_EXT vs. deprecated VK_USE_PLATFORM_MACOS_MVK / DVK_USE_PLATFORM_IOS_MVK

* Check dynamic state features before enabling capabilities in dynamicstate example

* Fix vkCmdDraw() vertexCount argument (PARTICLE_COUNT) in particlesystem example

* Update examples list and restore benchmarking script (to top level)

* Fix validation warning in descriptorindexing example

* Fix device max recursion depth validation warnings in ray tracing examples

* Fix OpenMP build settings for texture3d example on all platforms

* Update and simplify build instructions for macOS

* Update CI script with correct library path for libomp on macOS x86_64

* Update CI scipt to install libomp prior to macOS builds

* Trying one more time to get the CI script working for macOS libomp

* Fix vertexCount argument using calculated size in particlesystem example

* Fix combined image descriptor offset calculation in descriptorbuffer example

* macOS: Support non-system level Vulkan SDK installs, with fallback to MoltenVK library
2024-05-04 13:53:08 +02:00
Sascha Willems
52779a1bd1 Base class code cleanup 2024-03-20 07:49:06 +01:00
Sascha Willems
a9ae9eafaa Code cleanup 2024-03-19 21:51:27 +01:00
Sascha Willems
d26aed277c Removed viewChanged callback
Preparation for reworking sync, such a callback would make it hard to find a proper sync point
2024-01-20 14:27:31 +01:00
Sascha Willems
c23027d687 Minor code cleanup 2024-01-01 16:41:38 +01:00
Sascha Willems
d0211d1f14 Replaced per-sample validation define with global define in base class
Toggling validation via command line arguments is the preferred way anyway
Define was also added as a CMake option
2023-12-30 13:15:37 +01:00
Mike Gorchak
8458f21123 Add basic QNX support. 2023-09-01 11:12:08 -04:00
Sascha Willems
31973df69b Reworked triangle sample
Now uses proper sync and multiple concurrent frames
Better and more consistent naming
Additional comments
Refs #871
2023-07-16 19:25:55 +02:00
Sascha Willems
3c9aca3fcb Add stencil format require toggle
Fixes #1031
2023-05-09 18:03:51 +02:00
Sascha Willems
cca1c865d9 Added keyboard input handling
Windows only
2023-02-25 09:37:08 +01:00
Sascha Willems
e52a9342f4 Add command line arguments to headless samples
Those samples can now toggle between glsl and hlsl shaders
Moved command line parster to a separate header
2022-12-31 09:45:01 +01:00
Sascha Willems
727d351b42 Added virtual function to enable extension based on extension list from physical device 2022-10-02 15:46:06 +02:00
Stephen Saunders
46b2027dd1 Handle Vulkan / memory cleanup on shutdown for macOS benchmarking case 2022-07-20 12:00:14 -04:00
Stephen Saunders
a184bd7007 Set viewUpdated=true for macOS scroll wheel, open vulkanExamples window in front of Xcode, accept mouse click-through on macOS 2022-07-07 09:57:01 -04:00
Stephen Saunders
cb343c329a Fixes for vulkanExample: frame timing now equals diff between frames for Win & macOS portability, support vsync off rendering on macOS, support swapchain image count change on resize, handle macOS fullscreen; Fixes for xcode example: use PanGestureRecognizer on iOS, add macOS cursor tracking, cleanup Vulkan on shutdown 2022-07-07 09:57:01 -04:00
Stephen Saunders
57e650b653 Support right & middle mouse dragging, set macOS frameTimer based on vsync refresh period 2022-07-07 09:57:01 -04:00
Stephen Saunders
28d98b9ee7 Revert changes to vulkanexamplebase.h and expose displayLinkOutputCb() to DemoViewController 2022-07-07 09:57:01 -04:00
Stephen Saunders
2349738013 Changes to build on macOS and animate frames 2022-07-07 09:57:01 -04:00
Sascha Willems
3e55366434 Added sample fro dynamic rendering using VK_KHR_dynamic_rendering 2021-11-06 19:45:22 +01:00
Sascha Willems
3b1ff1eece Ray tracing samples can now also use the UI overlay
General cleanup, changed default settings.overlay value
2021-08-28 12:59:10 +02:00
Per Inge Mathisen
45ba247b55 Add support for rendering for the headless extension 2021-04-27 13:53:07 +02:00
Sascha Willems
165b66a718
Reworked command line argument handling (#804)
* Reworked command line argument handling

Added a new class to handle these
2021-01-29 15:40:52 +01:00
Nicolas Caramelli
c13a715ead
Add DirectFB WSI support (#761) 2020-09-13 10:12:33 +02:00
daemyung jang
ad6e36023f
Run on MacOS (#762)
* Run on MacOS

* Update BUILD.md
2020-09-11 20:19:28 +02:00
Sascha Willems
5d594acb02 Bugfix for checking enabled instance extensions 2020-08-29 11:32:48 +02:00
Sascha Willems
de61539799 Store instance extensions, reworked support check 2020-08-27 19:56:02 +02:00
Sascha Willems
9e22fe7b0d Add resized flag to base class 2020-08-16 10:22:45 +02:00
Sascha Willems
a465bad5aa Cleaned up includes
Fixed typos
2020-08-09 13:16:35 +02:00
Sascha Willems
361535b29e Split texture class into header and implementation
Moved include to base class
2020-08-08 22:54:34 +02:00
Sascha Willems
231e97b8c0 Split device class into header and implementation
Moved include to base class
2020-08-08 22:36:01 +02:00
Sascha Willems
122288fe25 Split buffer class into header and implementation
Moved include to base class
2020-08-08 22:18:35 +02:00
Sascha Willems
abd68cc451 Split swap chain class into header and implementation 2020-08-08 18:48:00 +02:00
Sascha Willems
e1ec3b6c78 Fixed typos 2020-08-08 13:25:58 +02:00
Sascha Willems
14536c6ec7 Removed unused Android code 2020-08-06 08:02:27 +02:00
Ben Clayton
301e8abf12 Add command flag for picking between shaders
The new `-s`, `--shaders` command line flag allows you to specify whether you want to load the glsl or hlsl shaders.
Defaults to glsl.

Issue: #723
2020-06-01 12:22:28 +01:00
Sascha Willems
ab38f8b150 Code-Cleanup: All samples now use the camera class and it's matrices
Cleaned up base class
2020-04-22 20:58:24 +02:00
Sascha Willems
53846d8b1d Code cleanup 2020-04-20 22:13:51 +02:00
Sascha Willems
458c149c71 Code cleanup 2020-04-20 20:29:15 +02:00
Sascha Willems
0ca5f41308 Added missing include 2020-04-19 10:11:50 +02:00
Sascha Willems
cbe751d26e Base class cleanup and restructuring 2020-04-19 10:05:47 +02:00
Sascha Willems
bb8d4c6df1 Add default frame submission function to base class 2020-04-19 09:17:53 +02:00
Petr Kraus
2a986b6a87 Fix some whitespace 2020-03-05 21:20:42 +01:00
Sascha Willems
662d2b3464 Centralize asset path handling
Refs #470
Refs #627
2020-02-17 21:09:27 +01:00
Sascha Willems
4318c6d43e Added new functionality for passing extension structures to device creation 2019-06-10 08:46:11 +02:00
Sascha Willems
5f31c40898 Default constructor argument 2019-04-22 18:29:24 +02:00
Lionel Landwerlin
9db191f9a9 Make FPS counter more accurate
While trying to figure a discrepancy between the FPS counter from the
overlay we've introduced in Mesa [1] and the counter in the Vulkan
demos, I figured the demos are not accounting for part of the
rendering loop but rather just the amount of time spent rendering.

This changes accounts for the total amount of time between 2 frames. I
don't think any difference is visible until you reach high frame rates
of 100s or so.

[1]: https://gitlab.freedesktop.org/mesa/mesa/merge_requests/303
2019-02-23 20:51:38 +00:00
Scott Moreau
203ea178d0 wayland: Port to xdg-shell stable
Wayland compositors and clients are expected to support the xdg-shell
stable protocol over the deprecated wl_shell protocol.
2019-01-16 01:33:34 -07:00
saschawillems
69c3f62b9a Streamlined UI overlay, code cleanup
Refs #496
2018-08-31 21:15:43 +02:00
saschawillems
8a61105ec6 Reworked UI overlay class (no longer using separate render pass + submits)
Updated to support ImGui 1.62
Refs #496
2018-08-29 20:49:13 +02:00
saschawillems
19afba3f71 Base class wait fences 2018-06-03 09:38:14 +02:00