Commit Graph

3055 Commits

Author SHA1 Message Date
lawnjelly
522bce1159 Fixed Timestep Interpolation (3D)
Adds fixed timestep interpolation to the visual server.
Switchable on and off with project setting.

This version does not add new API for set_transform etc, when nodes have the interpolated flag set they will always use interpolation.
2022-02-16 09:41:23 +00:00
Hugo Locurcio
7dcb25e37b
Improve documentation for AudioServer device properties and methods
(cherry picked from commit 743b5608e3)
2022-02-15 12:30:58 +01:00
Hugo Locurcio
5ca3a360d1
Clarify identical hash() return values due to collisions
(cherry picked from commit 08541fe11d)
2022-02-15 12:27:57 +01:00
Hugo Locurcio
08128351a5
Clamp environment light sky contribution to the [0.0; 1.0] range
The value is already clamped in the editor, but it wasn't being
clamped when the value was set via code. Values outside the [0.0; 1.0]
range can result in broken rendering.
2022-02-14 17:15:06 +01:00
Hugo Locurcio
53b96095eb
Improve completion scroll bar visibility in the script editor (3.x)
This makes the scroll bar bar thicker and more opaque (roughly
matching the editor theme's scroll bar by default).
2022-02-14 14:54:35 +01:00
Hugo Locurcio
f1d289f6eb
Improve the AudioStreamPlayer2D/3D.area_mask documentation
The documentation was stating that the area mask affects where sounds
can be heard, which is not true. Instead, the area mask affects audio
bus redirection.

Thanks to Azedaxen on the Godot forums for providing this description :)

(cherry picked from commit ab1eaac315)
2022-02-11 09:51:50 +01:00
Rémi Verschelde
7a16bb2ee4
Fix typos with codespell
Using codespell 2.2-dev from current git.

Added `misc/scripts/codespell.sh` to make it easier to run it once in a
while and update the skip and ignore lists.

(cherry picked from commit 1bdb82c64e)
2022-02-11 09:50:59 +01:00
reduz
e4e3f7d157
Add a signal to notify when children nodes enter or exit tree
-Allows more fine grained notifications (hence better performance) than using the global scene tree signals (node added and removed).
-Required for #55950

(cherry picked from commit fbd9599b04)
2022-02-11 09:50:58 +01:00
TechnicalSoup
49059e3f26
Expand description for warp_mouse_position method
Add more detail to the description for the warp_mouse_position method, clarifying that the vector is in screen coordinates and relative to an origin at the top of the game window.

(cherry picked from commit 3dc1fad262)
2022-02-11 09:50:57 +01:00
Max Hilbrunner
12841d536f
DOCS: Object.set() does nothing on type mismatch
(cherry picked from commit bb7d003881)
2022-02-11 09:50:06 +01:00
Haoyu Qiu
8231303dec Backport FlowContainer 2022-02-11 14:48:40 +08:00
Haoyu Qiu
f49ffe4bb0 Backport CanvasLayer visibility 2022-02-11 01:00:35 +08:00
Rémi Verschelde
0c7c640112
Merge pull request #57643 from YeldhamDev/smarter_pm_focus_port 2022-02-10 16:52:08 +01:00
lawnjelly
f0af29346b ProjectSettings add dirty flag and project_settings_changed signal
Most frames there will be no change in project settings, and it makes no sense to read settings every frame in case of changes, as a large number of string compares are involved.

This PR adds a signal to ProjectSettings that can be subscribed to in order to keep local settings up to date with ProjectSettings.

In addition a function `ProjectSettings::has_changes()` is provided for objects outside the signal system (e.g. Rasterizers).
2022-02-09 11:20:25 +00:00
Haoyu Qiu
a3f6033513 Improve TreeItem button API 2022-02-08 23:56:19 +08:00
Raul Santos
1d3de163dc Add alignment options to icons on buttons.
They can now be centered and right-aligned.

