Commit Graph

60764 Commits

Author SHA1 Message Date
Rémi Verschelde 9572cf5ab2
Merge pull request #86823 from dalexeev/gds-utility-func-as-callable
GDScript: Allow utility functions to be used as `Callable`
2024-01-30 17:47:50 +01:00
Rémi Verschelde 1f027f9aef
Merge pull request #86471 from dalexeev/gds-fix-pot-gen-skips-some-nodes-2
GDScript: Fix POT generator skips some nodes (part 2)
2024-01-30 17:47:44 +01:00
Rémi Verschelde 6a126b0934
Merge pull request #86180 from Riteo/wayland-squashed
Add Wayland support (squashed review edition)
2024-01-30 17:47:38 +01:00
Rémi Verschelde a8cfd1436a
Merge pull request #86176 from dalexeev/gds-fix-type-highlighting
GDScript: Fix type highlighting
2024-01-30 17:47:33 +01:00
Rémi Verschelde 2edfdace76
Merge pull request #83220 from dalexeev/gds-highlight-code-regions
GDScript: Highlight code region comments
2024-01-30 17:47:23 +01:00
Yuri Sizov 7496f99060 Create a MainScreenButton theme variation
This turns custom font theme properties into a proper
variation, which makes applying it simpler.
2024-01-30 17:35:46 +01:00
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
Rémi Verschelde 10445d80d8
Sync controller mappings DB with SDL2 community repo
Synced with gabomdq/SDL_GameControllerDB@232c738ce0
2024-01-30 15:14:27 +01:00
Rémi Verschelde dec635119e
mbedtls: Update to upstream version 2.28.7 2024-01-30 14:09:13 +01:00
bruvzg ffdf8084c0
Use raw strings for D3D12 install messages. 2024-01-30 11:13:12 +02:00
lawnjelly 4577dfdb67 Shadow volume culling and tighter shadow caster culling
Existing shadow caster culling takes no account of the camera.
This PR adds the highly encapsulated class RenderingLightCuller which can cut down the casters in the shadow volume to only those which can cast shadows on the camera frustum.
2024-01-30 08:38:31 +00:00
Aaron Franke 52aa5668fe
Fix AudioStreamPlayer3D autoplay and internal notifications 2024-01-30 00:56:12 -06:00
Micky 25c0c95960 Mention and deprecate InputEventJoypadButton's pressure 2024-01-29 23:38:36 +01:00
Rémi Verschelde 51991e2014
Merge pull request #84674 from m4gr3d/add_flag_to_run_scons_from_gradle
Add parameter to allow generation of the Godot native shared libraries from gradle
2024-01-29 23:24:05 +01:00
Rémi Verschelde 9ab5cedef6
Merge pull request #87712 from akien-mga/revert-gdscript-uid-annotations-for-now
Revert "Add UID support to GDScript files" (for now)
2024-01-29 21:34:59 +01:00
Rémi Verschelde 37e5a71f5d
Merge pull request #87710 from AThousandShips/dummy_free
Free dummy renderer objects
2024-01-29 21:34:36 +01:00
Rémi Verschelde 86f6811752
Merge pull request #87701 from KoBeWi/extratreestial_tweens
Allow `Node.create_tween()` outside SceneTree
2024-01-29 21:34:13 +01:00
Rémi Verschelde 6809791fee
Merge pull request #87553 from clayjohn/GLES3-shader-compilation
Significantly improve the speed of shader compilation in compatibility backend
2024-01-29 21:33:49 +01:00
Rémi Verschelde 1d3722a6aa
Merge pull request #87170 from AThousandShips/run_fix
Fix reloading current scene forgetting path
2024-01-29 21:33:26 +01:00
Rémi Verschelde b65c495d6e
Merge pull request #86845 from RandomShaper/no_load_regress
Avoid regressing in progress reporting in resource load
2024-01-29 21:33:00 +01:00
Rémi Verschelde 6a47a53273
Merge pull request #86765 from reduz/filesystem-to-bottom
Allow to move FileSystem dock to bottom and drag resources across bottom docks
2024-01-29 21:32:35 +01:00
Rémi Verschelde 6c2f412cc7
Merge pull request #84760 from KoBeWi/ultimate_get_property_list_reloaded
Fetch override list from ThemeDB
2024-01-29 21:32:10 +01:00
Rémi Verschelde 64ddf1ff0c
Merge pull request #79436 from Calinou/textureregion-increase-max-zoom
Extend minimum/maximum zoom level of TextureRegion editor
2024-01-29 21:31:42 +01:00
Rémi Verschelde 745f8e112f
Revert "Add UID support to GDScript files"
This reverts commit c7f68a27ec.

We still think GDScript files need UIDs to allow safe refactoring,
but we're still debating what form those should take exactly.

