Rémi Verschelde
84290fe4b1
Merge pull request #57623 from akien-mga/core-math-struct-em-all
2022-02-04 19:02:57 +01:00
Rémi Verschelde
5ddb518496
Core: Make all Variant math types structs
...
Some were declared as structs (public by default) and others as classes
(private by default) but in practice all these math types exposed as
Variants are all 100% public.
2022-02-04 16:48:24 +01:00
Rémi Verschelde
e223bad86d
Core: Move Vector2i to its own vector2i.h
header
...
Also reduce interdependencies and clean up a bit.
2022-02-04 16:32:21 +01:00
Fabio Alessandrelli
d219547c96
[Net] New replication interface, spawner and synchronizer nodes.
...
Initial implementation of the MultiplayerReplicationInterface and its
default implementation (SceneReplicationInterface).
New MultiplayerSpawner node helps dealing with instantiation of scenes
on remote peers (e.g. clients).
It supports both custom spawns via a `_spawn_custom` virtual function,
and optional auto-spawn of known scenes via a TypedArray<PackedScenes>
property.
New MultiplayerSynchornizer helps synchronizing states between the local
and remote peers, supports both sync and spawn properties and is
configured via a `SceneReplicationConfig` resource.
It can also sync via path (i.e. without being spawned by a
MultiplayerSpawner if both peers has it in tree, but will not send the
spawn state in that case, only the sync one.
2022-02-04 14:56:30 +01:00
Rémi Verschelde
5f56d385b0
Core: Move Rect2i to its own rect2i.h
header
...
And take the opportunity to improve interdependencies a bit with forward
declares where possible.
2022-02-04 14:17:30 +01:00
bruvzg
244db37508
Cleanup and move char functions to the char_utils.h
header.
2022-02-04 11:35:01 +02:00
Rémi Verschelde
b68db2f98a
Merge pull request #57571 from Haydoggo/improved-expression
2022-02-04 09:30:50 +01:00
Hayden Leete
018de19eba
Added hex and bin literal support to Expression parser
...
fixed formatting
2022-02-04 10:49:19 +13:00
Rémi Verschelde
f8f19b313d
Merge pull request #57562 from AnilBK/string-add-contains
...
String: Add contains().
2022-02-03 22:21:24 +01:00
Anilforextra
adbe948bda
String: Add contains().
2022-02-04 01:28:02 +05:45
Rémi Verschelde
7191605324
Merge pull request #57587 from bruvzg/gde_fix_ptr_and_enum_returns
...
[GDExtension] Fix registration of functions with enum or native pointer return type.
2022-02-03 20:36:59 +01:00
Rémi Verschelde
bf0253bab9
Merge pull request #56764 from madmiraal/fix-45592-2
2022-02-03 18:10:30 +01:00
bruvzg
ddd96b3059
[GDExtension] Fix registration of functions with enum or native pointer return type.
2022-02-03 16:03:23 +02:00
Fabio Alessandrelli
ac4fb2996b
[Net] Non-blocking request in HTTPClientTCP.
...
HTTPClientJavaScript already supports non-blocking requests.
2022-02-03 02:45:30 +01:00
Fabio Alessandrelli
6ff753675a
Merge pull request #56771 from mhilbrunner/unacceptable
...
Verify custom HTTP headers, fix off by one error
2022-02-02 18:28:30 +01:00
Rémi Verschelde
050908626f
Merge pull request #57526 from tavurth/bugfix/high-macos-cpu-usage
2022-02-02 10:16:24 +01:00
Will Whitty
c37bd41c79
Increase RemoteDebuggerPeerTCP poll to 6.9ms
...
Fix high CPU usage on MacOS by reverting the polling for Network
debugging to match 144hz refresh rate.
2022-02-01 23:35:30 +03:00
Anilforextra
fc27636999
Vectors: Use clear() and has().
...
Use clear() instead of resize(0).
Use has() instead of "find(p_val) != -1".
2022-02-02 00:11:09 +05:45
Rémi Verschelde
8c7cd904f5
Merge pull request #57469 from Sauermann/fix-rect2i-intersect
2022-02-01 00:05:02 +01:00
Markus Sauermann
23a4fe5b27
Fix incorrect Rect2i calculations: intersects and encloses
...
Clarify expand documentation
2022-01-31 19:03:57 +01:00
bruvzg
8e79c5fb8d
Add support for the escaped UTF-16 and UTF-32 Unicode characters in the scripts and expressions.
2022-01-30 20:16:04 +02:00
Hugo Locurcio
736ac25306
Rename the physics server run_on_thread
project settings
...
`run_on_separate_thread` is more explicit.
2022-01-29 17:35:50 +01:00
Nathan Franke
8a0a3accee
simplify formatting scripts, add a clang-tidy script, and run clang-tidy
2022-01-29 04:41:03 -06:00
Fabio Alessandrelli
49297d937c
[Net] Simplify IP resolution code, fix caching.
...
First, we should not insert into cache if the hostname resolution has
failed (as it might be a temporary internet issue), second, the async
resolver should also properly insert into cache.
Took the chance to remove some duplicate code with critical section in
it at the cost of little performance when calling the blocking
resolve_hostname function.
2022-01-29 01:56:36 +01:00
Rémi Verschelde
9686d680b7
Merge pull request #57116 from bruvzg/win_net_share
2022-01-28 11:03:23 +01:00
Rémi Verschelde
e6caaf4c80
Merge pull request #57205 from TechnoPorg/variant-template-cast
...
Allow method binds to take Object subclasses as arguments
2022-01-27 23:46:37 +01:00
Rémi Verschelde
899cd34426
Merge pull request #57281 from Rubonnek/rename-subsequence
2022-01-27 11:03:13 +01:00
Max Hilbrunner
3ef5a97505
Verify custom HTTP headers, fix off by one error
2022-01-27 03:22:37 +01:00
Max Hilbrunner
3a83872d26
HTTP comment cleanup
2022-01-27 03:22:37 +01:00
Max Hilbrunner
5deb5ebf23
Expose Transform3D::sphere_interpolate_with()
2022-01-27 02:53:20 +01:00
Wilson E. Alvarez
3eb5e0ac50
Rename String::is_subsequence_ofi to String::is_subsequence_ofn
2022-01-26 18:03:56 -05:00
Rémi Verschelde
d74d4cbdff
Merge pull request #54173 from nathanfranke/fix-exact-match
2022-01-26 13:35:36 +01:00
TechnoPorg
051ef479c9
Allow method binds to take Object subclasses as arguments
...
This commit adds a condition to VariantCaster that casts Variants of type OBJECT to any type T, if T is derived from Object.
This change enables a fair bit of code cleanup. First, the Variant implicit cast operators for Node and Control can be removed, which allows for some invalid includes to be removed. Second, helper methods in Tree whose sole purpose was to cast arguments to TreeItem * are no longer necessary.
A few small changes also had to be made to other files, due to the changes cascading down all the includes.
2022-01-25 09:03:36 -07:00
bruvzg
9456454109
Fix translation with multiple sources for the same language.
...
Remove unnecessary locale length checks.
Add "C" -> "en" locale remap.
2022-01-24 18:58:16 +02:00
bruvzg
cba8280515
[Windows] Add support for handling network share paths.
2022-01-24 16:22:59 +02:00
Nathan Franke
dc1c4cfbfa
Fix action exact match
2022-01-24 05:55:37 -06:00
Rémi Verschelde
57a057f7ff
Merge pull request #56754 from madmiraal/fix-45592
2022-01-24 10:05:42 +01:00
Rémi Verschelde
ce42ab238a
Merge pull request #56931 from lyuma/etcpak_po2
...
Enforce mult-of-4 requirements on etcpak input.
2022-01-23 09:31:35 +01:00
Lyuma
b1b20f5f91
Pad etcpak input to 4x4 blocks. Fixes #49981
2022-01-22 17:20:17 -08:00
Fabio Alessandrelli
01e5e98312
[Net] Fix get_response_body_length for large files.
...
Parsing was fixed, but not the return value for the exposed getter.
2022-01-23 01:30:35 +01:00
Rémi Verschelde
668d6a1c5c
Merge pull request #56337 from cdemirer/fix-array-dictionary-id
2022-01-23 00:46:53 +01:00
kobewi
f056cb8ebc
Don't sort printed Dictionary
2022-01-22 13:45:02 +01:00
Rémi Verschelde
73d00131c6
Merge pull request #35012 from Xrayez/press-any-key
2022-01-20 22:51:01 +01:00
Rémi Verschelde
cfb986c631
Merge pull request #51452 from omar-polo/fix-macros
2022-01-20 22:50:39 +01:00
Ignacio Roldán Etcheverry
0e659b4230
Fix false reporting unclaimed StringName at exit due to static refs
2022-01-20 22:09:03 +01:00
Rémi Verschelde
d681d99e12
Merge pull request #52134 from RandomShaper/fix_naming
2022-01-20 22:01:37 +01:00
Omar Polo
bd448e5535
Rename or refactor macros to avoid leading underscores
...
These are not used consistently and some can conflict with
system-specific defines. While here, also delete some unused macros.
2022-01-20 20:29:15 +01:00
Andrii Doroshenko (Xrayez)
5d17fe7d0f
Add Input.is_anything_pressed
method
2022-01-20 20:55:14 +02:00
Pedro J. Estébanez
7b0ed2aa5e
Rename Variant::is_ref() to is_ref_counted()
2022-01-20 18:46:25 +01:00
Rémi Verschelde
9e0973ca23
Merge pull request #56972 from lawnjelly/warn_unused
2022-01-20 15:34:41 +01:00
lawnjelly
b411a731fe
Add nodiscard to core math classes to catch c++ errors.
...
A common source of errors is to call functions (such as round()) expecting them to work in place, but them actually being designed only to return the processed value. Not using the return value in this case in indicative of a bug, and can be flagged as a warning by using the [[nodiscard]] attribute.
2022-01-20 13:07:49 +00:00
strank
88eb9f7aef
Delete orphaned property default for exit_code which is not exposed any more.
2022-01-19 23:25:54 -05:00
bruvzg
de48d5101b
Fix locale always selecting translation instead of "en", when no match found.
2022-01-19 16:46:48 +02:00
K. S. Ernest (iFire) Lee
a6f34ea2d0
Make add_importer and add_post_importer_plugin override existing importers.
2022-01-19 04:53:28 -08:00
Rémi Verschelde
ce2b5bdfa8
Merge pull request #52969 from bruvzg/locale_detection
2022-01-18 15:43:04 +01:00
Rémi Verschelde
28cd81c581
Merge pull request #56896 from akien-mga/dictionary-improve-VariantWriter-and-docs
2022-01-18 15:33:00 +01:00
Rémi Verschelde
fd5fb7d64a
Merge pull request #56899 from touilleMan/fix-editor_node-set_exit_code
2022-01-18 14:48:55 +01:00
bruvzg
40c56ed410
Improve locale detection.
...
Use separate language, script and country lists.
Add locale selection dialog and property hint.
2022-01-18 14:30:00 +02:00
Rémi Verschelde
9912492e93
Merge pull request #56668 from akien-mga/array-slice-nicer-bound-checks
2022-01-18 13:22:35 +01:00
Emmanuel Leblond
2ec7c6a6bc
Replace use of OS::set_exit_code()
by SceneTree::quit()
in EditorNode
2022-01-18 13:09:30 +01:00
Rémi Verschelde
8898d6dadc
Dictionary: Serialize empty dict as {}
instead of {\n}
...
Also make sure to always convert multiline dictionaries to a single line for
its EditorHelp representation, as multiline values break formatting.
2022-01-18 11:31:21 +01:00
Rémi Verschelde
ff19feb8b8
Merge pull request #55939 from cdemirer/validated-array-add-fix
...
Fix validated version of array addition
2022-01-17 21:08:48 +01:00
cdemirer
fbe903909d
Fix validated version of array addition
2022-01-18 03:00:39 +08:00
Rémi Verschelde
24f8a5979c
Merge pull request #56809 from aaronfranke/replace-num-real
2022-01-17 16:55:34 +01:00
Rémi Verschelde
d9a4ff7583
Merge pull request #55020 from bruvzg/vlk_device_surface_check
2022-01-17 13:34:23 +01:00
Rémi Verschelde
8bdef23f7f
Merge pull request #56012 from bruvzg/wt 🤎 4
2022-01-17 13:26:15 +01:00
Aaron Franke
13939734e0
Replace String::num_real code with a wrapper around String::num
2022-01-15 00:21:49 -06:00
Hugo Locurcio
40be15920f
Remove support for PVRTC texture encoding and decoding
...
On the only platform where PVRTC is supported (iOS),
ETC2 generally supersedes PVRTC in every possible way. The increased
memory usage is not really a problem thanks to modern iOS' devices
processing power being higher than its Android counterparts.
2022-01-14 21:08:22 +01:00
Rémi Verschelde
d5fb68bbae
Merge pull request #56779 from aaronfranke/rect2-grow
2022-01-14 20:56:03 +01:00
Marcel Admiraal
f41c72c538
Fix Actions mapped to triggers not using the full range
2022-01-14 15:36:20 +00:00
Aaron Franke
252c803d94
Remove zero size checks from Rect2 grow methods
2022-01-14 00:45:05 -06:00
Marcel Admiraal
5c3600b29f
Fix mouse velocity not changing fast enough
...
- Uses all accumulated movements when calculating velocity
- Discards old accumulated movements
- Sets last mouse velocity to zero when there is no movement
2022-01-13 18:51:34 +00:00
Marcel Admiraal
5250cdd150
Use mouse event relative motion to calculate mouse velocity
2022-01-13 15:23:21 +00:00
Rémi Verschelde
dbab0a9487
Merge pull request #56740 from AnilBK/camera-pre-allocate
2022-01-13 11:13:31 +01:00
Anilforextra
8a9c9a67ef
CameraMatrix: Pre-allocate Vector in get_projection_planes().
2022-01-13 10:14:59 +05:45
Rémi Verschelde
585231a172
Merge pull request #56492 from akien-mga/remove-author-docstrings
2022-01-12 15:24:17 +01:00
Rémi Verschelde
189662e5bd
Merge pull request #56696 from AnilBK/use-init-lists
2022-01-12 10:04:45 +01:00
Anilforextra
6c3a0460a8
Use List Initializations for Vectors.
2022-01-12 10:15:12 +05:45
Rémi Verschelde
a074ceefcd
Merge pull request #56130 from Faless/mbedtls/2.28.0
2022-01-11 15:03:28 +01:00
Rémi Verschelde
46624388d4
Merge pull request #56322 from madmiraal/fix-42450
2022-01-11 11:33:59 +01:00
Rémi Verschelde
c6cefb1b79
Array
: Relax slice
bound checks to properly handle negative indices
...
The same is done for `Vector` (and thus `Packed*Array`).
`begin` and `end` can now take any value and will be clamped to
`[-size(), size()]`. Negative values are a shorthand for indexing the array
from the last element upward.
`end` is given a default `INT_MAX` value (which will be clamped to `size()`)
so that the `end` parameter can be omitted to go from `begin` to the max size
of the array.
This makes `slice` works similarly to numpy's and JavaScript's.
2022-01-10 22:42:03 +01:00
Rémi Verschelde
e6cc0ff1a5
Merge pull request #56666 from bruvzg/joy_button_fix
2022-01-10 16:22:43 +01:00
bruvzg
61ea8f8337
Add joystick button index boundary check. Increase max. button number to 128 (max. buttons supported by DirectInput).
2022-01-10 14:39:05 +02:00
Haoyu Qiu
af67e4c291
Fix crash on importing FBX file
2022-01-10 18:24:31 +08:00
Rémi Verschelde
fcc2648e18
Fix missing arg name in bindings for GDExtension API
2022-01-07 14:24:06 +01:00
Rémi Verschelde
e1766da4bd
Merge pull request #53618 from aaronfranke/signed-angle-vec3i
...
Add length and length_squared to Vector2i/3i
2022-01-07 01:14:29 +01:00
Rémi Verschelde
b008cb8df6
Merge pull request #55877 from aaronfranke/slerp-same-len
2022-01-07 00:44:26 +01:00
Rémi Verschelde
a01b18a476
Fix typos with codespell
...
Using codespell 2.1.0.
Method:
```
$ cat > ../godot-word-whitelist.txt << EOF
ang
ans
ba
curvelinear
dof
doubleclick
fave
findn
gird
inout
leapyear
lod
merchantibility
nd
numer
ois
ony
que
readded
seeked
statics
2022-01-07 00:12:09 +01:00
Aaron Franke
064036d786
Allow Vector2/3 slerp values to have any length
2022-01-06 11:12:59 -08:00
Aaron Franke
2c52f16464
Add length and length_squared to Vector2i/3i
2022-01-06 10:06:56 -08:00
Aaron Franke
05ce2c80bb
Rename Variant enum members in resource_format_binary.cpp
2022-01-06 08:12:26 -08:00
Rémi Verschelde
8d83da5bf9
Merge pull request #56224 from Calinou/variant-rename-packed-array-constants
2022-01-06 17:08:36 +01:00
Rémi Verschelde
f57bdf13af
Merge pull request #50493 from timothyqiu/local-vector-list-init
2022-01-06 16:51:57 +01:00
bruvzg
c69e0d16bc
Fix multiple missing UTF-8 decoding.
2022-01-06 14:35:22 +02:00
Rémi Verschelde
b238218363
Merge pull request #55851 from Chaosus/better-completion-options-list_rebased
2022-01-06 09:40:44 +01:00
Rémi Verschelde
0157742422
Merge pull request #53434 from Faless/io/4.x_file_access_compressed
...
[File] Fix FileAccessCompressed::get_buffer return value.
2022-01-06 09:20:27 +01:00
Rémi Verschelde
6af77c7b09
Merge pull request #53684 from TokageItLab/orthogonal-mode
2022-01-05 16:05:40 +01:00
Haoyu Qiu
c0d3bdc0ca
Add list initialization support for Vector & LocalVector
2022-01-05 20:42:09 +08:00
Rémi Verschelde
ba2bdc478b
Style: Remove inconsistently used @author
docstrings
...
Each file in Godot has had multiple contributors who co-authored it over the
years, and the information of who was the original person to create that file
is not very relevant, especially when used so inconsistently.
`git blame` is a much better way to know who initially authored or later
modified a given chunk of code, and most IDEs now have good integration to
show this information.
2022-01-04 20:42:50 +01:00
Rémi Verschelde
8db6fb18c9
Merge pull request #56484 from KoBeWi/your_callable_is_invalid
2022-01-04 16:46:05 +01:00