Co-authored-by: jitspoe <jitspoe@yahoo.com>
2022-02-07 21:29:37 +01:00
Fabio Alessandrelli
4c23a902c1 [HTML5] Implement JavaScript PWA update callbacks.
Allows detecting when a new version of the progressive web app service
worker is waiting (i.e. an update is pending), along a function to force
the update and reload all clients.
2022-02-06 18:33:13 +01:00
Marcel Admiraal
a4f0e02798 Update definitions of get_mouse_position methods 2022-02-06 09:32:46 +00:00
Pedro J. Estébanez
0d1ec9a7cf Improve ubershader compatibility
- Prevent debug enforced use of ubershader on shaders not supporting it
- Use unsigned integer for ubershader flags
- Add project setting for disabling async shader compilation on mobile
- Stop sampling some textures through different kinds of samplers at the same time
2022-02-05 22:12:31 +01:00
lawnjelly
cf1b3fdd55 Bind mesh merging functionality in MeshInstance
The portal system introduced basic mesh merging functionality, this has wide ranging uses outside of the portal system.
For this reason, this PR binds the mesh merging functionality.
It also slightly modifies the calling from RoomManager to use a Vector of Node *, in order to allow binding of the function.
2022-02-05 13:18:17 +00:00
Rémi Verschelde
689f59dca0
Merge pull request #53463 from lawnjelly/vital_redraws
Add editor vital redraws only option
2022-02-04 21:42:49 +01:00
Michael Alexsander
f63bea9ef2 Make popup menus focus items automatically when not using the mouse 2022-02-04 17:20:26 -03:00
lawnjelly
10eb9564ca Portals - Improve mesh merging
Some improvements to robustness to account for more properties.
Addition of an "allow merging" flag in the cull instance.
2022-02-04 08:40:46 +00:00
Rémi Verschelde
176de98dd6
Merge pull request #57576 from timothyqiu/doc-stream-peer-buffer-3.x 2022-02-03 09:59:20 +01:00
Haoyu Qiu
9150fe5c9a Add documentation for StreamPeerBuffer 2022-02-03 16:01:28 +08:00
Pawel Lampe
6c6e50bf0c Fix navigation merge errors, fixes #56786
- improved `detail/sample_max_error` default value
- improved floating point precision handling in cell key calculations
- improved `merge error` error message
- exposed `cell_height` of `nav_map` to the `Navigation`
- fixed cell key `y` calculation
2022-02-02 23:52:29 +01:00
Rémi Verschelde
78f230885b
Merge pull request #57475 from snailrhymer/look-at-update 2022-02-02 23:07:20 +01:00
lawnjelly
a0c6d16c90 Add editor vital redraws only option
When editor continuous redraws is switched off, the editor only redraws when a redraw_request was issued by an element in the scene. This works well in most situations, but when scenes have dynamic content they will continuously issue redraw_requests.

This can be fine on high power desktops but can be an annoyance on lower power machines.

This PR splits redraw requests into high and low priority requests, defaulting to high priority. Requests due to e.g. shaders using TIME are assigned low priority.

An extra editor setting is used to record the user preference and an extra option is added to the editor spinner menu, to allow the user to select between 3 modes:

* Continuous
* Update all changes
* Update vital changes
2022-02-02 11:26:45 +00:00
Hugo Locurcio
7f00317f67
Clarify documentation for Rect2's has_no_area() 2022-02-01 22:43:02 +01:00
Rémi Verschelde
b6dbff7621
Merge pull request #57361 from lawnjelly/occ_poly_only 2022-02-01 14:04:24 +01:00
lawnjelly
8ea20f5fdd Add OccluderShapePolygon
Add OccluderShapePolygon, glue to Occluder and gizmos etc.
2022-02-01 11:31:06 +00:00
Ev01
fa906f70e9
Fixes invalid links to tutorials in AudioStreamGenerator, AudioStreamGeneratorPlayback, and AudioEffectSpectrumAnalyzer class references
(cherry picked from commit b6c543179c)
2022-01-31 22:54:22 +01:00
Hugo Locurcio
3fd186c0c2
Improve documentation for ReflectionProbe.max_distance property
(cherry picked from commit c35968e276)
2022-01-31 22:54:17 +01:00
SnailRhymer
83298da9b8 Backport improved look_at docs and errors
Take extra constraint info and function description from Node3D.look_at to improve Spatial.look_at docs.
Add an explicit error for up == 0
2022-01-31 11:52:15 +00:00
Manolis Papadeas
941879f601
Expose BitMap's convert_to_image and resize methods to GDScript
(cherry picked from commit 453912d48d)
2022-01-25 18:55:52 +01:00
Wysocki Patryk
6340e4c83f
Expose AnimationNodeOneShot::mix_mode as a property
Fixes #23458.

