Commit graph

6876 commits

Author SHA1 Message Date
Pedro J. Estébanez
24ff292999 Polish rendering driver refactor further
Mainly:
- Make `max_descriptors_per_pool` project setting Vulkan-specific.
- Use a common, render driver agnostic magic FourCC for shader binary data.
- Downgrade spirv_reflect to Vulkan-only dependency.
- Add a `RENDER_DRIVER_*` macro to GLSL shader code for per-driver customizations.
2022-10-06 21:08:54 +02:00
clayjohn
154b9c1c91 Use a giant UBO to optimize performance in 2D
This removes the countless small UBO writes we had before
and replaces them with a single large write per render pass.

This results in much faster rendering on low-end devices
but improves speed on all devices.
2022-10-06 11:24:45 -07:00
Rémi Verschelde
6315800821 Merge pull request #66959 from timothyqiu/obstacles-pathfinding
Make it clear that obstacles don't affect pathfinding
2022-10-06 16:34:41 +02:00
Felipe Kinoshita
0bc2eafe54 Add descriptions for Node2D's skew and CanvasItem's clip_children 2022-10-06 05:09:54 -03:00
Rémi Verschelde
61021c08f8 Merge pull request #66936 from mihe/inverse-inertia-tensor
Bind PhysicsDirectBodyState3D::get_inverse_inertia_tensor
2022-10-06 08:57:37 +02:00
Rémi Verschelde
5f07012db9 Merge pull request #66955 from FHEK789/tilemap_get_layers_count_docs
Add description to TileMap's get_layers_count method
2022-10-06 08:57:23 +02:00
Rémi Verschelde
de7b90015e Merge pull request #66958 from timothyqiu/static-body
Improve StaticBody description
2022-10-06 08:57:17 +02:00
Rémi Verschelde
f5903215d0 Merge pull request #61902 from Paulb23/multi-caret
Add Multi-caret support to TextEdit
2022-10-06 08:56:34 +02:00
Haoyu Qiu
8e03203695 Make it clear that obstacles don't affect pathfinding 2022-10-06 11:05:29 +08:00
Haoyu Qiu
54bdb6e65c Improve StaticBody description
The naming of static bodies has raised a lot of questions and
discussions, because they are actually movable (not being static). This
commit explains that the reason for "static" is that they are immovable
from the point of view of the physics engine. This makes it easier to
understand why the user can move static bodies manually.
2022-10-06 10:25:27 +08:00
Felipe Kinoshita
7cb1d1f1ed Add description to TileMap's get_layers_count method 2022-10-05 18:32:58 -03:00
Paulb23
5f8f4842bb Update TextEdit docs 2022-10-05 21:44:24 +01:00
Rémi Verschelde
9bb05de89f Add editor setting for AcceptDialog OK/Cancel buttons positioning
The position (left/right) of the Cancel and OK buttons in AcceptDialog
are DisplayServer specific, as Windows uses OK/Cancel and macOS uses Cancel/OK.

Linux/X11 currently uses the macOS convention which is also the GTK+/GNOME one,
though it's not consistent with Qt/KDE applications which follow the Windows
convention.