So far there seems to be agreement that it shouldn't be done via an
annotation as implemented here, so we're reverting this one for now,
to revisit the feature in a future PR.
2024-01-29 21:00:26 +01:00
kit 6e965f6c83 Allow tab deselection 2024-01-29 14:30:34 -05:00
kobewi 0de8a736da Allow Node.create_tween() outside SceneTree 2024-01-29 20:18:43 +01:00
A Thousand Ships 666daf47c3
Free dummy renderer objects
These leaked during tests etc.
2024-01-29 19:28:29 +01:00
Matthew Edwards 7565d1f3ab Push p_original_path into load_paths_stack and sub_tasks instead of p_path. 2024-01-29 17:27:57 +00:00
kobewi 7d6ded2027 Fetch override list from ThemeDB 2024-01-29 16:41:57 +01:00
Juan Linietsky 000367893a Ability to move FileSystem dock to bottom
* Allows moving the filesystem dock to the bottom
* Added ability to drag resources across bottom docks
2024-01-29 15:15:38 +01:00
Hugo Locurcio 085629a7c9
Extend minimum/maximum zoom level of TextureRegion editor
This also applies a similar change to the SpriteFrames editor.
2024-01-29 14:58:40 +01:00
Rémi Verschelde fa48a51183
Merge pull request #87688 from AThousandShips/what_is_this
Remove unnecessary `this->` expressions
2024-01-29 13:18:09 +01:00
Rémi Verschelde e59e58a68a
Merge pull request #87686 from radzo73/get_button_color
[TreeItem] Add `get_button_color()`
2024-01-29 13:18:05 +01:00
Rémi Verschelde 6305277312
Merge pull request #87670 from RandomShaper/d3d12_16bit
Direct3D 12: Query support for 16-bit operations
2024-01-29 13:18:00 +01:00
Rémi Verschelde f0144d7f45
Merge pull request #87669 from bs-mwoerner/csharp_deadlock
Fix possible deadlock when creating scripts during a background garbage collection
2024-01-29 13:17:56 +01:00
Rémi Verschelde 5c61803971
Merge pull request #87668 from bruvzg/add_baseline_offset
[TextServer / Font] Add support for customizable baseline offset.
2024-01-29 13:17:52 +01:00
Rémi Verschelde 9a789adff2
Merge pull request #87632 from Sauermann/fix-remove-unused-group-variable
Remove unused internal Variable `Viewport::gui_input_group`
2024-01-29 13:17:48 +01:00
Rémi Verschelde 074b4eb770
Merge pull request #87627 from RandomShaper/one_more_undef
Undefine yet another macro from Windows headers
2024-01-29 13:17:45 +01:00
Rémi Verschelde 604f8b093e
Merge pull request #87624 from bruvzg/dx12_old_mingw
[D3D12] Add support for building with pre-11.0.0 MinGW versions, make PIX runtime opt-in.
2024-01-29 13:17:41 +01:00
Rémi Verschelde 1fdee4f6f5
Merge pull request #87618 from DarioSamo/lightmapper_samplerless
Do not use a linear sampler on lightmapper when retrieving grid data.
2024-01-29 13:17:37 +01:00
Rémi Verschelde 75d2cf3075
Merge pull request #87616 from ryevdokimov/cancel-transformation-2d
Add cancel transformation shortcut to 2D to match 3D
2024-01-29 13:17:33 +01:00
Rémi Verschelde 15c78ae8cc
Merge pull request #87612 from capnm/240126_thorvg_from_v0.12.1_to_0.12.3
ThorVG: update from v0.12.1 to v0.12.3
2024-01-29 13:17:29 +01:00
Rémi Verschelde 563364d93e
Merge pull request #87603 from jsjtxietian/_property_get_revert
Fix `ShaderMaterial::_property_get_revert` crash when given non-existing `p_name`
2024-01-29 13:17:25 +01:00
Rémi Verschelde 78680cdebc
Merge pull request #87572 from RandomShaper/d3d12_custom_dbg_print
Direct3D 12: Fix and enable custom debug printing
2024-01-29 13:17:21 +01:00
Rémi Verschelde ef9cb3dfa5
Merge pull request #87535 from Mickeon/scene-tree-configuration-warnings-cleanup
Improve appearance of Node configuration warnings
2024-01-29 13:17:17 +01:00
Rémi Verschelde 8202a73c73
Merge pull request #87512 from DarioSamo/rd_graph_fixes
Fix validation errors by improving stage and slice tracking behavior of RenderingDeviceGraph.
2024-01-29 13:17:12 +01:00
Rémi Verschelde a248e8c78d
Merge pull request #87502 from mihe/soft-body-bindings
Bind physics server methods related to `SoftBody3D`
2024-01-29 13:17:09 +01:00
Rémi Verschelde 68957d2944
Merge pull request #87445 from KoBeWi/expand_the_Control_empire
Clarify sizing of main screen plugins
2024-01-29 13:17:05 +01:00
Rémi Verschelde c1dbaa73a6
Merge pull request #87393 from stuartcarnie/bugfix
Use `os_unfair_lock` on Apple platforms
2024-01-29 13:17:00 +01:00
Rémi Verschelde 061c776228
Merge pull request #87381 from YuriSizov/core-sneaky-properties
Better hide internal properties from users
2024-01-29 13:16:55 +01:00