(cherry picked from commit f16c483c9d)
2022-01-25 18:55:51 +01:00
Rémi Verschelde
2eb12f1d71
doc: Clarify expected type of Object * parameters in Tree methods
They're meant to be `TreeItem *` but this can't be bound in Variant.

Fixes #20538.

(cherry picked from commit 81f2ce4e46)
2022-01-25 18:24:02 +01:00
SnailRhymer
6ac800aab7 Add clarification to tile_set_modulate
To resolve 45677, adds a note to tile_set_modulate clarifying how to use tile_modulate in shaders.
2022-01-24 21:23:04 +00:00
Pawel Lampe
67cf622935 Improve Navigation2D default settings, fixes #56852
This commit reduces `cell_size` and `edge_connection_margin` default
values so that `Navigation2D` behaves more like in Godot <= `3.4` by default.
2022-01-23 14:07:31 +01:00
Rémi Verschelde
e33f8df9ca
Merge pull request #56984 from Calinou/doc-softbody-no-gameplay-3.x 2022-01-23 12:54:36 +01:00
LoserFox
0af26280b6
Fix some errors in Environment documentation
Co-authored-by: Clay John <claynjohn@gmail.com>
Co-authored-by: Max Hilbrunner <mhilbrunner@users.noreply.github.com>
Co-authored-by: Rémi Verschelde <rverschelde@gmail.com>
2022-01-23 00:45:27 +01:00
Rémi Verschelde
6c0c0c4b29
Merge pull request #54165 from Calinou/directional-shadow-runtime-change-3.x
Allow changing directional shadow size at run-time
2022-01-22 15:25:09 +01:00
Mak Kma
1c3d3af6ef backported method get_rid for NavigationAgent 2022-01-21 00:15:16 +03:00
Rémi Verschelde
a9b10054b8
Merge pull request #56950 from timothyqiu/has-clipboard-3.x 2022-01-20 12:09:53 +01:00
skyace65
c540a17efc Better explain JSON print indent parameter (3.x) 2022-01-19 20:37:58 -05:00
Hugo Locurcio
94b1ae5599
Document that soft bodies should be avoided for gameplay purposes 2022-01-20 01:36:39 +01:00
rafallus
27fc50d54a
Fix input_ray_pickable documentation for CollisionObject3D
(cherry picked from commit ba7d3f8331)
2022-01-19 16:04:16 +01:00
kobewi
ccb52db232
Clarify to_float() and to_int() methods
(cherry picked from commit 7bb682651f)
2022-01-19 16:04:16 +01:00
bruvzg
7eb8339f6c
[Documentation] Add instruction how to execute built-in commands of various shells.
(cherry picked from commit 9faf1e027a)
2022-01-19 16:04:16 +01:00
kobewi
986b99ed5c
Mention that modifying text erases BBCode stacks
(cherry picked from commit 3f0e9da5a4)
2022-01-19 16:01:04 +01:00
Haoyu Qiu
76297e744d Add OS.has_clipboard() to check clipboard content 2022-01-19 20:19:06 +08:00
QueenOfSquiggles
cab89124ff
Fixed a typo in BakedLightmap documentation
"capture_propagation" member documentation description was missing the second 'p' in "propagation". Fixed this minor typo
Also resubmitting pull request to 3.x branch as per @Calinou's recommendation.
2022-01-17 09:56:49 -06:00
Haoyu Qiu
7f49e5beec Expose Image.COMPRESS_SOURCE_LAYERED to scripting 2022-01-17 20:43:05 +08:00
Rémi Verschelde
879244c54e
Merge pull request #56015 from bruvzg/phy_code_conv 2022-01-16 11:36:26 +01:00
Rémi Verschelde
22166639ed
Merge pull request #56366 from Calinou/async-shaders-use-in-editor
Use asynchronous shader compilation and cache in the editor if requested
2022-01-16 10:34:07 +01:00
Yuri Sizov
58319564fa Unify theme item lookup in Controls and respect default font 2022-01-13 15:21:55 +03:00
Haoyu Qiu
b6f0460520 Remove duplicated sentence in EditorVCSInterface classref 2022-01-13 14:39:12 +08:00
Rémi Verschelde
1cc3184f6e
Merge pull request #55444 from Calinou/doc-spritebase3d-modulate-material-override-3.x
Document using SpriteBase3D's `modulate` property with material override (3.x)
2022-01-13 00:00:10 +01:00
Hugo Locurcio
027a584faf
Document using SpriteBase3D's modulate property with material override 2022-01-12 22:37:15 +01:00
skyace65
a28955ac46
Fix normal map description
(cherry picked from commit d856074488)
2022-01-12 17:34:56 +01:00
kobewi
8edc8a95b1
Improve FileDialog filters
(cherry picked from commit b403954e41)
2022-01-12 17:33:16 +01:00
Haoyu Qiu
4621b41bfc
Add drag start/end signals for Slider
(cherry picked from commit 753ae7403f)
2022-01-12 17:31:39 +01:00
kobewi
46f65f9d79
Improve description of mouse_exited signal
(cherry picked from commit 4eec0032ea)
2022-01-12 17:28:46 +01:00
zacryol
40b7b575c6
List AnimatedSprite3D in SpriteFrames description
Both AnimatedSprite2D and AnimatedSprite3D use a SpriteFrames resource, but the SpriteFrames
class description currently only lists being used with the 2D variant.