Since that can't satisfy everyone, it's best if it's configurable also for the
editor (it's already configurable for the project).

Fixes #59379.
2022-10-05 17:51:04 +02:00
Mikael Hermansson
8dc15aac38 Bind PhysicsDirectBodyState3D::get_inverse_inertia_tensor 2022-10-05 17:18:49 +02:00
RedMser
5ae012e6e9 Add documentation for viewport's input handling 2022-10-05 12:56:04 +02:00
Jiri Suchan
67e3fb7856 fix(docs): use proper path for tutorial file in docs 2022-10-05 11:43:41 +02:00
Rémi Verschelde
9cd62741bb Merge pull request #66839 from aaronfranke/editor-prop-hide-slider
Fix `hide_slider` vs `no_slider` inconsistency in editor property code
2022-10-05 08:47:06 +02:00
Rémi Verschelde
ebbfc9695c Merge pull request #66348 from dzil123/world3d_direct_space_state_doc
World3D.direct_space_state add multithreaded warning
2022-10-05 08:32:40 +02:00
Rémi Verschelde
7cbd33a04d Merge pull request #66913 from timothyqiu/mouse-button-swap
Describe the left mouse button constant as the primary button
2022-10-05 08:32:28 +02:00
Rémi Verschelde
4edb4c8e07 Merge pull request #66798 from bruvzg/win_docs
[Docs] Synchronize and update Window and Display Server documentation.
2022-10-05 08:32:03 +02:00
Rémi Verschelde
58a112183c Merge pull request #65227 from BastiaanOlij/complete_render_target_api
Implementing override functionality for XR
2022-10-05 08:31:40 +02:00
Rémi Verschelde
53952d4b98 Merge pull request #66895 from Zylann/undo_51969
Undo #51969, generate_mipmaps runs on caller thread.
2022-10-05 08:31:07 +02:00
Rémi Verschelde
52c2a6b564 Merge pull request #66799 from xarses/remove-dangling-os-datetime-ref
Remove reference in OS to date and time functions
2022-10-05 08:29:29 +02:00
Rémi Verschelde
57d7e35370 Merge pull request #66509 from Mickeon/yes
Support chaining AtlasTextures inside other AtlasTextures
2022-10-05 08:29:17 +02:00
Rémi Verschelde
47c0fe5cd6 Merge pull request #65776 from Mickeon/camera2d-rotation_smoothing
Add rotation smoothing to Camera2D
2022-10-05 08:29:02 +02:00
bruvzg
8574dac00e
[Docs] Synchronize and update Window and Display Server documentation. 2022-10-05 08:43:37 +03:00
dzil123
79fa23ae8f World3D.direct_space_state add multithreaded warning 2022-10-04 22:10:00 -07:00
Haoyu Qiu
f6e9565bdc Describe the left mouse button constant as the primary button 2022-10-05 10:32:04 +08:00
Bastiaan Olij
c7656978ba Adding getters to RenderTarget and implementing override functionality for XR 2022-10-05 11:37:49 +11:00
Matthew
4eb9e3326e
Merge pull request #66852 from Jantho1990/bugfix/update-control-focus-signal-documentation-master
Control docs: update messaging for focus to be less keyboard-specific
2022-10-04 17:23:36 -04:00
Marc Gilleron
6d2aa8f1b6 Undo #51969, generate_mipmaps runs on caller thread. 2022-10-04 18:45:41 +01:00
Andrew Woodward
5458b14c43 Remove reference in OS to date and time functions
Since they moved to Time
2022-10-04 08:31:28 -07:00
Luis Lopez
c262589e26 Add rotation smoothing to Camera2D
Camera2D has follow smoothing to interpolate towards a target position, but no rotation smoothing to align with the target rotation.

This adds rotation smoothing directly into the Camera2D API by having two new properties:
  - `rotation_smoothing_enabled`
  - `rotation_smoothing_speed`
2022-10-04 17:14:03 +02:00
Micky
1518d813be Support nesting AtlasTextures inside other AtlasTextures
Connects AtlasTexture to its `atlas`'s "changed" signal, allowing it to detect property changes to `atlas` and update accordingly, when the project is running and in the editor, as well.
2022-10-04 17:09:37 +02:00
Rémi Verschelde
8f7cb50c9a Merge pull request #65528 from Mickeon/rename-more-spatial-to-node-3d
Rename remaining "Spatial" in Plugins to "Node3D"
2022-10-04 16:47:08 +02:00
Rémi Verschelde
d1552fd38c Merge pull request #66734 from jtnicholl/proj_docs
Update several ProjectSettings docs
2022-10-04 16:45:42 +02:00
Rémi Verschelde
83ef2676e6 Merge pull request #66449 from Mickeon/stinky
Improve AtlasTexture's Documentation
2022-10-04 16:43:53 +02:00
Micky
ae5771e1b1 Rename remaining "Spatial" in Plugins to "Node3D"
For EditorNode3DGizmo:
- `get_spatial_node` -> `get_node_3d`
- `set_spatial_node` -> `set_node_3d`

For EditorPlugin:
- `add_spatial_gizmo_plugin` -> `add_node_3d_gizmo_plugin`
- `remove_spatial_gizmo_plugin` -> `remove_node_3d_gizmo_plugin`

Also renames some internal methods for consistency (`forward_3d_draw_over_viewport` & `forward_3d_force_draw_over_viewport` ...). Basically, Spatial has been completely eradicated.
2022-10-04 16:27:29 +02:00
Josh Anthony
4b0772fd5d update messaging for focus to be less keyboard-specific
Update doc/classes/Control.xml

Co-authored-by: Rémi Verschelde <rverschelde@gmail.com>

Update doc/classes/Control.xml

Co-authored-by: Rémi Verschelde <rverschelde@gmail.com>
2022-10-04 08:53:28 -05:00
Rémi Verschelde
6a251fd0df Merge pull request #39072 from dalexeev/cs2d_debug_color
Add debug_color property to CollisionShape2D
2022-10-04 12:05:19 +02:00
Rémi Verschelde
68765b8831 Merge pull request #66274 from Calinou/engine-rename-max-fps
Rename `Engine.target_fps` and associated project setting to `max_fps`
2022-10-04 11:19:56 +02:00
Rémi Verschelde
9928cdc2e7 Merge pull request #66807 from akien-mga/core-unix-remove-NO_FCNTL-and-NO_STATVFS
Unix: Remove now unnecessary I/O defines, cleanup
2022-10-04 10:22:29 +02:00
Hugo Locurcio
1c6c72caf1
Rename Engine.target_fps and associated project setting to max_fps
This makes the setting easier to find, as research has found there are
numerous use cases to limiting FPS. This also improves documentation
related to the Engine property and project setting.

The project setting also works in projects exported in release mode,
so its location in the `debug/` section was misleading.
2022-10-03 23:54:36 +02:00
Aaron Franke
094e8db97c
Fix hide_slider vs no_slider inconsistency in editor property code 2022-10-03 13:40:31 -05:00
Jonathan Nicholl
f1a930f973 Update several ProjectSettings docs 2022-10-03 11:04:39 -04:00
Rémi Verschelde
44dcd83290 Merge pull request #66768 from coppolaemilio/fileaccess-class-reference-update
Replacing deprecated File calls from the FileAccess class documentation
2022-10-03 14:52:01 +02:00
Rémi Verschelde
306cbeb9fc Merge pull request #66748 from EricEzaM/66308-66403-menubutton-improvements
Improve MenuButton and OptionButton
2022-10-03 14:51:45 +02:00
Rémi Verschelde
d598fff7c2 Merge pull request #66803 from akien-mga/core-remove-NO_THREADS
Remove `NO_THREADS` fallback code, Godot 4 requires thread support
2022-10-03 14:51:02 +02:00
Rémi Verschelde
04a28763c0
Merge pull request #65751 from Faless/os/4.x_expose_read_from_stdin 2022-10-03 14:08:00 +02:00
Emi
d196a07ea4 Replacing File calls from the FileAccess class docs
Co-Authored-By: bruvzg <7645683+bruvzg@users.noreply.github.com>
2022-10-03 13:04:40 +02:00
Rémi Verschelde
f501e4f665 Unix: Remove now unnecessary I/O defines, cleanup
- `LIBC_FILEIO_ENABLED` wasn't defined anywhere, even in _other platforms_.
- `NO_NETWORK` is also never defined. It probably isn't enough anyway to
  disable network APIs in the current codebase.
- `UNIX_SOCKET_UNAVAILABLE` is never defined in this code but used by some
  other platforms, clarify that.
- `NO_STATVFS` can be removed as Android supports it since API level 19,
  which is our current min SDK level. It's also only used for
  `DirAccessUnix::get_space_left()` which is anyway overridden by
  `DirAccessJAndroid::get_space_left()` so it shouldn't make a difference.
  * Fixed documentation for `DirAccess.get_space_left()`.
- `NO_FCNTL` is likely also a remnant of early Android days, in current NDK
  r23 it seems to be available. Also cleaned up unused `fcntl.h` includes.
- `NO_ALLOCA` is never defined, and we use alloca in many places now.
2022-10-03 12:33:41 +02:00
EricEzaM
272c297931 Improve MenuButton and OptionButton
* MenuButton + OptionButton: Add method `show_popup()` which performs required popup setup before showing (prefer use of this over `get_popup()->popup()`, otherwise GH #66308 occurs)
* MenuButton: Ensure that the menu can be opened with a shortcut, if one is set for the button. (GH #66403). Ensure that popupmenu item shortcuts are checked first before the MenuButton shortcut.
2022-10-03 20:07:39 +10:00
Rémi Verschelde
54418ea659 Remove NO_THREADS fallback code, Godot 4 requires thread support
This also removes `OS::can_use_threads` from the public API since it's always
true.
2022-10-03 11:23:26 +02:00
Rémi Verschelde
9c2894180d Merge pull request #66387 from aaronfranke/cs-basis-euler
C#: Update Basis Euler angle code to match core
2022-10-03 09:26:16 +02:00
Rémi Verschelde
a377c5ca22 Merge pull request #66655 from MisterMX/feat/astargrid2d-vector2i
refactor(AStarGrid2D): Return `Vector2i` in `get_id_path`
2022-10-03 09:24:40 +02:00
Micky
f4b58c6220 Improve AtlasTexture's Documentation
Reduces repetition, rearranges sentences to improve structure, attempts to be more impersonal ("clips" -> "is_clipped") and consistent with other more common classes.

Also remove outdated snippet from the description ("cannot be tiled in nodes such as TextureRect" is no longer true in master).
2022-09-30 20:27:52 +02:00
Rémi Verschelde
ef8834a642 Merge pull request #64784 from yedpodtrzitko/yed/ci-add-mypy
ci: add Python static analysis check via mypy
2022-09-30 17:44:39 +02:00
Rémi Verschelde
166df0896c Fix typos with codespell
Using codespell 2.3-dev from current git.

And fix typo in `methods.py` for `vsproj=yes` option (still won't work
though).
2022-09-30 14:23:36 +02:00
Jiri Suchan
c5bd2f9dce ci: add Python static analysis check via mypy 2022-09-30 19:03:17 +07:00
MisterMX
bf19a1d3b3 refactor(AStarGrid2D): Return Vector2i in get_id_path
Signed-off-by: MisterMX <mbxd12@web.de>
2022-09-30 12:02:28 +02:00
clayjohn
a09bb9037e Use mobile as the default rendering method on mobile when vulkan is supported 2022-09-30 09:57:00 +02:00
Victor Karp
43fe12e94e Fix missing "s" at the end of word in OS.move_to_trash() description
Change "Do not use it for files in res:// as it will not work in
exported project." to "[...] projects."
2022-09-29 20:59:49 +02:00
Rémi Verschelde
7c7a86f0fd Merge pull request #66592 from KoBeWi/look_at_me_I_am_the_captain_now
Fail `look_at()` if not inside tree
2022-09-29 15:34:08 +02:00
Rémi Verschelde
f5f4d9bf00 Merge pull request #66143 from DarkKilauea/nav-queries-agent
Update NavigationAgent to use query_path
2022-09-29 15:33:25 +02:00
kobewi
c080b9dc05 Fail look_at() if not inside tree 2022-09-29 13:34:28 +02:00
Josh Jones
a2c53b881b Update NavigationAgent to use query_path
This paves the way for having agents respond to link traversal.
2022-09-28 23:01:12 -06:00
Rémi Verschelde
f8745f2f71
Merge pull request #66103 from Zylann/bind_property_usage_read_only 2022-09-29 00:09:51 +02:00
Marc Gilleron
856466ed02 Expose PROPERTY_USAGE_READ_ONLY 2022-09-28 22:50:55 +01:00
Rémi Verschelde
ba25a6e93b Merge pull request #66549 from MisterMX/tilemap-get-used-rect
refactor(TileMap): Return `Rect2i` in `get_used_rect`
2022-09-28 20:49:29 +02:00
MisterMX
407bbdda20 refactor(TileMap): Return Rect2i in get_used_rect
Signed-off-by: MisterMX <mbxd12@web.de>
2022-09-28 17:04:15 +02:00
Rémi Verschelde
14e1f36e61 Merge pull request #66492 from bruvzg/gde_ts_underscr
[GDExtension] Use function names with underscore for TextServer extension, add macros to generate wrappers for module functions.
2022-09-28 12:12:29 +02:00
Rémi Verschelde
45d0033188 Merge pull request #65898 from konczg/add_passthrough_extension_wrapper
Add passthrough extension wrapper
2022-09-28 10:08:15 +02:00
bruvzg
8f5d56e04a
[GDExtension] Use function names with underscore for TextServer extension, add macros to generate wrappers for module functions. 2022-09-28 10:04:11 +03:00
Rémi Verschelde
0f1efa7c55 i18n: Sync classref translations with Weblate (3.5 branch)
(cherry picked from commit 8dbd40db65)
2022-09-27 23:51:12 +02:00
Gabor Koncz
72203a4da4 Add Passthrough extension wrapper 2022-09-27 12:26:53 +02:00
Aaron Franke
fe7135344b
C#: Update Basis Euler angle code to match core 2022-09-25 22:28:52 -05:00
Rémi Verschelde
ef26618359 Merge pull request #66290 from 4d49/physics2d-area-methods
add `area_get_collision_layer` &`area_get_collision_mask`
2022-09-25 17:08:55 +02:00
Rémi Verschelde
d456dce8af Merge pull request #65535 from RedMser/script-editor-inheritance-icon
Show override icon in script editor gutter
2022-09-25 17:08:45 +02:00
smix8
c87ad9d7c1 Add missing postprocessing doc for PathQueryParameters 2022-09-25 15:48:43 +02:00
Mansur Isaev
efd4dc20a3 Add area_get_collision_layer and area_get_collision_mask 2022-09-25 14:34:35 +04:00
clayjohn
36cb3c4050 Set QuadMesh default size back to 1 2022-09-23 11:00:43 -07:00
Rémi Verschelde
006e345695
Merge pull request #65817 from bruvzg/typed_array 2022-09-23 10:24:46 +02:00
Rémi Verschelde
ee95cc0b79 Merge pull request #66177 from rburing/callable_callv
add `callv` method
2022-09-23 09:45:02 +02:00
bruvzg
163257d51b
[GDExtension] Implement support for typed arrays. 2022-09-22 23:31:27 +03:00
bruvzg
0dab11afa4
[macOS extend-to-title] Add scene/project name to the editor title, fix incorrect window button position/order when system primary language is RTL. 2022-09-22 23:09:56 +03:00
Rémi Verschelde
8e14f9ba21 Merge pull request #64679 from DarkKilauea/nav-region-props
Improve consistency of NavigationRegion setters
2022-09-22 08:27:35 +02:00
Rémi Verschelde
d96b7d767a Merge pull request #66110 from Zylann/reference_get_count
get_reference_count()`
2022-09-22 08:26:29 +02:00
Josh Jones
a25bb9811a Improve consistancy of NavigationRegion setters 2022-09-21 22:42:52 -07:00
Rémi Verschelde
e5c544750c
Merge pull request #66234 from KoBeWi/dir_access_denied
Fix wrong DirAccess example
2022-09-22 06:12:13 +02:00
Rémi Verschelde
6e773f7124
Merge pull request #66232 from Evanaellio/fix-tool-annotation
Fix code examples for @tool annotation
2022-09-22 06:08:07 +02:00
Matthew
4ea2703eee
Merge pull request #66230 from Evanaellio/swap-resourcesaver-save-arguments
Swap arguments of ResourceSaver.save()
2022-09-21 19:15:44 -04:00
kobewi
185be4a788 Fix wrong DirAccess example 2022-09-21 23:43:52 +02:00
Evanaellio
6eac901ecb Fix code examples for @tool annotation 2022-09-21 22:52:55 +02:00
Micky
c1b5b68eee Rename remaining "*_enable" to "*_enabled"
Material.`proximity_fade_enable` -> `proximity_fade_enabled`
Material.`set_proximity_fade` -> `set_proximity_fade_enabled`
(Material.`is_proximity_fade_enabled` is unchanged)

Area3D.`reverb_bus_enable` -> `reverb_bus_enabled`
(`set_use_reverb_bus` & `is_using_reverb_bus` are unchanged)

RDPipelineRasterizationState:
`depth_bias_enable` -> `depth_bias_enabled`
`set_depth_bias_enable` -> `set_depth_bias_enabled`
`get_depth_bias_enable` -> `get_depth_bias_enabled`

Bonus:
Area3D.`set_reverb_bus` -> `set_reverb_bus_name`
Area3D.`get_reverb_bus` -> `set_get_reverb_bus_name`
2022-09-21 22:47:46 +02:00
Evanaellio
1acd0f1bab Swap arguments of ResourceSaver.save() 2022-09-21 22:26:48 +02:00
Marc Gilleron
474cee7daf Rename and expose RefCounted::get_reference_count() 2022-09-21 21:18:54 +01:00
Rémi Verschelde
0b06f8b0bd Merge pull request #65816 from bruvzg/proj_settings_missing_flags
Add missing initial window flags and window mode to the project settings.
2022-09-21 18:56:31 +02:00
Rémi Verschelde
057dd292e4 Merge pull request #62666 from AThousandShips/tree_folding
Tree recursive folding (like Scene Tree Dock)
2022-09-21 15:36:43 +02:00
Danil Alexeev
df2209c700
Add CollisionShape2D.debug_color property 2022-09-21 16:07:47 +03:00
Ninni Pipping
df9eaf5f47 Tree recursive folding 2022-09-21 13:28:29 +02:00