ocean (they/them)
ef2aeca5df
Add error highlighting for duplicate variables/constants
2022-11-18 15:20:26 -05:00
Rémi Verschelde
c3132b42cb
Merge pull request #66816 from raulsntos/dotnet/readonly
...
Add `readonly` to C# methods and types that don't mutate
2022-11-18 16:20:29 +01:00
ocean (they/them)
13be0ab733
Fix ability to overload "script" variable
2022-11-17 17:21:12 -05:00
Fabio Alessandrelli
92ed27d8f6
[MP] Improve network profiler.
...
Fix RPC profiler and add average RPC size.
Improve bandwidth debugger to account for all multiplayer traffic
(excluding the lower level peer transformations).
2022-11-17 03:14:21 +01:00
Yuri Rubinsky
95a85c9058
Merge pull request #68717 from rune-scape/rune-compiler-regression
...
Fixes https://github.com/godotengine/godot/issues/68716
2022-11-16 08:32:00 +03:00
Rune
61df8f4484
GDScript Compiler: regression fix
2022-11-15 22:20:49 -06:00
Rémi Verschelde
4935493f72
Merge pull request #67948 from DeeJayLSP/split_webp
...
Overhaul WebP packer and split compression options
2022-11-15 16:25:40 +01:00
Rémi Verschelde
2d3197c525
Merge pull request #65372 from Mickeon/fix-treat-warnings-as-errors
...
Fix "Treat Warnings as Errors" Project Setting doing nothing
2022-11-15 16:25:25 +01:00
Rémi Verschelde
c52d8369ce
Merge pull request #66516 from DeeJayLSP/update_theora
...
Update libtheora to GIT (2020.10)
2022-11-15 16:25:05 +01:00
Yuri Rubinsky
e2b60798fe
Merge pull request #68663 from Chaosus/gds_fix_completion
2022-11-15 18:21:20 +03:00
DeeJayLSP
da132f3266
Overhaul WebP packer and split compression options
2022-11-15 11:52:22 -03:00
Rémi Verschelde
077d4831a4
Merge pull request #68671 from raulsntos/dotnet/c-escape-hell
...
C#: Remove "?" from CEscape and CUnescape
2022-11-15 10:28:53 +01:00
Raul Santos
ac8ea5c821
C#: Remove "?" from CEscape and CUnescape
2022-11-15 01:40:12 +01:00
Rémi Verschelde
80dbcfd995
Merge pull request #68657 from Sauermann/fix-redundant-initialization
...
Remove redundant non-trivial Variant types initializations
2022-11-14 23:23:54 +01:00
Rémi Verschelde
d7d34e4bc1
Merge pull request #68658 from Calinou/message-fix-periods
...
Fix periods in editor strings and messages
2022-11-14 23:22:53 +01:00
Fabio Alessandrelli
aa4c286808
Merge pull request #68488 from dsnopek/master-webxr-no-exit-runtime
...
Fix WebXR after changing Emscripten configuration noExitRuntime to false
2022-11-14 21:31:58 +01:00
Yuri Rubinsky
65d14679e7
Fix completion popup for the variables created with `get_node` call
2022-11-14 23:27:59 +03:00
Raul Santos
71df6d66ae
Add `readonly` to C# methods and types that don't mutate
...
Also removes a few unnecessary temp variables
2022-11-14 20:32:20 +01:00
Hugo Locurcio
efe3220b2e
Fix periods in editor strings and messages
...
- Ensure all strings with ellipsis end with 3 periods instead of 2.
- Fix extraneous period in "Error calling from signal '...' to callable"
messages.
2022-11-14 19:36:36 +01:00
Markus Sauermann
3b14f0334c
Remove redundant Variant-types initializations
2022-11-14 19:35:19 +01:00
Rémi Verschelde
4d9adfea23
Merge pull request #65712 from Chaosus/gds_fix_completion
...
fix https://github.com/godotengine/godot/issues/64477
2022-11-14 17:20:54 +01:00
Rémi Verschelde
963ffd8b94
Merge pull request #68374 from rune-scape/rune-gdscript-compiler-bugfixes
...
Fixes https://github.com/godotengine/godot/issues/65953
Fixes https://github.com/godotengine/godot/issues/68291
Fixes https://github.com/godotengine/godot/issues/68561
Fixes https://github.com/godotengine/godot/issues/64915
Fixes https://github.com/godotengine/godot/issues/61848
Fixes https://github.com/godotengine/godot/issues/61268
2022-11-14 17:15:02 +01:00
Fabio Alessandrelli
67265d14f7
[MP] Move engine and editor profilers to a plugin.
...
Also refactor the editor plugin out of the ReplicationEditor.
2022-11-14 15:09:00 +01:00
Rémi Verschelde
471c42ee1f
Merge pull request #64530 from bruvzg/svg_in_ot
2022-11-14 14:32:22 +01:00
Rémi Verschelde
038ee04b8f
Merge pull request #67975 from BastiaanOlij/implement_uv2_on_primitives
...
Add optional UV2 logic for lightmapping to primitive shapes
2022-11-14 11:08:42 +01:00
Rémi Verschelde
4c1a858d5d
Merge pull request #68594 from dzil123/fix_wtype_limits_warning_openxr
...
Fix -Wtype-limits warning in openxr_interface.cpp
2022-11-13 15:52:29 +01:00
Rémi Verschelde
d62aef71f6
Merge pull request #68603 from HolonProduction/zip
...
Fix problem with ZIPPacker
2022-11-13 15:52:23 +01:00
Rémi Verschelde
d75018bfd3
Merge pull request #60684 from trollodel/lightweight_editor_plugin
...
Use forward-declarations in EditorPlugin where possible
2022-11-13 15:51:29 +01:00
HolonProduction
ab23736751
Fix problem with ZIPPacker
...
The Zipfile Reference should be set to `NULL` when the `ZIPPacker` is closed not when a file in it is closed.
When calling `ZIPPacker.close` without this nothing happens because `zf` is `NULL`. (7zip could still extract the file but warned about unexpected end of file.)
2022-11-13 12:50:40 +01:00
Rune
bce6f1792e
GDScript compiler subclass bugfixes
2022-11-13 02:29:21 -08:00
Bastiaan Olij
7658dc6e7e
Add optional UV2 logic for lightmapping to primitive shapes
2022-11-13 19:28:10 +11:00
dzil123
2ba5aaa2fc
Fix -Wtype-limits warning in openxr_interface.cpp
2022-11-12 20:46:24 -08:00
B. Ogan Mancarcı
fc260cade8
fix typo in zipreader doc
2022-11-12 14:24:42 -08:00
trollodel
ba9e619b51
Use forward-declarations in EditorPlugin where possible
2022-11-11 20:25:51 +01:00
avemort
8ef1719945
Add index check to OpenXRInterface::get_projection_for_view and OpenXRInterface::get_transform_for_view
2022-11-11 11:00:34 -03:00
David Snopek
a17e93cec2
Fix WebXR after changing Emscripten configuration noExitRuntime to false
2022-11-10 16:10:47 -06:00
Aaron Franke
73c673a614
Change the way GLTFDocumentExtension classes are registered
...
Also move GLTFDocumentExtension into the extensions folder
2022-11-09 20:58:48 -06:00
David Snopek
c767cc16ea
[openxr] Remove unnecessary fallbacks for native handles on X11
2022-11-09 08:09:07 -06:00
Aaron Franke
a3e52925bf
Fix default values on virtual classes causing errors in projects
2022-11-09 01:59:53 -06:00
David Snopek
23603e409c
Add support for OpenGL to OpenXR
2022-11-08 18:47:11 -06:00
Yuri Rubinsky
f11b66b084
Fix named enums to use int64 type
2022-11-08 11:20:28 +03:00
Rémi Verschelde
7d4e3a0ea2
Merge pull request #68202 from zaevi/fix_Web_WebSocket_failed
...
Fix WebSocket connection failed on Web.
2022-11-07 08:47:03 +01:00
Ignacio Roldán Etcheverry
ec521a405a
Merge pull request #68253 from dzil123/fix_array_shuffle
...
Fix c# Array.Shuffle incorrect mono bindings
2022-11-04 23:54:53 +01:00
dzil123
2fd2a16d92
Fix c# Array.Shuffle incorrect mono bindings
2022-11-04 06:25:31 -07:00
bruvzg
d77902f33a
Implement SVG in OT support.
2022-11-04 14:10:54 +02:00
Rémi Verschelde
f617c30a1e
Merge pull request #68080 from akien-mga/vulkan-sdk-1.3.231.1
...
vulkan: Update all components to Vulkan SDK 1.3.231.1
2022-11-04 10:04:55 +01:00
rsjtdrjgfuzkfg
4243b85990
OpenXR: support XR_KHR_android_create_instance
...
This commit adds support for the OpenXR extension
XR_KHR_android_create_instance, which seems to be required on Pico
devices.
2022-11-04 01:57:48 +01:00
Rémi Verschelde
c98d6142d0
Merge pull request #68102 from BastiaanOlij/fix_render_issues_xr
...
Fix several render issues found while debugging XR
2022-11-03 22:37:42 +01:00
Ignacio Roldán Etcheverry
c0de8d32d5
Merge pull request #68092 from raulsntos/dotnet/variant-from-array
...
C#: Add implicit conversion from arrays to Variant
2022-11-03 14:46:26 +01:00
Rémi Verschelde
0181d005c9
vulkan: Update all components to Vulkan SDK 1.3.231.1
...
Updates to volk, vulkan headers, `vk_enum_string_helper.h`, glslang,
spirv-reflect.
No update to VMA which still has 3.0.1 as it's last tagged release.
2022-11-03 12:20:46 +01:00
Zae
0a1a40e6eb
Fix WebSocket connection failed on Web.
2022-11-03 14:29:39 +08:00
Aaron Franke
9e952c8386
Allow getting Quaternion rotation in different Euler orders
2022-11-02 19:20:10 -05:00
Rémi Verschelde
08d56ac2f1
Merge pull request #66747 from aaronfranke/move-euler-order
...
Move EulerOrder enum to math_defs.h and global scope
2022-11-02 22:37:12 +01:00
Raul Santos
99260d972f
C#: Add implicit conversion from arrays to Variant
...
Adds an implicit conversion from supported array types (the ones that
are equivalent to `Packed*Array` types in Godot) to Variant.
2022-11-02 21:46:32 +01:00
Aaron Franke
8556fdd4bc
Move EulerOrder enum to math_defs.h and global scope
2022-11-02 13:44:13 -05:00
Rémi Verschelde
f7c611ab71
Style: Misc docs and comment style and language fixes
...
- Removed empty paragraphs in XML.
- Consistently use bold style for "Example:", on a new line.
- Fix usage of `[code]` when hyperlinks could be used (`[member]`, `[constant]`).
- Fix invalid usage of backticks for inline code in BBCode.
- Fix some American/British English spelling inconsistencies.
- Other minor fixes spotted along the way, including typo fixes with codespell.
- Don't specify `@GlobalScope` for `enum` and `constant`.
2022-11-02 19:01:18 +01:00
Rémi Verschelde
eefba5bc33
Merge pull request #65062 from KoBeWi/RedoUndo
...
Unify usage of undo_redo in editor
2022-11-02 18:54:05 +01:00
Rémi Verschelde
30e4e7c083
Merge pull request #67917 from Faless/mp/4.x_auth
...
[MP] Add peer authentication support to the default MultiplayerAPI.
2022-11-02 18:53:38 +01:00
Rémi Verschelde
d2e1b4b9f0
Merge pull request #68118 from aaronfranke/quat-from-euler
...
Replace Quaternion Euler constructor with `from_euler` method
2022-11-02 18:51:59 +01:00
kobewi
15831e381b
Unify usage of undo_redo in editor
2022-11-02 17:51:58 +01:00
Fabio Alessandrelli
33dda2e68a
[MP] Remove connection state signals from MultiplayerPeer.
...
Now handled directly by the MultiplayerAPI implementation.
2022-11-02 15:17:23 +01:00
Fabio Alessandrelli
9773803e4e
[MP] Add optional authentication to SceneMultiplayer.
...
Add few methods to allow peers to exchange authentication information.
- `set_auth_callback(callback)`: Enable the authentication features.
The callback is a `Callable` that accepts an `int` (the peer ID), and
a `PackedByteArray` of data.
- The `peer_authenticating(id)` signal will be emitted instead of
`peer_connected` when a new peer connects.
- Use `send_auth(id: int, data: PackedByteArray)` to exchange data.
- Call `complete_auth(id: int)` when the authentication process is
complete and you expect to start receiving game data.
- The `peer_connected` signal will be emitted as soon as both parties
complete the authentication.
- Use `disconnect_peer(id)` to disconnect a connected peer.
- If the `peer_connected` signal didn't fire for that peer (i.e. it was
still in the authentication phase), the `peer_auth_failed` signal will
be emitted instead of `peer_disconnected`.
2022-11-02 15:17:23 +01:00
Rémi Verschelde
7eb44fa47d
Merge pull request #68125 from kleonc/range-fix-single-arg-optimized-type-mismatch
...
[GDScript] Fix type mismatch in optimized single arg `range`
2022-11-02 14:18:24 +01:00
Rémi Verschelde
34c66fac0a
Merge pull request #68161 from Chaosus/dotnet_quaternion_constructor
...
Add missed Quaternion constructor to C#
2022-11-02 14:18:19 +01:00
Rémi Verschelde
b3c2db954f
Merge pull request #68136 from qarmin/projection_not_equal
...
Support for checking that Projection is(not) null
2022-11-02 14:17:29 +01:00
Rémi Verschelde
2fd2a04efc
Merge pull request #68131 from benbusby/hotfix/zippacker_null_check
...
Remove `zf != NULL` check from `ZIPPacker::start_file`
2022-11-02 14:17:07 +01:00
Rémi Verschelde
7c0e46f1c1
Merge pull request #68040 from adamscott/fix-property-getter-return-type
...
Fix property getter with custom return type
2022-11-02 14:16:37 +01:00
Rémi Verschelde
a30ed00fb1
Merge pull request #68057 from Klowner/tga-truncated-crash-fix-67985
...
Add buffer size check to Image.load_tga_from_buffer(). Fixes #67985
2022-11-02 14:15:40 +01:00
Rémi Verschelde
1bd7f2110a
Merge pull request #68110 from bruvzg/hexbox_ver
...
[TextServer] Fix hex code box positions in vertical text layout.
2022-11-02 14:15:23 +01:00
kleonc
c268e3a235
GDScript Fix type mismatch in optimized single arg `range`
2022-11-02 13:20:47 +01:00
Yuri Rubinsky
9487a6ea32
Add missed Quaternion constructor to C#
2022-11-02 11:41:32 +03:00
Rafał Mikrut
d7d130295e
Support for checking that Projection is(not) null
2022-11-01 20:49:52 +01:00
Fabio Alessandrelli
0a0e99cadc
Merge pull request #67982 from Faless/mp/4.x_disconnect_close
...
[MP] Add MultiplayerPeer disconnect_peer, close.
2022-11-01 20:35:04 +01:00
Ben Busby
3b37f50e50
Remove `zf != NULL` check from `ZIPPacker::start_file`
...
This check was removed because it introduces a bug which prevents
ZIPPacker from actually adding any files, since it must be opened before
adding any files (and therefore shouldn't be NULL at the start of
`start_file`).
2022-11-01 11:37:02 -06:00
Aaron Franke
83634119d4
Replace Quaternion Euler constructor with `from_euler` method
2022-11-01 09:28:12 -05:00
bruvzg
02a4b3f859
[TextServer] Fix hex code box positions in vertical text layout.
2022-11-01 11:51:29 +02:00
Bastiaan Olij
a4e58ec84a
Fix several render issues found while debugging XR
2022-11-01 13:27:03 +11:00
Haoyu Qiu
3b88851e25
Clarify offset parameter behavior in RegEx methods
2022-11-01 09:29:08 +08:00
bruvzg
397fa2fa7a
[TextServer] Fix incorrect line breaks count for embedded objects (e.g. RTL tables).
2022-10-31 17:34:07 +02:00
bruvzg
f0b7ff324c
Improve text line breaking performance for long lines.
2022-10-31 15:35:51 +02:00
Rémi Verschelde
cd25e48456
Merge pull request #67562 from bruvzg/improve_font_packing
...
Improve font glyph cache packing shelf best height fit heuristic.
2022-10-31 14:26:13 +01:00
Rémi Verschelde
d43364e3cc
Merge pull request #67968 from bruvzg/icu72.1
...
ICU: Update to version 72.1
2022-10-31 14:25:37 +01:00
Rémi Verschelde
76ef71bda0
Merge pull request #67585 from bruvzg/fix_no_graphite_build
...
[TextServer] Fix build with disabled graphite.
2022-10-31 14:22:32 +01:00
Rémi Verschelde
ae81a569b9
Merge pull request #67409 from bruvzg/fix_oversampling_rounding
...
[TextServer] Do not round glyph advances / coordinates if font oversampling or bitmap glyph scaling is used.
2022-10-31 14:21:56 +01:00
Rémi Verschelde
5947f22be9
Merge pull request #67578 from KoBeWi/GEDITOR
...
Unify usage of GLOBAL/EDITOR_GET
2022-10-31 13:15:58 +01:00
Rémi Verschelde
1e0edc48b5
Merge pull request #67826 from Chaosus/gds_fix_enum
...
Fix enum type to use int64_t instead of int in GDScript
2022-10-31 13:10:28 +01:00
Rémi Verschelde
be126d42d4
Merge pull request #67588 from KoBeWi/if(!GDVIRTUAL_CALL)don't
...
Simplify GDVIRTUAL_CALL calls
2022-10-31 11:55:56 +01:00
Rémi Verschelde
f4f98c4ecb
Merge pull request #67055 from GuilhermeGSousa/custom-node-export
...
Added custom node export
2022-10-31 11:11:07 +01:00
Rémi Verschelde
213ba46672
Merge pull request #68065 from zCubed3/fix_min_max_crash
...
`GDScriptAnalyzer` Fix math utilities crashing when invalid args are passed
2022-10-31 10:59:27 +01:00
Rémi Verschelde
420eb1aa34
Merge pull request #67445 from Zylann/rename_queue_delete
...
Rename queue_delete => queue_free
2022-10-31 10:51:18 +01:00
Rémi Verschelde
62a778fdd6
Merge pull request #66929 from MladoniSzabi/save_jpeg_file
...
Fixed Image.save_jpg() does not write any file
2022-10-31 10:48:10 +01:00
Rémi Verschelde
b43cc96535
Merge pull request #62695 from Spartan322/relax-constant-asserts
...
Allow non-constant string message for assert
2022-10-31 10:44:56 +01:00
Ignacio Roldán Etcheverry
256c0079b0
Merge pull request #67987 from neikeq/dotnet-more-static-marshaling
...
C#: Reflection-less delegate callables and nested generic Godot collections
2022-10-31 04:21:13 +01:00
zCubed3
b7f0ab13a4
Fix math utility functions crashing when invalid args passed
2022-10-30 15:18:03 -07:00
Mark Riedesel
5cb07486db
Add buffer size check to Image.load_tga_from_buffer(). Fixes #67985
2022-10-30 11:20:50 -05:00
Max Hilbrunner
9fb481334a
Merge pull request #68039 from Anutrix/docs-fix-signal-syntax
...
Fixed signal connection examples to use new callable syntax in the docs
2022-10-30 12:03:37 +01:00
Adam Scott
26f0afdce2
[godot#68001] Fix property getter with custom return type
2022-10-29 20:38:26 -04:00
Anutrix
7984598e33
Fixed signal connection examples to use new callable syntax in the docs
2022-10-30 05:26:46 +05:30
Ignacio Roldán Etcheverry
f66a352c0f
C#: Add Variant conversion callbacks for generic Godot collections
...
This allows using generic Godot collections as type arguments for other
generic Godot collections. This also allows generic Godot collections
as parameter or return type in dynamic Callable invocations.
2022-10-30 01:24:15 +02:00
Ignacio Roldán Etcheverry
282bd37e5c
C#: Remove need for reflection to invoking callable delegates
...
We aim to make the C# API reflection-free, mainly for concerns about
performance, and to be able to target NativeAOT in refletion-free mode,
which reduces the binary size.
One of the main usages of reflection still left was the dynamic
invokation of callable delegates, and for some time I wasn't sure
I would find an alternative solution that I'd be happy with.
The new solution uses trampoline functions to invoke the delegates:
```
static void Trampoline(object delegateObj, NativeVariantPtrArgs args, out godot_variant ret)
{
if (args.Count != 1)
throw new ArgumentException($"Callable expected 1 arguments but received {args.Count}.");
string res = ((Func<int, string>)delegateObj)(
VariantConversionCallbacks.GetToManagedCallback<int>()(args[0])
);
ret = VariantConversionCallbacks.GetToVariantCallback<string>()(res);
}
Callable.CreateWithUnsafeTrampoline((int num) => "Foo" + num, &Trampoline);
```
Of course, this is too much boilerplate for user code. To improve this,
the `Callable.From` methods were added. These are overloads that take
`Action` and `Func` delegates, which covers the most common use cases:
lambdas and method groups:
```
// Lambda
Callable.From((int num) => "Foo" + num);
// Method group
string AppendNum(int num) => "Foo" + num;
Callable.From(AppendNum);
```
Unfortunately, due to limitations in the C# language, implicit
conversions from delegates to `Callable` are not supported.
`Callable.From` does not support custom delegates. These should be
uncommon, but the Godot C# API actually uses them for event signals.
As such, the bindings generator was updated to generate trampoline
functions for event signals. It was also optimized to use `Action`
instead of a custom delegate for parameterless signals, which removes
the need for the trampoline functions for those signals.
The change to reflection-free invokation removes one of the last needs
for `ConvertVariantToManagedObjectOfType`. The only remaining usage is
from calling script constructors with parameters from the engine
(`CreateManagedForGodotObjectScriptInstance`). Once that one is made
reflection-free, `ConvertVariantToManagedObjectOfType` can be removed.
2022-10-30 01:24:15 +02:00