George Marques
5aeb390cd7
GDScript: Add speficic set/get instructions
...
When the base type is known at compile-time, we can get a direct
function pointer that is faster than the regular set/get paths.
2020-11-21 13:24:49 -03:00
George Marques
1ad5c926dc
GDScript: Add faster operator for known types
...
It now uses the direct operator function pointer, which increases
performance in evaluation.
2020-11-21 13:24:49 -03:00
George Marques
c707d6fe71
GDScript: Gather instructions arguments beforehand
...
Almost all instructions need variant arguments. With this change they
are loaded in an array before each instruction call. This makes the
addressing code be localized to less places, improving compilation
overhead and binary size by a small margin.
This should not affect performance.
2020-11-21 13:24:49 -03:00
George Marques
b6519d0d03
GDScript: Split Function code into multiple files
...
To improve organization and reduce the size of compilation units.
2020-11-21 13:24:49 -03:00
George Marques
15b085e8db
Add extra functions to VariantInternal
...
- Allow getting an opaque pointer, no matter the type (for ptrcall).
- Allow setting object pointer and id directly.
- Allow initializing the data given a type, to allow properly setting
return types on ptrcalls.
2020-11-21 13:24:49 -03:00
Rémi Verschelde
48049b8d9e
Merge pull request #43713 from akien-mga/doc-node-internal-processing
...
doc: Warn about using Node internal processing
2020-11-20 18:56:05 +01:00
Rémi Verschelde
50eb039acf
Merge pull request #43716 from akien-mga/export-options-consistency
...
Export: Reorder options for consistency across platforms
2020-11-20 18:44:20 +01:00
Rémi Verschelde
932c6ff3fb
Merge pull request #43719 from akien-mga/nanosvg-3e403ec
...
nanosvg: Sync with upstream 3e403ec
2020-11-20 18:42:43 +01:00
Rémi Verschelde
34895e7b28
Merge pull request #43583 from Calinou/test-add-object
...
Add a test suite for Object
2020-11-20 14:03:12 +01:00
Rémi Verschelde
29f34782f0
Merge pull request #43514 from Calinou/test-add-rect2-rect2i
...
Add a test suite for Rect2 and Rect2i
2020-11-20 13:40:12 +01:00
Rémi Verschelde
24ea91685b
Merge pull request #43722 from Xrayez/doctest-update-2.4.1
...
doctest: Update to 2.4.1
2020-11-20 13:39:51 +01:00
Hugo Locurcio
e924bf9dec
Add a test suite for Object
2020-11-20 13:24:14 +01:00
Hugo Locurcio
7cb21c21b3
Add a test suite for Rect2 and Rect2i
2020-11-20 12:53:37 +01:00
Rémi Verschelde
d9dd3b2768
Style fix after #43517
2020-11-20 12:52:30 +01:00
Andrii Doroshenko (Xrayez)
282ac09eef
doctest: Update to 2.4.1
...
Includes a patch for breakpoint inline assembly for macOS.
2020-11-20 13:50:07 +02:00
Rémi Verschelde
d87e192be6
Merge pull request #43517 from Calinou/test-add-json
...
Add a test suite for JSON
2020-11-20 12:47:27 +01:00
Rémi Verschelde
91dfac244b
Merge pull request #43721 from Xrayez/doctest-no-override
...
doctest: Do not override command-line options
2020-11-20 12:35:47 +01:00
Andrii Doroshenko (Xrayez)
dc980e5f96
doctest: Do not override command-line options
...
Those options were likely copy-pasted from documentation examples.
This change also allows to break in the debugger by default when
assertions fail, and this can be configured via command-line interface.
2020-11-20 13:21:45 +02:00
Rémi Verschelde
1bb6491992
nanosvg: Sync with upstream 3e403ec
...
Includes some loop condition fixes after fuzzing.
The previously identified regression (#43641 ) is now fixed upstream.
2020-11-20 12:01:29 +01:00
Rémi Verschelde
504efc5f9b
Export: Reorder options for consistency across platforms
2020-11-20 11:17:50 +01:00
Rémi Verschelde
a655de89e3
doc: Warn about using Node internal processing
...
See #43689 .
Also 'fixed' some spelling for behavior in publicly visible strings.
(Sorry en_GB, en_CA, en_AU, and more... Silicon Valley won the tech spelling
war.)
2020-11-20 09:52:37 +01:00
Rémi Verschelde
68ddab547b
Merge pull request #43703 from Xrayez/premature-timer
...
Do not start `Timer` upon manual switching of internal process
2020-11-20 09:44:30 +01:00
Andrii Doroshenko (Xrayez)
afcb6f38db
Do not start `Timer` upon manual switching of internal process
...
Prevents `Timer` to prematurely start and timeout immediately if internal
processing is enabled manually with `Timer.set_process_internal(true)` or
`Timer.set_physics_process_internal(true)`.
Even if the internal processing is enabled manually, the user still has to
actually start the timer with `start()` method explicitly.
2020-11-20 01:28:40 +02:00
Rémi Verschelde
6a683f8016
Merge pull request #43591 from madmiraal/fix-43520
...
Update joy button and stick names, enums and documentation
2020-11-19 20:43:44 +01:00
Rémi Verschelde
f69339c2c2
Merge pull request #43692 from akien-mga/scons-leave-link-alone
...
SCons: Remove unnecessary $LINK overrides
2020-11-19 20:43:25 +01:00
Rémi Verschelde
71f53a5ba3
Merge pull request #43687 from akien-mga/macos-osxcross-link-arm64
...
OSX: Fix linking with osxcross for arm64
2020-11-19 17:14:42 +01:00
Rémi Verschelde
2e4bff1cfe
SCons: Remove unnecessary $LINK overrides
...
As of SCons 4.0.1, the default value for $LINK is $SMARTLINK, which itself
is a function that will use $CXX as linker for C++:
https://github.com/SCons/scons/blob/4.0.1/SCons/Tool/link.py#L327-L328
https://github.com/SCons/scons/blob/4.0.1/SCons/Tool/link.py#L54-L76
So we don't need to manually specify the same value as $CXX for $LINK.
2020-11-19 16:48:03 +01:00
Rémi Verschelde
dbbbb53927
OSX: Fix linking with osxcross for arm64
...
For some reason the `-target` option on the `LINKFLAGS` was causing a weird
issue where osxcross' clang wrapper would attempt using the system `/bin/ld`
instead of the osxcross version (which is Apple's `ld64`).
The error message would be:
```
/bin/ld: unrecognized option '-dynamic'
```
Also removed from `CCFLAGS` for consistency, it seems to work fine with only
`-mmacosx-version-min`.
2020-11-19 16:32:32 +01:00
Marcel Admiraal
20f2b71e21
Update joy button and stick names, enums and documentation
2020-11-19 15:28:31 +00:00
Rémi Verschelde
c9bd11a479
Merge pull request #43668 from GryphonClaw/master
...
added shortcuts/hotkeys for tileset editor plugin collision buttons, …
2020-11-19 14:17:23 +01:00
Rémi Verschelde
b4f81e7b88
Merge pull request #43662 from EricEzaM/PR/INP3-command_serialization_optional
...
Made serialization of Command toggleable when saving InputEvents.
2020-11-19 13:38:55 +01:00
Rémi Verschelde
8cc01be213
Merge pull request #43682 from RandomShaper/warn_reference_singleton
...
Warn about singleton being a Reference
2020-11-19 13:37:45 +01:00
Eric M
c92f83d3ca
Made serialization of Command toggleable when saving InputEvents.
...
Made serialization of Command optional. If command is serialized, Control (On Win/Linux) or Meta (on Mac) are not.
Example use case: You are on Windows and you set a shortcut to be Control + E. This would serialize as Command=true and Control=true. If you then run this project on Mac, you would need to press Command AND Control to activate the shortcut - which is not what is intended. Now, you can set store_command to true, and it will only serialize to Command = true (no Control serialized). On Windows, this means Control. On Mac, it means only command.
2020-11-19 21:05:45 +10:00
Pedro J. Estébanez
e1150bd912
Warn about singleton being a Reference
2020-11-19 12:01:54 +01:00
Rémi Verschelde
b115ea4c28
Merge pull request #43681 from aaronfranke/grid-view-update
...
Update the 3D grid when the "View Grid" checkbox is changed
2020-11-19 11:56:41 +01:00
Aaron Franke
71d1909b39
Update the 3D grid when the "View Grid" checkbox is changed
2020-11-19 05:29:37 -05:00
Rémi Verschelde
68f2417528
Merge pull request #43665 from Nickswoboda/fix-invalid-free
...
Check uniform set validity before freeing
2020-11-19 10:06:51 +01:00
Rémi Verschelde
05b17d3dbf
Merge pull request #43664 from Phischermen/quit-documentation
...
Clarify that SceneTree::quit() does not immediately end the application.
2020-11-19 10:04:59 +01:00
Rémi Verschelde
319126a039
Merge pull request #43671 from m4gr3d/fix_zipalign_bug_on_windows
...
Fix zipalign command name on Windows machines
2020-11-19 09:00:47 +01:00
Fredia Huya-Kouadio
c4f2d87747
Fix zipalign command name on Windows machines.
2020-11-18 23:30:45 -08:00
Rémi Verschelde
2ca1c17a5c
Merge pull request #43661 from EricEzaM/PR/INP2-rename_load_from_globals
...
load_from_globals() -> load_from_project_settings()
2020-11-19 07:40:21 +01:00
Rémi Verschelde
eebd3e8aa1
Merge pull request #43657 from RandomShaper/fix_dupe_crash
...
Fix crash duplicating local-to-scene resources
2020-11-19 07:33:45 +01:00
GryphonClaw
cf582262c2
added shortcuts/hotkeys for tileset editor plugin collision buttons, with suggested changes.
2020-11-18 19:54:27 -08:00
Nick Swoboda
bce3e2c3f6
Check uniform set validity before freeing
2020-11-18 16:53:11 -08:00
Phischermen
371d12a2f0
Clarify that SceneTree::quit() does not immediately end the application.
2020-11-18 16:45:20 -08:00
Eric M
e5376fb129
load_from_globals() -> load_from_project_settings()
2020-11-19 09:21:21 +10:00
Pedro J. Estébanez
e99cf6bfe5
Fix crash duplicating local-to-scene resources
2020-11-18 23:45:30 +01:00
Rémi Verschelde
a3a3b02bed
Merge pull request #43639 from timothyqiu/rotation-fix
...
Fixes rotation in select mode on macOS
2020-11-18 21:58:24 +01:00
Rémi Verschelde
818434fbcb
Merge pull request #43654 from qarmin/multiple_projects
...
Allow to open multiple projects when some are not imported or without main scene.
2020-11-18 21:57:42 +01:00
Rafał Mikrut
b20c20a6f7
Allow to open multiple projects when some are not imported or without main scene.
2020-11-18 21:24:27 +01:00