Commit graph

9470 commits

Author SHA1 Message Date
Mikael Hermansson
06f2f1ecbc Bind physics server methods related to SoftBody3D 2024-01-26 17:15:52 +01:00
Mel Collins
8406e60522 Add InputEventKey.location to tell left from right
This adds a new enum `KeyLocation` and associated property
`InputEventKey.location`, which indicates the left/right location of key
events which may come from one of two physical keys, eg. Shift, Ctrl.

It also adds simulation of missing Shift KEYUP events for Windows.
When multiple Shifts are held down at the same time, Windows natively
only sends a KEYUP for the last one to be released.
2024-01-26 14:42:28 +01:00
Rémi Verschelde
73419e645b
Merge pull request #87523 from skyace65/Minor-Doc-fixes
Fix several minor class reference issues
2024-01-26 11:47:01 +01:00
Rémi Verschelde
62c87dc83e
Merge pull request #87444 from Mickeon/documentation-XROrigin3D-tweaks
Tweak XROrigin3D documentation
2024-01-26 11:45:01 +01:00
Rémi Verschelde
1ce40ebb44
Merge pull request #87386 from clayjohn/GLES3-lightmap-bake
Add GLES3 infrastructure for lightmap baking in the compatibility backend
2024-01-26 11:44:37 +01:00
Yuri Sizov
474011ac06 Merge pull request #87543 from akien-mga/version-remove-year
Remove now unused `year` member from `version.py`
2024-01-25 16:27:21 +01:00
Yuri Sizov
68d5043e88 Merge pull request #87541 from clayjohn/TextureRD-property
Avoid saving the texture_rd_rid property of TextureRD resources
2024-01-25 16:27:17 +01:00
Yuri Sizov
672b034076 Merge pull request #87303 from bruvzg/fd_options_no_editor
[Native File Dialog] Add support for adding custom options to the dialogs (w/o editor changes).
2024-01-25 16:26:58 +01:00
Rémi Verschelde
e0dc23367c
Remove now unused year member from version.py
We changed copyright to use "present" for the current year, so we no
longer need to hardcode this and (like now) forget to bump it yearly.
2024-01-25 15:08:34 +01:00
clayjohn
efb1cbaad4 Add GLES3 infrastructure for lightmap baking in the compatibility backend 2024-01-24 17:13:30 -08:00
clayjohn
c6316bff65 Avoid saving the texture_rd_rid property of TextureRD resources
RIDs do not persist between runs, so they should not be saved
2024-01-24 10:34:51 -08:00
Micky
552403d581 Tweak XROrigin3D documentation 2024-01-24 16:53:09 +01:00
Yuri Sizov
a32a2eaedc Merge pull request #87417 from AThousandShips/tree_clear
Use callable for `TreeItem` custom draw
2024-01-24 14:08:36 +01:00
Yuri Sizov
d454fccdb3 Merge pull request #87395 from mrcdk/popupmenu_get_state
Expose `PopupMenu` `get_item_multistate()` and `set/get_item_multistate_max()`
2024-01-24 14:08:32 +01:00
Yuri Sizov
412f5b3422 Merge pull request #87353 from OverloadedOrama/max-undo-steps
Implement maximum undo steps in UndoRedo
2024-01-24 14:08:25 +01:00
Yuri Sizov
ea6e20253b Merge pull request #87235 from dsnopek/openxr-local-floor
Add support for OpenXR local floor extension
2024-01-24 14:08:17 +01:00
Yuri Sizov
f062d7294e Merge pull request #87156 from DevPoodle/depth-stencil-descriptions
Add descriptions to the remaining properties of RDPipelineDepthStencilState
2024-01-24 14:08:12 +01:00
Yuri Sizov
7f2d493b0e Merge pull request #87047 from Mickeon/documentation-missing-signals
Add missing descriptions to remaining signals
2024-01-24 14:08:08 +01:00
Yuri Sizov
e8f33a74ff Merge pull request #81689 from AThousandShips/compress_doc
Clarify `PackedByteArray.decompress*` limitations with external data
2024-01-24 14:07:41 +01:00
Yuri Sizov
79d818478f Merge pull request #79813 from AThousandShips/callable_doc
Clarify that `Callable` will not be encoded with `var_to_bytes`
2024-01-24 14:07:36 +01:00
bruvzg
a8f521bcad
[Native File Dialog] Add support for adding custom options to the dialogs.
Add support for adding custom options (checkboxes and optionboxes) to the dialogs (both native and built-in).
2024-01-24 15:00:31 +02:00
skyace65
ed20e32f06 Fix several minor class reference issues 2024-01-23 21:30:43 -05:00
David Snopek
a8690cbeed Add support for OpenXR local floor extension 2024-01-23 09:19:09 -06:00
Micky
8f10d7dd19 Add missing descriptions to remaining signals. 2024-01-23 15:04:06 +01:00
A Thousand Ships
257d03681c
Use callable for TreeItem custom draw
Deprecating old functionality
2024-01-23 12:07:43 +01:00
Yuri Sizov
e89c9b50ad Merge pull request #87373 from Calinou/add-log-file-cli-argument
Add `--log-file` command line argument to write output log to a file
2024-01-22 20:39:21 +01:00
Yuri Sizov
3755b7286c Merge pull request #87332 from AThousandShips/scene_saved
[Editor] Add `EditorPlugin::scene_saved` signal
2024-01-22 20:39:07 +01:00
Yuri Sizov
e95456b7f3 Merge pull request #86073 from m4rr5/add_reflection_mask
Add a reflection mask to the reflection probes
2024-01-22 20:38:37 +01:00
Emmanouil Papadeas
c73bfd5d81 Implement maximum undo steps in UndoRedo 2024-01-22 21:38:10 +02:00
mrcdk
c9bdccf7f2 Expose PopupMenu get_item_multistate(), get_item_multistate_max() and set_item_multistate_max() 2024-01-22 20:07:19 +01:00
A Thousand Ships
97b469c46d
[Editor] Add EditorPlugin::scene_saved signal
Matches the `EditorNode` one for parity with the exposed
`resource_saved` signal
2024-01-22 17:51:12 +01:00
CardboardCarl
6dfec4f70d Clarified behavior of RayCast objects when get_collision_point() is used inside a collision shape 2024-01-21 01:16:42 -05:00
Micky
d2ab1b60c4 Document bone list for SkeletonProfileHumanoid
Co-Authored-By: K. S. Ernest (iFire) Lee <fire@users.noreply.github.com>
2024-01-20 16:34:15 +01:00
Marcel Offermans
25f573ca63 Add a reflection mask to the reflection probes.
Co-authored-by: Bastiaan Olij <mux213@gmail.com>
2024-01-20 08:07:31 +01:00
Hugo Locurcio
6e5e7b8cb7
Add --log-file command line argument to write output log to a file
This works even if file logging is disabled in the project settings,
or for the editor/project manager.

