441 Commits

Author SHA1 Message Date
mafiesto4 5dac5d3f2d Refactor GPU Debug Layers to be manually activated with -gpudebug
Debug builds don't activate it by default. Can be sued in both Debug and Development builds.
`GPU_ENABLE_DIAGNOSTICS` renamed to `GPU_ENABLE_DEBUG_LAYER`
`GPU_ENABLE_WINDOW_SRV` renamed to `GPU_ENABLE_WINDOW_SRV`
`GPU_USE_SHADERS_DEBUG_LAYER` renamed to `GPU_ENABLE_SHADERS_DEBUG_LAYER`
2026-05-19 15:26:01 +02:00
mafiesto4 9e96206d67 Merge remote-tracking branch 'origin/master' into 1.13 2026-05-19 10:55:14 +02:00
mafiesto4 5058bfc296 Merge remote-tracking branch 'origin/1.12' into 1.12 2026-05-13 22:40:54 +02:00
mafiesto4 746bd2273f Fix memory alloc when renaming GPU resource on Vulkan 2026-05-12 17:40:09 +02:00
mafiesto4 ec9f05fe11 Fix memory alloc when renaming GPU resource on Vulkan 2026-05-12 17:10:28 +02:00
mafiesto4 dcccc4687d Fix swapchain creation on the latest iOS to run on UI thread 2026-05-11 22:27:21 +02:00
mafiesto4 0c1af2f243 Fix various rendering elements with Reversed Z enabled and simplify code
#2684
2026-05-11 18:26:21 +02:00
mafiesto4 7127ccda37 Fix depth bounds in reversed Z
#2684
2026-05-08 09:02:17 +02:00
mafiesto4 bdabcd5e43 Fix regression to properly resume render pass when flushing barriers mid-pass
141a8de0da
2026-05-07 09:03:22 +02:00
mafiesto4 1079791bed Add rendering stats for Data Upload 2026-05-07 00:02:33 +02:00
mafiesto4 9c5daf419b Fix default shadow depth bias values and control them based on shadow resolution/quality mix 2026-05-06 12:39:15 +02:00
mafiesto4 75bd206416 Fix regression crash on Vulkan when clearing many textures at once 2026-04-28 20:19:35 +02:00
mafiesto4 442cb8f2dd Minor improvements 2026-04-28 00:25:31 +02:00
mafiesto4 913892f3c1 Fix unnecessary memory allocations within D3D object debug name assignment 2026-04-27 16:09:49 +02:00
mafiesto4 c33ada2715 Fix unnecessary memory allocations within D3D object debug name assignment 2026-04-27 14:27:32 +02:00
mafiesto4 881bc4d629 Fix crash on Vulkan when constant buffer is missing 2026-04-24 12:21:36 +02:00
mafiesto4 468e05c6e8 Fix crash on Vulkan when constant buffer is missing 2026-04-24 12:20:32 +02:00
mafiesto4 c0f52235c6 Fix compilation on Xbox with new D3D12MA lib used 2026-04-24 11:21:42 +02:00
mafiesto4 804315bb3e Add VSync support to Vulkan 2026-04-23 20:25:36 +02:00
mafiesto4 0cacc58b53 Fix minor issues in D3D12 2026-04-23 18:39:09 +02:00
mafiesto4 7437b69d52 Add GPUMemoryStats for GPU video memory stats
Add new `Total/GPU` category to memory profiler.
Implement for D3D12 and Vulkan with allocators.
2026-04-23 18:38:47 +02:00
mafiesto4 f5f4fb29f2 Cleanup code and disable unused Json/Dump features from D3D12MA 2026-04-23 17:13:30 +02:00
mafiesto4 33617a702a Add D3D12MemoryAllocator for resource allocations on DX12
v3.1.0
2026-04-23 17:12:26 +02:00
mafiesto4 84b53bb9c8 Optimize various rendering effects with GPUDrawPass 2026-04-23 14:30:02 +02:00
mafiesto4 f41d01f4a9 Optimize Vulkan render passes with a new GPUDrawPass to manually control attachment operations in higher-level API 2026-04-23 10:18:13 +02:00
mafiesto4 141a8de0da Optimize Vulkan texture clears with render pass attachments clear operation 2026-04-23 09:44:31 +02:00
mafiesto4 f85836d090 Add logging timeout size on Vulkan fence wait fail 2026-04-20 09:47:13 +02:00
mafiesto4 cf319876e6 Fix build error on missing Emscripten SDK to be more usable 2026-04-18 19:55:37 +02:00
mafiesto4 d0ac31c02b Fix incorrect shader sample support for WebGPU texture formats from Tier1 that are only unfilterable-float for shader load-only 2026-04-17 17:43:03 +02:00
mafiesto4 2636c5e82f Fix crash on Vulkan buffer upload page logic
#3931
2026-04-15 14:20:56 +02:00
mafiesto4 3f55833939 Fix crash on Vulkan when vkGetPhysicalDeviceSurfaceFormatsKHR returns VK_INCOMPLETE 2026-04-14 16:38:03 +02:00
mafiesto4 095cfcdde2 Fix WebGPU crash when creating buffer with init data that is not aligned to 4 bytes 2026-04-09 14:47:21 +02:00
mafiesto4 7193f8dcab Fix empty bind group to not be static due to WebGPU issues 2026-04-03 17:07:14 +02:00
mafiesto4 0e161c6ec1 Fixes for Web 2026-04-03 16:45:16 +02:00
mafiesto4 e000a6727e Fix format support on Vulkan 2026-03-24 23:58:01 +01:00
mafiesto4 45feda8f07 Fix Firefox and Safari bug with missing bind group layout 2026-03-24 16:59:49 +01:00
mafiesto4 88fe9ba186 Fix WebGPU crashes when resizing canvas 2026-03-23 18:37:58 +01:00
mafiesto4 b756c16018 Add renaming underlying GPU resource (eg. for pooled render targets) 2026-03-23 18:37:18 +01:00
mafiesto4 a5ec8565e4 Refactor WebGPU ASYNCIFY to use JSPI
Smaller build size and better performance. Also, link time goes down a lot
2026-03-18 23:08:39 +01:00
mafiesto4 ed3a827b5f Implement GPUDeviceWebGPU::WaitForGPU 2026-03-16 16:41:39 +01:00
mafiesto4 427f4647fc Fix various issues in WebGPU backend 2026-03-16 16:39:18 +01:00
mafiesto4 3cfa110a48 Merge remote-tracking branch 'origin/master' into 1.12
# Conflicts:
#	Source/Editor/Options/InterfaceOptions.cs
#	Source/Engine/Audio/OpenAL/AudioBackendOAL.cpp
#	Source/Engine/Graphics/Graphics.cpp
#	Source/Engine/GraphicsDevice/Vulkan/CmdBufferVulkan.cpp
#	Source/Engine/GraphicsDevice/Vulkan/CmdBufferVulkan.h
#	Source/Engine/GraphicsDevice/Vulkan/Config.h
#	Source/Engine/GraphicsDevice/Vulkan/GPUDeviceVulkan.cpp
#	Source/Engine/GraphicsDevice/Vulkan/GPUDeviceVulkan.h
#	Source/Engine/GraphicsDevice/Vulkan/QueueVulkan.cpp
2026-03-10 15:08:43 +01:00
mafiesto4 c4342b0a20 Add SPIR-V compression with LZ4 of Vulkan shaders (35% avg smaller) 2026-03-07 23:24:40 +01:00
mafiesto4 b408a8ce21 Fix WebGPU in non-Debug builds 2026-03-06 14:45:00 +01:00
mafiesto4 94789712e8 Add basis_universal support for textures on Web
Add implementation for loading interchange texture formats with multiple runtime formats support
2026-03-06 11:09:29 +01:00
mafiesto4 414c650550 Fixes for WebGPU 2026-03-04 22:00:50 +01:00
mafiesto4 377d5c00aa Add Compute shaders support to WebGPU 2026-03-04 21:27:42 +01:00
mafiesto4 aff8090adb Add LZ4 compression to WebGPU shaders 2026-03-04 09:15:53 +01:00
mafiesto4 10bcf9c9a3 Fix Vulkan timeout to be larger (5s)
#3967
2026-03-03 23:29:10 +01:00
mafiesto4 ad3c2be510 Add timer and occlusion queries support to WebGPU 2026-03-03 21:35:42 +01:00