summaryrefslogtreecommitdiff
path: root/drivers/vulkan/vulkan_context.cpp
AgeCommit message (Collapse)Author
2022-06-28Apply some small fixes/enhancements to the Vulkan RDPedro J. Estébanez
- Initialize queue indices to values meaning 'unset' - Remove unused parameters & members - Make texture update access flags consistent with texture copy - Fix style and pass type of some parameters - Synchronize setup-draw in flush with a semaphore - Add no current list validation to draw_list_begin_splits() - Update texture usage flags on destination of copy - Fix misuse of Vulkan flag
2022-05-03Add `get_video_adapter_api_version()` to RenderingServerHugo Locurcio
This method can be used to get the graphics API version currently in use (such as Vulkan). It can be used by projects for troubleshooting or statistical purposes.
2022-03-31Fix typos with codespellRémi Verschelde
Using codespell 2.2-dev from current git. Fix a couple incorrect uses of gendered pronouns.
2022-02-23Implementing OpenXR driverBastiaan Olij
2022-02-19vkQueueSubmit needs pWaitDstStageMask sized to waitSemaphoreCountBastiaan Olij
2022-02-18Merge pull request #58236 from bruvzg/win_min_fixRémi Verschelde
2022-02-17[Windows] Fix Vulkan driver crash on sub-window minimization.bruvzg
2022-02-17We were only getting our available shader features, now we also enabling themBastiaan Olij
2022-02-10Fix typos with codespellRémi Verschelde
Using codespell 2.2-dev from current git. Added `misc/scripts/codespell.sh` to make it easier to run it once in a while and update the skip and ignore lists.
2022-02-09Nitpicking, VK_VERSION_* have been deprecated, replaced by VK_API_VERSION_*.Bastiaan Olij
2022-01-29simplify formatting scripts, add a clang-tidy script, and run clang-tidyNathan Franke
2022-01-17Merge pull request #55020 from bruvzg/vlk_device_surface_checkRémi Verschelde
2022-01-05Add list initialization support for Vector & LocalVectorHaoyu Qiu
2022-01-04Merge pull request #55790 from Calinou/renderingserver-add-device-type-getterRémi Verschelde
Add `RenderingServer.get_video_adapter_type()` method
2022-01-03Update copyright statements to 2022Rémi Verschelde
Happy new year to the wonderful Godot community!
2021-12-24drivers/vulkan: limit pEngineName to only the engine name, without its versionEric Engestrom
It's supposed to be something stable that can be used to identify the engine (using an equality check), so having the version number in there defeats the purpose. While at it, there is no need to prefix it with a second `"GodotEngine"`, nor to copy the static C string into a C++ string to then extract a C string from it :)
2021-12-23drivers/vulkan: set the engineVersion to Godot's versionEric Engestrom
2021-12-10Add `RenderingServer.get_video_adapter_type()` methodHugo Locurcio
This can be used to distinguish between integrated, dedicated, virtual and software-emulated GPUs. This in turn can be used to automatically adjust graphics settings, or warn users about features that may run slowly on their hardware.
2021-11-23Implemented AMD's FSR as a computer shader for upscaling 3D scenesJe06jm
2021-11-22[Vulkan] Check each device capabilities before selecting it.bruvzg
Split instance and physical device selection function and move device selection to window creation, to reject devices without present capability. Add device preferred type check in discrete > integrated > virtual > cpu > other order. Add device list printout. Add command line argument to override device selection.
2021-10-28clang-format: Various fixes to comments alignment from `clang-format` 13Rémi Verschelde
All reviewed manually and occasionally rewritten to avoid bad auto formatting.
2021-10-28clang-format: Disable alignment of operands, too unreliableRémi Verschelde
Sets `AlignOperands` to `DontAlign`. `clang-format` developers seem to mostly care about space-based indentation and every other version of clang-format breaks the bad mismatch of tabs and spaces that it seems to use for operand alignment. So it's better without, so that it respects our two-tabs `ContinuationIndentWidth`.
2021-10-12Replaced NULL with nullptrM. Huri
2021-09-30Use range iterators for `Map`Lightning_A
2021-09-29Rename RID's `getornull()` to `get_or_null()`Hugo Locurcio
2021-09-14Print the Vulkan API version and device used on the same lineHugo Locurcio
This matches Godot 3.x's OpenGL renderer behavior and is more compact.
2021-09-09Expose Vulkan internal values for access from extensionsBastiaan Olij
2021-08-17Fix init code so it works properly on Vulkan 1.1 devicesBastiaan Olij
2021-08-12Use "volk" instead of statically linked Vulkan loader.bruvzg
2021-07-31Merge pull request #51103 from Calinou/vulkan-detect-intel-title-caseRémi Verschelde
Use title case instead of uppercase for Vulkan Intel GPU detection
2021-07-31Merge pull request #51108 from Calinou/vulkan-print-verboseRémi Verschelde
Move Vulkan debugging prints to verbose
2021-07-31Use title case instead of uppercase for Vulkan Intel GPU detectionHugo Locurcio
This matches how the vendor name is displayed in most places. The Apple GPU vendor was also added for the M1.
2021-07-31Move Vulkan debugging prints to verboseHugo Locurcio
These messages can now be displayed in release builds if the `--verbose` command line argument is specified, which is useful for troubleshooting.
2021-07-31Print the Vulkan device name in release builds tooHugo Locurcio
This is important information to include in bug reports for exported projects, and is consistent with the behavior found in the GLES3 and GLES2 renderers in `3.x`.
2021-07-06Restructure and reimplement vsync optionsHendrik Brucker
-Add a v-sync mode setting which allows to choose between DISABLED, ON, ADAPTIVE and MAILBOX -Removed the V-Sync via Compositor option
2021-06-30Enum constant in boolean contextK. S. Ernest (iFire) Lee
error: enum constant in boolean context [-Werror=int-in-bool-context]
2021-06-28Fix Context Validation Layer Errorsreduz
* Multisampling was wrongly selected, possibly fixes #49937 * Image semaphore acquisition is now per window, possibly fixes #41614 Please make sure to test the above two issues again, since I can't reproduce either anyway.
2021-06-13Add stereoscopic rendering through multiviewBastiaan Olij
2021-06-11Merge pull request #49506 from akien-mga/vulkan_prefer_discrete_gpuRémi Verschelde
Prefer discrete GPU over integrated one
2021-06-11Prefer discrete GPU over integrated oneBlazej Floch
This unblocks launching on Linux laptops that default to the integrated GPU which can not handle Vulkan in many instances. Ideally a manual device selection, or an option for the optimal selection strategy should be provided via CLI or config, but for the time being this will unblock the Linux devs. Partially addresses #42348 and #43714
2021-05-20Fix typos with codespellRémi Verschelde
Using codespell 2.0.0. Method: ``` $ cat > ../godot-word-whitelist.txt << EOF ang curvelinear dof doubleclick fave findn GIRD leapyear lod merchantibility nd numer ois ony que seeked synching te uint unselect webp EOF $ codespell -w -q 3 -I ../godot-word-whitelist.txt --skip="./thirdparty,*.po" $ git diff // undo unwanted changes ```
2021-05-08Remove debugging prints in the Linux DisplayServerHugo Locurcio
Some Vulkan debugging prints were also changed to be printed only in verbose mode.
2021-05-06Cleanup vulkan capabilities check and add multiview checkBastiaan Olij
2021-04-29Replace remaining uses of `NULL` with `nullptr`Rémi Verschelde
Follow-up to #38736 (these uses were likely added after this PR was merged).
2021-04-12Validation layers on AndroidSzymon Majewski
2021-04-05Merge pull request #47640 from BastiaanOlij/fix_vulkan_formatRémi Verschelde
Chose format from supported ones that we support
2021-04-05Chose format from supported ones that we supportBastiaan Olij
2021-04-05Style: Apply clang-tidy's `modernize-use-nullptr`Rémi Verschelde
2021-04-01Removed debug codeSzymon Majewski
2021-03-31Merge pull request #47250 from BastiaanOlij/check_vulkan_versionRémi Verschelde
Obtain supported Vulkan API