godot/modules
Riteo 7e0f7d3abd Add Wayland support
Not everything is yet implemented, either for Godot or personal
limitations (I don't have all hardware in the world). A brief list of
the most important issues follows:

- Single-window only: the `DisplayServer` API doesn't expose enough
information for properly creating XDG shell windows.

- Very dumb rendering loop: this is very complicated, just know that
the low consumption mode is forced to 2000 Hz and some clever hacks are
in place to overcome a specific Wayland limitation. This will be
improved to the extent possible both downstream and upstream.

- Features to implement yet: IME, touch input, native file dialog,
drawing tablet (commented out due to a refactor), screen recording.

- Mouse passthrough can't be implement through a poly API, we need a
rect-based one.

- The cursor doesn't yet support fractional scaling.

- Auto scale is rounded up when using fractional scaling as we don't
have a per-window scale query API (basically we need
`DisplayServer::window_get_scale`).

- Building with `x11=no wayland=yes opengl=yes openxr=yes` fails.

This also adds a new project property and editor setting for selecting the
default DisplayServer to start, to allow this backend to start first in
exported projects (X11 is still the default for now). The editor setting
always overrides the project setting.

Special thanks to Drew Devault, toger5, Sebastian Krzyszkowiak, Leandro
Benedet Garcia, Subhransu, Yury Zhuravlev and Mara Huldra.
2024-01-30 16:44:47 +01:00
..
astcenc
basis_universal Fix BasisUniversal ETC RA_AS_RG transcoding 2024-01-07 12:53:01 +01:00
bmp Fix some typos in source. 2023-10-04 19:55:11 +09:00
camera Style: Harmonize header includes in modules 2023-06-15 14:35:45 +02:00
csg Update deferred calls to use Callables 2024-01-09 16:11:47 +01:00
cvtt Style: Harmonize header includes in modules 2023-06-15 14:35:45 +02:00
dds Support unspecified linear size in DDS files 2023-12-19 16:42:10 -05:00
enet Merge pull request #80182 from mikemar10/mikemar10/update_documentation_enetconnection_eventreceive 2023-10-13 11:43:11 +02:00
etcpak Merge pull request #86313 from BlueCube3310/etc2-r-rg 2024-01-29 13:16:34 +01:00
freetype UWP: Remove platform port, needs to be redone from scratch for 4.x 2023-09-07 15:01:59 +02:00
gdscript Revert "Add UID support to GDScript files" 2024-01-29 21:00:26 +01:00
glslang Only build glslang if Vulkan or Direct3D 12 rendering is enabled 2024-01-11 00:42:56 +01:00
gltf Merge pull request #87688 from AThousandShips/what_is_this 2024-01-29 13:18:09 +01:00
gridmap Reorganize code related to editor theming 2024-01-16 11:57:45 +01:00
hdr
jpg Merge pull request #84546 from Rubonnek/fix-jpg-save-bugs 2024-01-04 14:26:04 +01:00
jsonrpc Style: Harmonize header includes in modules 2023-06-15 14:35:45 +02:00
ktx SCons: Make ktx module require basis_universal 2023-08-19 16:49:29 +02:00
lightmapper_rd Do not use a linear sampler on lightmapper when retrieving grid data. 2024-01-26 11:36:21 -03:00
mbedtls [Modules] Replace `ERR_FAIL_COND` with `ERR_FAIL_NULL` where applicable 2023-09-26 16:44:52 +02:00
meshoptimizer Style: Harmonize header includes in modules 2023-06-15 14:35:45 +02:00
minimp3 Implement audio stream playback parameters. 2024-01-16 10:31:52 +01:00
mobile_vr Doctool: Remove version attribute from XML header 2023-07-06 10:08:21 +02:00
mono Fixed ~CSharpScript() holding on to a mutex longer than necessary, creating potential for a deadlock. 2024-01-28 21:28:14 +01:00
msdfgen
multiplayer [MP] Handle cleanup of "scene cache" nodes 2024-01-18 21:18:54 +01:00
navigation Remove unnecessary `this->` expressions 2024-01-29 09:59:18 +01:00
noise Reorganize code related to editor theming 2024-01-16 11:57:45 +01:00
ogg fix `next_ogg_packet` never returning false 2023-12-10 02:47:52 -08:00
openxr Add Wayland support 2024-01-30 16:44:47 +01:00
raycast Fix RaycastOcclusionCull World3D scenario memory leak 2023-09-26 21:53:17 +03:00
regex Fixed RegEx search_all for zero length matches/lookahead/lookbehind 2023-12-08 17:54:58 +00:00
squish Fix squish DXT5 RA-As-RG channel swapping 2023-12-09 18:07:25 +01:00
svg Add THREADS_ENABLED macro in order to compile Godot to run on the main thread 2024-01-17 13:58:29 -05:00
text_server_adv [TextServer / Font] Add support for customizable baseline offset. 2024-01-28 13:26:49 +02:00
text_server_fb [TextServer / Font] Add support for customizable baseline offset. 2024-01-28 13:26:49 +02:00
tga
theora Extract and reorganize texture resource classes 2023-07-14 20:04:21 +02:00
tinyexr Fix memory leak on error paths in tinyexr loader 2023-11-17 17:40:26 +11:00
upnp [Modules] Replace `ERR_FAIL_COND` with `ERR_FAIL_NULL` where applicable 2023-09-26 16:44:52 +02:00
vhacd Style: Harmonize header includes in modules 2023-06-15 14:35:45 +02:00
vorbis Implement audio stream playback parameters. 2024-01-16 10:31:52 +01:00
webp Fix crash when saving compressed image as JPG & WebP 2023-11-12 00:15:49 +08:00
webrtc Avoid punning enum names in documentation 2023-11-09 17:16:30 +08:00
websocket Merge pull request #79407 from zaevi/fix_web_websocket-close-reason 2023-10-13 11:42:41 +02:00
webxr Add MSAA support for WebXR 2023-12-11 09:01:24 -06:00
xatlas_unwrap Style: Harmonize header includes in modules 2023-06-15 14:35:45 +02:00
zip Fix ZIPPacker storing file permissions unexpectedly 2024-01-09 13:55:34 +08:00
SCsub Allow detecting when building as an engine module 2024-01-06 01:19:29 -06:00
modules_builders.py
register_module_types.h