Rémi Verschelde
55550da68b
SCons: Disable C++ exception handling
...
Upon investigating the extremely slow MSVC build times in #80513 , I noticed
that while Godot policy is to never use exceptions, we weren't enforcing it
with compiler flags, and thus still included exception handling code and
stack unwinding.
This is wasteful on multiple aspects:
- Binary size: Around 20% binary size reduction with exceptions disabled
for both MSVC and GCC binaries.
- Compile time:
* More than 50% build time reduction with MSVC.
* 10% to 25% build time reduction with GCC + LTO.
- Performance: Possibly, needs to be benchmarked.
Since users may want to re-enable exceptions in their own thirdparty code
or the libraries they compile with Godot, this behavior can be toggled with
the `disable_exceptions` SCons option, which defaults to true.
2023-08-16 10:34:10 +02:00
Rémi Verschelde
fa04a839bb
Merge pull request #79433 from raulsntos/3x/dotnet/dont-ignore-call-error
...
[3.x] C#: Print error when MethodBind call fails
2023-08-02 17:27:12 +02:00
Rémi Verschelde
91e3a53518
Merge pull request #69101 from marcinn/3.x-backport-proposal-5748-loading-dds-at-runtime
...
[3.x] Backport implement loading DDS textures at run-time
2023-08-02 17:26:26 +02:00
Raul Santos
4ff8d92ee6
C#: Print error when MethodBind call fails
2023-07-13 19:43:20 +02:00
Danil Alexeev
3d98247678
[3.x] GDScript: Prevent native class shadowing
2023-07-06 20:32:30 +03:00
lawnjelly
43e181a00a
Single Compilation Unit build.
...
Adds support for simple SCU build.
This speeds up compilation by compiling multiple cpp files within a single translation unit.
2023-07-02 20:13:16 +01:00
Raul Santos
06c0a1abc9
C#: Avoid GodotSharp as project assembly name
...
The name GodotSharp conflicts with the name of the Godot assembly,
this causes the project assembly to be ignored.
2023-06-15 11:45:18 +02:00
Rémi Verschelde
eeca70f843
Merge pull request #70502 from HolonProduction/svg_assets_3.x
...
[3.x] Add support for svg images in the asset lib.
2023-06-07 14:46:14 +02:00
Rémi Verschelde
1bc03d9d65
GDNative: Add Core API 1.4, move Transform2D::determinant
there
...
It was added in #77283 but broke compatibility by being introduced in
an already released core API (1.0).
Fixes #77283 .
2023-05-23 11:47:31 +02:00
lawnjelly
6f8e632848
Make acos and asin safe
...
A common bug with using acos and asin is that input outside -1 to 1 range will result in Nan output. This can occur due to floating point error in the input.
The standard solution is to provide safe_acos function with clamped input. For Godot it may make more sense to make the standard functions safe.
2023-05-11 09:51:44 +01:00
Rémi Verschelde
b3bcec8c4a
Merge pull request #76346 from HolonProduction/suggest-class-name
...
Suggest `class_name` in 3.x autocompletion.
2023-04-28 18:37:11 +02:00
Rémi Verschelde
e09ca30b32
Merge pull request #76453 from aaronfranke/3.x-gltf-physics
...
[3.x] Implement physics support in the GLTF module
2023-04-26 12:17:07 +02:00
Aaron Franke
571e4189fd
[3.x] Implement physics support in the GLTF module
2023-04-25 15:18:02 -05:00
Aaron Franke
141783d90f
[3.x] Expose determinant
in Transform2D, rename internal method
2023-04-22 13:47:47 -05:00
HolonProduction
8dae3d71b2
Suggest class_name in 3.x autocompletion.
2023-04-22 16:29:14 +02:00
David Snopek
77deae0483
Disable blending before blitting to framebuffer from WebXR
2023-04-14 17:39:44 -05:00
Ninni Pipping
7d48dd7782
[3.x] Document lack of iOS support for WebM
2023-03-22 19:37:56 +01:00
lawnjelly
b0c399ec8c
Merge pull request #74895 from smix8/gridmap_navrid_error_spam_3.x
...
[3.5+] Fix GridMap free navigation RID error spam
2023-03-21 14:28:25 +00:00
Haoyu Qiu
6d7bc801f6
Set the unlit / unshaded extension when importing / exporting GLTF
...
Co-authored-by: Hakim <hakim.rouatbi@gmail.com>
2023-03-15 17:26:06 +08:00
smix8
befdafdbf6
[3.5+] Fix GridMap free navigation RID error spam
...
Fixes GridMap free navigation RID error spam.
2023-03-14 05:12:39 +01:00
Rémi Verschelde
26a584179c
Merge pull request #74794 from lawnjelly/gdscript_parser_hashtable
...
[3.x] Use hash table for GDScript parsing
2023-03-12 16:19:07 +01:00
lawnjelly
19f2006ec0
Use hash table for GDScript parsing
...
GDScript now uses hash table for lookup of type lists / functions / keywords, instead of linear String comparisons.
2023-03-12 14:55:31 +00:00
lawnjelly
ef914dac31
GDScriptParser - don't use index operator on linked list
...
Index operators are super slow with linked lists. This came up in profiling the parsing, iterating sequentially using iterator is much faster.
2023-03-11 17:05:12 +00:00
smix8
608317213e
Fix NavigationServer free error print
...
Fixes error print for NavigationServer free when a RID can not be found.
(cherry picked from commit 73dc680fc1
)
2023-03-06 13:48:18 +01:00
RedworkDE
5766134610
[3.x] C#: Fix crash when errors occur before language initialization.
2023-02-28 23:01:24 +01:00
Marcin Nowak
22468ea1d3
Backport implement loading DDS textures at run-time
2023-02-17 11:27:47 +01:00
David Snopek
82be475a85
Correctly apply world_scale in WebXR
2023-01-23 17:27:44 -06:00
Hugo Locurcio
a93d651293
Mark C# editor settings to require a restart to be effective
2023-01-13 22:42:13 +01:00
Rémi Verschelde
1426cd3b3a
One Copyright Update to rule them all
...
As many open source projects have started doing it, we're removing the
current year from the copyright notice, so that we don't need to bump
it every year.
It seems like only the first year of publication is technically
relevant for copyright notices, and even that seems to be something
that many companies stopped listing altogether (in a version controlled
codebase, the commits are a much better source of date of publication
than a hardcoded copyright statement).
We also now list Godot Engine contributors first as we're collectively
the current maintainers of the project, and we clarify that the
"exclusive" copyright of the co-founders covers the timespan before
opensourcing (their further contributions are included as part of Godot
Engine contributors).
Also fixed "cf." Frenchism - it's meant as "refer to / see".
Backported from #70885 .
2023-01-10 15:26:54 +01:00
Rémi Verschelde
aa9265928c
Merge pull request #70786 from Calinou/gdscript-fix-dict2inst-init-parameters-3.x
...
[3.x] Make `dict2inst` to work with arbitrary `_init` parameters
2023-01-09 14:18:30 +01:00
SaracenOne
9fa4d3b1b0
Fix local variables not showing when breaking on final line
...
(cherry picked from commit 657b9b6596
)
2023-01-09 09:46:27 +01:00
Andrii Doroshenko (Xrayez)
accdd575f6
Make dict2inst
to work with arbitrary _init
parameters
...
This is achieved by skipping initializer call while creating an instance
of a GDScript. This is implemented by passing -1 as an argument count
to `_new` and interpreting any value below 0 to mean that the initializer
should not be called during instantiation, because internal members of
an instance are going to be overridden afterwards.
2022-12-31 23:57:35 +01:00
Aaron Franke
ca898a7b77
[3.x] GLTF: Fix wrong error macro used in a few spots
2022-12-27 18:55:10 -06:00
HolonProduction
9c437631a4
Add support for svg images in the asset lib.
...
Backport of #70317
2022-12-23 23:24:18 +01:00
Aaron Franke
62e10daf70
[3.x] Backport the GLTFDocumentExtension system
2022-12-21 00:40:00 -06:00
smix8
17e6d76de6
Fix Navigation agent callback wild pointer crash
...
Fixes crash in sanitizer builds when callback agent or object are already freed.
(cherry picked from commit 194c1c44e0
)
2022-12-18 10:32:04 +08:00
Rémi Verschelde
4d8b9be48d
embree: Sync build flags with master
...
Fixes Android ARM build.
These flags were added in master with 3f6ed10a5d
.
2022-12-15 13:53:02 +01:00
Rémi Verschelde
6963ba631e
Fix typos with codespell
2022-12-15 12:26:59 +01:00
Lamia
a412922c2b
LSP: Improve handling of file URI scheme
...
Fixes #63205 .
(cherry picked from commits 3fa943fe23
,
42a16ef76e
and
2ff69d6181
)
2022-12-12 15:58:20 +01:00
DeeJayLSP
f694ab1c64
Update embree to 3.13.5
...
(cherry picked from commit 5e4158eb48
)
2022-12-12 14:49:24 +01:00
jfons
99aa9a99f9
Force optimized builds for thirdparty Embree files
...
(cherry picked from commit b197fc2079
)
2022-12-12 14:49:24 +01:00
Joan Fons
759ce9b689
Upgrade Embree and enable ray packets
...
Minor patch upgrade. Enabling ray packets results in faster
processing of ray streams (i.e. occlusion culling buffer
updates) at the cost of slightly larger binary sizes.
(cherry picked from commits 595cbacdf1
and eb0f67a541
)
2022-12-12 14:49:24 +01:00
Rémi Verschelde
b0b759e6da
SCons: Cleanup DEBUG
, _DEBUG
and NDEBUG
defines
...
- `_DEBUG` is MSVC specific so it didn't make much sense to define for
Android and iOS builds.
- iOS was the only platform to define `DEBUG`. We don't use it anywhere
outside thirdparty code, which we usually don't intend to debug, so it
seems better to be consistent with other platforms.
- Consistently define `NDEBUG` to disable assert behavior in both `release`
and `release_debug` targets. This used to be set for `release` for all
platforms, and `release_debug` for Android and iOS only.
- Due to the above, I removed the only use we made of `assert()` in Godot
code, which was only implemented for Unix anyway, should have been
`DEV_ENABLED`, and is in PoolAllocator which we don't actually use.
- The denoise and recast modules keep defining `NDEBUG` even for the `debug`
target as we don't want OIDN and Embree asserting all over the place.
(cherry picked from commit 26e9145c26
)
2022-12-12 14:49:21 +01:00
Rémi Verschelde
912cd43418
miniupnpc: Update to version 2.2.3
...
Library code and public headers are now properly separated, we can fix include paths
to remove the redundant subfolder.
(cherry picked from commit 432ac521ef
)
2022-12-12 14:15:06 +01:00
ray90514
7afbd5904e
Fix Script editor completion doesn't suggest members of a script for type hints
2022-12-12 13:36:32 +01:00
Rémi Verschelde
004c174086
Merge pull request #69929 from aaronfranke/3.x-gltf-subclasses
...
[3.x] Backport moving camera and light logic to GLTF subclasses, fix ortho cameras
2022-12-12 12:28:07 +01:00
Hugo Locurcio
5e0ef339ff
Document print_stack()
and get_stack()
requiring a debugger connection
...
(cherry picked from commit 530e31d4a3
)
2022-12-12 14:55:23 +08:00
Rémi Verschelde
ae94cc4ecc
SCons: Fix MSVC warning LNK4042 about dupe objects in regex
...
(cherry picked from commit 3fd9452a8c
)
2022-12-12 14:03:04 +08:00
Aaron Franke
a887f48d1d
[3.x] Backport moving camera and light logic to GLTF subclasses
2022-12-11 14:05:08 -06:00
Rémi Verschelde
bf295fcc6b
Merge pull request #69879 from aaronfranke/3.x-gltf-doc-p-parameter
...
[3.x] Consistently use `p_` for parameters in GLTFDocument
2022-12-11 13:39:05 +01:00
Aaron Franke
d8b1c9ff3c
[3.x] Consistently use p_
for parameters in GLTFDocument
2022-12-10 17:02:13 -06:00
Marcel Admiraal
7669f6e660
Store Bullet total gravity, linear damp and angular damp calculations
...
so they can be retrieved from PhysicsDirectBodyState
2022-12-09 19:53:50 +01:00
Ithamar R. Adema
da3b8b324d
Add 16-bits TGA support
...
(cherry picked from commit 200f6ac089
)
2022-12-04 19:58:42 +08:00
Hakim
df1a0b25ea
Prevent AnimationPlayer from being added on GLTF import if the option is unchecked. Fixes #63954
...
(cherry picked from commit 805ffdfbf6
)
2022-12-04 19:47:36 +08:00
Rémi Verschelde
01574a566f
Merge pull request #69447 from aaronfranke/3.x-gltf-organize-files
...
[3.x] GLTF: Organize structures and extensions into subfolders
2022-12-01 18:14:04 +01:00
Aaron Franke
d8aa3b32c9
[3.x] GLTF: Organize structures and extensions into subfolders
2022-12-01 08:25:21 -06:00
Mark Riedesel
dd76858c2c
Add buffer size check to Image.load_tga_from_buffer(). Fixes #67985
...
(cherry picked from commit 5cb07486db
)
2022-11-30 15:34:27 +01:00
Rémi Verschelde
d7cb3d9366
Merge pull request #69320 from aaronfranke/3.x-gltf-def-ext-usage
...
[3.x] GLTF: Move shared defines into a file and only list used extensions
2022-11-30 11:31:34 +01:00
Aaron Franke
f1febed469
[3.x] GLTF: Move shared defines into a separate gltf_defines.h
file
2022-11-29 00:04:57 -06:00
Aaron Franke
8979208713
[3.x] GLTF: Only list used extensions when they're actually used
2022-11-28 17:54:30 -06:00
Raul Santos
7106905a5b
C#: Deprecate string extensions that will be removed in 4.x
...
- Deprecated `Length` in favor of the `string.Length` property.
- Deprecated `Insert` in favor of the existing instance method with the same signature.
- Deprecated `Erase` in favor of `StringBuilder.Remove`.
- Deprecated `ToLower` and `ToUpper` in favor of the instance methods with the same signature.
- Deprecated `BeginsWith` in favor of `string.StartsWith`.
- Deprecated `EndsWith` in favor of the instance method with the same signature.
- Deprecated `Empty` in favor of `string.IsNullOrEmpty`.
- Deprecated `OrdAt` in favor of the `string[int]` indexer.
- Deprecated `LStrip` and `RStrip` in favor of `string.TrimStart` and `string.TrimEnd`.
2022-11-28 18:23:00 +01:00
Haoyu Qiu
37ccdb201a
Backport navigation crash fixes
...
Co-Authored-By: Sean <sean@geekotron.net>
2022-11-22 12:46:43 +08:00
dzil123
bdcb1ff228
[3.x] Fix c# Array.Shuffle incorrect mono bindings
2022-11-04 06:22:47 -07:00
Haoyu Qiu
fef0a82183
Clarify offset parameter behavior in RegEx methods
2022-11-01 09:51:40 +08:00
bruvzg
987723b386
[iOS] Fix build with warnings=extra.
2022-10-31 11:59:31 +02:00
Rémi Verschelde
71f5bb3916
Merge pull request #67386 from akien-mga/3.x-webm-armv7-fixup
...
WebM: Fix Android armv7 build after #64839
2022-10-14 16:34:25 +02:00
Rémi Verschelde
567d5e2f78
Merge pull request #67141 from smix8/gridmap_fix_meshlib_replace_3.x
...
Fix Editor crash when MeshLibrary gets replaced while used in an open Scene
2022-10-14 16:33:29 +02:00
Rémi Verschelde
15062a22d4
WebM: Fix Android armv7 build after #64839
2022-10-14 10:33:17 +02:00
smix8
d6805e8c33
Fix Editor crash when MeshLibrary gets replaced while used in an open GridMap scene
2022-10-09 17:19:26 +02:00
Rémi Verschelde
9c6810e04f
Merge pull request #66889 from LunaticInAHat/gltf_texture_filter_fix_3
...
GLTF import external images correctly
2022-10-05 17:08:06 +02:00
LunaticInAHat
08c801738e
GLTF import external images correctly
2022-10-04 12:01:24 -04:00
Rémi Verschelde
fdfe663326
Merge pull request #66868 from smix8/copy_and_paste_blyat_3.x
...
Fix GDScript export hint for Navigation2D layer names
2022-10-04 16:58:02 +02:00
Rémi Verschelde
9bf589d55a
Merge pull request #66856 from LunaticInAHat/gltf_texture_filter_fix_3
...
GLTF imports & exports material texture filters
2022-10-04 16:57:55 +02:00
smix8
d955d4a1c1
Fix GDScript export hint for Navigation2D layer names
2022-10-04 10:32:57 +02:00
The Tophat Demon
bb34c55b3c
GLTF imports & exports material texture filters
2022-10-03 21:19:48 -04:00
Rémi Verschelde
7f560a2833
Merge pull request #66255 from and3rson/3.x
...
[3.x] GDNative: Fix `script_data` error when updating placeholder scripts for GDNative libraries
2022-10-03 15:04:08 +02:00
Rémi Verschelde
ecaf2b0322
Merge pull request #66806 from smix8/navigation_avoidance_nothread_3.x
...
Fix avoidance calculation on NO_THREADS build
2022-10-03 13:58:35 +02:00
smix8
f15cb16b14
Fix avoidance calculation on NO_THREADS build
2022-10-03 13:39:48 +02:00
Aaron Franke
fdce2a1dfc
[3.x] C#: Add Basis Euler angle code to match 4.x core
2022-09-30 17:20:36 -05:00
Andrew Dunai
1af4ba04cd
Fix "!script_data is true" when updating placeholder scripts for GDNative libraries
...
Co-authored-by: geekrelief <geekrelief@gmail.com>
2022-09-22 15:10:53 +03:00
Rémi Verschelde
f9b91d8d24
Style: Ensure consistent formatting with clang-format 15
2022-09-21 13:23:17 +02:00
smix8
ce310c1e39
Exclude disabled CollisionShapes from Navigationmesh baking
...
Excludes disabled CollisionShapes from the geometry parsing for the NavigationMesh baking.
(cherry picked from commit 534ff93b05
)
2022-09-20 10:26:17 +02:00
dzil123
1e4f47ffe0
Fix variables highlighting as types
2022-09-17 01:24:19 -07:00
Max Hilbrunner
6e95397180
Update UPnP documentation
...
Adds more details, especially about caveats, failure modes and pitfalls
(cherry picked from commit be41c09769
)
2022-08-29 15:56:43 +02:00
Max Hilbrunner
4f3c12c23d
UPNP: Don't delete mappings when adding mappings
...
Don't delete previous mappings when adding a new mapping.
This was a old workaround that seems to cause issues.
(cherry picked from commit 2685cc7bb6
)
2022-08-29 15:56:04 +02:00
Rémi Verschelde
d073d10739
Merge pull request #51146 from Haskaris/fix-output-port-mismatch
2022-08-25 21:45:15 +02:00
Hugo Locurcio
ed380cc0fa
Add a [kbd]
tag for highlighting keyboard shortcuts in the editor help
...
This allows backporting documentation from the `master` branch more easily,
as it already features the `[kbd]` tag.
Co-authored-by: Yuri Sizov <11782833+YuriSizov@users.noreply.github.com>
2022-08-25 19:53:49 +02:00
Perrier Mathis
dcacecaed0
Fix output port type mismatch for some VisualScript nodes
2022-08-25 17:53:41 +02:00
Rémi Verschelde
8388ea1d6b
Merge pull request #64839 from akien-mga/3.x-zstd-1.5.2
...
zstd: Update to upstream version 1.5.2
2022-08-25 00:51:28 +02:00
bruvzg
c4885c8be8
Use clang as assembler to ensure preprocessing is done, and add assembler "target" flag.
...
(cherry picked from commit e873778561
)
2022-08-24 18:26:29 +02:00
Rémi Verschelde
7dd322f83e
libwebp: Sync with upstream 1.2.4
...
Changes: https://chromium.googlesource.com/webm/libwebp/+/1.2.4/NEWS
(cherry picked from commit e5e34f21fc
)
2022-08-24 17:24:23 +02:00
Michael Alexsander
b808923b54
Fix error when switching to another GridMap
with an item with higher index selected
...
(cherry picked from commit fe16aecbac
)
2022-08-24 17:12:44 +02:00
Rémi Verschelde
ecc32f8b3e
Merge pull request #64772 from akien-mga/3.x-fix-vs-delete-crash
...
Fix VisualScript editor crash when deleting selected nodes
2022-08-24 09:52:46 +02:00
Rémi Verschelde
13d1ee6058
Fix VisualScript editor crash when deleting selected nodes
...
Fixes #64662 .
Regression from #61145 .
2022-08-23 10:59:37 +02:00
Rémi Verschelde
67cc142002
Merge pull request #64460 from raulsntos/mono_assembly_name-3.x
2022-08-22 22:38:25 +02:00
Raul Santos
31d09a807e
C#: Use custom project setting for C# project files name
...
The setting is initially assigned the name of the Godot project,
but it's kept freezed to prevent issues when renaming the Godot
project.
The user can always rename the C# project and solution manually and
change the setting to the new name.
Co-authored-by: Ignacio Roldán Etcheverry <ignalfonsore@gmail.com>
2022-08-15 19:30:06 +02:00
Cory Petkovsek
d7ba3b73a9
Clarify invalid RID errors in Server free() functions.
2022-08-12 23:02:09 +08:00
Rémi Verschelde
5834c27e85
Merge pull request #63935 from smix8/navigation_heightmapshape_baking_3.x
2022-08-08 15:47:24 +02:00
Rémi Verschelde
8d71eadeca
Merge pull request #64018 from raulsntos/csharp-rpc-docs
2022-08-08 15:40:08 +02:00
Rémi Verschelde
519841bc0f
Merge pull request #64019 from raulsntos/csharp-docgen-3.x
2022-08-08 15:39:39 +02:00