`--log-file`'s value can be an absolute path or relative to the project
directory (similar to existing arguments like `--write-movie`).
2024-01-19 20:30:04 +01:00
Hendrik Brucker
9d7c2978f4 Rework GraphEdit connections (drawing, API, optimizations)
- GraphEdit now uses Line2D nodes to draw connection lines and uses a dedicated canvas item shader for them
2024-01-18 16:53:15 +01:00
kobewi
7d0d405e22 Improve documentation for dynamic properties 2024-01-18 02:01:06 +01:00
Yuri Sizov
bb90ebd573 Merge pull request #87259 from Mickeon/documentation-missing-constant-description
Add "missing description" tag to constant & enum documentation
2024-01-17 18:53:19 +01:00
Yuri Sizov
649bcbdac9 Merge pull request #87114 from Mickeon/doc-peeves-AABB
Overhaul AABB's documentation
2024-01-17 18:53:08 +01:00
Yuri Sizov
1169b872c4 Merge pull request #86246 from ecmjohnson/doc-threaded_cull_minimum_instances
Add description for rendering/limits/spatial_indexer/threaded_cull_minimum_instances
2024-01-17 18:52:40 +01:00
DevPoodle
5579edb137 Add descriptions to remaining properties of RDSamplerState 2024-01-16 16:10:46 -08:00
Micky
8467245526 Overhaul AABB's documentation 2024-01-16 19:20:17 +01:00
Micky
0b02b9571c Add "missing description" tag to constant documentation
Revives #85836

Co-Authored-By: krysperz2 <106302189+krysperz2@users.noreply.github.com>
2024-01-16 18:33:33 +01:00
Rémi Verschelde
079d58be9c
Merge pull request #86971 from YuriSizov/makerst-parity-check
Add code sample language parity check to `make_rst.py`
2024-01-16 15:07:40 +01:00
Yuri Sizov
dc3b07e551 Introduce editor theme spacing presets
This change adds a new editor setting related to theming
which controls base and additional spacing used in the
generated editor theme. These values can also be changed
manually by the user to customize their experience.