(cherry picked from commit 4391f6a5b5)
2022-01-12 17:28:08 +01:00
Sam
ea2080112d
Fixed typos in MeshDataTool documentation
- Fixed missing "be" typo in MeshDataTool's get_face_edge function
- Corrected documentation to say negative values aren't valid

(cherry picked from commit bc9df365b0)
2022-01-12 17:28:08 +01:00
zacryol
21526aa578
Update description of FileDialog filters property
specify that multiple filetypes/extensions can be included in one filter within the
PackedStringArray, and provide an example

(cherry picked from commit 123cfb4759)
2022-01-12 17:28:07 +01:00
Arnav Vijaywargiya
a51f3f2a58
Fixed incorrect property types
(cherry picked from commit 0c46f73b5e)
2022-01-12 17:28:07 +01:00
bruvzg
6eac65d4fe
Add joystick button index boundary check. Increase max. button number to 128 (max. buttons supported by DirectInput).
(cherry picked from commit 61ea8f8337)
2022-01-12 17:28:07 +01:00
skyace65
7c61e6f72f
Document how to erase project settings with set_setting
(cherry picked from commit 290038952f)
2022-01-12 17:28:07 +01:00
Haoyu Qiu
fe1e6eb995
Explain what 2D cross product means
(cherry picked from commit d54586a8e6)
2022-01-12 17:28:07 +01:00
David Cambré
c2a9de23f5
Update default port_grab_distance_vertical
(cherry picked from commit 38ad72af44)
2022-01-12 17:28:07 +01:00
follower
99416a21fb
Fix the "AudioEffectRecord" descriptions.
The `AudioEffectRecord` effect has no microphone capture-specific functionality--it can be used with any audio bus.

