Commit Graph

226 Commits

Author SHA1 Message Date
Wojtek Figat
1f56c75821 Minor fixes 2025-09-09 15:26:03 +02:00
Wojtek Figat
42b542d190 Improve recent changes to memory barriers on Vulkan 2025-09-07 00:17:11 +02:00
Wojtek Figat
857b0c5ac3 Fix various graphics issues detected by Vulkan Validation Layers on Android 2025-09-06 23:32:54 +02:00
Wojtek Figat
831fb0f442 Optimize textures/buffers uploading on Vulkan with page allocator 2025-09-04 21:38:07 +02:00
Wojtek Figat
f1ecbf828e Fix debug check on Vulkan backbuffer texture usage 2025-09-03 22:11:48 +02:00
Wojtek Figat
cdff7708fb Add automatic periodic Vulkan Pipeline State Cache serialization 2025-08-12 10:25:02 +02:00
Wojtek Figat
b4d501cd6a Add OcclusionQueryPools to Vulkan and move code to cpp file 2025-08-12 10:21:51 +02:00
Wojtek Figat
9cf9fae453 Add Vulkan device cache customization per-platform and reuse code 2025-08-12 00:09:54 +02:00
Wojtek Figat
1915e1e7f4 Optimize compute shader pipeline binding on D3D12 and Vulkan when unchanged 2025-08-09 23:58:15 +02:00
Wojtek Figat
b5a431d2f5 Add explicit GPU resource transitions, memory and compute barriers 2025-08-09 23:57:43 +02:00
Wojtek Figat
cf9c203855 Various optimizations 2025-08-06 18:48:18 +02:00
Wojtek Figat
2730d63257 More build fixes 2025-08-02 21:50:09 +02:00
Wojtek Figat
31764d6d4e Fix crash on memory access in Vulkan descriptor set data 2025-08-02 17:56:26 +02:00
Wojtek Figat
846a0b5685 Fix PSO init to release old data on recreation 2025-07-31 15:08:38 +02:00
Wojtek Figat
a53a438c3c Fix to use static VkInstance 2025-07-31 12:10:42 +02:00
Wojtek Figat
5dc4ebade1 Fix Vulkan perf tracing with Tracy on Switch 2025-07-30 23:25:27 +02:00
Wojtek Figat
5e4d564338 Add **GPU profiling support to Tracy integration** 2025-07-30 19:08:45 +02:00
Wojtek Figat
17c0892ff1 Add debug name for PSO catching on D3D12/Vulkan during profiling incl. Development builds 2025-07-28 23:08:26 +02:00
Wojtek Figat
af0ea65d78 Add option to disable pipeline cache on specific Vulkan platforms 2025-07-24 12:20:09 +02:00
Wojtek Figat
6763436eff Add logging missing instance layer on Vulkan 2025-07-15 20:10:01 +02:00
Wojtek Figat
e9835766bc Add red color to Tracy profiler zones that cause CPU waiting to improve profiling 2025-06-11 14:56:43 +02:00
Wojtek Figat
9d8e75caa3 Fix various code to improve quality 2025-06-06 11:19:32 +02:00
Wojtek Figat
03d52d4eb9 Add support for building engine without logging 2025-05-28 04:05:12 +02:00
Wojtek Figat
c639a3103c Add memory profiling events to the main areas of the engine 2025-05-22 04:47:01 +02:00
Wojtek Figat
66dcfafa2e Fix Vulkan descriptor sets pooling 2025-05-22 04:42:01 +02:00
Wojtek Figat
9c3fd052cd Remove copyright year from source files and update to 2025 2025-04-07 19:22:21 +02:00
Wojtek Figat
bc4f3668fe Merge remote-tracking branch 'origin/master' into 1.10
# Conflicts:
#	Source/Engine/Core/Math/Vector3.cpp
#	Source/Engine/Core/Math/Vector3.h
#	Source/Engine/GraphicsDevice/Vulkan/GPUContextVulkan.cpp
#	Source/Engine/GraphicsDevice/Vulkan/GPUDeviceVulkan.cpp
#	Source/Engine/GraphicsDevice/Vulkan/GPUDeviceVulkan.h
2025-03-09 09:23:42 +01:00
Wojtek Figat
8a52fa257b Add logging draw event into in Vulkan error 2025-03-08 14:29:36 +01:00
Wojtek Figat
fef967d4a0 Fix crash on Vulkan when binding dummy buffer as missing uniform buffer
#3000
2025-03-08 14:28:47 +01:00
Wojtek Figat
84f6667105 Fix missing MoltenVK error to be logged only once 2025-03-07 12:52:45 +01:00
Wojtek Figat
0fa88b23c6 Add DriverVersion to GPUAdapter for checking on old GPU drivers 2025-03-07 11:39:54 +01:00
Wojtek Figat
a6fb651ff4 Merge remote-tracking branch 'origin/master' into 1.10
# Conflicts:
#	Source/Engine/Graphics/Materials/MaterialShader.h
2025-02-18 09:19:59 +01:00
Wojtek Figat
04dde7a3f2 Add warnings on incorrect GPUBuffer or GPUTexture usage when binding to GPUContext (in non-release builds) 2025-01-30 22:03:21 +01:00
Wojtek Figat
44fae3838e Add GPUResourceUsage.Staging for both CPU read/write access 2025-01-30 20:39:04 +01:00
Wojtek Figat
d501018feb Add improved GPU crashes reporting 2025-01-24 22:56:52 +01:00
Wojtek Figat
80a44b5f5c Remove old code 2025-01-24 11:08:31 +01:00
Wojtek Figat
e75d7ad257 Fix compilation warnings 2025-01-12 20:30:43 +01:00
Wojtek Figat
99788e4743 More fixes for Vulkan rendering to be on pair with DirectX when it comes to accessing missing vertex buffer components 2025-01-09 21:46:22 +01:00
Wojtek Figat
1f294605a3 Add more Vulkan memory layout safety stages 2025-01-08 18:11:47 +01:00
Wojtek Figat
2b2ace0d00 Fixes for Vulkan backend after recent changes 2025-01-08 18:09:45 +01:00
Wojtek Figat
7aa240e5eb Add vertex shader input layout reading via shader compiler reflection to handle missing vertex elements binding when explicit layout got deprecated 2025-01-07 23:26:06 +01:00
Wojtek Figat
933fac6c13 Add Slice to Span and sue it to make code cleaner 2025-01-05 17:41:27 +01:00
Wojtek Figat
4f42fb2302 Update other graphics apis to match missing vertex shader inputs merging 2025-01-04 10:55:55 +01:00
Wojtek Figat
7b7dd9d142 Improve GPU vertex layout binding in case of missing element from the mesh 2025-01-03 01:09:25 +01:00
Wojtek Figat
80299c8552 Add stride to GPUVertexLayout 2024-12-17 15:58:26 +01:00
Wojtek Figat
b3f37ca041 Refactor Vertex Shader input vertex layout to use GPUVertexLayout defined on Vertex Buffer rather than Vertex Shader
#3044 #2667
2024-12-15 22:10:45 +01:00
Wojtek Figat
666efb7675 Fix incorrect dummy GPU Buffer format when binding missing resource to Vulkan descriptor 2024-12-13 14:56:20 +01:00
Wojtek Figat
fc4e6f4972 Add GPUVertexLayout to graphics backends 2024-12-13 09:20:01 +01:00
Wojtek Figat
9d70fd82d6 Merge remote-tracking branch 'origin/master' into 1.10
# Conflicts:
#	Source/Engine/Networking/NetworkReplicator.cpp
2024-11-22 16:31:18 +01:00
Wojtek Figat
a890326b82 Fix blend states and blend factor usage on Vulkan 2024-11-20 16:30:13 +01:00