Rémi Verschelde
1654810409
Merge pull request #67469 from anvilfolk/resource-load-clarification
...
Clarified reason why a resource cannot be preload()'ed
2022-10-17 17:31:32 +02:00
Rémi Verschelde
c43ce5e341
Merge pull request #67485 from kdada/kdada/master
...
Fix peer visiblity in SceneReplicationInterface._update_sync_visibility
2022-10-17 17:31:20 +02:00
Rémi Verschelde
f921409984
Merge pull request #67428 from aaronfranke/gltf-additional-data
...
Add a way to store additional data in GLTFState and GLTFNode
2022-10-17 17:30:49 +02:00
Fabio Alessandrelli
adb3d2338e
[WebSocket] Fix client failing to connect to direct IP.
...
The bug was caused by not checking the TCP CONNECTING state
appropriately during the client handshake, and not checking the TCP
CONNECTED state during connection (which is unlikely, but might still
happen).
2022-10-17 12:52:09 +02:00
Bastiaan Olij
1e7f009492
Fix two typos in tracker names and a bug in OpenXR haptic feedback
2022-10-17 20:29:19 +11:00
bruvzg
68ec84cded
[TextServer] Do not round glyph advances / coordinates if font oversampling or bitmap glyph scaling is used.
2022-10-17 10:57:49 +03:00
nikitalita
21341ddaed
Speed up find_texture_pos_for_glyph()
2022-10-16 22:29:26 -07:00
Haoyu Qiu
6db8e79eed
Fix memory leak when _ensure_cache_for_size()
fails
2022-10-17 12:47:38 +08:00
Ignacio Roldán Etcheverry
9afc8337bd
Merge pull request #67440 from raulsntos/dotnet/bindings-conflicts
...
Guard against more potential conflicts in C# bindings generator
2022-10-17 00:28:07 +02:00
João Martins
a0c4002520
Clarified reason why a resource cannot be loaded.
2022-10-16 17:27:00 -04:00
Wei Guo
972242d664
Fix MultiplayerSynchronizer peer visibility
2022-10-16 23:02:31 +08:00
Yuri Rubinsky
04f7207009
Add a Plane(Vector3, Vector3)
constructor for C#
2022-10-16 14:10:58 +03:00
Aaron Franke
a70dce893f
Add a way to store additional data in GLTFState and GLTFNode
2022-10-15 12:04:36 -05:00
Rémi Verschelde
dc4b616596
Merge pull request #63332 from KoBeWi/static_images_aka_photos
...
Make some Image methods static
2022-10-15 12:56:57 +02:00
Rémi Verschelde
96ec73f3ee
Merge pull request #65281 from MisterMX/zip-module
...
Expose minizip API to allow creating zips using scripts
2022-10-15 12:56:26 +02:00
Raul Santos
333f88dc49
Guard against more potential conflicts in C# bindings generator
2022-10-15 12:47:10 +02:00
Marcelo Fernandez
ea6cc3e260
Expose minizip API to allow creating zips using scripts
...
Co-authored-by: Marcelo Fernandez <marcelofg55@gmail.com>
Co-authored-by: James Westman <flyingpimonster@gmail.commail>
Co-authored-by: MisterMX <mbxd12@web.de>
Signed-off-by: MisterMX <mbxd12@web.de>
2022-10-14 21:51:38 +02:00
clayjohn
0a51bb4ca5
Add STATIC_CALLED_ON_INSTANCE warning to highlight
...
when static functions are called directly from objects
2022-10-14 10:43:42 -07:00
Guilherme Sousa
5d06843fcf
Added custom node export
2022-10-14 17:31:00 +02:00
kobewi
072f6feaba
Make some Image methods static
2022-10-14 14:34:15 +02:00
Rémi Verschelde
343bb9c07f
Merge pull request #67361 from clayjohn/GDScript-unused-return-warning
...
Implement RETURN_VALUE_DISCARDED warning in GDscript
2022-10-14 10:19:55 +02:00
clayjohn
be1e9acb7c
Implement RETURN_VALUE_DISCARDED warning in GDscript
2022-10-13 11:56:45 -07:00
Rémi Verschelde
46a1b92bb7
Merge pull request #66294 from reduz/optimize-convex-collision
2022-10-13 20:34:00 +02:00
Juan Linietsky
71d2e38cb5
Optimize Convex Collision
...
Implements the Gauss Mapping optimization to SAT convex collision test.
* Described [here](https://ubm-twvideo01.s3.amazonaws.com/o1/vault/gdc2013/slides/822403Gregorius_Dirk_TheSeparatingAxisTest.pdf ) by Dirk Gregorius.
* Requires adding of face information to edges in MeshData
* Took the chance to convert MeshData to LocalVector for performance.
2022-10-13 19:07:53 +02:00
Rémi Verschelde
01ae26d31b
Merge pull request #67351 from akien-mga/thorvg-0.8.2-cleanup-includes
...
thorvg: Sync with 0.8.2, cleanup SCsub and fix includes
2022-10-13 18:41:40 +02:00
Fabio Alessandrelli
0fe01b6b4a
[WebSocket] Fix potential double free after multiplayer clear.
2022-10-13 18:05:50 +02:00
Fabio Alessandrelli
40d60ca6ae
[WebSocket] Fix debugger implementation.
...
Register module during core initialization so the remote debugger can
properly handle the "wss://" protocol.
2022-10-13 17:25:29 +02:00
Rémi Verschelde
99b450762b
thorvg: Sync with 0.8.2, cleanup SCsub and fix includes
...
We were compiling `src/loaders/external_png` but using the header from
`src/loaders/png`, leading to `-Wodr` warnings.
Remove unused bundled lodepng code since we use `external_png` (libpng).
Whitespace changes are from upstream, will attempt PR'ing a cleanup there for
future updates.
2022-10-13 17:05:41 +02:00
Fabio Alessandrelli
7464f39de8
[WebSocket] Fix Web write mode.
2022-10-13 16:46:48 +02:00
Fabio Alessandrelli
a5d243cac2
[WebSocket] Fix TCP connection being closed while connecting.
...
Fix a bug causing the WebSocketPeer to fail connecting to a remote
server when the TCP 3-way handshake took more than a few milliseconds.
2022-10-13 14:24:54 +02:00
Rémi Verschelde
b9e924c806
Merge pull request #67216 from dotlogix/Bugfix/FixErrorWhenSerializingSignals
...
Fix crash when serializing empty delegates in C#
2022-10-13 09:05:22 +02:00
Alexander Schill
5f47873f10
Adding null check to prevent null reference exception when serializing delegates in C#
2022-10-13 00:19:46 +02:00
Rémi Verschelde
f2248969db
Merge pull request #66952 from bruvzg/macos_net_export
...
Fix macOS .NET export.
2022-10-12 22:52:59 +02:00
Rune
624af7e032
GDScript: fix highlighting '.' after global class name
2022-10-11 22:18:19 -07:00
Fabio Alessandrelli
a8950f98dd
[WebSocket] Refactor websocket module.
...
This commit is a huge refactor of the websocket module.
The module is really old, and some design choices had to be
re-evaluated.
The WebSocketClient and WebSocketServer classes are now gone, and
WebSocketPeer can act as either client or server.
The WebSocketMultiplayerPeer class is no longer abstract, and implements
the Multiplayer API on top of the lower level WebSocketPeer.
WebSocketPeer is now a "raw" peer, like StreamPeerTCP and StreamPeerTLS,
so it emits no signal, and just needs polling to update its internal
state.
To use it as a client, simply call WebSocketPeer.coonect_to_url, then
frequently poll the peer until STATE_OPEN is reached and then you can
write or read from it, or STATE_CLOSED and then you can check the
disconnect code and reason).
To implement a server instead, a TCPServer must be created, and the
accepted connections needs to be provided to
WebSocketPeer.accept_stream (which will perform the HTTP handshake).
A full example of a WebSocketServer using TLS will be provided in the
demo repository.
2022-10-11 15:52:30 +02:00
Micky
fe56c1ff75
Use JSON::stringify
where possible
2022-10-11 00:27:23 +02:00
Rémi Verschelde
8017827144
SCons: Re-enable treating #warning
as error with werror
...
Replace all TODO uses of `#warning` by proper TODO comments, and will open
matching bug reports to keep track of them.
We don't have a great track record fixing TODOs, but I'd wager we're even
worse for fixing these "TODO #warning" so we should prohibit this usage.
2022-10-10 16:12:26 +02:00
Bastiaan Olij
e14717bb2e
Adding support for the OpenXR Display Refresh Rate extension
2022-10-10 20:41:46 +11:00
Bastiaan Olij
7f6c00f41a
Cleanup a bunch of debug messages in OpenXR and change the ones we want to keep to print_verbose
2022-10-10 20:19:18 +11:00
Raul Santos
fbea89d4f1
C#: Generate symbols packages
2022-10-08 13:59:06 +02:00
Rémi Verschelde
62b066dbd6
Fix more MSVC C4702 (unreachable code) warnings
2022-10-07 14:43:59 +02:00
MladoniSzabi
a5c4df7a99
Fixed Image.save_jpg() returning OK but not saving image.
...
The function that was supposed to implement the saving in
image_loader_jpegd was just returning OK without doing anything.
Copied the code from _jpgd_buffer_save_func to _jpgd_save_func but
changed the ImageLoaderJPGOSBufferto a ImageLoaderJPGOSFile to save
to a file instead of memory. Changed the image format from
FORMAT_ETC2_RGB8 to FORMAT_RGB8 since the first one was creating
a weird greyscale interlaced image.
2022-10-07 11:56:51 +01:00
bruvzg
6daf4c6593
[.NET Export] Improve .NET export process.
...
[macOS export] Fix incorrect file placement, search paths and architecture detection.
[macOS export] Automatically detect executable files and set +x flag.
[macOS export] Automatically apply "Disable Library Validation" entitlements when required.
[macOS export] Remove old Mono export code.
Fix folder tree creation for shared objects export.
Add arch suffix to the exported .NET "data" folder name.
Remove old Mono code from .NET "data" folder lookup.
2022-10-07 13:33:06 +03:00
bruvzg
0103af1ddd
Fix MSVC warnings, rename shadowed variables, fix uninitialized values, change warnings=all to use /W4.
2022-10-07 11:32:33 +03:00
VolTer
ac1761c8cd
Fix outdated keywords autocompletion
2022-10-06 23:47:19 +02:00
Rémi Verschelde
74eade929c
Merge pull request #66957 from BastiaanOlij/fix_error_typo_opengl
...
Fixing an incorrect error message in OpenXR
2022-10-06 08:57:12 +02:00
Bastiaan Olij
c6ba626af4
Fixing an incorrect error message in OpenXR reporting missing OpenGL support
2022-10-06 11:15:57 +11:00
Rémi Verschelde
340f62d1ec
.NET: Generate SdkPackageVersions.props from version.py
...
Ensures that the versions always match the Godot version, albeit following
SemVer 2.0 so inserting a dot between "beta" and the build number.
For "stable" status, we omit the suffix as this would be interpreted as a
pre-release build too.
So we have:
| Godot version | Nupkg version |
| -------------- | -------------- |
| 4.0.0-beta | 4.0.0-beta |
| 4.0.0-beta2 | 4.0.0-beta.2 |
| 4.0.0-rc1 | 4.0.0-rc.1 |
| 4.0.0-stable | 4.0.0 |
2022-10-05 20:31:26 +02:00
Rémi Verschelde
5f3439e2d9
Merge pull request #66919 from bruvzg/ts_gde_fix
...
[TextServer GDExtension] Update build scripts and `.gdextension` files to use new target names and arch suffixes.
2022-10-05 11:45:00 +02:00
Rémi Verschelde
5b6ccf2fd2
Merge pull request #66720 from qarmin/unintialized_memory
...
Remove usage of unitialized variables
2022-10-05 11:42:47 +02:00
bruvzg
930be37bb4
[TextServer GDExtension] Update build scripts and .gdextension
files to use new target names and arch suffixes.
2022-10-05 11:41:03 +03: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
52f5a58c38
Merge pull request #66873 from akien-mga/script-tweak-error-invalid-script-type
...
GDScript/C#: Tweak error message for invalid script type for object
2022-10-05 08:38:52 +02:00
Rémi Verschelde
3a2b0ab73d
Merge pull request #66898 from aaronfranke/proj-mat-columns
...
Rename Projection `matrix` to `columns`
2022-10-05 08:35:26 +02:00
Rémi Verschelde
8590721450
Merge pull request #66885 from atirut-w/lsp-doc-fix
...
LSP: Fix GDScript doc comments
2022-10-05 08:31:56 +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
c3e929cce6
Merge pull request #64577 from Calinou/improve-dictionary-printing
...
Improve dictionary printing to avoid confusion with arrays
2022-10-05 08:30:55 +02:00
Rémi Verschelde
75616d60e4
Merge pull request #66841 from jtnicholl/blend_enum_checks
...
Clean up .blend importer to fix unreachable code paths
2022-10-05 08:29:35 +02:00
Atirut Wattanamongkol
f2522adb89
LSP: Fix GDScript doc comments
2022-10-05 11:25:52 +07:00
Bastiaan Olij
c7656978ba
Adding getters to RenderTarget and implementing override functionality for XR
2022-10-05 11:37:49 +11:00
Hugo Locurcio
6afbf0bd5a
Improve dictionary printing to avoid confusion with arrays
...
- Add leading and trailing spaces within dictionaries, as the `{}`
characters are hard to distinguish from `[]` on some fonts.
This is especially helpful with empty arrays and dictionaries.
2022-10-04 20:33:40 +02:00
Aaron Franke
2cea42cc7f
Rename Projection matrix
to columns
2022-10-04 12:34:19 -05: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
Rémi Verschelde
5bf95518fd
GDScript/C#: Tweak error message for invalid script type for object
...
See #66870 .
2022-10-04 12:56:49 +02:00
Rémi Verschelde
f36dda3185
Merge pull request #66867 from Rindbee/implement-willSaveWaitUntil
...
Implement `GDScriptTextDocument::willSaveWaitUntil` to clean up outdated documents before saving
2022-10-04 10:33:03 +02:00
Rémi Verschelde
cd7f172cf8
Merge pull request #66804 from akien-mga/core-remove-NO_SAFE_CAST
...
Remove unsupported `NO_SAFE_CAST`/`-fno-rtti` from Android build
2022-10-04 10:22:24 +02:00
Rindbee
ab0314938e
Implement GDScriptTextDocument::willSaveWaitUntil
to clean up outdated documents before saving
...
Implement `GDScriptTextDocument::willSaveWaitUntil` to clean up outdated documents before saving,
then update the document in `GDScriptTextDocument::didSave`.
2022-10-04 15:38:57 +08:00
Clay John
4b52c6caef
Merge pull request #59481 from LunaticInAHat/gltf_texture_filter_fix_4
...
Respect texture filtering when importing GLTF
2022-10-03 16:33:11 -07:00
The Tophat Demon
c1a600545c
GLTF imports & exports material texture filters
2022-10-03 16:20:08 -04:00
Jonathan Nicholl
2830e276b8
Clean up .blend importer to fix unreachable code paths
2022-10-03 14:48:36 -04:00
Aaron Franke
094e8db97c
Fix hide_slider vs no_slider inconsistency in editor property code
2022-10-03 13:40:31 -05:00
Yuri Rubinsky
321251a133
Merge pull request #66759 from Chaosus/gds_fix_param_completion
2022-10-03 17:44:20 +03:00
Fabio Alessandrelli
c477e7c461
Merge pull request #66794 from Faless/mp/4.x_multiple_sync
...
[MP] Allow multiple synchronizers per node.
2022-10-03 15:45:35 +02:00
Rémi Verschelde
208b440398
Merge pull request #66817 from raulsntos/dotnet/color-span
...
C#: Use Span in Color to avoid string allocations
2022-10-03 14:52:29 +02:00
Fabio Alessandrelli
32a62af648
[MP] Allow multiple synchronizers per node.
...
The same node can now be controlled by multiple synchronizers at once.
Spawn visibility is composed in OR across multiple synchronizers (i.e.
if any synchronizer is visible to the peer, the object will be spawned).
Synchronizers controlling spawned nodes can now have a different
authority then the one spawning the node, in that case, the spawn
variables for that specific synchronizer are simply ignored (other
synchronizers with the same authority of the spawner will correctly
synchronize variables on spawn).
The SceneReplicationState class has been completly removed, since it was
bloating the implementation, the state is now simply stored in the
SceneReplicationInterface.
2022-10-03 14:45:00 +02:00
Raul Santos
67d058da30
C#: Use Span in Color to avoid string allocations
2022-10-03 12:11:37 +02: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
82b87d7a17
Remove unsupported NO_SAFE_CAST
/-fno-rtti
from Android build
...
Android was the last platform to still attempt to disable RTTI (for binary
size), but both the Android editor and now the ICU library used by templates
need RTTI.
There could still be the possibility to support this for non-ICU template
builds (i.e. without the TextServerAdvanced module), but since this isn't one
of the build configurations we test regularly it's pretty risky to keep this
option only for that specific use case. And our code is already littered with
`dynamic_cast`s which weren't guarded with `!defined(NO_SAFE_CAST)`.
2022-10-03 11:18:31 +02:00
Rémi Verschelde
6609f1b09f
Merge pull request #66709 from MewPurPur/fix-unary-operators-being-STILL-broken
...
Fix more highlighting bugs
2022-10-03 09:30:01 +02:00
Rémi Verschelde
9d62d59293
Merge pull request #66784 from Geekotron/fix-nav3d-not-reachable-crash
...
Fix crash in navigation 3d when target is not reachable
2022-10-03 09:26: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
Clay John
f2061f11fe
Merge pull request #66767 from jtnicholl/blend_visibility
...
Fix visibility filtering options for .blend imports
2022-10-02 18:07:31 -06:00
Sean
9b525da531
Fix crash in navigation 3d when target is not reachable
...
The code that resets variables to retry navigation to the closest possible poly was not resetting 1 variable, which caused it to exceed the vector bounds
2022-10-02 13:18:33 -06:00
VolTer
2d48bf0b88
Fix more highlighting bugs
2022-10-02 17:44:39 +02:00
Jonathan Nicholl
3086b1b79d
Fix visibility filtering options for .blend imports
2022-10-02 11:11:04 -04:00
Yuri Rubinsky
7822378293
Fix completion of parameters in function call (2)
2022-10-02 13:30:15 +03:00
Rafał Mikrut
2233624152
Remove usage of unitialized variables
2022-10-01 21:09:22 +02:00
Patrick Dawson
161f295f52
ManagedCallable: use delegate target instead of middleman when possible
...
If the delegate target is an Object, the connected signal will be registered in that object instead of the middleman. So when that object is destroyed, the signal will be properly disconnected.
2022-10-01 02:09:58 +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
539d21318f
Merge pull request #65970 from GuilhermeGSousa/synchronizer-auth-change
...
Add warning for synchronizer authority mismatch
2022-09-30 17:44:19 +02:00
Yuri Rubinsky
6f75b0d79b
Merge pull request #64717 from Chaosus/gds_fix_param_completion
2022-09-30 18:34:33 +03:00
Yuri Rubinsky
5d4853f8ca
Fix completion of parameters in function call
2022-09-30 15:42:05 +03: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
Guilherme Sousa
a6c201fa76
Add Error for synchronizer authority mismatch
2022-09-30 13:11:56 +02:00
Rémi Verschelde
f47979f087
Merge pull request #66242 from akien-mga/scons-unify-tools-target
2022-09-30 12:28:50 +02:00
Rémi Verschelde
44799b896f
Merge pull request #66534 from akien-mga/scons-msvc-graphite-silence-c++17-deprecation-warnings
...
SCons: Silence MSVC C++17 deprecation warnings in Graphite
2022-09-29 15:33:45 +02:00
Rémi Verschelde
0dd308cedd
Merge pull request #66545 from akien-mga/msvc-warnings-c4324-c4389-c4456-c4459
...
Fix MSVC warnings C4324, C4389, C4456, and C4459
2022-09-28 20:47:43 +02:00
Rémi Verschelde
361d9b514e
Merge pull request #66542 from akien-mga/msvc-warning-c4706
...
Fix MSVC warning C4706: assignment within conditional expression
2022-09-28 20:47:23 +02:00
Rémi Verschelde
4c5891186a
Merge pull request #66525 from Calinou/doc-gdscript-get-stack-debug-instance
...
Document `print_stack()` and `get_stack()` requiring a debugger connection
2022-09-28 17:14:04 +02:00