Age | Commit message (Collapse) | Author |
|
Fix incorrect subpass dependency initialization
|
|
Taken from https://github.com/KhronosGroup/Vulkan-Loader/pull/475.
Supersedes and reverts #43119 since the upstream change removes the need for
that custom define.
|
|
-Allows merging several 2D objects into a single draw operation
-Use current node to clip children nodes
-Further fixes to Vulkan barriers
-Changed font texture generation to white, fixes dark eges when blurred
-Other small misc fixes to backbuffer code.
|
|
They're now disabled by default, and can be enabled with the command line
argument `--vk-layers`.
When enabled, the errors about them being missing are now warnings, as
users were confused and thought this meant Vulkan is broken for them.
Fix crash in `~VulkanContext` when validation layers are disabled (exposed by
this PR since before they could not be disabled without source modification).
Also moved VulkanContext member initializations to header.
Fixes #37102.
|
|
|
|
vulkan: Sync loader, headers and glslang to sdk-1.2.154.0
|
|
Fix wrong exit code being returned
|
|
This commit moves the declaration of a local variable to ensure its
scope survives long enough; at least in some versions of GCC and LLVM
the associated memory was freed too early and thus caused issues ranging
from black screens to crashes.
|
|
-Removed normal/specular properties from nodes
-Create CanvasTexture, which can contain normal/specular channels
-Refactored, optimized and simplified 2D shaders
-Use atlas for light textures.
-Use a shadow atlas for shadow textures.
-Use both items aboves to make light rendering stateless (faster).
-Reorganized uniform sets for more efficiency.
|
|
|
|
|
|
previous patches)""
|
|
previous patches)"
|
|
|
|
Cause buffer_update to emit error if called during compute/draw list
|
|
Synchronization validation fix patch set 3 (inclusive of all previous patches)
|
|
|
|
Replace SAO implementation with MSSAO
|
|
|
|
|
|
Add a barrier to "safe" the buffer update write from previous accesses
to buffer range being updated. Remove duplicate unneed barrier.
|
|
Add additional source and dest mask bits for "from external" and "to
external" subpass dependencies (respectively) when intial and final
layouts cause implicit layout transitions.
This is a big hammer -- any transition in a given direction will create
a full barrier. Attachment specific stage and access flags could be
used instead with additional logic to deduce the prior and intended
subsequent usages.
|
|
Make pre and post barriers non-conditional on format, as there are cases
where pending operations in the GENERAL layout hazarding with clear.
|
|
Changed srcStageMask to the valid stage for post transfer barrier.
|
|
Additional synchronization fixes from hazards arising from disabling
FORCE_FULL_BARRIER.
|
|
Change the srcStageMasks and dstStageMasks for the storage texture end
draw barriers to refer to the correct stages for the use.
|
|
Add barrier for source buffer when getting. Refactor common "owner and
stage/access" code to utility function.
|
|
Added the fragment stage to the texture copy and resolve final barriers
for source and dest. As the textures could subsequently be used by the
fragment stage, this was triggering a validation error from the
pre-alpha synchronization validation.
|
|
Actually sdk-1.2.154.1 for Vulkan-Loader.
glslang is updated to bacaef3237c515e40d1a24722be48c0a0b30f75f which is the
known-good version for Vulkan-ValidationLayers 1.2.154.0.
COPYRIGHT.txt was synced with the current version of the glslang LICENSE.txt,
and `glslang/register_types.cpp` now uses the upstream definition for its
default builtin resource instead of hardcoding it.
|
|
|
|
|
|
|
|
Add override keyword to RasterizerDummy methods.
Plus cleanup unused methods, remove virtual keyword.
|
|
Same implementation as OpenBSD seems to work fine.
|
|
Add __NetBSD__ to `platform_config.h` so that it can find `alloca`
and use the proper `pthread_setname_np` format.
Rename RANDOM_MAX to avoid conflict with NetBSD stdlib.
Fixes #42145.
|
|
|
|
|
|
|
|
|
|
This code currently isn't compiled (and cannot compile).
We plan to re-add OpenGL ES-based renderer(s) in Godot 4.0 alongside Vulkan
(probably ES 3.0, possibly also a low-end ES 2.0), but the code will be quite
different so it's not relevant to keep this old Godot 3.2 code.
The `drivers/gles2` code from the `3.2` branch can be used as a reference for
a potential new implementation.
|
|
|
|
Add error message to buffer update if a compute or draw list is active.
|
|
|
|
Add VMA to iphone platform Use linkflag for iphone building to enforce static linking. Works fine with dynamic '.framework' library
Updated xcode project to use '.a' static library
|
|
The changes from #38835 were not sufficient to fix #38829, as VkClearAttachment
still had uninitialized member structs in its VkClearColor member struct.
The struct rabbit hole goes deep and trying to do validation as done in #38829
doesn't appear realistic.
|
|
Fix may be used unitialized warnings in _render_pass_create() and _draw_list_insert_clear_region().
|
|
Fix spelling & grammar in comments, docs, and messages
|
|
|
|
|
|
uninitialized device and instance.
|