Limited effort was applied to make sure both Compact and
Spacious presets work and look fine, but further tuning
and adjustments are totally expected. Some controls will
require layout changes or additional fixes to their constants.
2024-01-16 11:57:45 +01:00
Rémi Verschelde
3ba18b3fc1
Merge pull request #87223 from Mickeon/documentation-uncommon-words
Replace some "uncommon" words in class reference
2024-01-16 10:39:13 +01:00
Rémi Verschelde
5af0cb4aef
Merge pull request #87218 from Calinou/makerst-code-warning-hint-skip-lint
makerst: Suggest using `[code skip-lint]` to skip warnings if intended
2024-01-16 10:38:49 +01:00
Rémi Verschelde
a69e23b23b
Merge pull request #87216 from Calinou/editor-print-rich-handle-meta
Handle clickable `[url]` tags in `print_rich()` editor output log
2024-01-16 10:38:26 +01:00
Rémi Verschelde
c16facaa67
Merge pull request #87180 from 31/dev/31/animation-length-ex
Include `animation.length` in Animation example
2024-01-16 10:36:49 +01:00
Rémi Verschelde
3df0c5be6a
Merge pull request #86473 from reduz/audio-playback-parameters
Implement audio stream playback parameters.
2024-01-16 10:35:36 +01:00
Juan Linietsky
a40fe16866 Implement audio stream playback parameters.
Implements a way for audio stream playback to be configured via parameters
directly in the edited AudioStreamPlayer[2D/3D].

Currently, configuring the playback stream is not possible (or is sometimes hacky
as the user has to obtain the currently played stream, which is not always immediately available).

This PR only implements this new feature to control looping in stream playback instances (a commonly requested feature, which was lost in the transition from Godot 2 to Godot 3).
But the idea is that it can do a lot more:

