godot/servers
Arseny Kapoulkine 4e9e35b58a Fix AABB computation for position compression to not depend on vertex order
The previous computation was dependent on the vertex order in two ways:

- If the first vertex was on the AABB boundary, the AABB would be
  increased by the epsilon due to size clamping
- Every time the AABB would get expanded, we would recompute end from
  size and reconstruct size again, which resulted in slow floating point
  drift.

In isolation this may not seem like it matters, but it means that the
same mesh with a different vertex order may result in a slightly different
AABB. This can be a significant issue due to shadow meshes and their use in
depth prepass: shadow meshes reorder vertex data as part of the
deduplication process, as they append one unique position at a time and
as such remove the duplicate positions; this can result in a different
AABB which would result in a different reconstructed vertex position
during a depth pre-pass, causing mesh self-occlusion.
2024-07-03 23:53:24 -07:00
..
audio Add samples playback support 2024-06-18 11:06:31 -04:00
camera One Copyright Update to rule them all 2023-01-05 13:25:55 +01:00
debugger Reduce and prevent unnecessary random-access to List 2024-05-04 16:08:55 +02:00
display [macOS] Improve native menu open/close callbacks. 2024-06-05 20:22:41 +03:00
extensions Disable all 3D nodes, physics, and resources when compiling without 3D 2024-03-11 01:00:55 -07:00
movie_writer Add error checks for DirAccess creation. 2023-09-26 03:07:43 +01:00
navigation Add navigation path simplification 2024-04-11 12:32:21 +02:00
physics_2d fix rare physics crash 2024-06-18 02:18:11 -07:00
physics_3d fix rare physics crash 2024-06-18 02:18:11 -07:00
rendering Remove useless instantiation in RDShaderFile::parse_versions_from_text 2024-06-27 08:57:06 +02:00
text [TextServer, GDExtension] Fix building text servers as GDExtension, expose new/changed low-level methods to GDExtension API. 2024-06-12 19:30:19 +03:00
xr XR: Check for bad input in make_vrs_texture 2024-06-24 17:45:27 +02:00
audio_server.cpp Add samples playback support 2024-06-18 11:06:31 -04:00
audio_server.h Add samples playback support 2024-06-18 11:06:31 -04:00
camera_server.cpp One Copyright Update to rule them all 2023-01-05 13:25:55 +01:00
camera_server.h Enforce template syntax typename over class 2024-03-07 22:39:09 -06:00
display_server_headless.h Add stub method for mouse_get_position in headless display server 2024-06-23 00:15:02 +02:00
display_server.cpp Fix creating cursor image from AtlasTexture 2024-06-05 01:44:05 +02:00
display_server.h Fix creating cursor image from AtlasTexture 2024-06-05 01:44:05 +02:00
navigation_server_2d_dummy.h Add navigation source geometry parser callbacks 2024-04-19 12:10:57 +02:00
navigation_server_2d.cpp Add navigation source geometry parser callbacks 2024-04-19 12:10:57 +02:00
navigation_server_2d.h Add navigation source geometry parser callbacks 2024-04-19 12:10:57 +02:00
navigation_server_3d_dummy.h Add navigation source geometry parser callbacks 2024-04-19 12:10:57 +02:00
navigation_server_3d.cpp Add navigation source geometry parser callbacks 2024-04-19 12:10:57 +02:00
navigation_server_3d.h Add navigation source geometry parser callbacks 2024-04-19 12:10:57 +02:00
physics_server_2d_wrap_mt.cpp Apply additional fixes to servers' threading 2024-05-08 17:41:40 +02:00
physics_server_2d_wrap_mt.h Apply additional fixes to servers' threading 2024-05-08 17:41:40 +02:00
physics_server_2d.cpp Update PinJoint2D API with angle limits and motor speed 2023-09-26 10:29:23 +02:00
physics_server_2d.h Update PinJoint2D API with angle limits and motor speed 2023-09-26 10:29:23 +02:00
physics_server_3d_wrap_mt.cpp Apply additional fixes to servers' threading 2024-05-08 17:41:40 +02:00
physics_server_3d_wrap_mt.h Apply additional fixes to servers' threading 2024-05-08 17:41:40 +02:00
physics_server_3d.cpp Bind physics server methods related to shape margin 2024-05-19 12:28:26 +02:00
physics_server_3d.h Disable all 3D nodes, physics, and resources when compiling without 3D 2024-03-11 01:00:55 -07:00
register_server_types.cpp Add samples playback support 2024-06-18 11:06:31 -04:00
register_server_types.h One Copyright Update to rule them all 2023-01-05 13:25:55 +01:00
rendering_server.compat.inc Add antialias support for CanvasItem draw primitives 2024-05-13 19:03:31 +08:00
rendering_server.cpp Fix AABB computation for position compression to not depend on vertex order 2024-07-03 23:53:24 -07:00
rendering_server.h Add antialias support for CanvasItem draw primitives 2024-05-13 19:03:31 +08:00
SCsub [NativeMenu] Move files to the display subfolder. 2024-03-26 10:18:08 +02:00
server_wrap_mt_common.h Fix typo in preprocessor symbol 2024-06-19 22:04:29 +02:00
text_server.compat.inc Improve TextEdit/LineEdit word selection. 2024-04-22 14:02:07 +03:00
text_server.cpp [TextServer, GDExtension] Fix building text servers as GDExtension, expose new/changed low-level methods to GDExtension API. 2024-06-12 19:30:19 +03:00
text_server.h [TextServer, GDExtension] Fix building text servers as GDExtension, expose new/changed low-level methods to GDExtension API. 2024-06-12 19:30:19 +03:00
xr_server.compat.inc Rework XR Trackers to have a common ancestor. Allow creation of XRNode3D to drive node positions and visibility. 2024-04-18 20:04:01 -04:00
xr_server.cpp Apply reference frame transform to OpenXRCompositionLayer nodes 2024-05-29 07:52:54 -05:00
xr_server.h OpenXR: Change timing of xrWaitFrame and add thread safety features to OpenXR 2024-05-01 14:24:41 +10:00