godot/servers
Stuart Carnie 230adb7511 Add Persistent Buffers
This work is a heavily refactored and rewritten from TheForge's initial
code.

TheForge's original code had too many race conditions and was
fundamentally flawed as it was too easy to incur into those data races
by accident.

However they identified the proper places that needed changes, and the
idea was sound. I used their work as a blueprint to design this work.

This PR implements:

 - Introduction of UMA buffers used by a few buffers
(most notably the ones filled by _fill_instance_data).

Ironically this change seems to positively affect PC more than it does
on Mobile.

Updates D3D12 Memory Allocator to get GPU_UPLOAD heap support.

Metal implementation by Stuart Carnie.

Co-authored-by: Stuart Carnie <stuart.carnie@gmail.com>
Co-authored-by: TheForge team
2025-10-24 08:16:19 +11:00
..
audio Move server files into their subfolders 2025-09-30 19:39:39 -07:00
camera Emit format_changed on CameraFeed datatype change 2025-10-13 00:26:29 +08:00
debugger Move server files into their subfolders 2025-09-30 19:39:39 -07:00
display Remove extraneous includes from texture.h. 2025-10-10 18:39:16 +02:00
movie_writer Remove file_access.h and script_backtrace.h includes from logger.h. 2025-10-05 17:49:23 +09:00
navigation_2d Fix 2D debug templates linking 2025-10-05 04:22:49 +03:00
navigation_3d Fix 2D debug templates linking 2025-10-05 04:22:49 +03:00
physics_2d Fix 2D debug templates linking 2025-10-05 04:22:49 +03:00
physics_3d Fix 2D debug templates linking 2025-10-05 04:22:49 +03:00
rendering Add Persistent Buffers 2025-10-24 08:16:19 +11:00
text Fix indented line wrap with no spaces 2025-10-14 10:22:10 -04:00
xr Make XRPose only set name on creation, instead of on every update. 2025-10-11 20:24:23 -05:00
nav_heap.h Move server files into their subfolders 2025-09-30 19:39:39 -07:00
register_server_types.cpp Reorder registration of types, to register supertypes before subtypes. 2025-10-09 11:50:32 +02:00
register_server_types.h Style: Replace header guards with #pragma once 2025-03-07 17:33:47 -06:00
SCsub Fix 2D debug templates linking 2025-10-05 04:22:49 +03:00
server_wrap_mt_common.h Pause physics command queue during physics processing 2025-08-14 15:54:59 +02:00