This patch attempts to clarify this fact (so people like me who want to capture audio output know they're in the right place) while still providing a pointer use of the effect with `AudioStreamMicrophone` for microphone capture.

(cherry picked from commit 022f49437b)
2022-01-12 17:28:06 +01:00
Rémi Verschelde
09884f17a3
Revert "Warn when using an AABB or Rect2 with a negative size"
This reverts commit d75e580765.

Fixes #56509.
2022-01-12 17:28:03 +01:00
Rémi Verschelde
1b0ba42ea1
Merge pull request #55268 from Calinou/gpu-particles-macos-performance-warning 2022-01-12 16:51:31 +01:00
Rémi Verschelde
e805ec8574
Merge pull request #54871 from timothyqiu/remove-theme-override
[3.x] Add methods to remove theme overrides
2022-01-11 20:16:05 +01:00
Rémi Verschelde
8a192cd0ab
Merge pull request #55987 from bruvzg/wt🤎3 2022-01-10 16:43:56 +01:00
Rémi Verschelde
edd9534f97
Merge pull request #53900 from ChronicallySerious/update-vcs-1 2022-01-10 12:18:57 +01:00
Rémi Verschelde
cd47ff1411
Merge pull request #56639 from skyace65/Tweenmethods
Add note on when tween methods return false (3.x)
2022-01-09 19:14:08 +01:00
skyace65
4bd1ce49e6 Add note om when tween methods return false (3.x) 2022-01-08 21:51:30 -05:00
Haoyu Qiu
dd462f512d Misc documentation improvements 2022-01-08 22:39:00 +08:00
Rémi Verschelde
01fef99749
Merge pull request #56325 from pycbouh/editor-resource-picker-needs-type-3.x 2022-01-07 16:13:46 +01:00
Rémi Verschelde
4737f563df
Fixup class reference after #54824 2022-01-07 15:25:28 +01:00
Rémi Verschelde
aad12a2df5
Merge pull request #54824 from LightningAA/backport-gradient-texture-2d 2022-01-07 14:47:44 +01:00
Rémi Verschelde
defb801120
i18n: Sync classref translations with current 3.x codebase 2022-01-07 13:34:14 +01:00
fabriceci
10e63b8dd6 backport moving_platform_apply_velocity_on_leave 2022-01-07 12:54:49 +01:00
Pierre-Thomas Meisels
7dd8e364b1
OSX: Add signing of directory structure in Library when exporting for OSX.
Add exporting of folder structure in PlugIns when exporting for OSX.
2022-01-07 01:15:37 +01:00
Rémi Verschelde
b197de6f5f
Fix typos with codespell
Using codespell 2.1.0.

Method:
```
$ cat > ../godot-word-whitelist.txt << EOF
ang
curvelinear
dof
doubleclick
fave
findn
GIRD
leapyear
lod
merchantibility
nd
numer
ois
ony
que
readded
seeked
statics
synching
te
uint
unselect
webp
EOF

$ codespell -w -q 3 -I ../godot-word-whitelist.txt --skip="./thirdparty,*.po"
$ git diff // undo unwanted changes
```
2022-01-07 00:14:54 +01:00
bruvzg
6f81a8ee2c
Fix multiple missing UTF-8 decoding.
(cherry picked from commit c69e0d16bc)
2022-01-06 21:44:40 +01:00
Rémi Verschelde
5fa1961ee3
Merge pull request #56369 from Rubonnek/expose-string-join 2022-01-06 15:14:18 +01:00
Haoyu Qiu
df527b37d5 Unify similar method descriptions
Notably:

* `Pool*Array.size()` and `Array.size()`.
* Shared methods of `Transform2D` and `Transform`.
* Shared methods of `Vector2` and `Vector3`.

This reduces the Deja Vu when translating the class reference :)
2022-01-06 19:49:05 +08:00
Rémi Verschelde
8f17a4037b
Merge pull request #56466 from Chaosus/vs_uniform_hints_3.x 2022-01-06 09:39:27 +01:00
Wilson E. Alvarez
4106f95f30
Expose autotile_coord parameter in TileMap.set_cellv 2022-01-05 21:24:35 -05:00
kobewi
2dc30888bf
Fix get_v_scroll() desctiption in ItemList
(cherry picked from commit f97ab4a0e4)
2022-01-06 00:28:05 +01:00
Lertsenem
942f15fa4e
Fix error in Vector2.reflect() description
The description was probably copied from Vector3.reflect(), and
unfortunately did not match the 2D behaviour (where n is apparently the
direction vector of the symmetry line, not the normal).

(cherry picked from commit e1bf428cdc)
2022-01-06 00:23:59 +01:00
Hugo Locurcio
8d3e16676d
Document keyboard ghosting caveats in Input and InputEvent
This also adds recommendations for choosing between
`is_physical_key_pressed()` and `is_key_pressed()`.

(cherry picked from commit d01e22f187)
2022-01-06 00:21:37 +01:00
skyace65
098a8dab0d
Add warning to only use convex hull points when setting the point property for convex polygon shape
(cherry picked from commit 6b18614de7)
2022-01-06 00:21:36 +01:00
skyace65
ea637f641e
State that get static memory usage only works in debug
(cherry picked from commit 32b4edbe4e)
2022-01-06 00:21:36 +01:00
skyace65
97695d3796
Improve mouse input event class reference
(cherry picked from commit 37dfe5c706)
2022-01-06 00:21:36 +01:00
Hugo Locurcio
299d277c9c
Warn when using GPU-based particles on macOS due to low performance
On macOS, Particles rendering is much slower than CPUParticles
due to transform feedback being implemented on the CPU instead
of the GPU.
2022-01-06 00:10:32 +01:00
Rémi Verschelde
91c5a336e8
Merge pull request #55718 from bruvzg/oversampling_override 2022-01-06 00:07:48 +01:00