* If effects are bundled to the stream, control per playback instance parameters such as cutoff or resoance, or any other exposed effect parameter per playback instance.
* For the upcoming interactive music PR (#64488), this exposes an easy way to change the active clip, which was not possible before.
* For the upcoming parametrizable audio support (https://github.com/godotengine/godot-proposals/issues/3394) this allows editing and animating audio graph parameters.

In any case, this PR is required to complete #64488.

Update modules/vorbis/audio_stream_ogg_vorbis.h

Co-authored-by: A Thousand Ships <96648715+AThousandShips@users.noreply.github.com>

Update modules/minimp3/audio_stream_mp3.h

Co-authored-by: A Thousand Ships <96648715+AThousandShips@users.noreply.github.com>

Update modules/minimp3/audio_stream_mp3.h

Co-authored-by: A Thousand Ships <96648715+AThousandShips@users.noreply.github.com>

Update modules/vorbis/audio_stream_ogg_vorbis.h

Co-authored-by: A Thousand Ships <96648715+AThousandShips@users.noreply.github.com>

Update doc/classes/AudioStream.xml

Co-authored-by: A Thousand Ships <96648715+AThousandShips@users.noreply.github.com>
2024-01-16 10:31:52 +01:00
Erik Johnson
498f46063d Add descpription for rendering/limits/spatial_indexer/threaded_cull_minimum_instances 2024-01-15 19:41:26 -05:00
DevPoodle
0bb744e555 Add descriptions to the remaining properties of RDPipelineDepthStencilState 2024-01-15 12:33:24 -08:00
Micky
61bdbdd9ee Replace some "uncommon" words in class reference 2024-01-15 18:51:52 +01:00
Hugo Locurcio
cd3078e45b
makerst: Suggest using [code skip-lint] to skip warnings if intended 2024-01-15 15:09:21 +01:00
Hugo Locurcio
4a11d48420
Handle clickable [url] tags in print_rich() editor output log
Since this uses `OS.shell_open()`, this allows the use of any standard URL
including `file://` paths, `mailto:`, custom protocols set up by the user, etc.
2024-01-15 14:54:13 +01:00
Yuri Sizov
bba3c70722 Add code sample language parity check to make_rst.py 2024-01-15 14:38:04 +01:00
Rémi Verschelde
378b3ca3ba
Merge pull request #87011 from Mickeon/missing-description-primitive-mesh
Add missing descriptions to PrimitiveMesh and SoftBody3D
2024-01-15 13:26:38 +01:00
Rémi Verschelde
03767fbf3b
Merge pull request #86446 from reduz/transient-to-focused
Implement a `transient_to_focused` Window mode
2024-01-15 13:25:00 +01:00
31
698c67d540 Include animation.length in Animation example
The length of an Animation isn't automatically set by adding keys, and
it must be set manually. The existing example only has keys up to 0.5s,
so the default value of 1.0s may be acceptable. However, this results in
unexpected behavior for anyone who makes an animation longer than 1.0s.
Include animation.length in the example because it's important.

Also, increase the key position to 2.0s so it won't be confusing that
the assignment is somewhat redundant.
2024-01-14 10:29:02 -08:00
Juan Linietsky
15144c24bd Implement a transient_to_focused mode
This intends to be the correct way to handle non-child windows becoming covered by the current window when becoming focused.
Enabling this property on select windows, they will become transient to the currently focused one when becoming visible.

This deprecates the "unparent_when_invisible" function introduced by #76025.
2024-01-14 18:51:44 +01:00
Jakub Marcowski
06534f8ad5 Add deprecation notice to a duplicate method of class Window 2024-01-12 18:18:28 +01:00
Rémi Verschelde
bf4fb987e6
Merge pull request #87035 from Mickeon/deprecate-RenderingServer-has-feature
Deprecate RenderingServer's `has_feature` and Features enum
2024-01-11 17:41:50 +01:00
Rémi Verschelde
ea83a12ba2
Merge pull request #86968 from Mickeon/reduz-mystery-meat
Add class reference documentation for GDExtension & GDExtensionManager
2024-01-11 17:41:01 +01:00
Rémi Verschelde
cab27498bd
Merge pull request #86957 from RandomShaper/mt_mends
A couple of enhancements to user-visible threading semantics
2024-01-11 17:40:37 +01:00
Rémi Verschelde
880c12004b
Merge pull request #86881 from AThousandShips/gizmo_fix
[Editor] Add missing virtual bind to `EditorNode3DGizmo(Plugin)`
2024-01-11 17:39:48 +01:00
Rémi Verschelde
339a793fa2
Merge pull request #86639 from Mickeon/please-this-took-me-15-minutes-can-we-merge-it-before-2025
Fixing few reports to String's documentation
2024-01-11 17:38:35 +01:00
Rémi Verschelde
dc79e956b6
Merge pull request #86587 from RandomShaper/wtp_enhance
Enhance & fix `WorkerThreadPool`
2024-01-11 17:38:09 +01:00
Rémi Verschelde
50f68ed704
Merge pull request #84886 from Calinou/doc-window-resizable
Document changing the window's resizable status at runtime
2024-01-11 17:35:14 +01:00
Rémi Verschelde
f3fc35eb17
Merge pull request #81506 from twobitadder/reparent_keep_owner
Fix `reparent()` losing owner
2024-01-11 17:34:19 +01:00
Micky
c4d7d7c02e Add documentation for GDExtension & GDExtensionManager 2024-01-10 22:02:23 +01:00
Micky
63a08f2493 Deprecate RenderingServer's has_feature and Features enum 2024-01-10 12:26:04 +01:00
Micky
46b0f3e9d6 Fixing some reports to String's documentation
Closes https://github.com/godotengine/godot-docs/issues/8043
Closes https://github.com/godotengine/godot-docs/issues/8044
Mitigates https://github.com/godotengine/godot-docs/issues/8190
Closes https://github.com/godotengine/godot/issues/86734
2024-01-10 12:21:08 +01:00
Rémi Verschelde
3524346689
Merge pull request #87024 from jsjtxietian/CollisionPolygon2D-polygon
Mention `CollisionPolygon2D.polygon` is local to the given CollisionPolygon2D
2024-01-10 12:03:50 +01:00
Rémi Verschelde
74f3d168c8
Merge pull request #87022 from DarioSamo/clear_region_continue_fix
Fix incorrect mapping of initial action as clear region continue to clear.
2024-01-10 12:03:45 +01:00
Rémi Verschelde
af7eae9f50
Merge pull request #86997 from Mickeon/documentation-image
Add missing descriptions for Image's documentation
2024-01-10 12:03:41 +01:00
jsjtxietian
f5409dc132 Mention CollisionPolygon2D.polygon is local to the given CollisionPolygon2D 2024-01-10 11:14:57 +08:00
Dario
80eacf1b7a Fix incorrect mapping of initial action as clear region continue to clear. 2024-01-09 22:03:21 -03:00
Micky
e01b91777a Add missing descriptions for Image's documentation 2024-01-09 19:37:37 +01:00
Rémi Verschelde
60865dab6b
Merge pull request #85336 from DevPoodle/rduniform-descriptions
Add descriptions to all RDUniform methods
2024-01-09 17:56:44 +01:00
Rémi Verschelde
2bbe1e8e2c
Merge pull request #85468 from RedMser/audio-capture-record-confusion
Clarify difference between Capture and Record audio effects
2024-01-09 17:47:08 +01:00
Micky
a33777d49d Add missing descriptions to PrimitiveMesh and SoftBody3D 2024-01-09 17:31:12 +01:00
Pedro J. Estébanez
acac31ba5c Allow EditorImportPlugin to override can_import_threaded() 2024-01-09 17:30:24 +01:00
Dario
cc4d39b0c1 Acyclic Command Graph for RenderingDevice.
Adds a new system to automatically reorder commands, perform layout transitions and insert synchronization barriers based on the commands issued to RenderingDevice.
2024-01-08 14:54:56 -03:00
Rémi Verschelde
a7e347482b
Merge pull request #86687 from TokageItLab/AnimationMixer-remove-object-pointer
Fix TrackCache conflict when tracks have same name but different type
2024-01-08 14:52:30 +01:00
Rémi Verschelde
129332e3b9
Merge pull request #82468 from kitbdev/tabcontainer-bottom
Option to put TabContainer tabs at bottom
2024-01-08 14:51:37 +01:00
Silc Lizard (Tokage) Renew
a51958a2a0 Remove Object pointer/solve types conflict in AnimationTrackCache
Co-authored-by: Rémi Verschelde <rverschelde@gmail.com>
2024-01-08 21:48:19 +09:00
Pedro J. Estébanez
9444d297ed WorkerThreadPool: Overhaul scheduling and synchronization
This commits rewrites the sync logic in a way that the
`use_system_threads_for_low_priority_tasks` setting, which was added due to
the lack of a cross-platform wait-for-multiple-objects functionality, can be
removed (it's as if it was effectively hardcoded to `false`).

With the new implementation, we have the best of both worlds: threads don't
have to poll, plus no bespoke threads are used.

In addition, regarding deadlock prevention, since not every possible case of
wait-deadlock could be avoided, this commits removes the current best-effort
avoidance mechanisms and keeps only a simple, pessimistic way of detection.

It turns out that the only current user of deadlock prevention, ResourceLoader,
works fine with it and so every possible situation in resource loading is now
properly handled, with no possibilities of deadlocking. There's a comment in
the code with further details.

Lastly, a potential for load tasks never being awaited/disposed is cleared.
2024-01-08 12:45:42 +01:00
Rémi Verschelde
07f5dac81a
Merge pull request #86895 from Mickeon/documentation-textserver-missing-descriptions
Add missing descriptions to TextServer's constants
2024-01-08 12:01:07 +01:00
Rémi Verschelde
f5e2529584
Merge pull request #86848 from Mickeon/documentation-canvas-texture-note
Specify how CanvasTexture does not work in 3D
2024-01-08 11:58:43 +01:00
Rémi Verschelde
ff79ec75de
Merge pull request #86349 from DSteve595/patch-1
Clarify doc: `Node.get_child` returns null for invalid index
2024-01-08 11:53:04 +01:00
Mansur Isaev
631d722674
Add set_slot_custom_icon and get_slot_custom_icon to GraphNode 2024-01-08 08:30:10 +01:00
Micky
e03f2b65c2 Fill the documentation of a few overlooked classes 2024-01-07 17:51:04 +01:00
A Thousand Ships
c909354396
Clarify that Callable will not be encoded with var_to_bytes 2024-01-07 14:10:36 +01:00
A Thousand Ships
4850b866e8
Clarify PackedByteArray.decompress* limitations with external data 2024-01-07 13:34:39 +01:00
Steven Schoen
3c416f3a64 Clarify Node doc: get_child returns null for invalid index 2024-01-07 00:01:03 -04:00
kit
f6a212837b TabContainer bottom position 2024-01-06 15:31:08 -05:00
Micky
d3150c9c8f Add missing descriptions to TextServer's constants 2024-01-06 19:06:48 +01:00
A Thousand Ships
c794ce195b
[Editor] Add missing virtual bind to EditorNode3DGizmo(Plugin)
Method `_begin_handle_action` was not bound
2024-01-06 17:27:50 +01:00
Micky
52d062560b Specify how CanvasTexture does not work in 3D 2024-01-06 01:43:40 +01:00